Sly Engine
AlarmableManager Class Reference

#include <AlarmableManager.h>

Inheritance diagram for AlarmableManager:
Inheritance graph
Collaboration diagram for AlarmableManager:
Collaboration graph

Public Types

enum  ALARM_ID {
  ALARM_0, ALARM_1, ALARM_2, ALARM_3,
  ALARM_4
}
 Values that represent alarm Identifiers. More...
 
typedef std::pair< Alarmable *, ALARM_IDAlarmEvent
 Defines an alias representing the alarm event. More...
 
typedef std::multimap< float, AlarmEventTimeLineMap
 Defines an alias representing the time line map. More...
 
typedef TimeLineMap::iterator StorageEntryRef
 Defines an alias representing the storage entry reference. More...
 

Public Member Functions

 AlarmableManager ()
 Default constructor. More...
 
 AlarmableManager (const AlarmableManager &)=delete
 Copy constructor. More...
 
 AlarmableManager (AlarmableManager &&)=delete
 Move constructor. More...
 
AlarmableManageroperator= (const AlarmableManager &)=delete
 Assignment operator. More...
 
AlarmableManageroperator= (AlarmableManager &&)=delete
 Move assignment operator. More...
 
 ~AlarmableManager ()
 Deconstructor. More...
 
void ProcessAlarms ()
 Process the alarms. More...
 
void Register (float deltaT, Alarmable *al, AlarmableManager::ALARM_ID inputId, StorageEntryRef &ref)
 Registers this. More...
 
void Deregister (StorageEntryRef &ref)
 Deregisters this. More...
 

Static Public Attributes

static const int ALARM_NUMBER = 5
 The max alarm number. More...
 

Private Attributes

TimeLineMaptimeline
 The timeline for triggers. More...
 

Member Typedef Documentation

◆ AlarmEvent

Defines an alias representing the alarm event.

◆ StorageEntryRef

TimeLineMap::iterator AlarmableManager::StorageEntryRef

Defines an alias representing the storage entry reference.

◆ TimeLineMap

std::multimap< float, AlarmEvent > AlarmableManager::TimeLineMap

Defines an alias representing the time line map.

Member Enumeration Documentation

◆ ALARM_ID

Values that represent alarm Identifiers.

Enumerator
ALARM_0 
ALARM_1 
ALARM_2 
ALARM_3 
ALARM_4 

Constructor & Destructor Documentation

◆ AlarmableManager() [1/3]

AlarmableManager::AlarmableManager ( )

Default constructor.

Here is the caller graph for this function:

◆ AlarmableManager() [2/3]

AlarmableManager::AlarmableManager ( const AlarmableManager )
delete

Copy constructor.

◆ AlarmableManager() [3/3]

AlarmableManager::AlarmableManager ( AlarmableManager &&  )
delete

Move constructor.

◆ ~AlarmableManager()

AlarmableManager::~AlarmableManager ( )

Deconstructor.

Member Function Documentation

◆ Deregister()

void AlarmableManager::Deregister ( StorageEntryRef ref)

Deregisters this.

Parameters
[in,out]refThe reference.
Here is the caller graph for this function:

◆ operator=() [1/2]

AlarmableManager& AlarmableManager::operator= ( AlarmableManager &&  )
delete

Move assignment operator.

◆ operator=() [2/2]

AlarmableManager& AlarmableManager::operator= ( const AlarmableManager )
delete

Assignment operator.

◆ ProcessAlarms()

void AlarmableManager::ProcessAlarms ( )

Process the alarms.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ Register()

void AlarmableManager::Register ( float  deltaT,
Alarmable al,
AlarmableManager::ALARM_ID  inputId,
StorageEntryRef ref 
)

Registers this.

Parameters
deltaTThe delta t for alarm trigger time.
[in,out]alIf non-null, the alarmable.
inputIdThe alarm identifier.
[in,out]refThe storage reference.
Here is the call graph for this function:
Here is the caller graph for this function:

Member Data Documentation

◆ ALARM_NUMBER

const int AlarmableManager::ALARM_NUMBER = 5
static

The max alarm number.

◆ timeline

TimeLineMap* AlarmableManager::timeline
private

The timeline for triggers.


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