Line data Source code
1 : /** 2 : * 3 : * Copyright (c) 2021 Project CHIP Authors 4 : * Licensed under the Apache License, Version 2.0 (the "License"); 5 : * you may not use this file except in compliance with the License. 6 : * You may obtain a copy of the License at 7 : * 8 : * http://www.apache.org/licenses/LICENSE-2.0 9 : * 10 : * Unless required by applicable law or agreed to in writing, software 11 : * distributed under the License is distributed on an "AS IS" BASIS, 12 : * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 : * See the License for the specific language governing permissions and 14 : * limitations under the License. 15 : */ 16 : 17 : #include "StructBuilder.h" 18 : 19 : #include <inttypes.h> 20 : #include <stdarg.h> 21 : #include <stdio.h> 22 : 23 : namespace chip { 24 : namespace app { 25 8164 : CHIP_ERROR StructBuilder::Init(TLV::TLVWriter * const apWriter, const uint8_t aContextTagToUse) 26 : { 27 8164 : mpWriter = apWriter; 28 8164 : mError = mpWriter->StartContainer(TLV::ContextTag(aContextTagToUse), TLV::kTLVType_Structure, mOuterContainerType); 29 8164 : return mError; 30 : } 31 : 32 20900 : CHIP_ERROR StructBuilder::Init(TLV::TLVWriter * const apWriter) 33 : { 34 20900 : mpWriter = apWriter; 35 20900 : mError = mpWriter->StartContainer(TLV::AnonymousTag(), TLV::kTLVType_Structure, mOuterContainerType); 36 20900 : return mError; 37 : } 38 : } // namespace app 39 : } // namespace chip