#include <gated.h>

Public Types | |
| typedef GatedBase::Name | Name |
Public Member Functions | |
| Gated (const Name &name, const UserType &default_value) | |
| void | schedule (const UserType &v) |
| set the next state of the variable | |
| void | force (const UserType &v) |
| set the current state of the variable without wating the guard | |
| const UserType & | read () const |
| read the current state of the variable | |
| const UserType & | get_next () const |
| read the next state of the variable | |
| operator const UserType & () const | |
| cast to the current state of the variable | |
| UserType * | operator-> () |
| void | set_gate_event (EventListener &event) |
| const char * | get_name () const |
| const char * | get_full_name () const |
| name can be ([^. ]+.)*[^. ]+ | |
| Object * | get_parent () const |
| return object containing this one | |
| Object * | get_sibling () const |
| return next object with same parent or NULL if none | |
| Object * | get_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 () |
Gated variable can be assigned, but the assigned value will be available only once the guarding event has been notified
Definition at line 67 of file gated.h.
| typedef GatedBase::Name Sampa::Gated< UserType >::Name |
enum Sampa::Object::Severity [protected, inherited] |
| Sampa::Gated< UserType >::Gated | ( | const Name & | name, | |
| const UserType & | default_value | |||
| ) |
| void Sampa::Gated< UserType >::schedule | ( | const UserType & | v | ) | [inline] |
| void Sampa::Gated< UserType >::force | ( | const UserType & | v | ) | [inline] |
| const UserType & Sampa::Gated< UserType >::read | ( | ) | const [inline] |
| const UserType & Sampa::Gated< UserType >::get_next | ( | ) | const [inline] |
| Sampa::Gated< UserType >::operator const UserType & | ( | ) | const [inline] |
| UserType* Sampa::Gated< UserType >::operator-> | ( | ) | [inline] |
| void Sampa::GatedBase::set_gate_event | ( | EventListener & | event | ) | [inline, inherited] |
| 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
| 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
Reimplemented in Sampa::Bridge, Sampa::Dma, Sampa::FixLatencySlave, Sampa::PeriodicTrafficGenerator, Sampa::TwoPortL1Cpu, and Sampa::StochasticCpu.
1.5.3