This section explains connection between data ports and service ports.
Connect data port "InPort" and "OutPort". When dragging and dropping between these, the following dialog will be displayed. The setting items of "Buffer" are hidden in the initial display.
The items and conditions of the dialog are as follows.
No. | Dialogue item name | ConnectorProfile | Requirement |
① | Name | name | None |
② | Data Type | <<properties>> dataport.data_type |
Specify the data type to be transmitted and received between the data ports connected by this connector. Select from data types that can be sent and received from each port. However, when including Any, it accepts any value of the other port. |
③ | Instance Type | <<properties>> dataport.interface_type |
Specify the interface type supported by the RT system designer or supported on the RT middleware on which RTC runs. Select from the interface types supported by each port. However, when including Any, it allows any interface of the other port. |
④ | Dataflow Type | <<properties>> dataport.dataflow_type |
Specify the data flow type that is supported by the RT system designer or RT Middleware on which RTC runs. Select from the data flow types supported by each port. However, when including Any, it allows any kind of data flow on the partner port. |
⑤ | Subscription Type | <<properties>> dataport.subscription_type |
[Condition required when the value of Dataflow Type is Push] Specify the type of subscription supported by the RT system designer, or on RT Middleware on which RTC runs. Select from among the subscription types supported by each port. However, if you include Any, you allow any subscription type of the other party. |
⑥ | Push Rate(Hz) | <<properties>> dataport.push_interval |
[Condition required when the value of Dataflow Type is "Push" and Subscription Type is "Periodic"] When the subscription type is "Periodic", specify the data transmission cycle. Specify the transmission cycle with a positive value (decimal possible). |
⑦ | Push Policy | <<properties>> dataport.publisher.push_policy |
Data transmission policy. [Condition required when Dataflow Type value is "Push" and Subscription Type is "Periodic"] Select from all, fifo, skip, new. all:Bulk transmission of data in buffer fifo:Send data in buffer one by one with FIFO skip:Sending by thinning out the data in the buffer new:Send the latest value of the data in the buffer (old values are discarded.) |
⑧ | Skip Count | <<properties>> dataport.publisher.skip_count |
Number of transmitted data skips. [Required condition when the value of Push Policy is "skip"] The data in the buffer is thinned out with this setting value and transmitted. |
⑨ | Details | ― | When the check box is checked, detailed setting items of the buffer of the I / O port are displayed. It is hidden at the initial display of the dialog. |
⑩ ⑮ |
Buffer length (OutPort/InPort) |
<<properties>> buffer.length |
Buffer length |
⑪ ⑯ |
Buffer full policy (OutPort/InPort) |
<<properties>> buffer.write.full_policy |
Behavior in case of buffer full when writing data to buffer. Select from overwrite, do_nothing, block. overwrite:Overwrite the data. do_nothing:I will not do anything. block:I will block. If block is specified, if the next timeout value is specified, it will time out if it can not be written after the specified time. The default is overwrite (overwrite). |
⑫ ⑰ |
Buffer write timeout (OutPort/InPort) |
<<properties>> buffer.write.timeout |
Time (in seconds) to generate the timeout out event when writing data to the buffer The default is 1.0 [sec]. If 0.0 is set, timeout does not occur. |
⑬ ⑱ |
Buffer empty policy (OutPort/InPort) |
<<properties>> buffer.read.empty_policy |
Behavior when buffer is empty when reading data from buffer. Select from readblock, do_nothing, and block. readblock:It rereads the last element. do_nothing:I will not do anything. block:I will block. If block is specified, if the next timeout value is specified, it will time out if it can not be read after the specified time. The default is readback. |
⑭ ⑲ |
Buffer read timeout (OutPort/InPort) |
<<properties>> buffer.read.timeout |
Time (in seconds) for generating a timeout event when reading data from the buffer The default is 1.0 [sec]. If 0.0 is set, timeout does not occur. |
⑳ ㉑ |
Name/Value | <<properties>> Name |
Set arbitrary properties You can add items with the [Add] button and delete items with the [Delete] button. The entered item is set to Properties of ConnectorProfile in NVList format. Property of the same key can not be set. |
Regarding items ② to ⑤, RT System Editor creates values that can be specified by matching character strings from the value list of each port. If only ANY is specified for both ports, it is impossible to determine the value that can be entered. Therefore, when ANY is included in both ports, RT System Editor allows you to enter arbitrary character strings. For items that can input arbitrary character strings, "Optional input possible" is displayed.
For connection between service ports, connect "ServicePort" and "ServicePort". When dragging and dropping between these, the following dialog will be displayed.
The items and conditions of the dialog are as follows.
No. | Dialogue item name | ConnectorProfile | Requirement |
① | Name | Name | None |
② | Details | ― | If you select the check box, the detailed setting items of Consumer / Provider will be displayed. It is hidden at the initial display of the dialog. |
③ | Consumer | ― | Select from the Consumer list of the interface set for the service port to be connected. In the selection list of ComboBox, it is displayed in the form of <component name>: <interface name>: <instance name>. The added Consumer / Provider pair is stored in the ConnectorProfile with the Consumer ID as the property key and the Provider ID as the property value. Consumer / Provider IDs are expressed in the following format. <rtc_name>.port.<port_name>.<if_polality>.<if_tname>.<if_iname> - rtc_name is the component name - port_name is the port name - if_polality is "required" for Consumer, "provided" for Provider - if_iname is the instance name of the interface |
④ | Provider | <<properties>> Set using Consumer ID as key |
As with Consumer, select from the list of Providers of the interface set for the service port to be connected. |
⑤ | Add | ― | Add a new entry for Consumer/Provider. |
⑥ | Delete | ― | Deletes the selected Consumer / Provider entry. |
⑦ ⑧ |
Name/Value | <<properties>> Name |
Set arbitrary properties You can add items with the [Add] button and delete items with the [Delete] button. The entered item is set to Properties of ConnectorProfile in NVList format. Property of the same key can not be set. |
For the service port, there is no mandatory connection condition. However, if PortInterfaceProfile between ServicePorts does not perfectly match (* 1), a warning will be displayed on the connection dialog.