DUECA/DUSIME
|
A clock synchronisation object. More...
Public Member Functions | |
Ticker () | |
Constructor. More... | |
bool | complete () |
Completion method,. | |
const char * | getTypeName () |
Type name information. | |
~Ticker () | |
Destructor. More... | |
double | getDT () |
Time step of basic tick. More... | |
double | getTimeGranule () |
Time value (in seconds) of a unit step in (integer) simulation time. More... | |
int | getBaseIncrement () |
Stepsize of integer simulation time with each tick. More... | |
int | getCompatibleIncrement () |
Stepsize of integer simulation time with each tick. More... | |
TimeTickType | getIncrement (double span, bool nonzero=true) |
Return a time step rounded to granules. More... | |
void | dataFromMaster (const TimeTickType &ts, int offset_usecs) |
Input of timing data from a master node. More... | |
void | tickFromMaster (const TimeTickType &ts) |
Input of strong timing data from a master node. More... | |
bool | isSynced () |
Returns true if synced with the master node. More... | |
void | noImplicitSync () |
Call this to have the ticker sync with the master node. More... | |
int64_t | getUsecsSinceTick (const TimeTickType &t) const |
Returns the number of microseconds elapsed. More... | |
int64_t | getUsecsSinceTick (const TimeSpec &ts) const |
Returns the number of microseconds elapsed. More... | |
int | getUsecsSinceLastTick (TimeTickType &tick) const |
Returns the number of microseconds since the last tick, and the last tick itself. More... | |
bool | usingRTAI () const |
Returns true if using RTAI. More... | |
ObjectType | getObjectType () const |
The ticker is one of the base components of DUECA. More... | |
![]() | |
const std::string | getEntity () const |
Returns the "entity" part of the name. | |
const std::string | getClass () const |
Returns the "class" part of the name. | |
const std::string | getPart () const |
Returns the sub-entity or "part" part of the name. | |
const NameSet & | getNameSet () const |
This returns the complete name set. | |
const GlobalId & | getId () const |
This returns the id. More... | |
![]() | |
const std::string & | getTriggerName () const |
Find a name. | |
Static Public Member Functions | |
static const ParameterTable * | getParameterTable () |
return the parameter table. More... | |
static Ticker * | single () |
Make sure this class is callable from scheme. More... | |
Friends | |
class | Environment |
ostream & | operator<< (ostream &os, const Ticker &t) |
Print to stream, for debugging. More... | |
Additional Inherited Members | |
![]() | |
typedef list< TargetData > | targetlist_type |
Combination of a target, someone to pull if requested, and the index that target needs to identify this puller. More... | |
![]() | |
NamedObject (const GlobalId &id) | |
Reserve for AssociateObject. More... | |
NamedObject (const NameSet &ns) | |
Normal constructor, protected, because it has no use to create a NamedObject by itself. | |
virtual | ~NamedObject () |
Destructor. | |
![]() | |
void | pull (const DataTimeSpec &ts) |
activate and notify the targets | |
TriggerPuller (const std::string &name=std::string()) | |
Constructor. More... | |
virtual | ~TriggerPuller () |
Destructor. More... | |
virtual void | addTarget (const boost::intrusive_ptr< TriggerTarget > &target, unsigned id) |
Add a target to this puller, only called by TriggerTarget's setTrigger. More... | |
virtual void | removeTarget (const TriggerTarget *target) |
Remove a target from the puller, only called by destructor. More... | |
virtual void | setTriggerName () |
Update the name, used by ConditionAnd and ConditionOr. | |
![]() | |
targetlist_type | targets |
List of targets and indices. More... | |
std::bitset< MAX_MANAGERS > | activitylevels |
Index of activitymanager levels. | |
std::string | name |
Name, for debugging purposes. | |
A clock synchronisation object.
A ticker is a DUECA module that is runs by an ActivityManager. The difference with normal modules is that the Ticker blocks, waiting for a certain time. The main function of a Ticker is as a time-based trigger. One ticker is used in each DUECA node. The ticker also publishes a (local) time information channel for modules interested in more than just triggering.
dueca::Ticker::Ticker | ( | ) |
Constructor.
This constructor is normally called from the scheme script.
dueca::Ticker::~Ticker | ( | ) |
Destructor.
|
static |
return the parameter table.
|
inline |
Time step of basic tick.
|
inline |
Time value (in seconds) of a unit step in (integer) simulation time.
|
inline |
Stepsize of integer simulation time with each tick.
|
inline |
Stepsize of integer simulation time with each tick.
TimeTickType dueca::Ticker::getIncrement | ( | double | span, |
bool | nonzero = true |
||
) |
Return a time step rounded to granules.
span | Time step to convert to granules |
nonzero | If true (default), return a minimum of 1 granule. |
void dueca::Ticker::dataFromMaster | ( | const TimeTickType & | ts, |
int | offset_usecs | ||
) |
Input of timing data from a master node.
void dueca::Ticker::tickFromMaster | ( | const TimeTickType & | ts | ) |
Input of strong timing data from a master node.
|
inline |
Returns true if synced with the master node.
|
inline |
Call this to have the ticker sync with the master node.
int64_t dueca::Ticker::getUsecsSinceTick | ( | const TimeTickType & | t | ) | const |
Returns the number of microseconds elapsed.
Calculated since the tick given in ts
|
inline |
Returns the number of microseconds elapsed.
Calculated since the tick given in ts
int dueca::Ticker::getUsecsSinceLastTick | ( | TimeTickType & | tick | ) | const |
Returns the number of microseconds since the last tick, and the last tick itself.
|
inline |
Returns true if using RTAI.
|
inlinestatic |
Make sure this class is callable from scheme.
Return a pointer to the single ticker that works in this node.
|
inlinevirtual |
The ticker is one of the base components of DUECA.
Implements dueca::NamedObject.
|
friend |
Print to stream, for debugging.