Coverage Report

Created: 2026-07-10 06:38

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/connectedhomeip/zzz_generated/app-common/clusters/ElectricalEnergyMeasurement/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/ElectricalEnergyMeasurement/AttributeIds.h>
36
#include <clusters/ElectricalEnergyMeasurement/ClusterId.h>
37
#include <clusters/ElectricalEnergyMeasurement/Enums.h>
38
#include <clusters/ElectricalEnergyMeasurement/Structs.h>
39
40
namespace chip {
41
namespace app {
42
namespace Clusters {
43
namespace ElectricalEnergyMeasurement {
44
namespace Attributes {
45
46
namespace Accuracy {
47
struct TypeInfo
48
{
49
    using Type          = chip::app::Clusters::ElectricalEnergyMeasurement::Structs::MeasurementAccuracyStruct::Type;
50
    using DecodableType = chip::app::Clusters::ElectricalEnergyMeasurement::Structs::MeasurementAccuracyStruct::DecodableType;
51
    using DecodableArgType =
52
        const chip::app::Clusters::ElectricalEnergyMeasurement::Structs::MeasurementAccuracyStruct::DecodableType &;
53
54
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalEnergyMeasurement::Id; }
55
0
    static constexpr AttributeId GetAttributeId() { return Attributes::Accuracy::Id; }
56
0
    static constexpr bool MustUseTimedWrite() { return false; }
57
};
58
} // namespace Accuracy
59
namespace CumulativeEnergyImported {
60
struct TypeInfo
61
{
62
    using Type =
63
        chip::app::DataModel::Nullable<chip::app::Clusters::ElectricalEnergyMeasurement::Structs::EnergyMeasurementStruct::Type>;
64
    using DecodableType = chip::app::DataModel::Nullable<
65
        chip::app::Clusters::ElectricalEnergyMeasurement::Structs::EnergyMeasurementStruct::DecodableType>;
66
    using DecodableArgType = const chip::app::DataModel::Nullable<
67
        chip::app::Clusters::ElectricalEnergyMeasurement::Structs::EnergyMeasurementStruct::DecodableType> &;
68
69
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalEnergyMeasurement::Id; }
70
0
    static constexpr AttributeId GetAttributeId() { return Attributes::CumulativeEnergyImported::Id; }
71
0
    static constexpr bool MustUseTimedWrite() { return false; }
72
};
73
} // namespace CumulativeEnergyImported
74
namespace CumulativeEnergyExported {
75
struct TypeInfo
76
{
77
    using Type =
78
        chip::app::DataModel::Nullable<chip::app::Clusters::ElectricalEnergyMeasurement::Structs::EnergyMeasurementStruct::Type>;
79
    using DecodableType = chip::app::DataModel::Nullable<
80
        chip::app::Clusters::ElectricalEnergyMeasurement::Structs::EnergyMeasurementStruct::DecodableType>;
81
    using DecodableArgType = const chip::app::DataModel::Nullable<
82
        chip::app::Clusters::ElectricalEnergyMeasurement::Structs::EnergyMeasurementStruct::DecodableType> &;
83
84
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalEnergyMeasurement::Id; }
85
0
    static constexpr AttributeId GetAttributeId() { return Attributes::CumulativeEnergyExported::Id; }
86
0
    static constexpr bool MustUseTimedWrite() { return false; }
87
};
88
} // namespace CumulativeEnergyExported
89
namespace PeriodicEnergyImported {
90
struct TypeInfo
91
{
92
    using Type =
93
        chip::app::DataModel::Nullable<chip::app::Clusters::ElectricalEnergyMeasurement::Structs::EnergyMeasurementStruct::Type>;
94
    using DecodableType = chip::app::DataModel::Nullable<
95
        chip::app::Clusters::ElectricalEnergyMeasurement::Structs::EnergyMeasurementStruct::DecodableType>;
96
    using DecodableArgType = const chip::app::DataModel::Nullable<
97
        chip::app::Clusters::ElectricalEnergyMeasurement::Structs::EnergyMeasurementStruct::DecodableType> &;
98
99
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalEnergyMeasurement::Id; }
100
0
    static constexpr AttributeId GetAttributeId() { return Attributes::PeriodicEnergyImported::Id; }
101
0
    static constexpr bool MustUseTimedWrite() { return false; }
102
};
103
} // namespace PeriodicEnergyImported
104
namespace PeriodicEnergyExported {
105
struct TypeInfo
106
{
107
    using Type =
108
        chip::app::DataModel::Nullable<chip::app::Clusters::ElectricalEnergyMeasurement::Structs::EnergyMeasurementStruct::Type>;
109
    using DecodableType = chip::app::DataModel::Nullable<
110
        chip::app::Clusters::ElectricalEnergyMeasurement::Structs::EnergyMeasurementStruct::DecodableType>;
111
    using DecodableArgType = const chip::app::DataModel::Nullable<
112
        chip::app::Clusters::ElectricalEnergyMeasurement::Structs::EnergyMeasurementStruct::DecodableType> &;
113
114
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalEnergyMeasurement::Id; }
115
0
    static constexpr AttributeId GetAttributeId() { return Attributes::PeriodicEnergyExported::Id; }
116
0
    static constexpr bool MustUseTimedWrite() { return false; }
117
};
118
} // namespace PeriodicEnergyExported
119
namespace CumulativeEnergyReset {
120
struct TypeInfo
121
{
122
    using Type = chip::app::DataModel::Nullable<
123
        chip::app::Clusters::ElectricalEnergyMeasurement::Structs::CumulativeEnergyResetStruct::Type>;
124
    using DecodableType = chip::app::DataModel::Nullable<
125
        chip::app::Clusters::ElectricalEnergyMeasurement::Structs::CumulativeEnergyResetStruct::DecodableType>;
126
    using DecodableArgType = const chip::app::DataModel::Nullable<
127
        chip::app::Clusters::ElectricalEnergyMeasurement::Structs::CumulativeEnergyResetStruct::DecodableType> &;
128
129
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalEnergyMeasurement::Id; }
130
0
    static constexpr AttributeId GetAttributeId() { return Attributes::CumulativeEnergyReset::Id; }
131
0
    static constexpr bool MustUseTimedWrite() { return false; }
132
};
133
} // namespace CumulativeEnergyReset
134
namespace GeneratedCommandList {
135
struct TypeInfo : public Clusters::Globals::Attributes::GeneratedCommandList::TypeInfo
136
{
137
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalEnergyMeasurement::Id; }
138
};
139
} // namespace GeneratedCommandList
140
namespace AcceptedCommandList {
141
struct TypeInfo : public Clusters::Globals::Attributes::AcceptedCommandList::TypeInfo
142
{
143
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalEnergyMeasurement::Id; }
144
};
145
} // namespace AcceptedCommandList
146
namespace AttributeList {
147
struct TypeInfo : public Clusters::Globals::Attributes::AttributeList::TypeInfo
148
{
149
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalEnergyMeasurement::Id; }
150
};
151
} // namespace AttributeList
152
namespace FeatureMap {
153
struct TypeInfo : public Clusters::Globals::Attributes::FeatureMap::TypeInfo
154
{
155
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalEnergyMeasurement::Id; }
156
};
157
} // namespace FeatureMap
158
namespace ClusterRevision {
159
struct TypeInfo : public Clusters::Globals::Attributes::ClusterRevision::TypeInfo
160
{
161
0
    static constexpr ClusterId GetClusterId() { return Clusters::ElectricalEnergyMeasurement::Id; }
162
};
163
} // namespace ClusterRevision
164
165
struct TypeInfo
166
{
167
    struct DecodableType
168
    {
169
0
        static constexpr ClusterId GetClusterId() { return Clusters::ElectricalEnergyMeasurement::Id; }
170
171
        CHIP_ERROR Decode(TLV::TLVReader & reader, const ConcreteAttributePath & path);
172
173
        Attributes::Accuracy::TypeInfo::DecodableType accuracy;
174
        Attributes::CumulativeEnergyImported::TypeInfo::DecodableType cumulativeEnergyImported;
175
        Attributes::CumulativeEnergyExported::TypeInfo::DecodableType cumulativeEnergyExported;
176
        Attributes::PeriodicEnergyImported::TypeInfo::DecodableType periodicEnergyImported;
177
        Attributes::PeriodicEnergyExported::TypeInfo::DecodableType periodicEnergyExported;
178
        Attributes::CumulativeEnergyReset::TypeInfo::DecodableType cumulativeEnergyReset;
179
        Attributes::GeneratedCommandList::TypeInfo::DecodableType generatedCommandList;
180
        Attributes::AcceptedCommandList::TypeInfo::DecodableType acceptedCommandList;
181
        Attributes::AttributeList::TypeInfo::DecodableType attributeList;
182
        Attributes::FeatureMap::TypeInfo::DecodableType featureMap           = static_cast<uint32_t>(0);
183
        Attributes::ClusterRevision::TypeInfo::DecodableType clusterRevision = static_cast<uint16_t>(0);
184
    };
185
};
186
} // namespace Attributes
187
} // namespace ElectricalEnergyMeasurement
188
} // namespace Clusters
189
} // namespace app
190
} // namespace chip