37 _groupMask(groupIndex ?
GroupMask(1u << (groupIndex - 1u)) : 0u),
38 _phaseMask(phaseIndex ?
PhaseMask(1u << (phaseIndex - 1u)) : 0u)
97 return _eventMap.empty();
105 void SetPhase(PhaseIndex phase);
114 if (phase && phase <=
sizeof(
PhaseMask) * 8)
115 _phaseMask |=
PhaseMask(1u << (phase - 1u));
125 if (phase && phase <=
sizeof(
PhaseMask) * 8)
126 _phaseMask &=
PhaseMask(~(1u << (phase - 1u)));
137 void ScheduleEvent(
EventId eventId,
Milliseconds time, GroupIndex group = 0u, PhaseIndex phase = 0u);
158 void RescheduleEvent(
EventId eventId,
Milliseconds time, GroupIndex group = 0u, PhaseIndex phase = 0u);
221 void CancelEvent(
EventId eventId);
228 void CancelEventGroup(GroupIndex group);
238 return phase <=
sizeof(
PhaseIndex) * 8 && (!phase || _phaseMask &
PhaseMask(1u << (phase - 1u)));
256 bool HasEventScheduled(
EventId eventId)
const;