SIMLIB/C++  3.07
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | List of all members
simlib3::CalendarList Class Reference

class CalendarList — list implementation of calendar More...

Inheritance diagram for simlib3::CalendarList:
Inheritance graph
[legend]
Collaboration diagram for simlib3::CalendarList:
Collaboration graph
[legend]

Public Member Functions

virtual void ScheduleAt (Entity *p, double t) override
 enqueue More...
 
virtual EntityGet (Entity *p) override
 dequeue More...
 
virtual EntityGetFirst () override
 dequeue first entity More...
 
virtual void clear (bool destroy=false) override
 remove all More...
 
virtual const char * Name () override
 
virtual void debug_print () override
 for debugging only More...
 
- Public Member Functions inherited from simlib3::Calendar
bool Empty () const
 
unsigned Size () const
 
double MinTime () const
 time of activation of first item More...
 

Static Public Member Functions

static CalendarListcreate ()
 create calendar instance More...
 
- Static Public Member Functions inherited from simlib3::Calendar
static Calendarinstance ()
 create/get single instance (singleton) More...
 
static bool instance_exists ()
 check if the instance exists More...
 

Private Member Functions

 CalendarList ()
 
 ~CalendarList ()
 

Private Attributes

CalendarListImplementation l
 

Additional Inherited Members

- Protected Member Functions inherited from simlib3::Calendar
void SetMinTime (double t)
 set cache for faster access More...
 
 Calendar ()
 
virtual ~Calendar ()
 clear is called in derived class dtr More...
 
- Static Protected Member Functions inherited from simlib3::Calendar
static void delete_instance ()
 destroy single instance More...
 
- Protected Attributes inherited from simlib3::Calendar
unsigned _size
 number of scheduled items More...
 

Detailed Description

class CalendarList — list implementation of calendar

Definition at line 364 of file calendar.cc.

Constructor & Destructor Documentation

◆ CalendarList()

simlib3::CalendarList::CalendarList ( )
inlineprivate

Definition at line 389 of file calendar.cc.

References Dprintf, simlib3::Calendar::SetMinTime(), and simlib3::SIMLIB_MAXTIME.

◆ ~CalendarList()

simlib3::CalendarList::~CalendarList ( )
inlineprivate

Member Function Documentation

◆ clear()

void simlib3::CalendarList::clear ( bool  destroy = false)
overridevirtual

remove all

remove all event notices, and optionally destroy them

Implements simlib3::Calendar.

Definition at line 499 of file calendar.cc.

References simlib3::Calendar::_size, Dprintf, simlib3::Calendar::SetMinTime(), and simlib3::SIMLIB_MAXTIME.

◆ create()

static CalendarList* simlib3::CalendarList::create ( )
inlinestatic

create calendar instance

Definition at line 379 of file calendar.cc.

References simlib3::Calendar::delete_instance(), Dprintf, and simlib3::SIMLIB_atexit().

Referenced by simlib3::Calendar::instance(), and simlib3::SetCalendar().

◆ debug_print()

void simlib3::CalendarList::debug_print ( )
overridevirtual

for debugging only

Implements simlib3::Calendar.

Definition at line 1149 of file calendar.cc.

References simlib3::Calendar::instance_exists(), and simlib3::Print().

◆ Get()

Entity * simlib3::CalendarList::Get ( Entity p)
overridevirtual

◆ GetFirst()

Entity * simlib3::CalendarList::GetFirst ( )
overridevirtual

◆ Name()

virtual const char* simlib3::CalendarList::Name ( )
inlineoverridevirtual

Implements simlib3::Calendar.

Definition at line 386 of file calendar.cc.

◆ ScheduleAt()

void simlib3::CalendarList::ScheduleAt ( Entity p,
double  t 
)
overridevirtual

Member Data Documentation

◆ l

CalendarListImplementation simlib3::CalendarList::l
private

Definition at line 365 of file calendar.cc.


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