SIMLIB/C++ 3.09
Loading...
Searching...
No Matches
Classes | Public Member Functions | Static Public Attributes | Private Member Functions | Private Attributes | Friends | List of all members
simlib3::ZDelayTimer Class Reference

#include <zdelay.h>

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

Classes

class  ZDelayContainer
 

Public Member Functions

 ZDelayTimer (double dt, bool is_default=false)
 
 operator ZDelayTimer * ()
 
void Behavior () override
 behavior description
 
void Init ()
 
void Start ()
 
void Stop ()
 
void Set (double new_dt)
 
 ~ZDelayTimer ()
 
- Public Member Functions inherited from simlib3::Event
 Event (Priority_t p=DEFAULT_PRIORITY)
 constructor, default priority if not specified
 
virtual ~Event ()
 destructor
 
virtual void Behavior ()=0
 behavior description
 
virtual void Output () const override
 print object to default output
 
virtual std::string Name () const override
 name of object
 
virtual void Activate (double t) override
 activate at time t (schedule)
 
void Activate ()
 activate now
 
virtual void Activate (double t)
 activate at time t (schedule)
 
- Public Member Functions inherited from simlib3::Entity
unsigned long id () const
 
 Entity (Priority_t p=DEFAULT_PRIORITY)
 constructor
 
virtual ~Entity ()
 destructor
 
 operator Entity * ()
 
double ActivationTime ()
 get activation time of entity - iff scheduled
it is here, because Entity has no knowledge of calendar activation record structure
 
void Activate ()
 activate now
 
virtual void Activate (double t)
 activate at time t (schedule)
 
virtual void Passivate ()
 deactivation
 
virtual void Terminate ()=0
 end Behavior() and remove entity
 
bool Idle ()
 entity activation is not scheduled in calendar
 
void Cancel ()
 end Behavior() and remove entity
 
virtual void Out () override
 remove entity from queue
 
EventNoticeGetEventNotice ()
 
- Public Member Functions inherited from simlib3::SimObject
bool TestAndSetFlag (bool new_value, unsigned n)
 internal method for flag manipulation is used for algebraic loop checking in continuous blocks
 
 SimObject ()
 constructor
 
virtual ~SimObject ()
 virtual destructor
 
void * operator new (size_t size)
 allocate object, set _flags
 
void operator delete (void *ptr)
 deallocate object
 
void * operator new[] (size_t size)=delete
 
void operator delete[] (void *ptr)=delete
 
bool isAllocated () const
 
virtual std::string Name () const
 get object name
 
bool HasName () const
 
void SetName (const std::string &name)
 assign the name
 
virtual void Output () const
 print object to default output
 

Static Public Attributes

static const bool Default = true
 

Private Member Functions

 ZDelayTimer (const ZDelayTimer &)
 
ZDelayTimeroperator= (const ZDelayTimer &)
 
void Register (ZDelay *)
 
void UnRegister (ZDelay *)
 

Private Attributes

double dt
 
ZDelayContainerc
 

Friends

class ZDelay
 

Additional Inherited Members

- Public Types inherited from simlib3::Entity
typedef EntityPriority_t Priority_t
 
- Public Types inherited from simlib3::SimObject
enum  _Flags { _CLEAR_ALL_FLAGS = 0 , _ALLOCATED_FLAG = 1<<0 , _EVAL_FLAG = 1<<1 , _HAS_NAME_FLAG = 1<<2 }
 
- Public Attributes inherited from simlib3::Entity
Priority_t Priority
 priority of the entity (scheduling,queues)
 
- Protected Attributes inherited from simlib3::Entity
unsigned long _Ident
 unique identification number of entity
 
double _MarkTime
 
union {
   double   _RemainingTime
 
   unsigned long   _RequiredCapacity
 
}; 
 
ServicePriority_t _SPrio
 priority of service in Facility
 
- Protected Attributes inherited from simlib3::SimObject
unsigned _flags
 bool flags for internal use (TODO bitfield?)
 
- Static Protected Attributes inherited from simlib3::Entity
static unsigned long _Number = 0L
 current number of entities
 

Detailed Description

Definition at line 30 of file zdelay.h.

Constructor & Destructor Documentation

◆ ZDelayTimer() [1/2]

simlib3::ZDelayTimer::ZDelayTimer ( const ZDelayTimer )
private

◆ ZDelayTimer() [2/2]

simlib3::ZDelayTimer::ZDelayTimer ( double  dt,
bool  is_default = false 
)

◆ ~ZDelayTimer()

simlib3::ZDelayTimer::~ZDelayTimer ( )

Member Function Documentation

◆ Behavior()

void simlib3::ZDelayTimer::Behavior ( )
overridevirtual

◆ Init()

void simlib3::ZDelayTimer::Init ( )

◆ operator ZDelayTimer *()

simlib3::ZDelayTimer::operator ZDelayTimer * ( )
inline

Definition at line 43 of file zdelay.h.

◆ operator=()

ZDelayTimer & simlib3::ZDelayTimer::operator= ( const ZDelayTimer )
private

◆ Register()

void simlib3::ZDelayTimer::Register ( ZDelay p)
private

◆ Set()

void simlib3::ZDelayTimer::Set ( double  new_dt)
inline

Definition at line 48 of file zdelay.h.

References dt.

◆ Start()

void simlib3::ZDelayTimer::Start ( )

Definition at line 143 of file zdelay.cc.

References simlib3::Event::Activate().

Referenced by Init().

◆ Stop()

void simlib3::ZDelayTimer::Stop ( )

Definition at line 151 of file zdelay.cc.

References simlib3::Entity::Passivate().

◆ UnRegister()

void simlib3::ZDelayTimer::UnRegister ( ZDelay p)
private

Friends And Related Function Documentation

◆ ZDelay

friend class ZDelay
friend

Definition at line 38 of file zdelay.h.

Member Data Documentation

◆ c

ZDelayContainer* simlib3::ZDelayTimer::c
private

Definition at line 35 of file zdelay.h.

Referenced by Behavior(), Init(), Register(), UnRegister(), and ~ZDelayTimer().

◆ Default

const bool simlib3::ZDelayTimer::Default = true
static

Definition at line 40 of file zdelay.h.

◆ dt

double simlib3::ZDelayTimer::dt
private

Definition at line 33 of file zdelay.h.

Referenced by Behavior(), and Set().


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