Coverage Report

Created: 2025-08-28 06:31

/src/connectedhomeip/zzz_generated/app-common/clusters/GroupKeyManagement/Commands.h
Line
Count
Source (jump to first uncovered line)
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-Commands.h.zapt
20
21
#pragma once
22
23
#include <app/data-model/DecodableList.h>
24
#include <app/data-model/Encode.h>
25
#include <app/data-model/List.h>
26
#include <app/data-model/NullObject.h>
27
#include <app/data-model/Nullable.h>
28
#include <lib/core/DataModelTypes.h>
29
#include <lib/core/Optional.h>
30
#include <lib/core/TLV.h>
31
#include <lib/support/BitMask.h>
32
33
#include <clusters/shared/Enums.h>
34
#include <clusters/shared/Structs.h>
35
36
#include <clusters/GroupKeyManagement/ClusterId.h>
37
#include <clusters/GroupKeyManagement/CommandIds.h>
38
#include <clusters/GroupKeyManagement/Enums.h>
39
#include <clusters/GroupKeyManagement/Structs.h>
40
41
#include <cstdint>
42
43
namespace chip {
44
namespace app {
45
namespace Clusters {
46
namespace GroupKeyManagement {
47
namespace Commands {
48
// Forward-declarations so we can reference these later.
49
50
namespace KeySetWrite {
51
struct Type;
52
struct DecodableType;
53
} // namespace KeySetWrite
54
55
namespace KeySetRead {
56
struct Type;
57
struct DecodableType;
58
} // namespace KeySetRead
59
60
namespace KeySetReadResponse {
61
struct Type;
62
struct DecodableType;
63
} // namespace KeySetReadResponse
64
65
namespace KeySetRemove {
66
struct Type;
67
struct DecodableType;
68
} // namespace KeySetRemove
69
70
namespace KeySetReadAllIndices {
71
struct Type;
72
struct DecodableType;
73
} // namespace KeySetReadAllIndices
74
75
namespace KeySetReadAllIndicesResponse {
76
struct Type;
77
struct DecodableType;
78
} // namespace KeySetReadAllIndicesResponse
79
80
} // namespace Commands
81
82
namespace Commands {
83
namespace KeySetWrite {
84
enum class Fields : uint8_t
85
{
86
    kGroupKeySet = 0,
87
};
88
89
struct Type
90
{
91
public:
92
    // Use GetCommandId instead of commandId directly to avoid naming conflict with CommandIdentification in ExecutionOfACommand
93
0
    static constexpr CommandId GetCommandId() { return Commands::KeySetWrite::Id; }
94
0
    static constexpr ClusterId GetClusterId() { return Clusters::GroupKeyManagement::Id; }
95
96
    Structs::GroupKeySetStruct::Type groupKeySet;
97
98
    CHIP_ERROR Encode(TLV::TLVWriter & aWriter, TLV::Tag aTag) const;
99
100
    using ResponseType = DataModel::NullObjectType;
101
102
0
    static constexpr bool MustUseTimedInvoke() { return false; }
103
};
104
105
struct DecodableType
106
{
107
public:
108
0
    static constexpr CommandId GetCommandId() { return Commands::KeySetWrite::Id; }
109
0
    static constexpr ClusterId GetClusterId() { return Clusters::GroupKeyManagement::Id; }
110
    static constexpr bool kIsFabricScoped = true;
111
112
    Structs::GroupKeySetStruct::DecodableType groupKeySet;
113
114
    CHIP_ERROR Decode(TLV::TLVReader & reader, FabricIndex aAccessingFabricIndex);
115
};
116
}; // namespace KeySetWrite
117
namespace KeySetRead {
118
enum class Fields : uint8_t
119
{
120
    kGroupKeySetID = 0,
121
};
122
123
struct Type
124
{
125
public:
126
    // Use GetCommandId instead of commandId directly to avoid naming conflict with CommandIdentification in ExecutionOfACommand
127
0
    static constexpr CommandId GetCommandId() { return Commands::KeySetRead::Id; }
128
0
    static constexpr ClusterId GetClusterId() { return Clusters::GroupKeyManagement::Id; }
129
130
    uint16_t groupKeySetID = static_cast<uint16_t>(0);
131
132
    CHIP_ERROR Encode(TLV::TLVWriter & aWriter, TLV::Tag aTag) const;
133
134
    using ResponseType = Clusters::GroupKeyManagement::Commands::KeySetReadResponse::DecodableType;
135
136
0
    static constexpr bool MustUseTimedInvoke() { return false; }
137
};
138
139
struct DecodableType
140
{
141
public:
142
0
    static constexpr CommandId GetCommandId() { return Commands::KeySetRead::Id; }
143
0
    static constexpr ClusterId GetClusterId() { return Clusters::GroupKeyManagement::Id; }
144
    static constexpr bool kIsFabricScoped = true;
145
146
    uint16_t groupKeySetID = static_cast<uint16_t>(0);
147
148
    CHIP_ERROR Decode(TLV::TLVReader & reader, FabricIndex aAccessingFabricIndex);
149
};
150
}; // namespace KeySetRead
151
namespace KeySetReadResponse {
152
enum class Fields : uint8_t
153
{
154
    kGroupKeySet = 0,
155
};
156
157
struct Type
158
{
159
public:
160
    // Use GetCommandId instead of commandId directly to avoid naming conflict with CommandIdentification in ExecutionOfACommand
161
0
    static constexpr CommandId GetCommandId() { return Commands::KeySetReadResponse::Id; }
162
0
    static constexpr ClusterId GetClusterId() { return Clusters::GroupKeyManagement::Id; }
163
164
    Structs::GroupKeySetStruct::Type groupKeySet;
165
166
    CHIP_ERROR Encode(DataModel::FabricAwareTLVWriter & aWriter, TLV::Tag aTag) const;
167
168
    using ResponseType = DataModel::NullObjectType;
169
170
0
    static constexpr bool MustUseTimedInvoke() { return false; }
171
};
172
173
struct DecodableType
174
{
175
public:
176
0
    static constexpr CommandId GetCommandId() { return Commands::KeySetReadResponse::Id; }
177
0
    static constexpr ClusterId GetClusterId() { return Clusters::GroupKeyManagement::Id; }
178
179
    Structs::GroupKeySetStruct::DecodableType groupKeySet;
180
181
    CHIP_ERROR Decode(TLV::TLVReader & reader);
182
};
183
}; // namespace KeySetReadResponse
184
namespace KeySetRemove {
185
enum class Fields : uint8_t
186
{
187
    kGroupKeySetID = 0,
188
};
189
190
struct Type
191
{
192
public:
193
    // Use GetCommandId instead of commandId directly to avoid naming conflict with CommandIdentification in ExecutionOfACommand
194
0
    static constexpr CommandId GetCommandId() { return Commands::KeySetRemove::Id; }
195
0
    static constexpr ClusterId GetClusterId() { return Clusters::GroupKeyManagement::Id; }
196
197
    uint16_t groupKeySetID = static_cast<uint16_t>(0);
198
199
    CHIP_ERROR Encode(TLV::TLVWriter & aWriter, TLV::Tag aTag) const;
200
201
    using ResponseType = DataModel::NullObjectType;
202
203
0
    static constexpr bool MustUseTimedInvoke() { return false; }
204
};
205
206
struct DecodableType
207
{
208
public:
209
0
    static constexpr CommandId GetCommandId() { return Commands::KeySetRemove::Id; }
210
0
    static constexpr ClusterId GetClusterId() { return Clusters::GroupKeyManagement::Id; }
211
    static constexpr bool kIsFabricScoped = true;
212
213
    uint16_t groupKeySetID = static_cast<uint16_t>(0);
214
215
    CHIP_ERROR Decode(TLV::TLVReader & reader, FabricIndex aAccessingFabricIndex);
216
};
217
}; // namespace KeySetRemove
218
namespace KeySetReadAllIndices {
219
enum class Fields : uint8_t
220
{
221
};
222
223
struct Type
224
{
225
public:
226
    // Use GetCommandId instead of commandId directly to avoid naming conflict with CommandIdentification in ExecutionOfACommand
227
0
    static constexpr CommandId GetCommandId() { return Commands::KeySetReadAllIndices::Id; }
228
0
    static constexpr ClusterId GetClusterId() { return Clusters::GroupKeyManagement::Id; }
229
230
    CHIP_ERROR Encode(TLV::TLVWriter & aWriter, TLV::Tag aTag) const;
231
232
    using ResponseType = Clusters::GroupKeyManagement::Commands::KeySetReadAllIndicesResponse::DecodableType;
233
234
0
    static constexpr bool MustUseTimedInvoke() { return false; }
235
};
236
237
struct DecodableType
238
{
239
public:
240
0
    static constexpr CommandId GetCommandId() { return Commands::KeySetReadAllIndices::Id; }
241
0
    static constexpr ClusterId GetClusterId() { return Clusters::GroupKeyManagement::Id; }
242
    static constexpr bool kIsFabricScoped = true;
243
244
    CHIP_ERROR Decode(TLV::TLVReader & reader, FabricIndex aAccessingFabricIndex);
245
};
246
}; // namespace KeySetReadAllIndices
247
namespace KeySetReadAllIndicesResponse {
248
enum class Fields : uint8_t
249
{
250
    kGroupKeySetIDs = 0,
251
};
252
253
struct Type
254
{
255
public:
256
    // Use GetCommandId instead of commandId directly to avoid naming conflict with CommandIdentification in ExecutionOfACommand
257
0
    static constexpr CommandId GetCommandId() { return Commands::KeySetReadAllIndicesResponse::Id; }
258
0
    static constexpr ClusterId GetClusterId() { return Clusters::GroupKeyManagement::Id; }
259
260
    DataModel::List<const uint16_t> groupKeySetIDs;
261
262
    CHIP_ERROR Encode(DataModel::FabricAwareTLVWriter & aWriter, TLV::Tag aTag) const;
263
264
    using ResponseType = DataModel::NullObjectType;
265
266
0
    static constexpr bool MustUseTimedInvoke() { return false; }
267
};
268
269
struct DecodableType
270
{
271
public:
272
0
    static constexpr CommandId GetCommandId() { return Commands::KeySetReadAllIndicesResponse::Id; }
273
0
    static constexpr ClusterId GetClusterId() { return Clusters::GroupKeyManagement::Id; }
274
275
    DataModel::DecodableList<uint16_t> groupKeySetIDs;
276
277
    CHIP_ERROR Decode(TLV::TLVReader & reader);
278
};
279
}; // namespace KeySetReadAllIndicesResponse
280
} // namespace Commands
281
} // namespace GroupKeyManagement
282
} // namespace Clusters
283
} // namespace app
284
} // namespace chip