blob: dc943287082535993e8387e84692afc4bdd15e31 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
|
<!--//$Id$ -->
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>DDS4CCM Tutorial Shapes - DDS4CCM</title>
</head>
<body>
<table width="100%" border="0">
<tr>
<td align="left"><a href="./03_executors.html">Previous<a></td>
<td align="center"><img width="4%" height="5%" src="./images/images.png"/></td>
<td align="right"><a href="./05_coding.html">Next<a></td>
</tr>
</table>
<hr />
<h1>DDS4CCM basics</h1>
<p>
The DDS4CCM connector itself is a CCM component placed between your component
and DDS itself.<br/>
In DDS there're basically two entities: DataWriters and DataReaders.
To gain access to these entities, the DDS4CCM connector offers two basic types
of ports (connectors) : DDS_Event and DDS_State.
These basic ports have extended ports which allow the user to access the actual
datareaders and datawriters. It'll depend on the functionality of your component
which type of basic port you're going to use.<br/>
A DDS_Event DDS4CCM connector consists of the following extented ports:
<ul>
<li>A DDS_Write port</li>
<li>A DDS_Get port</li>
<li>A DDS_Listen port</li>
</ul>
A DDS_State DDS4CCM connector consists of the following extended ports:
<ul>
<li>A DDS_Update port</li>
<li>A DDS_Read port</li>
<li>A DDS_Get port</li>
<li>A DDS_Listen port</li>
<li>A DDS_StateListen port</li>
</ul>
</p>
<p>
See <a href="../../../idl/ccm_dds.idl">ccm_dds.idl<a> for a complete overview
of connector types, extend ports and their methods.
</p>
<h2>Example</h2>
<p>
The Sender component of this Shapes tutorial writes a ShapeType struct (sample)
to DDS every time the Controller invokes setSize or setLocation.
The Sender therefor is connected to a DDS_Event connector and uses the
DDS_Write extended port. To write a sample, the Sender uses the write_one method
of the DDS_Write extended port (see ccm_dds.idl and the Shapes Sender
executor file).
</p>
<p>
The Receiver listens to DDS for data. DDS invokes a listener callback method (
on_data_available) on the DDS4CCM connector which in turn invokes the
on_data_available method on the Receiver component. To establish all this
the Receiver is connected to a DDS_Event connector and uses the DDS_Listen
extended port (see ccm_dds.idl and the Shapes Receiver executor file).
</p>
<p>
All this will be discussed in more detail later in this tutorial.
</p>
<hr />
<table width="100%" border="0">
<tr>
<td align="left"><a href="./03_executors.html">Previous<a></td>
<td align="center"><img width="4%" height="5%" src="./images/images.png"/></td>
<td align="right"><a href="./05_coding.html">Next<a></td>
</tr>
</table>
</body>
|