73 template<SchedulingPhase sched_phase_T = SchedulingPhase::Tick>
95 const std::string & name,
96 const SpartaHandler & consumer_event_handler) :
98 consumer_event_handler)
File that defines the PhasedSingleCycleUniqueEvent class.
File that defines the Scheduleable class.
An event that can only be schedule one cycle into the future.
void schedule(Clock::Cycle rel_cycle=0)
Schedule this PhasedSingleCycleUniqueEvent exactly zero or one cycle into the future....
An event that can only be schedule one cycle into the future.
SingleCycleUniqueEvent(const SingleCycleUniqueEvent &)=delete
Disallow the copying of the SingleCycleUniqueEvent.
virtual ~SingleCycleUniqueEvent()=default
Uniquely destroy.
SingleCycleUniqueEvent & operator=(const SingleCycleUniqueEvent &)=delete
Disallow the assignment of the SingleCycleUniqueEvent.
SingleCycleUniqueEvent(TreeNode *event_set, const std::string &name, const SpartaHandler &consumer_event_handler)
Create a SingleCycleUniqueEvent.
SingleCycleUniqueEvent(SingleCycleUniqueEvent &&)=delete
Disallow moves.
Node in a composite tree representing a sparta Tree item.
Macros for handling exponential backoff.
SchedulingPhase
The SchedulingPhases used for events (Tick, Update, PortUpdate, etc)