#include <InputPort.hpp>
Private Member Functions | |
virtual bool | connectionAdded (base::ChannelElementBase::shared_ptr channel_input, ConnPolicy const &policy) |
InputPort (InputPort const &orig) | |
InputPort & | operator= (InputPort const &orig) |
Private Attributes | |
internal::ConnOutputEndpoint< T >::shared_ptr | endpoint |
Friends | |
class | internal::ConnOutputEndpoint< T > |
Additional Inherited Members | |
Protected Member Functions inherited from RTT::base::InputPortInterface | |
InputPortInterface (const InputPortInterface &orig) | |
void | signal () |
void | traceRead (RTT::FlowStatus status) |
Protected Member Functions inherited from RTT::base::PortInterface | |
PortInterface (const std::string &name) | |
Protected Attributes inherited from RTT::base::InputPortInterface | |
ConnPolicy | default_policy |
bool | msignal_interface |
Protected Attributes inherited from RTT::base::PortInterface | |
internal::ConnectionManager | cmanager |
os::MutexRecursive | connection_lock |
DataFlowInterface * | iface |
A component's data input port. An Orocos input port is used to receive data samples from a distant publisher. The InputPort is read() and returns true if a sample is available.
Ideally, your algorithm should not assume a certain connection policy being used from output to input. So it should work on data connections and buffer connections.
Definition at line 63 of file InputPort.hpp.
|
private |
You are not allowed to copy ports. In case you want to create a container of ports, use pointers to ports instead of the port object itself.
|
inline |
Definition at line 81 of file InputPort.hpp.
|
inlinevirtual |
Definition at line 86 of file InputPort.hpp.
|
inlinevirtual |
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.
Implements RTT::base::PortInterface.
Definition at line 196 of file InputPort.hpp.
|
inlinevirtual |
Clears the input buffer (or all input buffers), so that read() will return NoData before a new sample has been written.
Implements RTT::base::InputPortInterface.
Definition at line 91 of file InputPort.hpp.
|
inlinevirtual |
Create a clone of this port with the same name
Implements RTT::base::PortInterface.
Definition at line 188 of file InputPort.hpp.
|
inlineprivatevirtual |
Definition at line 69 of file InputPort.hpp.
|
inlinevirtual |
Create accessor Object for this Port, for addition to a TaskContext Object interface.
Reimplemented from RTT::base::PortInterface.
Definition at line 217 of file InputPort.hpp.
|
inlinevirtual |
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.
policy | The connection policy describing how the stream must be set up. |
Implements RTT::base::PortInterface.
Definition at line 207 of file InputPort.hpp.
|
inline |
Get a sample of the data on this port, without actually reading the port's data. It's the complement of OutputPort::setDataSample() and serves to retrieve the size of a variable sized data type T. Returns default T if !connected() or if the OutputPort did not use setDataSample(). Returns an example T otherwise. In case multiple inputs are connected to this port a sample from the currently read connection will be returned.
Definition at line 176 of file InputPort.hpp.
|
inlinevirtual |
Returns a base::DataSourceBase interface to read this port. The returned data source is always a new object.
Implements RTT::base::InputPortInterface.
Definition at line 202 of file InputPort.hpp.
|
inlinevirtual |
Returns the input or output endpoint of this port (if any). This method provides access to the internals of this port in order to access connected channel objects directly.
Implements RTT::base::PortInterface.
Definition at line 229 of file InputPort.hpp.
|
inlinevirtual |
Definition at line 235 of file InputPort.hpp.
|
inlinevirtual |
Returns the types::TypeInfo object for the port's type
Implements RTT::base::PortInterface.
Definition at line 182 of file InputPort.hpp.
|
private |
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 97 of file InputPort.hpp.
|
inlinevirtual |
Reads the port and updates the value hold by the given data source. This is only valid for local ports.
source has to be an assignable data source
Reimplemented from RTT::base::InputPortInterface.
Definition at line 100 of file InputPort.hpp.
|
inline |
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
Definition at line 133 of file InputPort.hpp.
|
inline |
Reads a sample from the connection. sample is a reference which will get updated if a new sample is available.
The method returns an enum FlowStatus, which describes what type of sample (old or new data) or if a sample was returned (no data)
With the argument
Definition at line 147 of file InputPort.hpp.
|
inline |
Read all new samples that are available on this port, and returns the last one.
Returns RTT::NewData if at least one new sample was available, and either RTT::OldData or RTT::NoData otherwise.
Definition at line 120 of file InputPort.hpp.
|
inline |
Read all new samples that are available on this port, and returns the last one.
Returns RTT::NewData if at least one new sample was available, and either RTT::OldData or RTT::NoData otherwise.
Definition at line 158 of file InputPort.hpp.
|
friend |
Definition at line 66 of file InputPort.hpp.
|
private |
Definition at line 67 of file InputPort.hpp.