dynamic-graph  4.4.3
Dynamic graph library
SignalPtr< T, Time > Class Template Reference

This is the only type of signal that can be plugged to, using the plug () command. More...

#include <dynamic-graph/signal-ptr.h>

Public Member Functions

 SignalPtr (Signal< T, Time > *ptr, std::string name="")
 
virtual const T & access (const Time &t)
 
virtual const T & accessCopy () const
 
virtual void checkCompatibility ()
 
virtual std::ostream & display (std::ostream &os) const
 
virtual std::ostream & displayDependencies (std::ostream &os, const int depth=-1, std::string space="", std::string next1="", std::string next2="") const
 
SignalBase< Time > * getAbstractPtr ()
 
const SignalBase< Time > * getAbstractPtr () const
 
virtual SignalBase< Time > * getPluged () const
 
Signal< T, Time > * getPtr ()
 
const Signal< T, Time > * getPtr () const
 
virtual const Time & getTime () const
 
virtual bool isAbstractPluged () const
 
virtual bool isPlugged () const
 
virtual bool needUpdate (const Time &t) const
 
 operator bool () const
 
virtual const T & operator() (const Time &t)
 
Signal< T, Time > & operator* ()
 
const Signal< T, Time > & operator* () const
 
Signal< T, Time > * operator-> ()
 
const Signal< T, Time > * operator-> () const
 
virtual Signal< T, Time > & operator= (const T &t)
 
virtual void plug (SignalBase< Time > *ref)
 
virtual void setConstant (const T &t)
 
virtual void setConstantDefault ()
 
void setConstantDefault (const T &t)
 
virtual void setFunction (boost::function2< T &, T &, Time > t, typename Signal< T, Time >::Mutex *m=NULL)
 
virtual void setReference (const T *t, typename Signal< T, Time >::Mutex *m=NULL)
 
virtual void unplug ()
 
void unsetConstantDefault ()
 
virtual std::ostream & writeGraph (std::ostream &os) const
 

Protected Member Functions

virtual void addDependency ()
 
bool autoref () const
 
virtual void clearDependencies ()
 
virtual void removeDependency ()
 

Protected Attributes

SignalBase< Time > * abstractTransmitter
 
bool modeNoThrow
 
Signal< T, Time > * signalPtr
 
bool transmitAbstract
 
T * transmitAbstractData
 

Detailed Description

template<class T, class Time>
class dynamicgraph::SignalPtr< T, Time >

This is the only type of signal that can be plugged to, using the plug () command.

In that sense, when plugged into, it acts as a "pointer" to the input signal, hence the name. Operator -> is also overloaded and can be used to access the pointed signal.

If the signal provided as a parameter of the plug operation cannot be casted in type T, but is compatible then the class holds a reference to an abstract object.

Definition at line 54 of file fwd.hh.


The documentation for this class was generated from the following files: