@@ -102,17 +102,20 @@ typedef struct ScheduleWeeklyMask {
102102 ScheduleState day[7 ];
103103}ScheduleWeeklyMask;
104104
105+ typedef unsigned int ScheduleTimeType;
106+ typedef unsigned int ScheduleConfigurationType;
107+
105108/* *****************************************************************************
106109 CLASS DECLARATION
107110 ******************************************************************************/
108111class Schedule {
109112 public:
110- unsigned int frm, to, len, msk;
111- Schedule (unsigned int s, unsigned int e, unsigned int d, unsigned int m): frm(s), to(e), len(d), msk(m) {}
113+ ScheduleTimeType frm, to, len, msk;
114+ Schedule (ScheduleTimeType s, ScheduleTimeType e, ScheduleTimeType d, ScheduleConfigurationType m): frm(s), to(e), len(d), msk(m) {}
112115
113116 bool isActive () {
114117
115- unsigned int now = _schedule_time_service->getLocalTime ();
118+ ScheduleTimeType now = _schedule_time_service->getLocalTime ();
116119
117120 if (checkTimeValid (now)) {
118121 /* We have to wait RTC configuration and Timezone setting from the cloud */
@@ -121,9 +124,9 @@ class Schedule {
121124 /* We are in the schedule range */
122125
123126 if (checkScheduleMask (now, msk)) {
124-
127+
125128 /* We can assume now that the schedule is always repeating with fixed delta */
126- unsigned int delta = getScheduleDelta (msk);
129+ ScheduleTimeType delta = getScheduleDelta (msk);
127130 if ( ( (std::max (now , frm) - std::min (now , frm)) % delta ) <= len ) {
128131 return true ;
129132 }
@@ -133,11 +136,11 @@ class Schedule {
133136 return false ;
134137 }
135138
136- static unsigned int createOneShotScheduleConfiguration () {
139+ static ScheduleConfigurationType createOneShotScheduleConfiguration () {
137140 return 0 ;
138141 }
139142
140- static unsigned int createFixedDeltaScheduleConfiguration (ScheduleUnit unit, unsigned int delta) {
143+ static ScheduleConfigurationType createFixedDeltaScheduleConfiguration (ScheduleUnit unit, unsigned int delta) {
141144 int temp_unit = static_cast <int >(unit);
142145 int temp_type = static_cast <int >(ScheduleType::FixedDelta);
143146 unsigned int temp_delta = delta;
@@ -148,7 +151,7 @@ class Schedule {
148151 return (temp_unit << SCHEDULE_UNIT_SHIFT) | (temp_type << SCHEDULE_TYPE_SHIFT) | temp_delta;
149152 }
150153
151- static unsigned int createWeeklyScheduleConfiguration (ScheduleWeeklyMask weekMask) {
154+ static ScheduleConfigurationType createWeeklyScheduleConfiguration (ScheduleWeeklyMask weekMask) {
152155 unsigned int temp_week = 0 ;
153156 int temp_type = static_cast <int >(ScheduleType::Weekly);
154157
@@ -160,7 +163,7 @@ class Schedule {
160163 return (temp_type << SCHEDULE_TYPE_SHIFT) | temp_week;
161164 }
162165
163- static unsigned int createMonthlyScheduleConfiguration (int dayOfTheMonth) {
166+ static ScheduleConfigurationType createMonthlyScheduleConfiguration (int dayOfTheMonth) {
164167 int temp_day = dayOfTheMonth;
165168 int temp_type = static_cast <int >(ScheduleType::Monthly);
166169
@@ -174,7 +177,7 @@ class Schedule {
174177 return (temp_type << SCHEDULE_TYPE_SHIFT) | temp_day;
175178 }
176179
177- static unsigned int createYearlyScheduleConfiguration (ScheduleMonth month, int dayOfTheMonth) {
180+ static ScheduleConfigurationType createYearlyScheduleConfiguration (ScheduleMonth month, int dayOfTheMonth) {
178181 unsigned int temp_day = createMonthlyScheduleConfiguration (dayOfTheMonth);
179182 int temp_month = static_cast <int >(month);
180183 int temp_type = static_cast <int >(ScheduleType::Yearly);
@@ -200,75 +203,75 @@ class Schedule {
200203 private:
201204 TimeService * _schedule_time_service = ArduinoIoTCloudTimeService();
202205
203- ScheduleUnit getScheduleUnit (unsigned int msk) {
206+ ScheduleUnit getScheduleUnit (ScheduleConfigurationType msk) {
204207 return static_cast <ScheduleUnit>((msk & SCHEDULE_UNIT_MASK) >> SCHEDULE_UNIT_SHIFT);
205208 }
206209
207- ScheduleType getScheduleType (unsigned int msk) {
210+ ScheduleType getScheduleType (ScheduleConfigurationType msk) {
208211 return static_cast <ScheduleType>((msk & SCHEDULE_TYPE_MASK) >> SCHEDULE_TYPE_SHIFT);
209212 }
210213
211- unsigned int getScheduleRepetition (unsigned int msk) {
214+ unsigned int getScheduleRepetition (ScheduleConfigurationType msk) {
212215 return (msk & SCHEDULE_REP_MASK);
213216 }
214217
215- unsigned int getScheduleWeekMask (unsigned int msk) {
218+ unsigned int getScheduleWeekMask (ScheduleConfigurationType msk) {
216219 return (msk & SCHEDULE_WEEK_MASK);
217220 }
218221
219- unsigned int getScheduleDay (unsigned int msk) {
222+ unsigned int getScheduleDay (ScheduleConfigurationType msk) {
220223 return (msk & SCHEDULE_DAY_MASK);
221224 }
222225
223- unsigned int getScheduleMonth (unsigned int msk) {
226+ unsigned int getScheduleMonth (ScheduleConfigurationType msk) {
224227 return ((msk & SCHEDULE_MONTH_MASK) >> SCHEDULE_MONTH_SHIFT);
225228 }
226229
227- bool isScheduleOneShot (unsigned int msk) {
230+ bool isScheduleOneShot (ScheduleConfigurationType msk) {
228231 return (getScheduleType (msk) == ScheduleType::OneShot) ? true : false ;
229232 }
230233
231- bool isScheduleFixed (unsigned int msk) {
234+ bool isScheduleFixed (ScheduleConfigurationType msk) {
232235 return (getScheduleType (msk) == ScheduleType::FixedDelta) ? true : false ;
233236 }
234237
235- bool isScheduleWeekly (unsigned int msk) {
238+ bool isScheduleWeekly (ScheduleConfigurationType msk) {
236239 return (getScheduleType (msk) == ScheduleType::Weekly) ? true : false ;
237240 }
238241
239- bool isScheduleMonthly (unsigned int msk) {
242+ bool isScheduleMonthly (ScheduleConfigurationType msk) {
240243 return (getScheduleType (msk) == ScheduleType::Monthly) ? true : false ;
241244 }
242245
243- bool isScheduleYearly (unsigned int msk) {
246+ bool isScheduleYearly (ScheduleConfigurationType msk) {
244247 return (getScheduleType (msk) == ScheduleType::Yearly) ? true : false ;
245248 }
246249
247- bool isScheduleInSeconds (unsigned int msk) {
250+ bool isScheduleInSeconds (ScheduleConfigurationType msk) {
248251 if (isScheduleFixed (msk)) {
249252 return (getScheduleUnit (msk) == ScheduleUnit::Seconds) ? true : false ;
250253 } else {
251254 return false ;
252255 }
253256 }
254257
255- bool isScheduleInMinutes (unsigned int msk) {
258+ bool isScheduleInMinutes (ScheduleConfigurationType msk) {
256259 if (isScheduleFixed (msk)) {
257260 return (getScheduleUnit (msk) == ScheduleUnit::Minutes) ? true : false ;
258261 } else {
259262 return false ;
260263 }
261264 }
262265
263- bool isScheduleInHours (unsigned int msk) {
266+ bool isScheduleInHours (ScheduleConfigurationType msk) {
264267 if (isScheduleFixed (msk)) {
265268 return (getScheduleUnit (msk) == ScheduleUnit::Hours) ? true : false ;
266269 } else {
267270 return false ;
268271 }
269272 }
270273
271- bool isScheduleInDays (unsigned int msk) {
274+ bool isScheduleInDays (ScheduleConfigurationType msk) {
272275 if (isScheduleFixed (msk)) {
273276 return (getScheduleUnit (msk) == ScheduleUnit::Days) ? true : false ;
274277 } else {
@@ -297,11 +300,11 @@ class Schedule {
297300 return ptm->tm_mon ;
298301 }
299302
300- bool checkTimeValid (unsigned int now) {
303+ bool checkTimeValid (ScheduleTimeType now) {
301304 return (now != 0 );
302305 }
303306
304- bool checkSchedulePeriod (unsigned int now, unsigned int frm, unsigned int to) {
307+ bool checkSchedulePeriod (ScheduleTimeType now, ScheduleTimeType frm, ScheduleTimeType to) {
305308 /* Check if current time is inside the schedule period. If 'to' is equal to
306309 * 0 the schedule has no end.
307310 */
@@ -312,7 +315,7 @@ class Schedule {
312315 }
313316 }
314317
315- bool checkScheduleMask (unsigned int now, unsigned int msk) {
318+ bool checkScheduleMask (ScheduleTimeType now, ScheduleConfigurationType msk) {
316319 if (isScheduleFixed (msk) || isScheduleOneShot (msk)) {
317320 return true ;
318321 }
@@ -349,7 +352,7 @@ class Schedule {
349352 return false ;
350353 }
351354
352- unsigned int getScheduleDelta (unsigned int msk) {
355+ ScheduleTimeType getScheduleDelta (ScheduleConfigurationType msk) {
353356 if (isScheduleInSeconds (msk)) {
354357 return SECONDS * getScheduleRepetition (msk);
355358 }
0 commit comments