Coverage Report

Created: 2026-09-24 06:58

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/connectedhomeip/zzz_generated/app-common/clusters/ElectricalProtectionAlarm/Attributes.h
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-Attributes.h.zapt
20
21
#pragma once
22
23
#include <app/ConcreteAttributePath.h>
24
#include <app/data-model/DecodableList.h>
25
#include <app/data-model/List.h>
26
#include <app/data-model/Nullable.h>
27
#include <app/util/basic-types.h>
28
#include <lib/core/TLV.h>
29
#include <lib/support/BitMask.h>
30
31
#include <clusters/shared/Attributes.h>
32
#include <clusters/shared/Enums.h>
33
#include <clusters/shared/Structs.h>
34
35
#include <clusters/ElectricalProtectionAlarm/AttributeIds.h>
36
#include <clusters/ElectricalProtectionAlarm/ClusterId.h>
37
#include <clusters/ElectricalProtectionAlarm/Enums.h>
38
#include <clusters/ElectricalProtectionAlarm/Structs.h>
39
40
namespace chip {
41
namespace app {
42
namespace Clusters {
43
namespace ElectricalProtectionAlarm {
44
namespace Attributes {
45
46
namespace Mask {
47
struct TypeInfo
48
{
49
    using Type             = chip::BitMask<chip::app::Clusters::ElectricalProtectionAlarm::AlarmBitmap>;
50
    using DecodableType    = chip::BitMask<chip::app::Clusters::ElectricalProtectionAlarm::AlarmBitmap>;
51
    using DecodableArgType = chip::BitMask<chip::app::Clusters::ElectricalProtectionAlarm::AlarmBitmap>;
52
53
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalProtectionAlarm::Id; }
54
0
    static constexpr AttributeId GetAttributeId() { return Attributes::Mask::Id; }
55
0
    static constexpr bool MustUseTimedWrite() { return false; }
56
};
57
} // namespace Mask
58
namespace State {
59
struct TypeInfo
60
{
61
    using Type             = chip::BitMask<chip::app::Clusters::ElectricalProtectionAlarm::AlarmBitmap>;
62
    using DecodableType    = chip::BitMask<chip::app::Clusters::ElectricalProtectionAlarm::AlarmBitmap>;
63
    using DecodableArgType = chip::BitMask<chip::app::Clusters::ElectricalProtectionAlarm::AlarmBitmap>;
64
65
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalProtectionAlarm::Id; }
66
0
    static constexpr AttributeId GetAttributeId() { return Attributes::State::Id; }
67
0
    static constexpr bool MustUseTimedWrite() { return false; }
68
};
69
} // namespace State
70
namespace Supported {
71
struct TypeInfo
72
{
73
    using Type             = chip::BitMask<chip::app::Clusters::ElectricalProtectionAlarm::AlarmBitmap>;
74
    using DecodableType    = chip::BitMask<chip::app::Clusters::ElectricalProtectionAlarm::AlarmBitmap>;
75
    using DecodableArgType = chip::BitMask<chip::app::Clusters::ElectricalProtectionAlarm::AlarmBitmap>;
76
77
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalProtectionAlarm::Id; }
78
0
    static constexpr AttributeId GetAttributeId() { return Attributes::Supported::Id; }
79
0
    static constexpr bool MustUseTimedWrite() { return false; }
80
};
81
} // namespace Supported
82
namespace ArcCause {
83
struct TypeInfo
84
{
85
    using Type = chip::app::DataModel::Nullable<chip::BitMask<chip::app::Clusters::ElectricalProtectionAlarm::ArcCauseBitmap>>;
86
    using DecodableType =
87
        chip::app::DataModel::Nullable<chip::BitMask<chip::app::Clusters::ElectricalProtectionAlarm::ArcCauseBitmap>>;
88
    using DecodableArgType =
89
        const chip::app::DataModel::Nullable<chip::BitMask<chip::app::Clusters::ElectricalProtectionAlarm::ArcCauseBitmap>> &;
90
91
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalProtectionAlarm::Id; }
92
0
    static constexpr AttributeId GetAttributeId() { return Attributes::ArcCause::Id; }
93
0
    static constexpr bool MustUseTimedWrite() { return false; }
94
};
95
} // namespace ArcCause
96
namespace OverLoadRating {
97
struct TypeInfo
98
{
99
    using Type =
100
        chip::app::DataModel::Nullable<chip::app::Clusters::ElectricalProtectionAlarm::Structs::OverLoadRatingsStruct::Type>;
101
    using DecodableType = chip::app::DataModel::Nullable<
102
        chip::app::Clusters::ElectricalProtectionAlarm::Structs::OverLoadRatingsStruct::DecodableType>;
103
    using DecodableArgType = const chip::app::DataModel::Nullable<
104
        chip::app::Clusters::ElectricalProtectionAlarm::Structs::OverLoadRatingsStruct::DecodableType> &;
105
106
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalProtectionAlarm::Id; }
107
0
    static constexpr AttributeId GetAttributeId() { return Attributes::OverLoadRating::Id; }
108
0
    static constexpr bool MustUseTimedWrite() { return false; }
109
};
110
} // namespace OverLoadRating
111
namespace OverVoltageRating {
112
struct TypeInfo
113
{
114
    using Type =
115
        chip::app::DataModel::Nullable<chip::app::Clusters::ElectricalProtectionAlarm::Structs::OverVoltageRatingsStruct::Type>;
116
    using DecodableType = chip::app::DataModel::Nullable<
117
        chip::app::Clusters::ElectricalProtectionAlarm::Structs::OverVoltageRatingsStruct::DecodableType>;
118
    using DecodableArgType = const chip::app::DataModel::Nullable<
119
        chip::app::Clusters::ElectricalProtectionAlarm::Structs::OverVoltageRatingsStruct::DecodableType> &;
120
121
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalProtectionAlarm::Id; }
122
0
    static constexpr AttributeId GetAttributeId() { return Attributes::OverVoltageRating::Id; }
123
0
    static constexpr bool MustUseTimedWrite() { return false; }
124
};
125
} // namespace OverVoltageRating
126
namespace SurgeProtectionRating {
127
struct TypeInfo
128
{
129
    using Type =
130
        chip::app::DataModel::Nullable<chip::app::Clusters::ElectricalProtectionAlarm::Structs::SurgeProtectionRatingsStruct::Type>;
131
    using DecodableType = chip::app::DataModel::Nullable<
132
        chip::app::Clusters::ElectricalProtectionAlarm::Structs::SurgeProtectionRatingsStruct::DecodableType>;
133
    using DecodableArgType = const chip::app::DataModel::Nullable<
134
        chip::app::Clusters::ElectricalProtectionAlarm::Structs::SurgeProtectionRatingsStruct::DecodableType> &;
135
136
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalProtectionAlarm::Id; }
137
0
    static constexpr AttributeId GetAttributeId() { return Attributes::SurgeProtectionRating::Id; }
138
0
    static constexpr bool MustUseTimedWrite() { return false; }
139
};
140
} // namespace SurgeProtectionRating
141
namespace ShortCircuitRating {
142
struct TypeInfo
143
{
144
    using Type =
145
        chip::app::DataModel::Nullable<chip::app::Clusters::ElectricalProtectionAlarm::Structs::ShortCircuitRatingsStruct::Type>;
146
    using DecodableType = chip::app::DataModel::Nullable<
147
        chip::app::Clusters::ElectricalProtectionAlarm::Structs::ShortCircuitRatingsStruct::DecodableType>;
148
    using DecodableArgType = const chip::app::DataModel::Nullable<
149
        chip::app::Clusters::ElectricalProtectionAlarm::Structs::ShortCircuitRatingsStruct::DecodableType> &;
150
151
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalProtectionAlarm::Id; }
152
0
    static constexpr AttributeId GetAttributeId() { return Attributes::ShortCircuitRating::Id; }
153
0
    static constexpr bool MustUseTimedWrite() { return false; }
154
};
155
} // namespace ShortCircuitRating
156
namespace ResidualCurrentRating {
157
struct TypeInfo
158
{
159
    using Type = chip::app::DataModel::Nullable<
160
        chip::app::Clusters::ElectricalProtectionAlarm::Structs::ResidualCurrentFaultRatingsStruct::Type>;
161
    using DecodableType = chip::app::DataModel::Nullable<
162
        chip::app::Clusters::ElectricalProtectionAlarm::Structs::ResidualCurrentFaultRatingsStruct::DecodableType>;
163
    using DecodableArgType = const chip::app::DataModel::Nullable<
164
        chip::app::Clusters::ElectricalProtectionAlarm::Structs::ResidualCurrentFaultRatingsStruct::DecodableType> &;
165
166
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalProtectionAlarm::Id; }
167
0
    static constexpr AttributeId GetAttributeId() { return Attributes::ResidualCurrentRating::Id; }
168
0
    static constexpr bool MustUseTimedWrite() { return false; }
169
};
170
} // namespace ResidualCurrentRating
171
namespace ArcFaultRating {
172
struct TypeInfo
173
{
174
    using Type =
175
        chip::app::DataModel::Nullable<chip::app::Clusters::ElectricalProtectionAlarm::Structs::ArcFaultRatingsStruct::Type>;
176
    using DecodableType = chip::app::DataModel::Nullable<
177
        chip::app::Clusters::ElectricalProtectionAlarm::Structs::ArcFaultRatingsStruct::DecodableType>;
178
    using DecodableArgType = const chip::app::DataModel::Nullable<
179
        chip::app::Clusters::ElectricalProtectionAlarm::Structs::ArcFaultRatingsStruct::DecodableType> &;
180
181
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalProtectionAlarm::Id; }
182
0
    static constexpr AttributeId GetAttributeId() { return Attributes::ArcFaultRating::Id; }
183
0
    static constexpr bool MustUseTimedWrite() { return false; }
184
};
185
} // namespace ArcFaultRating
186
namespace GeneratedCommandList {
187
struct TypeInfo : public Clusters::Globals::Attributes::GeneratedCommandList::TypeInfo
188
{
189
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalProtectionAlarm::Id; }
190
};
191
} // namespace GeneratedCommandList
192
namespace AcceptedCommandList {
193
struct TypeInfo : public Clusters::Globals::Attributes::AcceptedCommandList::TypeInfo
194
{
195
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalProtectionAlarm::Id; }
196
};
197
} // namespace AcceptedCommandList
198
namespace AttributeList {
199
struct TypeInfo : public Clusters::Globals::Attributes::AttributeList::TypeInfo
200
{
201
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalProtectionAlarm::Id; }
202
};
203
} // namespace AttributeList
204
namespace FeatureMap {
205
struct TypeInfo : public Clusters::Globals::Attributes::FeatureMap::TypeInfo
206
{
207
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalProtectionAlarm::Id; }
208
};
209
} // namespace FeatureMap
210
namespace ClusterRevision {
211
struct TypeInfo : public Clusters::Globals::Attributes::ClusterRevision::TypeInfo
212
{
213
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalProtectionAlarm::Id; }
214
};
215
} // namespace ClusterRevision
216
217
struct TypeInfo
218
{
219
    struct DecodableType
220
    {
221
0
        static constexpr ClusterId GetClusterId() { return Clusters::ElectricalProtectionAlarm::Id; }
222
223
        CHIP_ERROR Decode(TLV::TLVReader & reader, const ConcreteAttributePath & path);
224
225
        Attributes::Mask::TypeInfo::DecodableType mask =
226
            static_cast<chip::BitMask<chip::app::Clusters::ElectricalProtectionAlarm::AlarmBitmap>>(0);
227
        Attributes::State::TypeInfo::DecodableType state =
228
            static_cast<chip::BitMask<chip::app::Clusters::ElectricalProtectionAlarm::AlarmBitmap>>(0);
229
        Attributes::Supported::TypeInfo::DecodableType supported =
230
            static_cast<chip::BitMask<chip::app::Clusters::ElectricalProtectionAlarm::AlarmBitmap>>(0);
231
        Attributes::ArcCause::TypeInfo::DecodableType arcCause;
232
        Attributes::OverLoadRating::TypeInfo::DecodableType overLoadRating;
233
        Attributes::OverVoltageRating::TypeInfo::DecodableType overVoltageRating;
234
        Attributes::SurgeProtectionRating::TypeInfo::DecodableType surgeProtectionRating;
235
        Attributes::ShortCircuitRating::TypeInfo::DecodableType shortCircuitRating;
236
        Attributes::ResidualCurrentRating::TypeInfo::DecodableType residualCurrentRating;
237
        Attributes::ArcFaultRating::TypeInfo::DecodableType arcFaultRating;
238
        Attributes::GeneratedCommandList::TypeInfo::DecodableType generatedCommandList;
239
        Attributes::AcceptedCommandList::TypeInfo::DecodableType acceptedCommandList;
240
        Attributes::AttributeList::TypeInfo::DecodableType attributeList;
241
        Attributes::FeatureMap::TypeInfo::DecodableType featureMap           = static_cast<uint32_t>(0);
242
        Attributes::ClusterRevision::TypeInfo::DecodableType clusterRevision = static_cast<uint16_t>(0);
243
    };
244
};
245
} // namespace Attributes
246
} // namespace ElectricalProtectionAlarm
247
} // namespace Clusters
248
} // namespace app
249
} // namespace chip