Aleph-w 3.0
A C++ Library for Data Structures and Algorithms
Loading...
Searching...
No Matches
SignalingEvent Class Reference
Inheritance diagram for SignalingEvent:
[legend]
Collaboration diagram for SignalingEvent:
[legend]

Public Member Functions

 SignalingEvent (const Time &t, mutex &m, condition_variable &c, bool &f)
 
void EventFct () override
 Event handler function to be overridden.
 
- Public Member Functions inherited from TimeoutQueue::Event
 ~Event () noexcept override
 
Execution_Status get_execution_status () const
 
Time getAbsoluteTime () const
 
void set_for_deletion ()
 
EventId get_id () const
 Get the unique event ID (auto-generated on construction)
 
const std::string & get_name () const
 Get the event name (for debugging)
 
void set_name (const std::string &name)
 Set the event name.
 
void set_completion_callback (CompletionCallback cb)
 Set the completion callback (called after EventFct completes or the event is canceled)
 

Public Attributes

mutex & mtx
 
condition_variablecv
 
boolflag
 

Additional Inherited Members

- Public Types inherited from TimeoutQueue::Event
enum  Execution_Status {
  Out_Queue , In_Queue , Canceled , Executing ,
  Executed , To_Delete , Deleted
}
 Possible states of an event in its lifecycle. More...
 
using CompletionCallback = std::function< void(Event *, Execution_Status)>
 Optional callback invoked after an event completes, is canceled, or is deleted.
 
using EventId = uint64_t
 Type for unique event identifiers.
 
- Static Public Attributes inherited from TimeoutQueue::Event
static constexpr EventId InvalidId = 0
 Invalid/null event ID.
 
- Protected Member Functions inherited from TimeoutQueue::Event
 Event (const Time &t, std::string name="")
 
 Event (const long sec, const long nsec, std::string name="")
 

Detailed Description

Definition at line 52 of file timeoutQueue_test.cc.

Constructor & Destructor Documentation

◆ SignalingEvent()

SignalingEvent::SignalingEvent ( const Time t,
mutex &  m,
condition_variable c,
bool f 
)
inline

Definition at line 59 of file timeoutQueue_test.cc.

Member Function Documentation

◆ EventFct()

void SignalingEvent::EventFct ( )
inlineoverridevirtual

Event handler function to be overridden.

This pure virtual function is called when the event's trigger time arrives. Override this in derived classes to implement custom event behavior. *

Implements TimeoutQueue::Event.

Definition at line 62 of file timeoutQueue_test.cc.

References cv, flag, Aleph::maps(), and mtx.

Member Data Documentation

◆ cv

condition_variable& SignalingEvent::cv

Definition at line 56 of file timeoutQueue_test.cc.

Referenced by EventFct().

◆ flag

bool& SignalingEvent::flag

Definition at line 57 of file timeoutQueue_test.cc.

Referenced by EventFct().

◆ mtx

mutex& SignalingEvent::mtx

Definition at line 55 of file timeoutQueue_test.cc.

Referenced by EventFct().


The documentation for this class was generated from the following file: