Orocos Real-Time Toolkit  2.8.3
DataFlow.idl
Go to the documentation of this file.
1 #ifndef ORO_CORBA_DATAFLOW_IDL
2 #define ORO_CORBA_DATAFLOW_IDL
3 
4 #ifdef CORBA_IS_TAO
5 //resolves LNK2005
6 #include <tao/orb.idl>
7 #endif
8 
9 module RTT
10 {
11  module corba
12  {
16  struct CConnPolicy
17  {
19  boolean init;
21  boolean pull;
22  long size;
23  long transport;
24  long data_size;
25  string name_id;
26  };
27 
34  interface CChannelElement
35  {
39  CFlowStatus read(out any sample, in boolean copy_old_data);
44  boolean write(in any sample);
49  void disconnect();
50  };
51 
57  {
64  //boolean setDataSample(in any sample);
71  //boolean inputReady();
76  void setRemoteSide(in CRemoteChannelElement other);
82  oneway void remoteSignal();
83 
92  void remoteDisconnect(in boolean writer_to_reader);
93 
94  };
95 
97  exception CNoSuchPortException {};
101  exception CNoCorbaTransport {};
102 
104 
106  {
108  string name;
109  string type_name;
110  };
111 
120  {
121  typedef sequence<string> CPortNames;
122  typedef sequence<CPortDescription> CPortDescriptions;
123 
127  CPortNames getPorts();
128 
132  CPortDescriptions getPortDescriptions();
133 
137  CPortType getPortType(in string port_name)
138  raises(CNoSuchPortException);
139 
143  string getDataType(in string port_name)
144  raises(CNoSuchPortException);
145 
149  boolean isConnected(in string port_name)
150  raises(CNoSuchPortException);
151 
156  void disconnectPort(in string port_name)
157  raises(CNoSuchPortException);
158 
168  CChannelElement buildChannelOutput(in string input_port, inout CConnPolicy policy)
170 
177  CChannelElement buildChannelInput(in string output_port, inout CConnPolicy policy)
179 
197  boolean createConnection(in string local_port, in CDataFlowInterface remote_ports,
198  in string remote_port, inout CConnPolicy policy)
199  raises(CNoSuchPortException);
200 
204  boolean removeConnection(in string local_port,
205  in CDataFlowInterface remote_ports, in string remote_port)
206  raises(CNoSuchPortException);
207 
213  boolean createStream(in string local_port, inout CConnPolicy policy)
214  raises(CNoSuchPortException);
215 
222  void removeStream(in string local_port, in string stream_name)
223  raises(CNoSuchPortException);
224 
236  boolean channelReady(in string input_port,in CChannelElement channel, in CConnPolicy cp)
237  raises(CNoSuchPortException);
238  };
239  };
240 };
241 #endif
242 
The advanced channel element interface, used by Orocos to relay over-CORBA data flow connections...
Definition: DataFlow.idl:56
An interface to access the dataflow of a CControlTask object.
Definition: DataFlow.idl:119
CConnectionModel type
Definition: DataFlow.idl:18
Emitted when information is requested on a port that does not exist.
Definition: DataFlow.idl:97
Represents the basic channel element interface for reading, writing and disconnecting a channel...
Definition: DataFlow.idl:34
sequence< CPortDescription > CPortDescriptions
Definition: DataFlow.idl:122
Emitted during connections, when there is no CORBA transport defined for the data type of the given p...
Definition: DataFlow.idl:101
sequence< string > CPortNames
Definition: DataFlow.idl:121
Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.
Definition: Activity.cpp:51
CLockPolicy lock_policy
Definition: DataFlow.idl:20