Coverage Report

Created: 2026-02-12 06:57

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/connectedhomeip/zzz_generated/app-common/clusters/Groupcast/Structs.ipp
Line
Count
Source
1
/*
2
 *
3
 *    Copyright (c) 2022 Project CHIP Authors
4
 *
5
 *    Licensed under the Apache License, Version 2.0 (the "License");
6
 *    you may not use this file except in compliance with the License.
7
 *    You may obtain a copy of the License at
8
 *
9
 *        http://www.apache.org/licenses/LICENSE-2.0
10
 *
11
 *    Unless required by applicable law or agreed to in writing, software
12
 *    distributed under the License is distributed on an "AS IS" BASIS,
13
 *    WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
 *    See the License for the specific language governing permissions and
15
 *    limitations under the License.
16
 */
17
18
// THIS FILE IS GENERATED BY ZAP
19
// This file is generated from clusters-Structs.ipp.zapt
20
21
#include <clusters/Groupcast/Structs.h>
22
23
#include <app/data-model/StructDecodeIterator.h>
24
#include <app/data-model/WrappedStructEncoder.h>
25
26
namespace chip {
27
namespace app {
28
namespace Clusters {
29
namespace Groupcast {
30
namespace Structs {
31
32
namespace MembershipStruct {
33
CHIP_ERROR Type::EncodeForWrite(TLV::TLVWriter & aWriter, TLV::Tag aTag) const
34
0
{
35
0
    return DoEncode(aWriter, aTag, NullOptional);
36
0
}
37
38
CHIP_ERROR Type::EncodeForRead(TLV::TLVWriter & aWriter, TLV::Tag aTag, FabricIndex aAccessingFabricIndex) const
39
0
{
40
0
    return DoEncode(aWriter, aTag, MakeOptional(aAccessingFabricIndex));
41
0
}
42
43
CHIP_ERROR Type::DoEncode(TLV::TLVWriter & aWriter, TLV::Tag aTag, const Optional<FabricIndex> & aAccessingFabricIndex) const
44
0
{
45
0
    bool includeSensitive = !aAccessingFabricIndex.HasValue() || (aAccessingFabricIndex.Value() == fabricIndex);
46
47
0
    DataModel::WrappedStructEncoder encoder{ aWriter, aTag };
48
49
0
    encoder.Encode(to_underlying(Fields::kGroupID), groupID);
50
0
    encoder.Encode(to_underlying(Fields::kEndpoints), endpoints);
51
0
    if (includeSensitive)
52
0
    {
53
0
        encoder.Encode(to_underlying(Fields::kKeySetID), keySetID);
54
0
    }
55
0
    encoder.Encode(to_underlying(Fields::kHasAuxiliaryACL), hasAuxiliaryACL);
56
0
    encoder.Encode(to_underlying(Fields::kMcastAddrPolicy), mcastAddrPolicy);
57
0
    if (aAccessingFabricIndex.HasValue())
58
0
    {
59
0
        encoder.Encode(to_underlying(Fields::kFabricIndex), fabricIndex);
60
0
    }
61
62
0
    return encoder.Finalize();
63
0
}
64
65
CHIP_ERROR DecodableType::Decode(TLV::TLVReader & reader)
66
0
{
67
0
    detail::StructDecodeIterator __iterator(reader);
68
0
    while (true)
69
0
    {
70
0
        uint8_t __context_tag = 0;
71
0
        CHIP_ERROR err        = __iterator.Next(__context_tag);
72
0
        VerifyOrReturnError(err != CHIP_ERROR_END_OF_TLV, CHIP_NO_ERROR);
73
0
        ReturnErrorOnFailure(err);
74
75
0
        if (__context_tag == to_underlying(Fields::kGroupID))
76
0
        {
77
0
            err = DataModel::Decode(reader, groupID);
78
0
        }
79
0
        else if (__context_tag == to_underlying(Fields::kEndpoints))
80
0
        {
81
0
            err = DataModel::Decode(reader, endpoints);
82
0
        }
83
0
        else if (__context_tag == to_underlying(Fields::kKeySetID))
84
0
        {
85
0
            err = DataModel::Decode(reader, keySetID);
86
0
        }
87
0
        else if (__context_tag == to_underlying(Fields::kHasAuxiliaryACL))
88
0
        {
89
0
            err = DataModel::Decode(reader, hasAuxiliaryACL);
90
0
        }
91
0
        else if (__context_tag == to_underlying(Fields::kMcastAddrPolicy))
92
0
        {
93
0
            err = DataModel::Decode(reader, mcastAddrPolicy);
94
0
        }
95
0
        else if (__context_tag == to_underlying(Fields::kFabricIndex))
96
0
        {
97
0
            err = DataModel::Decode(reader, fabricIndex);
98
0
        }
99
100
0
        ReturnErrorOnFailure(err);
101
0
    }
102
0
}
103
104
} // namespace MembershipStruct
105
} // namespace Structs
106
} // namespace Groupcast
107
} // namespace Clusters
108
} // namespace app
109
} // namespace chip