Signals link I/O ports of entities. They can be constant-valued signals, or copy the value of a heap variable, or evaluated as a function. See SignalPtr and SignalTimeDependent for other types of signals, and SignalArray for a way of grouping them. More...
#include <dynamic-graph/signal.h>
Public Types | |
| typedef int * | Mutex |
| typedef int * | MutexError |
Public Member Functions | |
| Signal (std::string name) | |
| virtual | ~Signal () |
| virtual void | get (std::ostream &value) const |
| virtual void | set (std::istringstream &value) |
| virtual void | trace (std::ostream &os) const |
| virtual void | setConstant (const T &t) |
| virtual void | setReference (const T *t, Mutex *mutexref=NULL) |
| virtual void | setReferenceNonConstant (T *t, Mutex *mutexref=NULL) |
| virtual void | setFunction (boost::function2< T &, T &, Time > t, Mutex *mutexref=NULL) |
| bool | getKeepReference () |
| void | setKeepReference (const bool &b) |
| virtual const T & | access (const Time &t) |
| virtual void | recompute (const Time &t) |
| virtual const T & | accessCopy () const |
| virtual std::ostream & | display (std::ostream &os) const |
| virtual const T & | operator() (const Time &t) |
| virtual Signal< T, Time > & | operator= (const T &t) |
| operator const T & () const | |
| virtual void | getClassName (std::string &aClassName) const |
| virtual void | checkCompatibility () |
| Public Member Functions inherited from dynamicgraph::SignalBase< Time > | |
| SignalBase (std::string name="") | |
| virtual | ~SignalBase () |
| virtual const Time & | getTime () const |
| virtual void | setTime (const Time &t) |
| const bool & | getReady () const |
| const std::string & | getName () const |
| void | getClassName (std::string &aClassName) const |
| virtual void | setPeriodTime (const Time &) |
| virtual Time | getPeriodTime () const |
| virtual void | addDependency (const SignalBase< Time > &) |
| virtual void | removeDependency (const SignalBase< Time > &) |
| virtual void | clearDependencies () |
| virtual bool | needUpdate (const Time &) const |
| void | setReady (const bool sready=true) |
| virtual std::ostream & | writeGraph (std::ostream &os) const |
| virtual std::ostream & | displayDependencies (std::ostream &os, const int=-1, std::string space="", std::string next1="", std::string="") const |
| virtual void | plug (SignalBase< Time > *sigarg) |
| virtual void | unplug () |
| virtual bool | isPlugged () const |
| virtual SignalBase< Time > * | getPluged () const |
| virtual void | setConstantDefault () |
| std::string | shortName () const |
| virtual void | ExtractNodeAndLocalNames (std::string &LocalName, std::string &NodeName) const |
Protected Types | |
| enum | SignalType { CONSTANT , REFERENCE , REFERENCE_NON_CONST , FUNCTION } |
Protected Attributes | |
| SignalType | signalType |
| T | Tcopy1 |
| T | Tcopy2 |
| T * | Tcopy |
| bool | copyInit |
| const T * | Treference |
| T * | TreferenceNonConst |
| boost::function2< T &, T &, Time > | Tfunction |
| bool | keepReference |
| Mutex * | providerMutex |
| Protected Attributes inherited from dynamicgraph::SignalBase< Time > | |
| std::string | name |
| Time | signalTime |
| bool | ready |
Static Protected Attributes | |
| static const SignalType | SIGNAL_TYPE_DEFAULT = CONSTANT |
| static const bool | KEEP_REFERENCE_DEFAULT = false |
Signals link I/O ports of entities. They can be constant-valued signals, or copy the value of a heap variable, or evaluated as a function. See SignalPtr and SignalTimeDependent for other types of signals, and SignalArray for a way of grouping them.
There are several ways to specify the value output by a signal:
| typedef int* dynamicgraph::Signal< T, Time >::Mutex |
| typedef int* dynamicgraph::Signal< T, Time >::MutexError |
|
protected |
| dynamicgraph::Signal< T, Time >::Signal | ( | std::string | name | ) |
References __SIGNAL_INIT, and dynamicgraph::SignalBase< Time >::name.
Referenced by dynamicgraph::SignalPtr< T, Time >::getPtr(), dynamicgraph::SignalPtr< T, Time >::getPtr(), dynamicgraph::SignalPtr< T, Time >::operator*(), dynamicgraph::SignalPtr< T, Time >::operator*(), dynamicgraph::SignalPtr< T, Time >::operator->(), dynamicgraph::SignalPtr< T, Time >::operator->(), operator=(), dynamicgraph::SignalPtr< T, Time >::operator=(), dynamicgraph::SignalPtr< T, Time >::plug(), dynamicgraph::SignalPtr< T, Time >::SignalPtr(), dynamicgraph::SignalTimeDependent< T, Time >::SignalTimeDependent(), dynamicgraph::SignalTimeDependent< T, Time >::SignalTimeDependent(), and dynamicgraph::SignalTimeDependent< T, Time >::SignalTimeDependent().
|
inlinevirtual |
|
virtual |
Reimplemented in dynamicgraph::SignalPtr< T, Time >, dynamicgraph::SignalTimeDependent< T, Time >, and dynamicgraph::SignalTimeDependent< int, int >.
References accessCopy(), CONSTANT, copyInit, FUNCTION, dynamicgraph::SignalBase< Time >::getReady(), providerMutex, REFERENCE, REFERENCE_NON_CONST, dynamicgraph::SignalBase< Time >::setReady(), dynamicgraph::SignalBase< Time >::setTime(), dynamicgraph::SignalBase< Time >::signalTime, signalType, Tfunction, and Treference.
Referenced by dynamicgraph::SignalPtr< T, Time >::access(), dynamicgraph::SignalTimeDependent< T, Time >::access(), operator()(), and recompute().
|
virtual |
Reimplemented in dynamicgraph::SignalPtr< T, Time >.
References Tcopy.
Referenced by access(), dynamicgraph::SignalPtr< T, Time >::access(), dynamicgraph::SignalTimeDependent< T, Time >::access(), dynamicgraph::SignalPtr< T, Time >::accessCopy(), get(), dynamicgraph::Signal< int, int >::operator const int &(), and trace().
|
inlinevirtual |
Reimplemented from dynamicgraph::SignalBase< Time >.
Reimplemented in dynamicgraph::SignalPtr< T, Time >.
References Tcopy.
Referenced by dynamicgraph::SignalPtr< T, Time >::checkCompatibility().
|
virtual |
Reimplemented from dynamicgraph::SignalBase< Time >.
Reimplemented in dynamicgraph::SignalPtr< T, Time >.
References CONSTANT, FUNCTION, dynamicgraph::SignalBase< Time >::name, REFERENCE, REFERENCE_NON_CONST, and signalType.
Referenced by dynamicgraph::SignalPtr< T, Time >::display().
|
virtual |
Reimplemented from dynamicgraph::SignalBase< Time >.
References accessCopy(), and dynamicgraph::signal_disp().
|
inlinevirtual |
References dynamicgraph::SignalBase< Time >::name.
|
inline |
References keepReference.
|
inline |
|
inlinevirtual |
Reimplemented in dynamicgraph::SignalPtr< T, Time >, dynamicgraph::SignalTimeDependent< T, Time >, and dynamicgraph::SignalTimeDependent< int, int >.
References access().
|
virtual |
Reimplemented in dynamicgraph::SignalPtr< T, Time >.
References keepReference, providerMutex, REFERENCE_NON_CONST, setConstant(), Signal(), signalType, and TreferenceNonConst.
|
inlinevirtual |
Reimplemented from dynamicgraph::SignalBase< Time >.
References access().
|
virtual |
Reimplemented from dynamicgraph::SignalBase< Time >.
References dynamicgraph::signal_cast().
|
virtual |
Reimplemented in dynamicgraph::SignalPtr< T, Time >.
References CONSTANT, dynamicgraph::SignalBase< Time >::setReady(), and signalType.
Referenced by operator=(), dynamicgraph::SignalPtr< T, Time >::setConstant(), and dynamicgraph::SignalPtr< T, Time >::setConstantDefault().
|
virtual |
|
inline |
References keepReference.
|
virtual |
References copyInit, providerMutex, REFERENCE, dynamicgraph::SignalBase< Time >::setReady(), signalType, and Treference.
Referenced by dynamicgraph::SignalPtr< T, Time >::plug(), and dynamicgraph::SignalPtr< T, Time >::setReference().
|
virtual |
|
virtual |
Reimplemented from dynamicgraph::SignalBase< Time >.
References accessCopy(), DG_RETHROW, DG_THROW, dynamicgraph::SignalBase< Time >::getName(), dynamicgraph::ExceptionSignal::SET_IMPOSSIBLE, and dynamicgraph::signal_trace().
|
protected |
|
staticprotected |
|
protected |
Referenced by getKeepReference(), operator=(), and setKeepReference().
|
protected |
Referenced by access(), operator=(), setFunction(), setReference(), and setReferenceNonConstant().
|
staticprotected |
|
protected |
Referenced by access(), display(), operator=(), setConstant(), setFunction(), setReference(), and setReferenceNonConstant().
|
protected |
Referenced by accessCopy(), and checkCompatibility().
|
protected |
Referenced by dynamicgraph::SignalPtr< T, Time >::plug().
|
protected |
|
protected |
Referenced by access(), and setFunction().
|
protected |
Referenced by access(), setReference(), and setReferenceNonConstant().
|
protected |
Referenced by operator=(), and setReferenceNonConstant().