|
30 | 30 |
|
31 | 31 | struct WeekDaysScheduleInfo
|
32 | 32 | {
|
33 |
| - DlScheduleStatus status; |
| 33 | + DlScheduleStatus status = DlScheduleStatus::kAvailable; |
34 | 34 | EmberAfPluginDoorLockWeekDaySchedule schedule;
|
35 | 35 | };
|
36 | 36 |
|
37 | 37 | struct YearDayScheduleInfo
|
38 | 38 | {
|
39 |
| - DlScheduleStatus status; |
| 39 | + DlScheduleStatus status = DlScheduleStatus::kAvailable; |
40 | 40 | EmberAfPluginDoorLockYearDaySchedule schedule;
|
41 | 41 | };
|
42 | 42 |
|
43 | 43 | struct HolidayScheduleInfo
|
44 | 44 | {
|
45 |
| - DlScheduleStatus status; |
| 45 | + DlScheduleStatus status = DlScheduleStatus::kAvailable; |
46 | 46 | EmberAfPluginDoorLockHolidaySchedule schedule;
|
47 | 47 | };
|
48 | 48 |
|
49 | 49 | namespace TelinkDoorLock {
|
50 | 50 | namespace ResourceRanges {
|
51 | 51 | // Used to size arrays
|
52 |
| -static constexpr uint16_t kMaxUsers = 10; |
53 |
| -static constexpr uint8_t kMaxCredentialsPerUser = 10; |
54 |
| -static constexpr uint8_t kMaxWeekdaySchedulesPerUser = 10; |
55 |
| -static constexpr uint8_t kMaxYeardaySchedulesPerUser = 10; |
56 |
| -static constexpr uint8_t kMaxHolidaySchedules = 10; |
57 |
| -static constexpr uint8_t kMaxCredentialSize = 20; |
58 |
| -static constexpr uint8_t kNumCredentialTypes = 6; |
59 |
| - |
60 |
| -static constexpr uint8_t kMaxCredentials = kMaxUsers * kMaxCredentialsPerUser; |
| 52 | +static constexpr uint8_t kMaxCredentialSize = 20; |
| 53 | +static constexpr uint8_t kNumCredentialTypes = 6; |
61 | 54 |
|
62 | 55 | } // namespace ResourceRanges
|
63 | 56 |
|
@@ -197,26 +190,24 @@ class LockManager
|
197 | 190 | OperationSource mActuatorOperationSource = OperationSource::kButton;
|
198 | 191 | k_timer mActuatorTimer = {};
|
199 | 192 |
|
200 |
| -#if LOCK_MANAGER_CONFIG_USE_NVM_CREDENTIAL_STORAGE |
201 |
| - bool ReadConfigValues(); |
202 |
| -#endif |
203 |
| - |
204 | 193 | bool setLockState(chip::EndpointId endpointId, DlLockState lockState, OperationSource source, OperationErrorEnum & err,
|
205 | 194 | const Nullable<chip::FabricIndex> & fabricIdx, const Nullable<chip::NodeId> & nodeId,
|
206 | 195 | const Optional<chip::ByteSpan> & pin);
|
207 | 196 |
|
208 | 197 | static void ActuatorTimerEventHandler(k_timer * timer);
|
209 | 198 | static void ActuatorAppEventHandler(const AppEvent & event);
|
210 | 199 |
|
211 |
| - EmberAfPluginDoorLockUserInfo mLockUsers[kMaxUsers]; |
212 |
| - EmberAfPluginDoorLockCredentialInfo mLockCredentials[kNumCredentialTypes][kMaxCredentials]; |
213 |
| - WeekDaysScheduleInfo mWeekdaySchedule[kMaxUsers][kMaxWeekdaySchedulesPerUser]; |
214 |
| - YearDayScheduleInfo mYeardaySchedule[kMaxUsers][kMaxYeardaySchedulesPerUser]; |
215 |
| - HolidayScheduleInfo mHolidaySchedule[kMaxHolidaySchedules]; |
| 200 | +#if !LOCK_MANAGER_CONFIG_USE_NVM_CREDENTIAL_STORAGE |
| 201 | + EmberAfPluginDoorLockUserInfo mLockUsers[APP_MAX_USERS]; |
| 202 | + EmberAfPluginDoorLockCredentialInfo mLockCredentials[kNumCredentialTypes][APP_MAX_CREDENTIAL]; |
| 203 | + WeekDaysScheduleInfo mWeekdaySchedule[APP_MAX_USERS][APP_MAX_WEEKDAY_SCHEDULE_PER_USER]; |
| 204 | + YearDayScheduleInfo mYeardaySchedule[APP_MAX_USERS][APP_MAX_YEARDAY_SCHEDULE_PER_USER]; |
| 205 | + HolidayScheduleInfo mHolidaySchedule[APP_MAX_HOLYDAY_SCHEDULE_PER_USER]; |
216 | 206 |
|
217 | 207 | char mUserNames[ArraySize(mLockUsers)][DOOR_LOCK_MAX_USER_NAME_SIZE];
|
218 |
| - uint8_t mCredentialData[kNumCredentialTypes][kMaxCredentials][kMaxCredentialSize]; |
219 |
| - CredentialStruct mCredentials[kMaxUsers][kMaxCredentials]; |
| 208 | + uint8_t mCredentialData[kNumCredentialTypes][APP_MAX_CREDENTIAL][kMaxCredentialSize]; |
| 209 | + CredentialStruct mCredentials[APP_MAX_USERS][APP_MAX_CREDENTIAL]; |
| 210 | +#endif |
220 | 211 |
|
221 | 212 | static LockManager sLock;
|
222 | 213 | TelinkDoorLock::LockInitParams::LockParam LockParams;
|
|
0 commit comments