Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes
RTT::base::PortInterface Class Reference

#include <PortInterface.hpp>

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

List of all members.

Public Member Functions

virtual bool addConnection (internal::ConnID *cid, ChannelElementBase::shared_ptr channel_input, ConnPolicy const &policy=ConnPolicy())=0
virtual PortInterfaceantiClone () const =0
virtual PortInterfaceclone () const =0
virtual bool connected () const =0
virtual bool connectTo (PortInterface *other, ConnPolicy const &policy)=0
virtual bool connectTo (PortInterface *other)=0
virtual ServicecreatePortObject ()
virtual bool createStream (ConnPolicy const &policy)=0
virtual void disconnect ()=0
virtual bool disconnect (PortInterface *port)=0
PortInterfacedoc (const std::string &desc)
const std::string & getDescription () const
DataFlowInterfacegetInterface () const
virtual const
internal::ConnectionManager
getManager () const =0
const std::string & getName () const
virtual internal::ConnIDgetPortID () const
virtual const types::TypeInfogetTypeInfo () const =0
virtual bool isLocal () const
virtual bool removeConnection (internal::ConnID *cid)=0
virtual int serverProtocol () const
void setInterface (DataFlowInterface *iface)
bool setName (const std::string &name)
virtual ~PortInterface ()

Protected Member Functions

 PortInterface (const std::string &name)

Protected Attributes

DataFlowInterfaceiface

Private Attributes

std::string mdesc
std::string name

Detailed Description

The base class of every data flow port.

Definition at line 57 of file PortInterface.hpp.


Constructor & Destructor Documentation

PortInterface::PortInterface ( const std::string &  name) [protected]

Definition at line 47 of file PortInterface.cpp.

virtual RTT::base::PortInterface::~PortInterface ( ) [inline, virtual]

Definition at line 67 of file PortInterface.hpp.


Member Function Documentation

virtual bool RTT::base::PortInterface::addConnection ( internal::ConnID cid,
ChannelElementBase::shared_ptr  channel_input,
ConnPolicy const &  policy = ConnPolicy() 
) [pure virtual]

Adds a user created connection to this port. This is an advanced method, prefer to use connectTo and createStream.

Implemented in RTT::corba::RemoteInputPort, RTT::base::InputPortInterface, RTT::corba::RemotePort< base::InputPortInterface >, RTT::corba::RemotePort< base::OutputPortInterface >, and RTT::base::OutputPortInterface.

virtual PortInterface* RTT::base::PortInterface::antiClone ( ) const [pure virtual]

Create a local clone of this port with the same name. If this port is a local port, this is an object of the inverse direction (read for write and write for read), and same name. If this object is a remote port, then it is a local port of the inverse direction and with the same name.

Implemented in RTT::OutputPort< T >, RTT::OutputPort< double >, RTT::OutputPort< int >, RTT::OutputPort< bool >, RTT::InputPort< T >, RTT::InputPort< double >, RTT::InputPort< int >, RTT::InputPort< bool >, RTT::corba::RemoteInputPort, and RTT::corba::RemoteOutputPort.

virtual PortInterface* RTT::base::PortInterface::clone ( ) const [pure virtual]

Create a local clone of this port with the same name. If this port is a local port, this is an object of the same type and same name. If this object is a remote port, then it is a local port of the same type and same name.

Implemented in RTT::OutputPort< T >, RTT::OutputPort< double >, RTT::OutputPort< int >, RTT::OutputPort< bool >, RTT::InputPort< T >, RTT::InputPort< double >, RTT::InputPort< int >, RTT::InputPort< bool >, RTT::corba::RemoteInputPort, and RTT::corba::RemoteOutputPort.

virtual bool RTT::base::PortInterface::connected ( ) const [pure virtual]
virtual bool RTT::base::PortInterface::connectTo ( PortInterface other,
ConnPolicy const &  policy 
) [pure virtual]

Connects this port with other, using the given policy. Unlike OutputPortInterface::createConnection, other can be the write port and this the read port.

Returns:
true on success, false on failure

Implemented in RTT::base::InputPortInterface, and RTT::base::OutputPortInterface.

virtual bool RTT::base::PortInterface::connectTo ( PortInterface other) [pure virtual]

Connects this port with other, using the default policy of the input. Unlike OutputPortInterface::createConnection, other can be the write port and this the read port.

Returns:
true on success, false on failure

Implemented in RTT::base::InputPortInterface, and RTT::base::OutputPortInterface.

Create accessor Object for this Port, for addition to a TaskContext Object interface.

Reimplemented in RTT::OutputPort< T >, RTT::OutputPort< double >, RTT::OutputPort< int >, RTT::OutputPort< bool >, RTT::InputPort< T >, RTT::InputPort< double >, RTT::InputPort< int >, and RTT::InputPort< bool >.

Definition at line 74 of file PortInterface.cpp.

virtual bool RTT::base::PortInterface::createStream ( ConnPolicy const &  policy) [pure virtual]

Creates a data stream from or to this port using connection-less transports. Typically, policy.transport and policy.name_id must be properly filled in such that the data stream can be set up and input and output port can find each other. You need to call this method on two ports (input and output) using the same transport and (probably) same name_id.

Parameters:
policyThe connection policy describing how the stream must be set up.

Implemented in RTT::OutputPort< T >, RTT::OutputPort< double >, RTT::OutputPort< int >, RTT::OutputPort< bool >, RTT::InputPort< T >, RTT::InputPort< double >, RTT::InputPort< int >, RTT::InputPort< bool >, RTT::corba::RemotePort< base::InputPortInterface >, and RTT::corba::RemotePort< base::OutputPortInterface >.

virtual void RTT::base::PortInterface::disconnect ( ) [pure virtual]
virtual bool RTT::base::PortInterface::disconnect ( PortInterface port) [pure virtual]

Removes the connection that links this port and the given port

Returns true if there was such a connection, false otherwise

Implemented in RTT::base::OutputPortInterface, RTT::base::InputPortInterface, RTT::corba::RemotePort< base::InputPortInterface >, and RTT::corba::RemotePort< base::OutputPortInterface >.

PortInterface & PortInterface::doc ( const std::string &  desc)

Set the documentation of this port.

Parameters:
descThe description of the port
Returns:
a reference to this object.

Definition at line 59 of file PortInterface.cpp.

const std::string& RTT::base::PortInterface::getDescription ( ) const [inline]

Get the documentation of this port.

Returns:
A description.

Definition at line 91 of file PortInterface.hpp.

Returns the DataFlowInterface this port belongs to or null if it was not added to such an interface.

Definition at line 94 of file PortInterface.cpp.

virtual const internal::ConnectionManager* RTT::base::PortInterface::getManager ( ) const [pure virtual]

Returns the connection manager of this port (if any). This method provides access to the internals of this port in order to allow connection introspection.

Returns:
null if no such manager is available, or the manager otherwise.
See also:
ConnectionManager::getChannels() for a list of all connections of this port.

Implemented in RTT::base::InputPortInterface, and RTT::base::OutputPortInterface.

const std::string& RTT::base::PortInterface::getName ( ) const [inline]

Get the name of this Port.

Definition at line 77 of file PortInterface.hpp.

ConnID * PortInterface::getPortID ( ) const [virtual]

Returns the identity of this port in a ConnID object.

Reimplemented in RTT::corba::RemotePort< base::InputPortInterface >, and RTT::corba::RemotePort< base::OutputPortInterface >.

Definition at line 71 of file PortInterface.cpp.

virtual const types::TypeInfo* RTT::base::PortInterface::getTypeInfo ( ) const [pure virtual]
bool PortInterface::isLocal ( ) const [virtual]

Returns true if this port is located on this process, and false otherwise

Definition at line 66 of file PortInterface.cpp.

virtual bool RTT::base::PortInterface::removeConnection ( internal::ConnID cid) [pure virtual]

Removes a user created connection from this port. This is an advanced method, prefer to use disconnect() or a method from a subclass of PortInterface.

Implemented in RTT::base::OutputPortInterface, and RTT::base::InputPortInterface.

int PortInterface::serverProtocol ( ) const [virtual]

Returns the protocol over which this port can be accessed.

Reimplemented in RTT::corba::RemotePort< base::InputPortInterface >, and RTT::corba::RemotePort< base::OutputPortInterface >.

Definition at line 68 of file PortInterface.cpp.

Once a port is added to a DataFlowInterface, it gets a pointer to that interface. This allows advanced ports to track back to which component they belong.

Definition at line 90 of file PortInterface.cpp.

bool PortInterface::setName ( const std::string &  name)

Change the name of this unconnected Port. One can only change the name when it is not yet connected.

Return values:
trueif !this->connected(), the name has changed.
falseif this->connected(), the name has not been changed.

Definition at line 50 of file PortInterface.cpp.


Member Data Documentation

Definition at line 62 of file PortInterface.hpp.

std::string RTT::base::PortInterface::mdesc [private]

Definition at line 60 of file PortInterface.hpp.

std::string RTT::base::PortInterface::name [private]

Definition at line 59 of file PortInterface.hpp.


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


rtt
Author(s): RTT Developers
autogenerated on Thu Jan 2 2014 11:35:43