Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
RTT::base::MultipleInputsChannelElementBase Class Reference

#include <ChannelElementBase.hpp>

Inheritance diagram for RTT::base::MultipleInputsChannelElementBase:
Inheritance graph
[legend]

Public Types

typedef std::list< ChannelElementBase::shared_ptrInputs
 
typedef boost::intrusive_ptr< MultipleInputsChannelElementBaseshared_ptr
 
- Public Types inherited from RTT::base::ChannelElementBase
typedef boost::intrusive_ptr< ChannelElementBaseshared_ptr
 

Public Member Functions

virtual void clear ()
 
virtual bool connected ()
 
virtual bool disconnect (ChannelElementBase::shared_ptr const &channel, bool forward=true)
 
virtual bool inputReady (ChannelElementBase::shared_ptr const &caller)
 
 MultipleInputsChannelElementBase ()
 
bool signalFrom (ChannelElementBase *caller)
 
- Public Member Functions inherited from RTT::base::ChannelElementBase
 ChannelElementBase ()
 
virtual bool channelReady (ChannelElementBase::shared_ptr const &caller, ConnPolicy const &policy, internal::ConnID *conn_id=0)
 
virtual bool connectFrom (ChannelElementBase::shared_ptr const &input)
 
virtual bool connectTo (ChannelElementBase::shared_ptr const &output, bool mandatory=true)
 
virtual void disconnect (bool forward)
 
virtual const ConnPolicygetConnPolicy () const
 
virtual std::string getElementName () const
 
shared_ptr getInput ()
 
virtual shared_ptr getInputEndPoint ()
 
virtual std::string getLocalURI () const
 
shared_ptr getOutput ()
 
virtual shared_ptr getOutputEndPoint ()
 
virtual PortInterfacegetPort () const
 
virtual std::string getRemoteURI () const
 
virtual bool isRemoteElement () const
 
template<typename T >
ChannelElement< T > * narrow ()
 
RTT_DEPRECATED void setInput (const ChannelElementBase::shared_ptr &input)
 
RTT_DEPRECATED void setOutput (const ChannelElementBase::shared_ptr &output)
 
virtual bool signal ()
 
virtual ~ChannelElementBase ()
 

Protected Member Functions

virtual bool addInput (ChannelElementBase::shared_ptr const &input)
 
virtual void removeInput (ChannelElementBase::shared_ptr const &input)
 
- Protected Member Functions inherited from RTT::base::ChannelElementBase
virtual bool addOutput (shared_ptr const &output, bool mandatory=true)
 
void deref ()
 
void ref ()
 
virtual void removeOutput (shared_ptr const &output)
 

Protected Attributes

Inputs inputs
 
RTT::os::SharedMutex inputs_lock
 
- Protected Attributes inherited from RTT::base::ChannelElementBase
shared_ptr input
 
RTT::os::SharedMutex input_lock
 
shared_ptr output
 
RTT::os::SharedMutex output_lock
 

Additional Inherited Members

- Static Public Member Functions inherited from RTT::base::ChannelElementBase
template<typename T >
static ChannelElement< T > * narrow (ChannelElementBase *e)
 

Detailed Description

ChannelElementBase variant with multiple input channels.

Definition at line 331 of file ChannelElementBase.hpp.

Member Typedef Documentation

Definition at line 335 of file ChannelElementBase.hpp.

Definition at line 334 of file ChannelElementBase.hpp.

Constructor & Destructor Documentation

MultipleInputsChannelElementBase::MultipleInputsChannelElementBase ( )

Definition at line 231 of file ChannelInterface.cpp.

Member Function Documentation

bool MultipleInputsChannelElementBase::addInput ( ChannelElementBase::shared_ptr const &  input)
protectedvirtual

Sets the new input channel element of this element or adds a channel to the inputs list.

Parameters
inputthe previous element in chain.
Returns
true if the input was set or false if this element does not support multiple inputs and the input is already set.

Reimplemented from RTT::base::ChannelElementBase.

Definition at line 234 of file ChannelInterface.cpp.

void MultipleInputsChannelElementBase::clear ( )
virtual

Overridden implementation of ChannelElementBase::clear(). Forwards the clear() call to all inputs.

Reimplemented from RTT::base::ChannelElementBase.

Reimplemented in RTT::internal::SharedConnection< T >.

Definition at line 264 of file ChannelInterface.cpp.

bool MultipleInputsChannelElementBase::connected ( )
virtual

Returns true, if this channel element has at least one input, independent of whether is has an output connection or not.

Reimplemented from RTT::base::ChannelElementBase.

Reimplemented in RTT::base::MultipleInputsMultipleOutputsChannelElementBase.

Definition at line 249 of file ChannelInterface.cpp.

bool MultipleInputsChannelElementBase::disconnect ( ChannelElementBase::shared_ptr const &  channel,
bool  forward = true 
)
virtual
bool MultipleInputsChannelElementBase::inputReady ( ChannelElementBase::shared_ptr const &  caller)
virtual

Overridden implementation of ChannelElementBase::inputReady(). Forwards the inputReady() call to all inputs and only returns true if all inputs returned true.

Reimplemented from RTT::base::ChannelElementBase.

Definition at line 255 of file ChannelInterface.cpp.

void MultipleInputsChannelElementBase::removeInput ( ChannelElementBase::shared_ptr const &  input)
protectedvirtual

Remove an input from the inputs list.

Parameters
inputthe element to be removed

Reimplemented from RTT::base::ChannelElementBase.

Reimplemented in RTT::base::MultipleInputsChannelElement< T >.

Definition at line 244 of file ChannelInterface.cpp.

bool MultipleInputsChannelElementBase::signalFrom ( ChannelElementBase caller)
virtual

Overridden implementation of ChannelElementBase::signalFrom(caller) which remembers the caller who last signalled this channel element.

Reimplemented from RTT::base::ChannelElementBase.

Definition at line 316 of file ChannelInterface.cpp.

Member Data Documentation

Inputs RTT::base::MultipleInputsChannelElementBase::inputs
protected

Definition at line 338 of file ChannelElementBase.hpp.

RTT::os::SharedMutex RTT::base::MultipleInputsChannelElementBase::inputs_lock
mutableprotected

Definition at line 339 of file ChannelElementBase.hpp.


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


rtt
Author(s): RTT Developers
autogenerated on Tue Jun 25 2019 19:33:42