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 () |
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 |
Static Protected Attributes | |
static const SignalType | SIGNAL_TYPE_DEFAULT = CONSTANT |
const static 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 | ) |
|
inlinevirtual |
|
virtual |
|
virtual |
|
inlinevirtual |
References dynamicgraph::Signal< T, Time >::Tcopy.
Referenced by dynamicgraph::SignalPtr< T, Time >::checkCompatibility().
|
virtual |
Referenced by dynamicgraph::SignalPtr< T, Time >::display().
|
virtual |
|
inlinevirtual |
|
inline |
References dynamicgraph::Signal< T, Time >::keepReference.
|
inline |
References dynamicgraph::Signal< T, Time >::accessCopy().
|
inlinevirtual |
References dynamicgraph::Signal< T, Time >::access().
|
virtual |
|
inlinevirtual |
References dynamicgraph::Signal< T, Time >::access().
|
virtual |
|
virtual |
|
virtual |
Referenced by dynamicgraph::SignalPtr< T, Time >::setFunction().
|
inline |
References dynamicgraph::Signal< T, Time >::keepReference.
|
virtual |
|
virtual |
|
virtual |
References DG_RETHROW, DG_THROW, and dynamicgraph::ExceptionSignal::SET_IMPOSSIBLE.
|
protected |
|
staticprotected |
|
protected |
|
protected |
|
staticprotected |
|
protected |
|
protected |
Referenced by dynamicgraph::Signal< T, Time >::checkCompatibility().
|
protected |
|
protected |
|
protected |
|
protected |
|
protected |