Sampa::Event Class Reference

can be notified by a process from the same module, and listened by gated variables or processes It is intended to be used internally to a module for it control flow an event is notified, then simulation commit the notification, that is trigger the event triggering the event means activating all the processes or gated variable that have declared to be sensitive to this event More...

#include <event.h>

Inheritance diagram for Sampa::Event:

Sampa::EventListener Sampa::EventListenerSingle Sampa::Object

List of all members.

Public Member Functions

 Event (const Name &)
void notify ()
 notify this event at next delta cycle
void notify_in (const Time &delay)
 notify this event in a delay
void notify_at (const Time &date)
 notify this event at a date
const char * get_name () const
const char * get_full_name () const
 name can be ([^. ]+.)*[^. ]+
Objectget_parent () const
 return object containing this one
Objectget_sibling () const
 return next object with same parent or NULL if none
Objectget_first_child () const
 return first child object or NULL if none
int is_debug () const

Protected Types

enum  Severity { S_INFO, S_WARNING, S_ERROR, S_FATAL }

Protected Member Functions

void debug (const char *,...)
void error (Severity severity, const char *,...)
virtual void complete_restart ()


Detailed Description

can be notified by a process from the same module, and listened by gated variables or processes It is intended to be used internally to a module for it control flow an event is notified, then simulation commit the notification, that is trigger the event triggering the event means activating all the processes or gated variable that have declared to be sensitive to this event

Definition at line 173 of file event.h.


Member Enumeration Documentation

enum Sampa::Object::Severity [protected, inherited]

Enumerator:
S_INFO 
S_WARNING 
S_ERROR 
S_FATAL 

Definition at line 48 of file object.h.


Constructor & Destructor Documentation

Sampa::Event::Event ( const Name  ) 


Member Function Documentation

void Sampa::Event::notify (  ) 

notify this event at next delta cycle

void Sampa::Event::notify_in ( const Time delay  ) 

notify this event in a delay

void Sampa::Event::notify_at ( const Time date  ) 

notify this event at a date

const char* Sampa::Object::get_name (  )  const [inherited]

returns the local name

const char* Sampa::Object::get_full_name (  )  const [inherited]

name can be ([^. ]+.)*[^. ]+

Object* Sampa::Object::get_parent (  )  const [inherited]

return object containing this one

Object* Sampa::Object::get_sibling (  )  const [inherited]

return next object with same parent or NULL if none

Object* Sampa::Object::get_first_child (  )  const [inherited]

return first child object or NULL if none

int Sampa::Object::is_debug (  )  const [inline, inherited]

Definition at line 44 of file object.h.

void Sampa::Object::debug ( const char *  ,
  ... 
) [protected, inherited]

void Sampa::Object::error ( Severity  severity,
const char *  ,
  ... 
) [protected, inherited]

virtual void Sampa::Object::complete_restart (  )  [protected, virtual, inherited]

is called to finalize restart. On restart, one shall update pointers, or reopen ressources (files, ...).

Most of pointers are restored by the thanks to the post++ library provided that the CLASSINFO() was correctly set.

However, some pointers are not relocated by the library. These are for example the method pointers used for the processes. Take a look at

See also:
Module::restart_process, to see how this is handled

Reimplemented in Sampa::Bridge, Sampa::Dma, Sampa::FixLatencySlave, Sampa::PeriodicTrafficGenerator, Sampa::TwoPortL1Cpu, and Sampa::StochasticCpu.


The documentation for this class was generated from the following file:
Generated on Sat Feb 16 16:23:20 2008 for Sampa by  doxygen 1.5.3