15
15
* limitations under the License.
16
16
*/
17
17
18
- #include " occupancy-hal.h"
19
18
#include " occupancy-sensor-server.h"
19
+ #include " occupancy-hal.h"
20
20
21
21
#include < app/AttributeAccessInterfaceRegistry.h>
22
- #include < app/data-model/Encode.h>
23
22
#include < app/EventLogging.h>
23
+ #include < app/data-model/Encode.h>
24
24
#include < app/util/attribute-storage.h>
25
25
#include < lib/core/CHIPError.h>
26
26
27
-
28
-
29
27
using chip::Protocols::InteractionModel::Status;
30
28
31
29
namespace chip {
@@ -35,19 +33,19 @@ namespace OccupancySensing {
35
33
36
34
Structs::HoldTimeLimitsStruct::Type * HoldTimeLimitsManager::HoldTimeLimits::GetHoldTimeLimitsStruct (EndpointId endpoint)
37
35
{
38
- size_t endpointIndex = 0 ;
39
- Structs::HoldTimeLimitsStruct::Type * holdTimeLimitsStruct = nullptr ;
40
- CHIP_ERROR status = FindHoldTimeLimitsIndex (endpoint, endpointIndex);
41
- if (CHIP_NO_ERROR == status)
36
+ size_t endpointIndex = 0 ;
37
+ Structs::HoldTimeLimitsStruct::Type * holdTimeLimitsStruct = nullptr ;
38
+ CHIP_ERROR status = FindHoldTimeLimitsIndex (endpoint, endpointIndex);
39
+ if (CHIP_NO_ERROR == status)
42
40
{
43
41
holdTimeLimitsStruct = &mHoldTimeLimitsStructs [endpointIndex];
44
42
}
45
43
return holdTimeLimitsStruct;
46
44
}
47
45
48
-
49
- CHIP_ERROR HoldTimeLimitsManager::HoldTimeLimits::SetHoldTimeLimitsStruct (EndpointId endpoint,
50
- Structs::HoldTimeLimitsStruct::Type & holdTimeLimitsStruct)
46
+ CHIP_ERROR
47
+ HoldTimeLimitsManager::HoldTimeLimits::SetHoldTimeLimitsStruct (EndpointId endpoint,
48
+ Structs::HoldTimeLimitsStruct::Type & holdTimeLimitsStruct)
51
49
{
52
50
VerifyOrReturnError (kInvalidEndpointId != endpoint, CHIP_ERROR_INVALID_ARGUMENT);
53
51
@@ -67,8 +65,8 @@ CHIP_ERROR HoldTimeLimitsManager::HoldTimeLimits::FindHoldTimeLimitsIndex(Endpoi
67
65
{
68
66
VerifyOrReturnError (kInvalidEndpointId != endpoint, CHIP_ERROR_INVALID_ARGUMENT);
69
67
70
- uint16_t index =
71
- emberAfGetClusterServerEndpointIndex (endpoint, OccupancySensing::Id, MATTER_DM_OCCUPANCY_SENSING_CLUSTER_SERVER_ENDPOINT_COUNT);
68
+ uint16_t index = emberAfGetClusterServerEndpointIndex (endpoint, OccupancySensing::Id,
69
+ MATTER_DM_OCCUPANCY_SENSING_CLUSTER_SERVER_ENDPOINT_COUNT);
72
70
73
71
if (index < ArraySize (mHoldTimeLimitsStructs ))
74
72
{
@@ -90,41 +88,41 @@ CHIP_ERROR HoldTimeLimitsManager::Init()
90
88
// Prevents re-initializing
91
89
VerifyOrReturnError (!mIsInitialized , CHIP_ERROR_INCORRECT_STATE);
92
90
93
- for (size_t i = 0 ; i <= kOccupancySensingServerMaxEndpointCount ; i++)
91
+ for (size_t i = 0 ; i <= kOccupancySensingServerMaxEndpointCount ; i++)
94
92
{
95
- if (emberAfContainsServer (EndpointId (i), OccupancySensing::Id))
96
- {
97
- Structs::HoldTimeLimitsStruct::Type holdTimeLimitsInit;
93
+ if (emberAfContainsServer (EndpointId (i), OccupancySensing::Id))
94
+ {
95
+ Structs::HoldTimeLimitsStruct::Type holdTimeLimitsInit;
98
96
99
- // Set up some sane initial values for hold time limits structures
100
- holdTimeLimitsInit.holdTimeMin = 1 ;
101
- holdTimeLimitsInit.holdTimeMax = 300 ;
102
- holdTimeLimitsInit.holdTimeDefault = 10 ;
97
+ // Set up some sane initial values for hold time limits structures
98
+ holdTimeLimitsInit.holdTimeMin = 1 ;
99
+ holdTimeLimitsInit.holdTimeMax = 300 ;
100
+ holdTimeLimitsInit.holdTimeDefault = 10 ;
103
101
104
- HoldTimeLimitsManager::Instance ().SetHoldTimeLimitsStruct (EndpointId (i),holdTimeLimitsInit);
105
- }
106
- }
102
+ HoldTimeLimitsManager::Instance ().SetHoldTimeLimitsStruct (EndpointId (i), holdTimeLimitsInit);
103
+ }
104
+ }
107
105
108
106
VerifyOrReturnError (registerAttributeAccessOverride (this ), CHIP_ERROR_INCORRECT_STATE);
109
107
110
-
111
108
mIsInitialized = true ;
112
109
return CHIP_NO_ERROR;
113
110
}
114
111
115
- // AttributeAccessInterface
112
+ // AttributeAccessInterface
116
113
CHIP_ERROR HoldTimeLimitsManager::Read (const ConcreteReadAttributePath & aPath, AttributeValueEncoder & aEncoder)
117
114
{
118
115
switch (aPath.mAttributeId )
119
116
{
120
117
case Attributes::HoldTimeLimits::Id: {
121
118
122
- Structs::HoldTimeLimitsStruct::Type * holdTimeLimitsStruct = HoldTimeLimitsManager::Instance ().mHoldTimeLimits .GetHoldTimeLimitsStruct (aPath.mEndpointId );
123
- Structs::HoldTimeLimitsStruct::Type res;
124
- res.holdTimeMin = holdTimeLimitsStruct->holdTimeMin ;
125
- res.holdTimeMax = holdTimeLimitsStruct->holdTimeMax ;
126
- res.holdTimeDefault = holdTimeLimitsStruct->holdTimeDefault ;
127
- return aEncoder.Encode (res);
119
+ Structs::HoldTimeLimitsStruct::Type * holdTimeLimitsStruct =
120
+ HoldTimeLimitsManager::Instance ().mHoldTimeLimits .GetHoldTimeLimitsStruct (aPath.mEndpointId );
121
+ Structs::HoldTimeLimitsStruct::Type res;
122
+ res.holdTimeMin = holdTimeLimitsStruct->holdTimeMin ;
123
+ res.holdTimeMax = holdTimeLimitsStruct->holdTimeMax ;
124
+ res.holdTimeDefault = holdTimeLimitsStruct->holdTimeDefault ;
125
+ return aEncoder.Encode (res);
128
126
}
129
127
default :
130
128
return CHIP_NO_ERROR;
@@ -138,7 +136,7 @@ Structs::HoldTimeLimitsStruct::Type * HoldTimeLimitsManager::GetHoldTimeLimitsSt
138
136
}
139
137
140
138
CHIP_ERROR HoldTimeLimitsManager::SetHoldTimeLimitsStruct (EndpointId endpoint,
141
- Structs::HoldTimeLimitsStruct::Type & holdTimeLimitsStruct)
139
+ Structs::HoldTimeLimitsStruct::Type & holdTimeLimitsStruct)
142
140
{
143
141
ReturnErrorOnFailure (mHoldTimeLimits .SetHoldTimeLimitsStruct (endpoint, holdTimeLimitsStruct));
144
142
return CHIP_NO_ERROR;
@@ -214,15 +212,14 @@ void halOccupancyStateChangedCallback(EndpointId endpoint, HalOccupancyState occ
214
212
Attributes::Occupancy::Set (endpoint, occupancyState);
215
213
}
216
214
217
-
218
215
HalOccupancySensorType __attribute__ ((weak)) halOccupancyGetSensorType(EndpointId endpoint)
219
216
{
220
217
return HAL_OCCUPANCY_SENSOR_TYPE_PIR;
221
218
}
222
219
223
220
void MatterOccupancySensingPluginServerInitCallback ()
224
221
{
225
- CHIP_ERROR err = HoldTimeLimitsManager::Instance ().Init ();
222
+ CHIP_ERROR err = HoldTimeLimitsManager::Instance ().Init ();
226
223
if (err != CHIP_NO_ERROR)
227
224
{
228
225
ChipLogError (Zcl, " HoldTimeLimitsManager::Instance().Init() error: %" CHIP_ERROR_FORMAT, err.Format ());
0 commit comments