ReadDataPort Class Template Reference
[Data Transfer Ports]

#include <rtt/DataPort.hpp>

Inheritance diagram for ReadDataPort:

PortInterface DataPort

List of all members.


Detailed Description

template<class T>
class RTT::ReadDataPort< T >

A Port to a readable Data Connection.

Use connection() to access the data object. If the port is not connected, connection() returns null.

Parameters:
T The type of the data of the data object.

Definition at line 59 of file DataPort.hpp.


Public Types

enum  PortType { ReadPort, WritePort, ReadWritePort }
 This enum classifies if a port is inbound outbound or both. More...

Public Member Functions

 ReadDataPort (const std::string &name)
 Construct an unconnected Port to a readable data object.
 ~ReadDataPort ()
ReadDataPortoperator= (DataObjectInterface< T > *impl)
 Provide a new implementation for the connection of this port.
Get () const
 Get the current value of this Port.
void Get (T &result) const
 Get the current value of this Port.
virtual PortType getPortType () const
 Get the PortType of this port.
virtual const TypeInfogetTypeInfo () const
 Get the data type of this port.
bool connect (typename DataConnectionInterface< T >::shared_ptr conn)
 Connect a readable data object connection to this Port.
virtual
ConnectionInterface::shared_ptr 
connection () const
 Returns the connection in which this Port currently participates.
bool connected () const
 Inspect if this Port is currently connected with another Port.
bool connectTo (ConnectionInterface::shared_ptr other)
 Connect this port to a Connection.
void disconnect ()
 No longer participate in a connection.
const
DataObjectInterface
< T > * 
data () const
 Get the data object to read from.
virtual PortInterfaceclone () const
 Create a clone of this port with the same name.
virtual PortInterfaceantiClone () const
 Create the anti-clone (inverse port) of this port with the same name A port for reading will return a new port for writing and vice versa.
virtual TaskObjectcreatePortObject ()
 Create accessor Object for this Port, for addition to a TaskContext Object interface.
const std::string & getName () const
 Get the name of this Port.
bool setName (const std::string &name)
 Change the name of this unconnected Port.
bool ready () const
 Returns true if this Port is ready to be used.
virtual bool connectTo (PortInterface *other)
 Connect to another Port and create a new connection if necessary.
virtual
ConnectionInterface::shared_ptr 
createConnection (PortInterface *other, ConnectionTypes::ConnectionType con_type=ConnectionTypes::lockfree)
 Create a connection object from this port to another port.
virtual
ConnectionInterface::shared_ptr 
createConnection (ConnectionTypes::ConnectionType con_type=ConnectionTypes::lockfree)
 Create a new connection object to which this port is subscribed.
virtual int serverProtocol () const
 Returns the protocol over which this port can be accessed.

Protected Attributes

DataConnectionInterface
< T >::shared_ptr 
mconn
 The connection to read from.
std::string portname

Member Enumeration Documentation

enum PortType [inherited]

This enum classifies if a port is inbound outbound or both.

Enumerator:
ReadPort 
WritePort 
ReadWritePort 

Reimplemented in BufferPort.

Definition at line 65 of file PortInterface.hpp.


Constructor & Destructor Documentation

ReadDataPort ( const std::string &  name  )  [inline]

Construct an unconnected Port to a readable data object.

Parameters:
name The name of this port.

Definition at line 68 of file DataPort.hpp.


Member Function Documentation

ReadDataPort< T > & operator= ( DataObjectInterface< T > *  impl  )  [inline]

Provide a new implementation for the connection of this port.

If this port is not connected, a new connection is created.

Reimplemented in DataPort.

Definition at line 455 of file DataPort.hpp.

References ReadDataPort::connectTo(), and ReadDataPort::mconn.

T Get (  )  const [inline]

Get the current value of this Port.

Return values:
this->data()->Get() if this->connected()
T() if !this->connected()

Reimplemented in DataPort.

Definition at line 86 of file DataPort.hpp.

References ReadDataPort::mconn.

void Get ( T &  result  )  const [inline]

Get the current value of this Port.

Parameters:
result the variable in which the port value will be stored.
Postcondition:
result == this->data()->Get(result) if this->connected()

result is unmodified if !this->connected()

Reimplemented in DataPort.

Definition at line 99 of file DataPort.hpp.

References ReadDataPort::mconn.

virtual ConnectionInterface::shared_ptr connection (  )  const [inline, virtual]

Returns the connection in which this Port currently participates.

It is possible that this port is part of a dormant connection, ( the connection object is not in the connected() state), in that case this method will return null, until the dormant connection becomes connected().

Return values:
null if not connected to another Port.

Implements PortInterface.

Reimplemented in DataPort.

Definition at line 119 of file DataPort.hpp.

References ReadDataPort::mconn.

bool connectTo ( ConnectionInterface::shared_ptr  conn  )  [inline, virtual]

Connect this port to a Connection.

If the connection is in the connected() state, this port will participate in that connection, otherwise, the port will become connected once conn becomes connected().

Returns:
true if connection was possible, false otherwise.

Implements PortInterface.

Reimplemented in DataPort.

Definition at line 124 of file DataPort.hpp.

References ReadDataPort::mconn.

Referenced by ReadDataPort::operator=().

const DataObjectInterface<T>* data (  )  const [inline]

Get the data object to read from.

The Task may use this to read from a Data object connection connected to this port.

Returns:
0 if !connected(), the Data Object otherwise.

Reimplemented in DataPort.

Definition at line 137 of file DataPort.hpp.

References ReadDataPort::mconn.

bool setName ( const std::string &  name  )  [inherited]

Change the name of this unconnected Port.

One can only change the name when it is not yet connected.

Return values:
true if !this->connected(), the name has changed.
false if this->connected(), the name has not been changed.

Definition at line 50 of file PortInterface.cpp.

References PortInterface::connected(), and PortInterface::portname.

bool ready (  )  const [inherited]

Returns true if this Port is ready to be used.

Identical to connected().

Definition at line 59 of file PortInterface.cpp.

References PortInterface::connected().

Referenced by DataPort::createPortObject(), WriteDataPort::createPortObject(), ReadDataPort::createPortObject(), BufferPort::createPortObject(), WriteBufferPort::createPortObject(), and ReadBufferPort::createPortObject().

bool connectTo ( PortInterface other  )  [virtual, inherited]

Connect to another Port and create a new connection if necessary.

Definition at line 63 of file PortInterface.cpp.

References PortInterface::antiClone(), PortInterface::connection(), PortInterface::connectTo(), PortInterface::createConnection(), PortInterface::disconnect(), and RTT::Warning.


The documentation for this class was generated from the following file:
Generated on Tue Mar 25 17:41:55 2008 for OrocosReal-TimeToolkit by  doxygen 1.5.3