Orocos Real-Time Toolkit
2.8.3
|
Proxy for a remote output port. More...
#include <rtt/transports/corba/RemotePorts.hpp>
Public Member Functions | |
RemoteOutputPort (types::TypeInfo const *type_info, CDataFlowInterface_ptr dataflow, std::string const &name, PortableServer::POA_ptr poa) | |
bool | keepsLastWrittenValue () const |
Returns true if this port records the last written value. More... | |
void | keepLastWrittenValue (bool new_flag) |
Change the setting for keeping the last written value. More... | |
virtual bool | disconnect (PortInterface *port) |
Removes the channel that connects this port to port . More... | |
bool | createConnection (base::InputPortInterface &sink, ConnPolicy const &policy) |
Connects this write port to the given read port, using the given connection policy. More... | |
virtual base::DataSourceBase::shared_ptr | getDataSource () const |
Returns a Data source that stores the last written value, or a null pointer if this port does not keep its last written value. More... | |
base::PortInterface * | clone () const |
Create a local clone of this port with the same name. More... | |
base::PortInterface * | antiClone () const |
Create a local clone of this port with the same name. More... | |
PortableServer::POA_ptr | _default_POA () |
CDataFlowInterface_ptr | getDataFlowInterface () const |
internal::ConnID * | getPortID () const |
types::TypeInfo const * | getTypeInfo () const |
int | serverProtocol () const |
bool | connected () const |
bool | createStream (const ConnPolicy &policy) |
virtual bool | addConnection (internal::ConnID *port_id, base::ChannelElementBase::shared_ptr channel_input, ConnPolicy const &policy) |
virtual void | disconnect () |
virtual void | write (DataSourceBase::shared_ptr source) |
Write this port using the value stored in source. More... | |
bool | createDataConnection (InputPortInterface &sink, int lock_policy=ConnPolicy::LOCK_FREE) |
Connects this write port to the given read port, using a single-data policy with the given locking mechanism. More... | |
bool | createBufferConnection (InputPortInterface &sink, int size, int lock_policy=ConnPolicy::LOCK_FREE) |
Connects this write port to the given read port, using a buffered policy, with the buffer of the given size and the given locking mechanism. More... | |
bool | createConnection (InputPortInterface &sink) |
Connects this write port to the given read port, using as policy the default policy of the sink port. More... | |
virtual bool | removeConnection (internal::ConnID *cid) |
Removes the connection associated with this channel, and the channel as well. More... | |
virtual bool | connectTo (PortInterface *other, ConnPolicy const &policy) |
Connects this port with other, using the given policy. More... | |
virtual bool | connectTo (PortInterface *other) |
Connects this port with other, using the default policy of the input. More... | |
virtual const internal::ConnectionManager * | getManager () const |
Returns the connection manager of this port (if any). More... | |
const std::string & | getName () const |
Get the name of this Port. More... | |
bool | setName (const std::string &name) |
Change the name of this unconnected Port. More... | |
const std::string & | getDescription () const |
Get the documentation of this port. More... | |
PortInterface & | doc (const std::string &desc) |
Set the documentation of this port. More... | |
virtual bool | isLocal () const |
Returns true if this port is located on this process, and false otherwise. More... | |
virtual Service * | createPortObject () |
Create accessor Object for this Port, for addition to a TaskContext Object interface. More... | |
void | setInterface (DataFlowInterface *iface) |
Once a port is added to a DataFlowInterface, it gets a pointer to that interface. More... | |
DataFlowInterface * | getInterface () const |
Returns the DataFlowInterface this port belongs to or null if it was not added to such an interface. More... | |
Protected Member Functions | |
bool | connectionAdded (base::ChannelElementBase::shared_ptr channel, ConnPolicy const &policy) |
Protected Attributes | |
types::TypeInfo const * | type_info |
CDataFlowInterface_var | dataflow |
PortableServer::POA_var | mpoa |
internal::ConnectionManager | cmanager |
DataFlowInterface * | iface |
Proxy for a remote output port.
Allows for creation of a connection from the remote port to a local input port.
Definition at line 96 of file RemotePorts.hpp.
RemoteOutputPort::RemoteOutputPort | ( | types::TypeInfo const * | type_info, |
CDataFlowInterface_ptr | dataflow, | ||
std::string const & | name, | ||
PortableServer::POA_ptr | poa | ||
) |
Definition at line 223 of file RemotePorts.cpp.
|
inherited |
|
virtualinherited |
Reimplemented from RTT::base::OutputPortInterface.
|
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.
Implements RTT::base::PortInterface.
Definition at line 298 of file RemotePorts.cpp.
References RTT::base::PortInterface::getName(), RTT::types::TypeInfo::inputPort(), and RTT::corba::RemotePort< base::OutputPortInterface >::type_info.
|
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.
Implements RTT::base::PortInterface.
Definition at line 295 of file RemotePorts.cpp.
References RTT::base::PortInterface::getName(), RTT::types::TypeInfo::outputPort(), and RTT::corba::RemotePort< base::OutputPortInterface >::type_info.
|
virtualinherited |
Reimplemented from RTT::base::OutputPortInterface.
|
inlineprotectedvirtualinherited |
Implements RTT::base::OutputPortInterface.
Definition at line 69 of file RemotePorts.hpp.
References RTT::corba::RemotePort< PortClass >::_default_POA(), RTT::corba::RemotePort< PortClass >::addConnection(), RTT::corba::RemotePort< PortClass >::connected(), RTT::corba::RemotePort< PortClass >::createStream(), RTT::corba::RemotePort< PortClass >::disconnect(), RTT::corba::RemotePort< PortClass >::getDataFlowInterface(), RTT::corba::RemotePort< PortClass >::getPortID(), RTT::corba::RemotePort< PortClass >::getTypeInfo(), RTT::corba::RemotePort< PortClass >::RemotePort(), and RTT::corba::RemotePort< PortClass >::serverProtocol().
|
virtualinherited |
Connects this port with other, using the given policy.
Unlike OutputPortInterface::createConnection, other can be the write port and this
the read port.
Implements RTT::base::PortInterface.
Definition at line 100 of file OutputPortInterface.cpp.
References RTT::base::OutputPortInterface::createConnection().
|
virtualinherited |
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.
Implements RTT::base::PortInterface.
Definition at line 108 of file OutputPortInterface.cpp.
References RTT::base::OutputPortInterface::createConnection().
|
inherited |
Connects this write port to the given read port, using a buffered policy, with the buffer of the given size and the given locking mechanism.
Definition at line 94 of file OutputPortInterface.cpp.
References RTT::ConnPolicy::buffer(), RTT::base::OutputPortInterface::createConnection(), and RTT::base::InputPortInterface::getDefaultPolicy().
|
virtual |
Connects this write port to the given read port, using the given connection policy.
Implements RTT::base::OutputPortInterface.
Definition at line 260 of file RemotePorts.cpp.
References CORBA_EXCEPTION_INFO, RTT::corba::RemotePort< base::OutputPortInterface >::dataflow, RTT::Error, RTT::corba::RemotePort< PortClass >::getDataFlowInterface(), RTT::base::PortInterface::getInterface(), RTT::base::PortInterface::getName(), RTT::corba::CDataFlowInterface_i::getRemoteInterface(), RTT::corba::RemotePort< base::OutputPortInterface >::mpoa, RTT::corba::CConnPolicy::name_id, RTT::ConnPolicy::name_id, and toCORBA().
|
inherited |
Connects this write port to the given read port, using as policy the default policy of the sink port.
Referenced by RTT::OutputPort< T >::antiClone(), RTT::base::OutputPortInterface::connectTo(), RTT::base::InputPortInterface::connectTo(), RTT::base::OutputPortInterface::createBufferConnection(), RTT::base::OutputPortInterface::createDataConnection(), and RTT::corba::CDataFlowInterface_i::deregisterChannel().
|
inherited |
Connects this write port to the given read port, using a single-data policy with the given locking mechanism.
Definition at line 91 of file OutputPortInterface.cpp.
References RTT::base::OutputPortInterface::createConnection(), and RTT::ConnPolicy::data().
|
virtualinherited |
Create accessor Object for this Port, for addition to a TaskContext Object interface.
Reimplemented in RTT::OutputPort< T >, and RTT::InputPort< T >.
Definition at line 75 of file PortInterface.cpp.
References RTT::Service::addSynchronousOperation(), RTT::base::PortInterface::connected(), RTT::base::PortInterface::disconnect(), RTT::base::PortInterface::getName(), RTT::DataFlowInterface::getOwner(), and RTT::base::PortInterface::iface.
Referenced by RTT::InputPort< T >::createPortObject(), RTT::DataFlowInterface::createPortObject(), and RTT::OutputPort< T >::createPortObject().
|
virtualinherited |
Implements RTT::base::PortInterface.
|
virtualinherited |
Reimplemented from RTT::base::OutputPortInterface.
|
virtual |
Removes the channel that connects this port to port
.
Reimplemented from RTT::base::OutputPortInterface.
Definition at line 241 of file RemotePorts.cpp.
References RTT::corba::RemotePort< base::OutputPortInterface >::dataflow, RTT::Error, RTT::corba::RemotePort< PortClass >::getDataFlowInterface(), and RTT::base::PortInterface::getName().
|
inherited |
Set the documentation of this port.
desc | The description of the port |
Definition at line 60 of file PortInterface.cpp.
References RTT::base::PortInterface::iface, and RTT::DataFlowInterface::setPortDescription().
Referenced by RTT::InputPort< T >::createPortObject().
|
inherited |
|
virtual |
Returns a Data source that stores the last written value, or a null pointer if this port does not keep its last written value.
Implements RTT::base::OutputPortInterface.
Definition at line 235 of file RemotePorts.cpp.
|
inlineinherited |
Get the documentation of this port.
Definition at line 91 of file PortInterface.hpp.
|
inherited |
Returns the DataFlowInterface this port belongs to or null if it was not added to such an interface.
Definition at line 95 of file PortInterface.cpp.
References RTT::base::PortInterface::iface.
Referenced by RTT::corba::RemoteInputPort::buildRemoteChannelOutput(), createConnection(), and RTT::mqueue::MQSendRecv::setupStream().
|
inlinevirtualinherited |
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.
Implements RTT::base::PortInterface.
Definition at line 142 of file OutputPortInterface.hpp.
|
inlineinherited |
Get the name of this Port.
Definition at line 77 of file PortInterface.hpp.
Referenced by RTT::DataFlowInterface::addEventPort(), RTT::DataFlowInterface::addLocalEventPort(), RTT::DataFlowInterface::addLocalPort(), RTT::DataFlowInterface::addPort(), antiClone(), RTT::corba::RemoteInputPort::antiClone(), RTT::InputPort< T >::antiClone(), RTT::OutputPort< T >::antiClone(), RTT::corba::CorbaFallBackProtocol::buildChannelInput(), RTT::corba::CorbaFallBackProtocol::buildChannelOutput(), RTT::corba::RemoteInputPort::buildRemoteChannelOutput(), RTT::corba::RemoteInputPort::channelReady(), clone(), RTT::corba::RemoteInputPort::clone(), RTT::InputPort< T >::clone(), RTT::OutputPort< T >::clone(), RTT::TaskContext::connectPorts(), RTT::base::InputPortInterface::connectTo(), RTT::internal::ConnFactory::createAndCheckConnection(), RTT::internal::ConnFactory::createAndCheckOutOfBandConnection(), RTT::internal::ConnFactory::createAndCheckStream(), createConnection(), RTT::internal::ConnFactory::createConnection(), RTT::base::PortInterface::createPortObject(), RTT::internal::ConnFactory::createRemoteConnection(), RTT::corba::CorbaFallBackProtocol::createStream(), RTT::corba::CDataFlowInterface_i::deregisterChannel(), disconnect(), and RTT::mqueue::MQSendRecv::setupStream().
|
virtualinherited |
Reimplemented from RTT::base::PortInterface.
|
virtualinherited |
Implements RTT::base::PortInterface.
|
virtualinherited |
Returns true if this port is located on this process, and false otherwise.
Definition at line 67 of file PortInterface.cpp.
References RTT::base::PortInterface::serverProtocol().
Referenced by RTT::internal::ConnFactory::createAndCheckOutOfBandConnection(), and RTT::internal::ConnFactory::createConnection().
|
virtual |
Change the setting for keeping the last written value.
Setting this to false will clear up any unneeded storage. If set, this port can initialize new connections with a data sample and allows real-time data transport of dynamically sized objects over its newly created connections.
Implements RTT::base::OutputPortInterface.
Definition at line 232 of file RemotePorts.cpp.
|
virtual |
Returns true if this port records the last written value.
Implements RTT::base::OutputPortInterface.
Definition at line 229 of file RemotePorts.cpp.
|
virtualinherited |
Removes the connection associated with this channel, and the channel as well.
Implements RTT::base::PortInterface.
Definition at line 82 of file OutputPortInterface.cpp.
References RTT::base::OutputPortInterface::cmanager, and RTT::internal::ConnectionManager::removeConnection().
Referenced by RTT::internal::ConnInputEndpoint< T >::disconnect().
|
virtualinherited |
Reimplemented from RTT::base::PortInterface.
|
inherited |
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 91 of file PortInterface.cpp.
References RTT::base::PortInterface::iface.
Referenced by RTT::DataFlowInterface::addLocalPort(), and RTT::corba::CDataFlowInterface_i::deregisterChannel().
|
inherited |
Change the name of this unconnected Port.
One can only change the name when it is not yet connected.
true | if !this->connected(), the name has changed. |
false | if this->connected(), the name has not been changed. |
Definition at line 51 of file PortInterface.cpp.
References RTT::base::PortInterface::connected().
Referenced by RTT::DataFlowInterface::addEventPort(), RTT::TaskContext::addEventPort(), RTT::DataFlowInterface::addPort(), and RTT::TaskContext::addPort().
|
virtualinherited |
Write this port using the value stored in source.
Reimplemented in RTT::OutputPort< T >.
Definition at line 88 of file OutputPortInterface.cpp.
|
protectedinherited |
Definition at line 56 of file OutputPortInterface.hpp.
Referenced by RTT::base::OutputPortInterface::addConnection(), RTT::base::OutputPortInterface::connected(), RTT::base::OutputPortInterface::disconnect(), RTT::base::OutputPortInterface::removeConnection(), RTT::OutputPort< T >::setDataSample(), RTT::OutputPort< T >::write(), and RTT::base::OutputPortInterface::~OutputPortInterface().
|
protectedinherited |
Definition at line 66 of file RemotePorts.hpp.
Referenced by createConnection(), and disconnect().
|
protectedinherited |
Definition at line 62 of file PortInterface.hpp.
Referenced by RTT::base::PortInterface::createPortObject(), RTT::base::PortInterface::doc(), RTT::base::PortInterface::getInterface(), and RTT::base::PortInterface::setInterface().
|
protectedinherited |
Definition at line 67 of file RemotePorts.hpp.
Referenced by createConnection().
|
protectedinherited |
Definition at line 65 of file RemotePorts.hpp.
Referenced by antiClone(), and clone().