The Alarm Server supports two types of time formats used to express the expiry time of an alarm:
Fixed time format - The alarm expires at the given UTC time and has no associated UTC offset. The alarm is not rescheduled when an UTC offset or DST change occur.
Floating time format - The alarm expires at the given local (wall clock) time in the current UTC offset and are re-scheduled when either the UTC offset or DST change occurs.
The Alarm Server maintains a queue of alarms and the format of these alarms may be either fixed or floating time format.
Hence, if the user adds an alarm defining one of its characteristics as TAlarmCharacteristics::EAlarmCharacteristicsIsFixed, then it is added in the alarm queue as fixed time format based alarm.
NOTE:
UTC time is the non-secure system time in UTC (UTC time range is from 0-24, so after 12, the time is expressed in PM).
Standard Time = UTC Time + Timezone/UTC offset
Wall Clock/local time = UTC Time + Timezone/UTC offset ± DST offset
All alarms (irrespective of the time format) undergo rescheduling and re-evaluation of their next due time (considering their repeat definition) only when either system time/date or workdays change.
Only the floating time format based alarms undergo re-scheduling and re-evaluation of their next due time if the system time/date, workdays, UTC offset changes or DST rollover event occurs.