39 #ifndef ORO_CONN_POLICY_HPP 40 #define ORO_CONN_POLICY_HPP 110 static const int UNBUFFERED = -1;
111 static const int DATA = 0;
112 static const int BUFFER = 1;
113 static const int CIRCULAR_BUFFER = 2;
115 static const int UNSYNC = 0;
116 static const int LOCKED = 1;
117 static const int LOCK_FREE = 2;
119 static const bool PUSH =
false;
120 static const bool PULL =
true;
139 static ConnPolicy buffer(
int size,
int lock_policy = LOCK_FREE,
bool init_connection =
false,
bool pull =
false);
149 static ConnPolicy circularBuffer(
int size,
int lock_policy = LOCK_FREE,
bool init_connection =
false,
bool pull =
false);
158 static ConnPolicy data(
int lock_policy = LOCK_FREE,
bool init_connection =
true,
bool pull =
false);
187 explicit ConnPolicy(
int type,
int lock_policy);
int data_size
Suggest the payload size of the data sent over this channel.
int lock_policy
This is the locking policy on the connection.
int type
DATA, BUFFER or CIRCULAR_BUFFER.
A connection policy object describes how a given connection should behave.
int size
If the connection is a buffered connection, the size of the buffer.
bool pull
If true, then the sink will have to pull data.
bool mandatory
Whether the connection described by this connection policy is mandatory, which means that write opera...
int max_threads
The maximum number of threads that will access the connection data or buffer object.
bool init
If true, one should initialize the connection's value with the last value written on the writer port...
std::ostream & operator<<(std::ostream &os, const BufferPolicy &bp)
int transport
The prefered transport used.
int buffer_policy
The policy on how buffer elements will be installed for this connection, which influences the behavio...
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
std::string name_id
The name of this connection.