RTI Connext Java API v5.0.0
RTI Connext Java API v5.0.0
Version 5.0.0
Generated by Doxygen 1.5.5
Mon Aug 13 09:02:20 2012
Contents
1 RTI Connext
1.1
1.2
Available Documentation. . . . . . . . . . . . . . . . . . . . . . .
2 Module Index
2.1
Modules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
3 Namespace Index
3.1
Package List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4 Class Index
4.1
Class Hierarchy . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5 Class Index
5.1
Class List . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6 Module Documentation
5
5
9
9
13
13
21
21
41
6.1
ASYNCHRONOUS PUBLISHER . . . . . . . . . . . . . . . . . .
41
6.2
AVAILABILITY . . . . . . . . . . . . . . . . . . . . . . . . . . .
43
6.3
BATCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
44
6.4
45
6.5
DATABASE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
46
6.6
47
6.7
48
6.8
50
ii
CONTENTS
6.9
51
6.10 DEADLINE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
52
53
54
6.13 DISCOVERY . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
56
57
66
6.16 DURABILITY . . . . . . . . . . . . . . . . . . . . . . . . . . . .
68
69
71
72
73
74
6.22 EVENT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
75
76
77
78
6.26 HISTORY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
79
80
6.28 LIFESPAN . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
81
6.29 LIVELINESS . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
82
6.30 LOCATORFILTER . . . . . . . . . . . . . . . . . . . . . . . . .
83
6.31 LOGGING . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
84
6.32 MULTICHANNEL . . . . . . . . . . . . . . . . . . . . . . . . . .
85
86
6.34 OWNERSHIP . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
87
88
6.36 PARTITION . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
89
6.37 PRESENTATION . . . . . . . . . . . . . . . . . . . . . . . . . .
90
6.38 PROFILE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
91
6.39 PROPERTY . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
92
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
CONTENTS
iii
93
94
iv
CONTENTS
6.71 DomainParticipantFactory . . . . . . . . . . . . . . . . . . . . . . 149
6.72 DomainParticipants . . . . . . . . . . . . . . . . . . . . . . . . . 151
6.73 Built-in Topics . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157
6.74 Topic Module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161
6.75 Topics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 162
6.76 User Data Type Support . . . . . . . . . . . . . . . . . . . . . . . 164
6.77 Type Code Support . . . . . . . . . . . . . . . . . . . . . . . . . 165
6.78 Built-in Types . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170
6.79 Dynamic Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175
6.80 Publication Module . . . . . . . . . . . . . . . . . . . . . . . . . . 180
6.81 Publishers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181
6.82 Data Writers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184
6.83 Flow Controllers . . . . . . . . . . . . . . . . . . . . . . . . . . . 186
6.84 Subscription Module . . . . . . . . . . . . . . . . . . . . . . . . . 192
6.85 Subscribers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195
6.86 DataReaders . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 198
6.87 Read Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . 200
6.88 Query Conditions . . . . . . . . . . . . . . . . . . . . . . . . . . . 201
6.89 Data Samples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
6.90 Sample States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203
6.91 View States . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204
6.92 Instance States . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205
6.93 Infrastructure Module . . . . . . . . . . . . . . . . . . . . . . . . 206
6.94 Built-in Sequences . . . . . . . . . . . . . . . . . . . . . . . . . . 208
6.95 Multi-channel DataWriters
. . . . . . . . . . . . . . . . . . . . . 210
CONTENTS
325
7.1
7.2
7.3
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
vi
CONTENTS
7.4
7.5
7.6
7.7
7.8
7.9
383
8.1
8.2
8.3
8.4
8.5
8.6
8.7
8.8
8.9
CONTENTS
8.14 BatchQosPolicy Class Reference
vii
. . . . . . . . . . . . . . . . . . 412
viii
CONTENTS
. . . . . . . . . . . . . . 586
. . . . . . . . . . . . . . . . . 653
CONTENTS
ix
. . . . . . . . . . . . . . . . . 956
. . . . . . . . . 970
CONTENTS
8.106FooDataWriter Class Reference . . . . . . . . . . . . . . . . . . . 1012
8.107FooSeq Class Reference . . . . . . . . . . . . . . . . . . . . . . . 1034
8.108FooTypeSupport Class Reference . . . . . . . . . . . . . . . . . . 1036
8.109GroupDataQosPolicy Class Reference . . . . . . . . . . . . . . . 1039
8.110GuardCondition Class Reference . . . . . . . . . . . . . . . . . . 1041
8.111GUID t Class Reference . . . . . . . . . . . . . . . . . . . . . . . 1044
8.112HistoryQosPolicy Class Reference . . . . . . . . . . . . . . . . . . 1046
8.113HistoryQosPolicyKind Class Reference . . . . . . . . . . . . . . . 1050
8.114InconsistentTopicStatus Class Reference . . . . . . . . . . . . . . 1052
8.115InetAddressSeq Class Reference . . . . . . . . . . . . . . . . . . . 1054
8.116InstanceHandle t Class Reference . . . . . . . . . . . . . . . . . . 1055
8.117InstanceHandleSeq Class Reference . . . . . . . . . . . . . . . . . 1058
8.118InstanceStateKind Class Reference . . . . . . . . . . . . . . . . . 1061
8.119IntSeq Class Reference . . . . . . . . . . . . . . . . . . . . . . . . 1064
8.120KeyedBytes Class Reference . . . . . . . . . . . . . . . . . . . . . 1070
8.121KeyedBytesDataReader Class Reference . . . . . . . . . . . . . . 1073
8.122KeyedBytesDataWriter Class Reference . . . . . . . . . . . . . . 1081
8.123KeyedBytesSeq Class Reference . . . . . . . . . . . . . . . . . . . 1091
8.124KeyedBytesTypeSupport Class Reference . . . . . . . . . . . . . 1094
8.125KeyedString Class Reference
. . . . . . . . . . . . . . . . . . . . 1098
CONTENTS
xi
xii
CONTENTS
8.168PresentationQosPolicyAccessScopeKind Class Reference . . . . . 1226
8.169PRIVATE MEMBER Class Reference . . . . . . . . . . . . . . . 1228
8.170ProductVersion t Class Reference . . . . . . . . . . . . . . . . . . 1229
8.171ProfileQosPolicy Class Reference . . . . . . . . . . . . . . . . . . 1231
8.172Property t Class Reference . . . . . . . . . . . . . . . . . . . . . 1234
8.173PropertyQosPolicy Class Reference . . . . . . . . . . . . . . . . . 1236
8.174PropertyQosPolicyHelper Class Reference . . . . . . . . . . . . . 1239
8.175PropertySeq Class Reference . . . . . . . . . . . . . . . . . . . . 1244
8.176ProtocolVersion t Class Reference . . . . . . . . . . . . . . . . . . 1245
8.177PUBLIC MEMBER Class Reference . . . . . . . . . . . . . . . . 1248
8.178PublicationBuiltinTopicData Class Reference . . . . . . . . . . . 1249
8.179PublicationBuiltinTopicDataDataReader Class Reference . . . . 1256
8.180PublicationBuiltinTopicDataSeq Class Reference . . . . . . . . . 1257
8.181PublicationBuiltinTopicDataTypeSupport Class Reference . . . . 1258
8.182PublicationMatchedStatus Class Reference . . . . . . . . . . . . . 1259
8.183Publisher Interface Reference . . . . . . . . . . . . . . . . . . . . 1262
8.184PublisherAdapter Class Reference
. . . . . . . . . . . . . . . . . 1288
CONTENTS
xiii
. . . . . . . . . . . . . . 1388
xiv
CONTENTS
CONTENTS
xv
xvi
CONTENTS
. . . . . . . . . . . . . . . . 1694
CONTENTS
9 Example Documentation
xvii
1743
9.1
HelloWorld.idl . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1743
9.2
HelloWorldDataReader.java . . . . . . . . . . . . . . . . . . . . . 1745
9.3
HelloWorldPublisher.java . . . . . . . . . . . . . . . . . . . . . . 1761
9.4
HelloWorldSeq.java . . . . . . . . . . . . . . . . . . . . . . . . . . 1765
9.5
HelloWorldSubscriber.java . . . . . . . . . . . . . . . . . . . . . . 1770
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
Chapter 1
RTI Connext
Core Libraries and Utilities
Real-Time Innovations, Inc.
RTI Connext is network middleware for real-time distributed applications. It
provides the communications services that programmers need to distribute timecritical data between embedded and/or enterprise devices or nodes. RTI Connext uses the publish-subscribe communications model to make data distribution efficient and robust.
The RTI Connext Application Programming Interface (API) is based on the
OMGs Data Distribution Service (DDS) specification. The most recent publication of this specification can be found in the Catalog of OMG Specifications
under Middleware Specifications.
1.1
RTI Connext
1.2
Available Documentation.
The documentation for this release is provided in two forms: the HTML API
reference documentation and PDF documents. If you are new to RTI Connext,
the Documentation Roadmap (p. 277) will provide direction on how to learn
about this product.
1.2.1
The PDF documents for the Core Libraries and Utilities are:
1.2.2
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
RTI Connext
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
Chapter 2
Module Index
2.1
Modules
116
277
278
280
147
149
151
157
161
162
164
165
170
141
142
143
175
180
181
184
186
192
195
198
200
Module Index
Query Conditions . . . . . . . . . . . . . . . . . . . . . . . . .
Data Samples . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sample States . . . . . . . . . . . . . . . . . . . . . . . . . . .
View States . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Instance States . . . . . . . . . . . . . . . . . . . . . . . . . .
Infrastructure Module . . . . . . . . . . . . . . . . . . . . . . . . .
Conditions and WaitSets . . . . . . . . . . . . . . . . . . . . .
Time Support . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Entity Support . . . . . . . . . . . . . . . . . . . . . . . . . . .
GUID Support . . . . . . . . . . . . . . . . . . . . . . . . . . .
Object Support . . . . . . . . . . . . . . . . . . . . . . . . . . .
QoS Policies . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ASYNCHRONOUS PUBLISHER . . . . . . . . . . . . . . .
AVAILABILITY . . . . . . . . . . . . . . . . . . . . . . . . .
BATCH . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DATABASE . . . . . . . . . . . . . . . . . . . . . . . . . . .
DATA READER PROTOCOL . . . . . . . . . . . . . . . . .
DATA READER RESOURCE LIMITS . . . . . . . . . . . .
DATA WRITER PROTOCOL . . . . . . . . . . . . . . . . .
DATA WRITER RESOURCE LIMITS . . . . . . . . . . . .
DEADLINE . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DESTINATION ORDER . . . . . . . . . . . . . . . . . . . .
DISCOVERY CONFIG . . . . . . . . . . . . . . . . . . . . .
DISCOVERY . . . . . . . . . . . . . . . . . . . . . . . . . . .
NDDS DISCOVERY PEERS . . . . . . . . . . . . . . . .
DOMAIN PARTICIPANT RESOURCE LIMITS . . . . . . .
DURABILITY . . . . . . . . . . . . . . . . . . . . . . . . . .
DURABILITY SERVICE . . . . . . . . . . . . . . . . . . . .
ENTITY FACTORY . . . . . . . . . . . . . . . . . . . . . . .
ENTITY NAME . . . . . . . . . . . . . . . . . . . . . . . . .
EVENT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
EXCLUSIVE AREA . . . . . . . . . . . . . . . . . . . . . . .
GROUP DATA . . . . . . . . . . . . . . . . . . . . . . . . . .
HISTORY . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
LATENCY BUDGET . . . . . . . . . . . . . . . . . . . . . .
LIFESPAN . . . . . . . . . . . . . . . . . . . . . . . . . . . .
LIVELINESS . . . . . . . . . . . . . . . . . . . . . . . . . . .
LOCATORFILTER . . . . . . . . . . . . . . . . . . . . . . .
LOGGING . . . . . . . . . . . . . . . . . . . . . . . . . . . .
MULTICHANNEL . . . . . . . . . . . . . . . . . . . . . . . .
OWNERSHIP . . . . . . . . . . . . . . . . . . . . . . . . . .
OWNERSHIP STRENGTH . . . . . . . . . . . . . . . . . . .
PARTITION . . . . . . . . . . . . . . . . . . . . . . . . . . .
PRESENTATION . . . . . . . . . . . . . . . . . . . . . . . .
PROFILE . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
201
202
203
204
205
206
45
71
72
78
86
94
41
43
44
46
47
48
50
51
52
53
54
56
57
66
68
69
73
74
75
76
77
79
80
81
82
83
84
85
87
88
89
90
91
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
2.1 Modules
PROPERTY . . . . . . . . . . . . . . . . . . . . . . . . . . .
PUBLISH MODE . . . . . . . . . . . . . . . . . . . . . . . .
READER DATA LIFECYCLE . . . . . . . . . . . . . . . . .
RECEIVER POOL . . . . . . . . . . . . . . . . . . . . . . .
RELIABILITY . . . . . . . . . . . . . . . . . . . . . . . . . .
RESOURCE LIMITS . . . . . . . . . . . . . . . . . . . . . .
SYSTEM RESOURCE LIMITS . . . . . . . . . . . . . . . .
TIME BASED FILTER . . . . . . . . . . . . . . . . . . . . .
TOPIC DATA . . . . . . . . . . . . . . . . . . . . . . . . . .
TRANSPORT BUILTIN . . . . . . . . . . . . . . . . . . . .
TRANSPORT MULTICAST MAPPING . . . . . . . . . . .
TRANSPORT MULTICAST . . . . . . . . . . . . . . . . . .
TRANSPORT PRIORITY . . . . . . . . . . . . . . . . . . .
TRANSPORT SELECTION . . . . . . . . . . . . . . . . . .
TRANSPORT UNICAST . . . . . . . . . . . . . . . . . . . .
TYPE CONSISTENCY ENFORCEMENT . . . . . . . . . .
TYPESUPPORT . . . . . . . . . . . . . . . . . . . . . . . . .
USER DATA . . . . . . . . . . . . . . . . . . . . . . . . . . .
WIRE PROTOCOL . . . . . . . . . . . . . . . . . . . . . . .
WRITER DATA LIFECYCLE . . . . . . . . . . . . . . . . .
Return Codes . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Sequence Number Support . . . . . . . . . . . . . . . . . . . .
Status Kinds . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Exception Codes . . . . . . . . . . . . . . . . . . . . . . . . . .
Sequence Support . . . . . . . . . . . . . . . . . . . . . . . . .
Built-in Sequences . . . . . . . . . . . . . . . . . . . . . . . .
Queries and Filters Syntax . . . . . . . . . . . . . . . . . . . . . .
RTI Connext API Reference . . . . . . . . . . . . . . . . . . . . . . . .
Clock Selection . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Multi-channel DataWriters . . . . . . . . . . . . . . . . . . . . . .
Pluggable Transports . . . . . . . . . . . . . . . . . . . . . . . . .
Using Transport Plugins . . . . . . . . . . . . . . . . . . . . . .
Built-in Transport Plugins . . . . . . . . . . . . . . . . . . . . .
Configuration Utilities . . . . . . . . . . . . . . . . . . . . . . . . .
Durability and Persistence . . . . . . . . . . . . . . . . . . . . . . .
System Properties . . . . . . . . . . . . . . . . . . . . . . . . . . .
Configuring QoS Profiles with XML . . . . . . . . . . . . . . . . .
Programming How-Tos . . . . . . . . . . . . . . . . . . . . . . . . . .
Publication Example . . . . . . . . . . . . . . . . . . . . . . . . . .
Subscription Example . . . . . . . . . . . . . . . . . . . . . . . . .
Participant Use Cases . . . . . . . . . . . . . . . . . . . . . . . . .
Topic Use Cases . . . . . . . . . . . . . . . . . . . . . . . . . . . .
FlowController Use Cases . . . . . . . . . . . . . . . . . . . . . . .
Publisher Use Cases . . . . . . . . . . . . . . . . . . . . . . . . . .
DataWriter Use Cases . . . . . . . . . . . . . . . . . . . . . . . . .
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
7
92
93
103
104
105
106
115
117
118
119
122
123
126
127
128
129
130
132
134
140
107
109
110
133
144
208
286
294
145
210
213
219
222
224
225
231
233
295
237
238
239
241
243
247
248
Module Index
Subscriber Use Cases . . . . . . .
DataReader Use Cases . . . . . .
Entity Use Cases . . . . . . . . .
Waitset Use Cases . . . . . . . .
Transport Use Cases . . . . . . .
Filter Use Cases . . . . . . . . .
Creating Custom Content Filters
Large Data Use Cases . . . . . .
Programming Tools . . . . . . . . .
rtiddsgen . . . . . . . . . . . . .
rtiddsping . . . . . . . . . . . . .
rtiddsspy . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
250
253
257
261
263
265
271
275
297
298
311
318
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
Chapter 3
Namespace Index
3.1
Package List
10
Namespace Index
com.rti.dds.publication
(Contains
the
com.rti.dds.publication.FlowController
(p. 964),
com.rti.dds.publication.Publisher
(p. 1262),
and
com.rti.dds.publication.DataWriter
(p. 557)
classes
as
well
as
the
com.rti.dds.publication.PublisherListener
(p. 1289)
and
com.rti.dds.publication.DataWriterListener
(p. 586) interfaces, and more generally, all that is needed on
the publication (p. 349) side ) . . . . . . . . . . . . . . . . .
com.rti.dds.publication.builtin (Builtin topic (p. 359) for accessing information about the Publications discovered by RTI
Connext ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
com.rti.dds.subscription
(Contains
the
com.rti.dds.subscription.Subscriber
(p. 1476),
com.rti.dds.subscription.DataReader
(p. 487),
com.rti.dds.subscription.ReadCondition
(p. 1313),
and
com.rti.dds.subscription.QueryCondition
(p. 1311)
classes,
as
well
as
the
com.rti.dds.subscription.SubscriberListener (p. 1503)
and
com.rti.dds.subscription.DataReaderListener
(p. 518) interfaces, and more generally, all that is needed on
the subscription (p. 353) side ) . . . . . . . . . . . . . . . .
com.rti.dds.subscription.builtin (Builtin topic (p. 359) for accessing information about the Subscriptions discovered by RTI
Connext ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
com.rti.dds.topic
(Contains
the
com.rti.dds.topic.Topic
(p. 1545),
com.rti.dds.topic.ContentFilteredTopic
(p. 471), and com.rti.dds.topic.MultiTopic (p. 1190)
classes, the com.rti.dds.topic.TopicListener (p. 1564)
interface, and more generally, all that is needed by an
application to define com.rti.dds.topic.Topic (p. 1545)
objects and attach QoS policies to them ) . . . . . . . . . . .
com.rti.dds.topic.builtin (Builtin topic (p. 359) for accessing information about the Topics discovered by RTI Connext ) . . . .
com.rti.dds.type.builtin (<<eXtension>> ( p. 278) RTI Connext
provides a set of very simple data types for you to use with
the topics in your application ) . . . . . . . . . . . . . . . . .
com.rti.dds.typecode
(<<eXtension>>
( p. 278)
A
com.rti.dds.typecode.TypeCode ( p. 1611) is a mechanism for representing a type at runtime. RTI Connext
can use type codes to send type definitions on the network.
You will need to understand this API in order to use the
Dynamic Data (p. 175) capability or to inspect the type
information you receive from remote readers and writers ) . .
com.rti.dds.util (Utility types that support the DDS API ) . . . . .
com.rti.ndds (DDS extensions ) . . . . . . . . . . . . . . . . . . . . .
349
352
353
358
359
361
362
368
372
373
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
11
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
12
Namespace Index
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
Chapter 4
Class Index
4.1
Class Hierarchy
383
1216
1258
1518
1558
393
394
395
426
454
457
464
1448
1313
1311
465
467
1737
476
478
479
480
817
1055
14
Class Index
StringSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1467
WstringSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1741
Time t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1537
WriteParams t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1733
SampleInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1398
BuiltinTopicKey t . . . . . . . . . . . . . . . . . . . . . . . . . . . 424
Bytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
BytesSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
KeyedBytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1070
KeyedBytesSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1091
KeyedString . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1098
KeyedStringSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1117
AbstractPrimitiveSequence . . . . . . . . . . . . . . . . . . . . . . 385
BooleanSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
ByteSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
CharSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
WcharSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1721
DoubleSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 796
LongDoubleSeq . . . . . . . . . . . . . . . . . . . . . . . . . . 1179
FloatSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 958
IntSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1064
LongSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1181
ShortSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1442
Enum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 944
DataWriterResourceLimitsInstanceReplacementKind . . . . . . 617
DestinationOrderQosPolicyKind . . . . . . . . . . . . . . . . . 634
DiscoveryPluginPromiscuityKind . . . . . . . . . . . . . . . . . 648
DurabilityQosPolicyKind . . . . . . . . . . . . . . . . . . . . . 807
HistoryQosPolicyKind . . . . . . . . . . . . . . . . . . . . . . . 1050
LivelinessQosPolicyKind . . . . . . . . . . . . . . . . . . . . . . 1144
OwnershipQosPolicyKind . . . . . . . . . . . . . . . . . . . . . 1207
PresentationQosPolicyAccessScopeKind . . . . . . . . . . . . . 1226
PublishModeQosPolicyKind . . . . . . . . . . . . . . . . . . . . 1298
QosPolicyId t . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1305
RefilterQosPolicyKind . . . . . . . . . . . . . . . . . . . . . . . 1322
ReliabilityQosPolicyAcknowledgmentModeKind . . . . . . . . . 1329
ReliabilityQosPolicyKind . . . . . . . . . . . . . . . . . . . . . 1331
RemoteParticipantPurgeKind . . . . . . . . . . . . . . . . . . . 1341
ThreadSettingsCpuRotationKind . . . . . . . . . . . . . . . . . 1533
TransportMulticastQosPolicyKind . . . . . . . . . . . . . . . . 1593
TypeConsistencyKind . . . . . . . . . . . . . . . . . . . . . . . 1663
WireProtocolQosPolicyAutoKind . . . . . . . . . . . . . . . . . 1732
FlowControllerSchedulingPolicy . . . . . . . . . . . . . . . . . . 970
SampleLostStatusKind . . . . . . . . . . . . . . . . . . . . . . . 1412
SampleRejectedStatusKind . . . . . . . . . . . . . . . . . . . . 1420
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
15
ExtensibilityKind . . . . . . . . . . . . . . . . . . . . . . . . . . 956
TCKind . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1525
LogCategory . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1161
LogLevel . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1171
LogPrintFormat . . . . . . . . . . . . . . . . . . . . . . . . . . 1174
LogVerbosity . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1177
Foo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 977
FooSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1034
DataReaderCacheStatus . . . . . . . . . . . . . . . . . . . . . . . . . . 517
DataReaderProtocolStatus . . . . . . . . . . . . . . . . . . . . . . . . 526
DataReaderSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 555
DataWriterCacheStatus . . . . . . . . . . . . . . . . . . . . . . . . . . 585
DataWriterProtocolStatus . . . . . . . . . . . . . . . . . . . . . . . . . 598
DiscoveryBuiltinReaderFragmentationResourceLimits t . . . . . . . . 636
DiscoveryConfigBuiltinPluginKind . . . . . . . . . . . . . . . . . . . . 638
DomainParticipantFactory . . . . . . . . . . . . . . . . . . . . . . . . . 742
Duration t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 813
DynamicDataInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885
DynamicDataMemberInfo . . . . . . . . . . . . . . . . . . . . . . . . . 887
DynamicDataProperty t . . . . . . . . . . . . . . . . . . . . . . . . . . 890
DynamicDataTypeProperty t . . . . . . . . . . . . . . . . . . . . . . . 897
DynamicDataTypeSerializationProperty t . . . . . . . . . . . . . . . . 899
EndpointGroup t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 928
EndpointGroupSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 930
Entity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 931
DomainParticipant . . . . . . . . . . . . . . . . . . . . . . . . . . . 654
DomainEntity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 653
DataWriter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 557
DynamicDataWriter . . . . . . . . . . . . . . . . . . . . . . . 907
BytesDataWriter . . . . . . . . . . . . . . . . . . . . . . . . . 437
KeyedBytesDataWriter . . . . . . . . . . . . . . . . . . . . . 1081
KeyedStringDataWriter . . . . . . . . . . . . . . . . . . . . . 1109
StringDataWriter . . . . . . . . . . . . . . . . . . . . . . . . . 1465
FooDataWriter . . . . . . . . . . . . . . . . . . . . . . . . . . 1012
Publisher . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1262
DataReader . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 487
DynamicDataReader . . . . . . . . . . . . . . . . . . . . . . . 892
BytesDataReader . . . . . . . . . . . . . . . . . . . . . . . . . 433
KeyedBytesDataReader . . . . . . . . . . . . . . . . . . . . . 1073
KeyedStringDataReader . . . . . . . . . . . . . . . . . . . . . 1101
StringDataReader . . . . . . . . . . . . . . . . . . . . . . . . 1462
FooDataReader . . . . . . . . . . . . . . . . . . . . . . . . . . 979
Subscriber . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1476
Topic . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1545
EnumMember . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 947
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
16
Class Index
ExpressionProperty . . . . . . . . . . . . . . . . . . . . . . . . . . . . 955
FilterSampleInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 957
FlowController . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 964
FlowControllerProperty t . . . . . . . . . . . . . . . . . . . . . . . . . 968
FlowControllerTokenBucketProperty t . . . . . . . . . . . . . . . . . . 973
FooTypeSupport . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1036
GuardCondition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1041
GUID t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1044
InconsistentTopicStatus . . . . . . . . . . . . . . . . . . . . . . . . . . 1052
InetAddressSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1054
InstanceHandleSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1058
InstanceStateKind . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1061
LibraryVersion t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1126
Listener . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1130
DataWriterListener . . . . . . . . . . . . . . . . . . . . . . . . . . . 586
DataWriterAdapter . . . . . . . . . . . . . . . . . . . . . . . . 580
PublisherAdapter . . . . . . . . . . . . . . . . . . . . . . . . . 1288
PublisherListener . . . . . . . . . . . . . . . . . . . . . . . . . . 1289
DomainParticipantListener . . . . . . . . . . . . . . . . . . . 771
DomainParticipantAdapter . . . . . . . . . . . . . . . . . 736
PublisherAdapter . . . . . . . . . . . . . . . . . . . . . . . . . 1288
DataReaderListener . . . . . . . . . . . . . . . . . . . . . . . . . . 518
DataReaderAdapter . . . . . . . . . . . . . . . . . . . . . . . . 514
SubscriberAdapter . . . . . . . . . . . . . . . . . . . . . . . . 1502
DomainParticipantAdapter . . . . . . . . . . . . . . . . . 736
SubscriberListener . . . . . . . . . . . . . . . . . . . . . . . . . 1503
DomainParticipantListener . . . . . . . . . . . . . . . . . . . 771
SubscriberAdapter . . . . . . . . . . . . . . . . . . . . . . . . 1502
TopicListener . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1564
DomainParticipantListener . . . . . . . . . . . . . . . . . . . . 771
TopicAdapter . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1550
EntityHowTo.MyEntityListener . . . . . . . . . . . . . . . . . . . . 941
LivelinessChangedStatus . . . . . . . . . . . . . . . . . . . . . . . . . . 1135
LivelinessLostStatus . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1138
Locator t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1150
LocatorFilter t . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1154
LocatorFilterSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1159
LocatorSeq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1160
Logger . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1163
LoggerDevice . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1167
LogMessage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1173
ObjectHolder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1194
OfferedDeadlineMissedStatus . . . . . . . . . . . . . . . . . . . . . . . 1195
OfferedIncompatibleQosStatus . . . . . . . . . . . . . . . . . . . . . . 1197
ParticipantBuiltinTopicData . . . . . . . . . . . . . . . . . . . . . . . 1211
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
17
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1214
1215
1228
1229
1234
1239
1244
1245
1248
1249
1256
1257
1259
1293
1300
769
773
610
1290
536
1505
1566
1301
397
402
412
482
521
542
592
621
628
631
639
649
778
802
810
938
942
949
952
1039
1046
1124
18
Class Index
LifespanQosPolicy . . . . . . . . . . . .
LivelinessQosPolicy . . . . . . . . . . . .
LocatorFilterQosPolicy . . . . . . . . .
LoggingQosPolicy . . . . . . . . . . . .
MultiChannelQosPolicy . . . . . . . . .
OwnershipQosPolicy . . . . . . . . . . .
OwnershipStrengthQosPolicy . . . . . .
PartitionQosPolicy . . . . . . . . . . . .
PresentationQosPolicy . . . . . . . . . .
ProfileQosPolicy . . . . . . . . . . . . .
PropertyQosPolicy . . . . . . . . . . . .
PublishModeQosPolicy . . . . . . . . . .
ReaderDataLifecycleQosPolicy . . . . .
ReceiverPoolQosPolicy . . . . . . . . . .
ReliabilityQosPolicy . . . . . . . . . . .
ResourceLimitsQosPolicy . . . . . . . .
SystemResourceLimitsQosPolicy . . . .
TimeBasedFilterQosPolicy . . . . . . .
TopicDataQosPolicy . . . . . . . . . . .
TransportBuiltinQosPolicy . . . . . . .
TransportMulticastMappingQosPolicy .
TransportMulticastQosPolicy . . . . . .
TransportPriorityQosPolicy . . . . . . .
TransportSelectionQosPolicy . . . . . .
TransportUnicastQosPolicy . . . . . . .
TypeConsistencyEnforcementQosPolicy
TypeSupportQosPolicy . . . . . . . . .
UserDataQosPolicy . . . . . . . . . . . .
WireProtocolQosPolicy . . . . . . . . .
WriterDataLifecycleQosPolicy . . . . . .
QosPolicyCount . . . . . . . . . . . . . . .
QosPolicyCountSeq . . . . . . . . . . . . .
ReliableReaderActivityChangedStatus . . .
ReliableWriterCacheChangedStatus . . . .
ReliableWriterCacheEventCount . . . . . .
RequestedDeadlineMissedStatus . . . . . .
RequestedIncompatibleQosStatus . . . . . .
RETCODE ERROR . . . . . . . . . . . . .
RETCODE ALREADY DELETED . .
RETCODE BAD PARAMETER . . . .
RETCODE ILLEGAL OPERATION .
RETCODE IMMUTABLE POLICY . .
RETCODE INCONSISTENT POLICY
RETCODE NO DATA . . . . . . . . .
RETCODE NOT ENABLED . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1128
1140
1157
1169
1187
1199
1209
1217
1221
1231
1236
1295
1315
1318
1324
1348
1523
1541
1559
1580
1587
1590
1598
1600
1605
1661
1666
1694
1723
1738
1302
1304
1333
1336
1340
1344
1346
1356
1354
1355
1357
1358
1359
1360
1361
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
19
20
Class Index
ContentFilteredTopic . . . . . . . .
MultiTopic . . . . . . . . . . . . . .
Topic . . . . . . . . . . . . . . . . .
Transport . . . . . . . . . . . . . . . . .
ShmemTransport . . . . . . . . . . .
UDPv4Transport . . . . . . . . . . .
UDPv6Transport . . . . . . . . . . .
Transport.Property t . . . . . . . . . . .
ShmemTransport.Property t . . . .
UDPv4Transport.Property t . . . .
UDPv6Transport.Property t . . . .
TransportBuiltinKind . . . . . . . . . .
TransportMulticastMapping t . . . . . .
TransportMulticastMappingFunction t .
TransportMulticastMappingSeq . . . . .
TransportMulticastSettings t . . . . . .
TransportMulticastSettingsSeq . . . . .
TransportSupport . . . . . . . . . . . .
TransportUnicastSettings t . . . . . . .
TransportUnicastSettingsSeq . . . . . .
TypeCode . . . . . . . . . . . . . . . . .
TypeCodeFactory . . . . . . . . . . . .
TypeSupport . . . . . . . . . . . . . . .
DynamicDataTypeSupport . . . . .
BytesTypeSupport . . . . . . . . . .
KeyedBytesTypeSupport . . . . . .
KeyedStringTypeSupport . . . . . .
StringTypeSupport . . . . . . . . . .
Union . . . . . . . . . . . . . . . . . . .
UnionMember . . . . . . . . . . . . . .
UserException . . . . . . . . . . . . . .
BadKind . . . . . . . . . . . . . . .
BadMemberId . . . . . . . . . . . .
BadMemberName . . . . . . . . . .
Bounds . . . . . . . . . . . . . . . .
ValueMember . . . . . . . . . . . . . . .
VendorId t . . . . . . . . . . . . . . . .
Version . . . . . . . . . . . . . . . . . .
ViewStateKind . . . . . . . . . . . . . .
VM ABSTRACT . . . . . . . . . . . . .
VM CUSTOM . . . . . . . . . . . . . .
VM NONE . . . . . . . . . . . . . . . .
VM TRUNCATABLE . . . . . . . . . .
WaitSet . . . . . . . . . . . . . . . . . .
WaitSetProperty t . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
471
1190
1545
1569
1435
1668
1680
1570
1439
1672
1684
1578
1582
1585
1589
1594
1597
1602
1608
1610
1611
1647
1665
901
450
1094
1120
1470
1691
1692
1696
409
410
411
423
1697
1699
1701
1703
1705
1706
1707
1708
1709
1719
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
Chapter 5
Class Index
5.1
Class List
Here are the classes, structs, unions and interfaces with brief descriptions:
AbstractBuiltinTopicDataTypeSupport . . . . . . . . . . . . . . 383
AbstractPrimitiveSequence . . . . . . . . . . . . . . . . . . . . . 385
AbstractSequence (Abstract sequence ) . . . . . . . . . . . . . . . . 390
AcknowledgmentInfo (Information about an application-level acknowledged sample ) . . . . . . . . . . . . . . . . . . . . . . . 393
AckResponseData t (Data payload of an application-level acknowledgment ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 394
AllocationSettings t (Resource allocation settings ) . . . . . . . . . 395
AsynchronousPublisherQosPolicy (Configures the mechanism
that sends user data in an external middleware thread ) . . . 397
AvailabilityQosPolicy (Configures the availability of data ) . . . . . 402
BAD PARAM (The exception BadKind (p. 409) is thrown when
an inappropriate operation is invoked on a TypeCode object ) 407
BAD TYPECODE (The exception BadKind (p. 409) is thrown
when an inappropriate operation is invoked on a TypeCode
object ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 408
BadKind (The exception BadKind (p. 409) is thrown when an inappropriate operation is invoked on a TypeCode object ) . . . . 409
BadMemberId (The specified com.rti.dds.typecode.TypeCode
(p. 1611) member ID is invalid ) . . . . . . . . . . . . . . . . . 410
BadMemberName (The specified com.rti.dds.typecode.TypeCode
(p. 1611) member name is invalid ) . . . . . . . . . . . . . . . 411
BatchQosPolicy (Used to configure batching of multiple samples into
a single network packet in order to increase throughput for
small samples ) . . . . . . . . . . . . . . . . . . . . . . . . . . 412
22
Class Index
BooleanSeq (Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< boolean > ) . . . . . . . . . . . . . . . . . . . . . . . . . . 417
Bounds (A user exception thrown when a parameter is not within the
legal bounds ) . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
BuiltinTopicKey t (The key type of the built-in topic (p. 359) types )424
BuiltinTopicReaderResourceLimits t (Built-in topic (p. 359)
readers resource limits ) . . . . . . . . . . . . . . . . . . . . . 426
Bytes (Built-in type consisting of a variable-length array of opaque
bytes ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 430
BytesDataReader
(<<interface>>
Instantiates
DataReader
<
( p. 279)
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes
>
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 433
BytesDataWriter
(<<interface>>
( p. 279)
Instantiates
DataWriter
<
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes
>
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
ByteSeq (Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< byte > ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 441
BytesSeq (Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes > ) . 447
BytesTypeSupport
(<<interface>>
( p. 279)
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes type
support ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 450
ChannelSettings t (Type used to configure the properties of a channel ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454
ChannelSettingsSeq
(Declares
IDL
sequence<
com.rti.dds.infrastructure.ChannelSettings t (p. 454)
> ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 457
CharSeq (Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< char > ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 458
Condition
(<<interface>>
( p. 279)
Root
class
for
all the conditions that may be attached to a
com.rti.dds.infrastructure.WaitSet (p. 1709) ) . . . . . . 464
ConditionSeq (Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< com.rti.dds.infrastructure.Condition (p. 464) > ) . . . 465
ContentFilter
(<<interface>>
( p. 279)
Interface to be used by a custom filter of a
com.rti.dds.topic.ContentFilteredTopic (p. 471) ) . . . . 467
ContentFilteredTopic (<<interface>> ( p. 279) Specialization of
com.rti.dds.topic.TopicDescription (p. 1561) that allows
for content-based subscriptions ) . . . . . . . . . . . . . . . . 471
ContentFilterProperty t (<<eXtension>> ( p. 278) Type used
to provide all the required information to enable content filtering ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
23
24
Class Index
DataWriterCacheStatus (<<eXtension>> ( p. 278) The status of
the writers cache ) . . . . . . . . . . . . . . . . . . . . . . . .
DataWriterListener
(<<interface>>
( p. 279)
com.rti.dds.infrastructure.Listener (p. 1130) for writer
status ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DataWriterProtocolQosPolicy (Protocol that applies only to
com.rti.dds.publication.DataWriter (p. 557) instances ) .
DataWriterProtocolStatus (<<eXtension>> ( p. 278) The status of a writers internal protocol related metrics, like the
number of samples pushed, pulled, filtered; and status of wire
protocol traffic ) . . . . . . . . . . . . . . . . . . . . . . . . .
DataWriterQos
(QoS
policies
supported
by
a
com.rti.dds.publication.DataWriter
(p. 557)
entity
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DataWriterResourceLimitsInstanceReplacementKind
(Sets
the kinds of instances that can be replaced when instance
resource limits are reached ) . . . . . . . . . . . . . . . . . . .
DataWriterResourceLimitsQosPolicy (Various settings that configure how a com.rti.dds.publication.DataWriter (p. 557)
allocates and uses physical memory for internal resources ) .
DeadlineQosPolicy (Expresses the maximum duration (deadline)
within which an instance is expected to be updated ) . . . . .
DestinationOrderQosPolicy
(Controls
how
the
middleware will deal with data sent by multiple
com.rti.dds.publication.DataWriter
(p. 557)
entities for the same instance of data (i.e., same
com.rti.dds.topic.Topic (p. 1545) and key) ) . . . . . . . .
DestinationOrderQosPolicyKind (Kinds of destination order ) . .
DiscoveryBuiltinReaderFragmentationResourceLimits t . . .
DiscoveryConfigBuiltinPluginKind (Built-in discovery plugins
that can be used ) . . . . . . . . . . . . . . . . . . . . . . . .
DiscoveryConfigQosPolicy (Settings for discovery configuration ) .
DiscoveryPluginPromiscuityKind (<<eXtension>> ( p. 278)
Type used to indicate promiscuity mode of the discovery plugin ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
DiscoveryQosPolicy (Configures the mechanism used by the middleware to automatically discover and connect with new remote
applications ) . . . . . . . . . . . . . . . . . . . . . . . . . . .
DomainEntity
(<<interface>>
( p. 279)
Abstract
base class for all DDS entities except for the
com.rti.dds.domain.DomainParticipant (p. 654) ) . . . .
DomainParticipant (<<interface>> ( p. 279) Container for all
com.rti.dds.infrastructure.DomainEntity (p. 653) objects ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
585
586
592
598
610
617
621
628
631
634
636
638
639
648
649
653
654
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
25
DomainParticipantAdapter (<<eXtension>> ( p. 278) A listener adapter in the spirit of the Java AWT listener adapters.
(The Adapter provides empty implementations for the listener
methods) ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 736
DomainParticipantFactory
(<<singleton>>
( p. 279)
<<interface>> ( p. 279) Allows creation and destruction of com.rti.dds.domain.DomainParticipant (p. 654)
objects ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 742
DomainParticipantFactoryQos (QoS policies supported by
a
com.rti.dds.domain.DomainParticipantFactory
(p. 742) ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 769
DomainParticipantListener (<<interface>> ( p. 279) Listener
for participant status ) . . . . . . . . . . . . . . . . . . . . . . 771
DomainParticipantQos
(QoS
policies
supported
by
a
com.rti.dds.domain.DomainParticipant (p. 654) entity ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 773
DomainParticipantResourceLimitsQosPolicy
(Various
settings
that
configure
how
a
com.rti.dds.domain.DomainParticipant (p. 654) allocates and uses physical memory for internal resources,
including the maximum sizes of various properties ) . . . . . 778
DoubleSeq (Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< double > ) . . . . . . . . . . . . . . . . . . . . . . . . . . . 796
DurabilityQosPolicy (This QoS policy specifies whether or not
RTI Connext will store and deliver previously published data
samples to new com.rti.dds.subscription.DataReader
(p. 487) entities that join the network later ) . . . . . . . . . . 802
DurabilityQosPolicyKind (Kinds of durability ) . . . . . . . . . . . 807
DurabilityServiceQosPolicy
(Various
settings
to
configure
the
external
RTI
Persistence
Service
used by RTI Connext for DataWriters with a
com.rti.dds.infrastructure.DurabilityQosPolicy
(p. 802) setting of com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.PERSIST
DURABILITY QOS or com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.TR
DURABILITY QOS ) . . . . . . . . . . . . . . . . . . . . . . 810
Duration t (Type for duration representation ) . . . . . . . . . . . . 813
DynamicData (A sample of any complex data type, which can be
inspected and manipulated reflectively ) . . . . . . . . . . . . 817
DynamicDataInfo
(A
descriptor
for
a
com.rti.dds.dynamicdata.DynamicData (p. 817) object ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 885
DynamicDataMemberInfo (A descriptor for a single member (i.e.
field) of dynamically defined data type ) . . . . . . . . . . . . 887
DynamicDataProperty t (A collection of attributes used to configure com.rti.dds.dynamicdata.DynamicData (p. 817) objects ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 890
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
26
Class Index
DynamicDataReader (Reads (subscribes to) objects of type
com.rti.dds.dynamicdata.DynamicData (p. 817) ) . . . . 892
DynamicDataSeq
(An
ordered
collection
of
com.rti.dds.dynamicdata.DynamicData (p. 817) elements ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 895
DynamicDataTypeProperty t (A collection of attributes used
to configure com.rti.dds.dynamicdata.DynamicData
(p. 817) objects ) . . . . . . . . . . . . . . . . . . . . . . . . . 897
DynamicDataTypeSerializationProperty t (Properties that govern how data of a certain type will be serialized on the network
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 899
DynamicDataTypeSupport
(A
factory
for
registering
a
dynamically
defined
type
and
creating
com.rti.dds.dynamicdata.DynamicData (p. 817) objects ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 901
DynamicDataWriter (Writes (publishes) objects of type
com.rti.dds.dynamicdata.DynamicData (p. 817) ) . . . . 907
EndpointGroup t (Specifies a group of endpoints that can be collectively identified by a name and satisfied by a quorum ) . . . . 928
EndpointGroupSeq
(A
sequence
of
com.rti.dds.infrastructure.EndpointGroup t (p. 928) ) . 930
Entity (<<interface>> ( p. 279) Abstract base class for all the DDS
objects that support QoS policies, a listener, and a status
condition ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 931
EntityFactoryQosPolicy
(A
QoS
policy
for
all
com.rti.dds.infrastructure.Entity
(p. 931)
types
that can act as factories for one or more other
com.rti.dds.infrastructure.Entity (p. 931) types ) . . . . . 938
EntityHowTo.MyEntityListener . . . . . . . . . . . . . . . . . . . 941
EntityNameQosPolicy (Assigns a name and a role name to
a
com.rti.dds.domain.DomainParticipant
(p. 654),
com.rti.dds.publication.DataWriter
(p. 557)
or
com.rti.dds.subscription.DataReader (p. 487). These
names will be visible during the discovery process and in RTI
tools to help you visualize and debug your system ) . . . . . . 942
Enum (A superclass for all type-safe enumerated types ) . . . . . . . 944
EnumMember (A description of a member of an enumeration ) . . . 947
EventQosPolicy (Settings for event ) . . . . . . . . . . . . . . . . . . 949
ExclusiveAreaQosPolicy (Configures multi-thread concurrency and
deadlock prevention capabilities ) . . . . . . . . . . . . . . . . 952
ExpressionProperty . . . . . . . . . . . . . . . . . . . . . . . . . . 955
ExtensibilityKind (Type to indicate the extensibility of a type ) . . 956
FilterSampleInfo . . . . . . . . . . . . . . . . . . . . . . . . . . . . 957
FloatSeq (Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< float > ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 958
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
27
28
Class Index
InstanceHandleSeq (Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence
<
com.rti.dds.infrastructure.InstanceHandle t
(p. 1055) > ) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1058
InstanceStateKind (Indicates is the samples are from a live
com.rti.dds.publication.DataWriter (p. 557) or not ) . . 1061
IntSeq (Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< com.rti.dds.infrastructure.int > ) . . . . . . . . . . . . . . . 1064
KeyedBytes (Built-in type consisting of a variable-length array of
opaque bytes and a string that is the key ) . . . . . . . . . . . 1070
KeyedBytesDataReader
(<<interface>>
( p. 279)
Instantiates
DataReader
<
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes
> ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1073
KeyedBytesDataWriter
(<<interface>>
( p. 279)
Instantiates
DataWriter
<
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes
> ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1081
KeyedBytesSeq (Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes
> ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1091
KeyedBytesTypeSupport
(<<interface>>
( p. 279)
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes
type support ) . . . . . . . . . . . . . . . . . . . . . . . . . . 1094
KeyedString (Keyed string built-in type ) . . . . . . . . . . . . . . . 1098
KeyedStringDataReader
(<<interface>>
( p. 279)
Instantiates
DataReader
<
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString
> ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1101
KeyedStringDataWriter
(<<interface>>
( p. 279)
Instantiates
DataWriter
<
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString
> ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1109
KeyedStringSeq (Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString
> ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1117
KeyedStringTypeSupport (<<interface>> ( p. 279) Keyed
string type support ) . . . . . . . . . . . . . . . . . . . . . . . 1120
LatencyBudgetQosPolicy (Provides a hint as to the maximum acceptable delay from the time the data is written to the time
it is received by the subscribing applications ) . . . . . . . . . 1124
LibraryVersion t (The version of a single library shipped as part of
an RTI Connext distribution ) . . . . . . . . . . . . . . . . . 1126
LifespanQosPolicy (Specifies how long the data written by the
com.rti.dds.publication.DataWriter (p. 557) is considered valid ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1128
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
29
Listener (<<interface>> ( p. 279) Abstract base class for all Listener (p. 1130) interfaces ) . . . . . . . . . . . . . . . . . . . 1130
LivelinessChangedStatus (Com.rti.dds.infrastructure.StatusKind.StatusKind.LIVELINESS CHANGED STATUS ) . . . . . . . . . . . . . . . . . . . . . . 1135
LivelinessLostStatus (Com.rti.dds.infrastructure.StatusKind.StatusKind.LIVELINESS LOST STATUS ) . . . . . . . . . . . . . . . . . . . . . . . . . 1138
LivelinessQosPolicy (Specifies and configures the mechanism that
allows com.rti.dds.subscription.DataReader (p. 487) entities to detect when com.rti.dds.publication.DataWriter
(p. 557) entities become disconnected or dead. ) . . . . . . . 1140
LivelinessQosPolicyKind (Kinds of liveliness ) . . . . . . . . . . . . 1144
LoanableSequence (A sequence capable of storing its elements directly or taking out a loan on them from an internal middleware store ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1146
Locator t (<<eXtension>> ( p. 278) Type used to represent the
addressing information needed to send a message to an RTPS
Endpoint using one of the supported transports ) . . . . . . . 1150
LocatorFilter t (Specifies the configuration of an individual channel
within a MultiChannel DataWriter ) . . . . . . . . . . . . . . 1154
LocatorFilterQosPolicy (The QoS policy used to report the
configuration of a MultiChannel DataWriter as part of
builtin.PublicationBuiltinTopicData ) . . . . . . . . . . . . . 1157
LocatorFilterSeq
(Declares
IDL
sequence<
com.rti.dds.infrastructure.LocatorFilter t
(p. 1154)
> ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1159
LocatorSeq
(Declares
IDL
sequence
<
com.rti.dds.infrastructure.Locator t (p. 1150) > ) . . . . 1160
LogCategory (Categories of logged messages ) . . . . . . . . . . . . . 1161
Logger (<<interface>> ( p. 279) The singleton type used to configure RTI Connext logging ) . . . . . . . . . . . . . . . . . . . . 1163
LoggerDevice (<<interface>> ( p. 279) Logging device interface.
Use for user-defined logging devices ) . . . . . . . . . . . . . . 1167
LoggingQosPolicy (Configures the RTI Connext logging facility ) . 1169
LogLevel (Level category assigned to RTI Connext log messages returned to an output device ) . . . . . . . . . . . . . . . . . . . 1171
LogMessage (Log message ) . . . . . . . . . . . . . . . . . . . . . . . 1173
LogPrintFormat (The format used to output RTI Connext diagnostic information ) . . . . . . . . . . . . . . . . . . . . . . . . . 1174
LogVerbosity (The verbosities at which RTI Connext diagnostic information is logged ) . . . . . . . . . . . . . . . . . . . . . . . 1177
LongDoubleSeq (Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< com.rti.dds.infrastructure.LongDouble > ) . . . . . . . . . 1179
LongSeq (Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< long > ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1181
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
30
Class Index
MultiChannelQosPolicy (Configures the ability of a DataWriter to
send data on different multicast groups (addresses) based on
the value of the data ) . . . . . . . . . . . . . . . . . . . . . . 1187
MultiTopic
([Not
supported
(optional)]
<<interface>>
( p. 279)
A
specialization
of
that
com.rti.dds.topic.TopicDescription
(p. 1561)
allows subscriptions that combine/filter/rearrange data
coming from several topics ) . . . . . . . . . . . . . . . . . . . 1190
ObjectHolder (<<eXtension>> ( p. 278) Holder of object instance )1194
OfferedDeadlineMissedStatus (Com.rti.dds.infrastructure.StatusKind.StatusKind.OFFERED DEADLINE MISSED STATUS ) . . . . . . . . . . . . . . . . 1195
OfferedIncompatibleQosStatus (Com.rti.dds.infrastructure.StatusKind.StatusKind.OFFERED INCOMPATIBLE QOS STATUS ) . . . . . . . . . . . . . . . 1197
OwnershipQosPolicy (Specifies whether it is allowed for multiple
com.rti.dds.publication.DataWriter (p. 557) (s) to write
the same instance of the data and if so, how these modifications should be arbitrated ) . . . . . . . . . . . . . . . . . . . 1199
OwnershipQosPolicyKind (Kinds of ownership ) . . . . . . . . . . 1207
OwnershipStrengthQosPolicy
(Specifies
the
value
of
the strength used to arbitrate among multiple
com.rti.dds.publication.DataWriter (p. 557) objects
that attempt to modify the same instance of a data type
(identified by com.rti.dds.topic.Topic (p. 1545) + key) ) . 1209
ParticipantBuiltinTopicData (Entry created when a DomainParticipant (p. 654) object is discovered ) . . . . . . . . . . . . . 1211
ParticipantBuiltinTopicDataDataReader
(Instantiates
DataReader < builtin.ParticipantBuiltinTopicData
(p. 1211) > ) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1214
ParticipantBuiltinTopicDataSeq
(Instantiates
com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< builtin.ParticipantBuiltinTopicData (p. 1211) > ) . . 1215
ParticipantBuiltinTopicDataTypeSupport
(Instantiates
TypeSupport < builtin.ParticipantBuiltinTopicData
(p. 1211) > ) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1216
PartitionQosPolicy (Set of strings that introduces a
logical partition among the topics visible by a
com.rti.dds.publication.Publisher (p. 1262) and a
com.rti.dds.subscription.Subscriber (p. 1476) ) . . . . . . 1217
PresentationQosPolicy (Specifies how the samples representing
changes to data instances are presented to a subscribing application ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1221
PresentationQosPolicyAccessScopeKind (Kinds of presentation
access scope ) . . . . . . . . . . . . . . . . . . . . . . . . . . 1226
PRIVATE MEMBER (Constant used to indicate that a value type
member is private ) . . . . . . . . . . . . . . . . . . . . . . . . 1228
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
31
ProductVersion t (<<eXtension>> ( p. 278) Type used to represent the current version of RTI Connext ) . . . . . . . . . . . 1229
ProfileQosPolicy (Configures the way that XML documents containing QoS profiles are loaded by RTI Connext ) . . . . . . . . . 1231
Property t (Properties are name/value pairs objects ) . . . . . . . . 1234
PropertyQosPolicy (Stores name/value(string) pairs that can be
used to configure certain parameters of RTI Connext that are
not exposed through formal QoS policies. Can also be used
to store and propagate application-specific name/value pairs
that can be retrieved by user code during discovery ) . . . . . 1236
PropertyQosPolicyHelper (Policy Helpers which facilitate management of the properties in the input policy ) . . . . . . . . . . 1239
PropertySeq
(Declares
IDL
sequence
<
com.rti.dds.infrastructure.Property t
(p. 1234)
>
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1244
ProtocolVersion t (<<eXtension>> ( p. 278) Type used to represent the version of the RTPS protocol ) . . . . . . . . . . . . 1245
PUBLIC MEMBER (Constant used to indicate that a value type
member is public ) . . . . . . . . . . . . . . . . . . . . . . . . 1248
PublicationBuiltinTopicData
(Entry
created
when
a
com.rti.dds.publication.DataWriter (p. 557) is discovered in association with its Publisher (p. 1262) ) . . . . . 1249
PublicationBuiltinTopicDataDataReader
(Instantiates
DataReader < builtin.PublicationBuiltinTopicData
(p. 1249) > ) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1256
PublicationBuiltinTopicDataSeq
(Instantiates
com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< builtin.PublicationBuiltinTopicData (p. 1249) > ) . . 1257
PublicationBuiltinTopicDataTypeSupport
(Instantiates
TypeSupport < builtin.PublicationBuiltinTopicData
(p. 1249) > ) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1258
PublicationMatchedStatus (Com.rti.dds.infrastructure.StatusKind.StatusKind.PUBLICATION MATCHED STATUS ) . . . . . . . . . . . . . . . . . . . . . . 1259
Publisher (<<interface>> ( p. 279) A publisher is the object responsible for the actual dissemination of publications ) . . . . 1262
PublisherAdapter (<<eXtension>> ( p. 278) A listener adapter in
the spirit of the Java AWT listener adapters. (The Adapter
provides empty implementations for the listener methods) ) . 1288
PublisherListener
(<<interface>>
( p. 279)
com.rti.dds.infrastructure.Listener
(p. 1130)
for
com.rti.dds.publication.Publisher
(p. 1262)
status
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1289
PublisherQos
(QoS
policies
supported
by
a
com.rti.dds.publication.Publisher
(p. 1262)
entity
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1290
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
32
Class Index
PublisherSeq
(Declares
IDL
sequence
<
com.rti.dds.publication.Publisher (p. 1262) > ) . . . . . .
PublishModeQosPolicy (Specifies how RTI Connext sends application data on the network. This QoS policy can be used to tell
RTI Connext to use its own thread to send data, instead of
the user thread ) . . . . . . . . . . . . . . . . . . . . . . . . .
PublishModeQosPolicyKind (Kinds of publishing mode ) . . . . .
Qos (An abstract base class for all QoS types ) . . . . . . . . . . . . .
QosPolicy (The base class for all QoS policies ) . . . . . . . . . . . .
QosPolicyCount
(Type
to
hold
a
counter
for
a
(p. 1305)
com.rti.dds.infrastructure.QosPolicyId t
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
QosPolicyCountSeq
(Declares
IDL
sequence
<
com.rti.dds.infrastructure.QosPolicyCount (p. 1302) > )
QosPolicyId t (Type to identify QosPolicies ) . . . . . . . . . . . .
QueryCondition (<<interface>> ( p. 279) These are specialised
com.rti.dds.subscription.ReadCondition (p. 1313) objects that allow the application to also specify a filter on the
locally available data ) . . . . . . . . . . . . . . . . . . . . . .
ReadCondition (<<interface>> ( p. 279) Conditions specifically dedicated to read operations and attached to one
com.rti.dds.subscription.DataReader (p. 487) ) . . . . .
ReaderDataLifecycleQosPolicy (Controls how a DataReader manages the lifecycle of the data that it has received ) . . . . . .
ReceiverPoolQosPolicy (Configures threads used by RTI Connext
to receive and process data from transports (for example,
UDP sockets) ) . . . . . . . . . . . . . . . . . . . . . . . . . .
RefilterQosPolicyKind (<<eXtension>> ( p. 278) Kinds of Refiltering ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
ReliabilityQosPolicy (Indicates the level of reliability offered/requested by RTI Connext ) . . . . . . . . . . . . . . .
ReliabilityQosPolicyAcknowledgmentModeKind (Kinds of acknowledgment ) . . . . . . . . . . . . . . . . . . . . . . . . . .
ReliabilityQosPolicyKind (Kinds of reliability ) . . . . . . . . . . .
ReliableReaderActivityChangedStatus
(<<eXtension>>
( p. 278) Describes the activity (i.e. are acknowledgements
forthcoming) of reliable readers matched to a reliable writer )
ReliableWriterCacheChangedStatus
(<<eXtension>>
( p. 278) A summary of the state of a data writers cache of
unacknowledged samples written ) . . . . . . . . . . . . . . .
ReliableWriterCacheEventCount (<<eXtension>> ( p. 278)
The number of times the number of unacknowledged samples in the cache of a reliable writer hit a certain well-defined
threshold ) . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1293
1295
1298
1300
1301
1302
1304
1305
1311
1313
1315
1318
1322
1324
1329
1331
1333
1336
1340
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
33
34
Class Index
SampleInfoSeq
(Declares
IDL
sequence
<
com.rti.dds.subscription.SampleInfo (p. 1398) > ) . . . . 1409
SampleLostStatus (Com.rti.dds.infrastructure.StatusKind.StatusKind.SAMPLE LOST STATUS STATUS ) . . . . . . . . . . . . . . . . . . . 1410
SampleLostStatusKind (Kinds of reasons why a sample was lost ) . 1412
SampleRejectedStatus (Com.rti.dds.infrastructure.StatusKind.StatusKind.SAMPLE REJECTED STATUS ) . . . . . . . . . . . . . . . . . . . . . 1418
SampleRejectedStatusKind (Kinds of reasons for rejecting a sample ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1420
SampleStateKind (Indicates whether or not a sample has ever been
read ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1426
Sequence (<<interface>> ( p. 279) <<generic>> ( p. 279) A
type-safe, ordered collection of elements.
The type of
these elements is referred to in this documentation as
com.rti.ndds.example.Foo (p. 977) ) . . . . . . . . . . . . 1428
SequenceNumber t (Type for sequence number representation ) . . 1431
ShmemTransport (Built-in transport (p. 376) plug-in for interprocess communications using shared memory ) . . . . . . . . 1435
ShmemTransport.Property t
(Subclass
of
com.rti.ndds.transport.Transport.Property t (p. 1570)
allowing specification of parameters that are specific to the
shared-memory transport (p. 376) ) . . . . . . . . . . . . . . 1439
ShortSeq (Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< short > ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1442
StatusCondition
(<<interface>>
( p. 279)
A
specific
com.rti.dds.infrastructure.Condition
(p. 464)
that
is associated with each com.rti.dds.infrastructure.Entity
(p. 931) ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1448
StatusKind (Type for status kinds ) . . . . . . . . . . . . . . . . . . 1451
StringDataReader
(<<interface>>
( p. 279)
Instantiates
DataReader < com.rti.dds.infrastructure.String > ) . . . . . . 1462
StringDataWriter
(<<interface>>
( p. 279)
Instantiates
DataWriter < com.rti.dds.infrastructure.String > ) . . . . . . 1465
StringSeq
(Declares
IDL
sequence
<
com.rti.dds.infrastructure.String > ) . . . . . . . . . . . . . . 1467
StringTypeSupport (<<interface>> ( p. 279) String type support )1470
StructMember (A description of a member of a struct ) . . . . . . . 1474
Subscriber (<<interface>> ( p. 279) A subscriber is the object responsible for actually receiving data from a subscription
(p. 353) ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1476
SubscriberAdapter (A listener adapter in the spirit of the Java AWT
listener adapters. (The Adapter provides empty implementations for the listener methods) ) . . . . . . . . . . . . . . . . . 1502
SubscriberListener
(<<interface>>
( p. 279)
com.rti.dds.infrastructure.Listener (p. 1130) for status about a subscriber ) . . . . . . . . . . . . . . . . . . . . . 1503
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
35
SubscriberQos
(QoS
policies
supported
by
a
com.rti.dds.subscription.Subscriber (p. 1476) entity
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1505
SubscriberSeq
(Declares
IDL
sequence
<
com.rti.dds.subscription.Subscriber (p. 1476) > ) . . . . 1507
SubscriptionBuiltinTopicData
(Entry
created
when
a
com.rti.dds.subscription.DataReader (p. 487) is discovered in association with its Subscriber (p. 1476) ) . . . . 1509
SubscriptionBuiltinTopicDataDataReader
<
(Instantiates
DataReader (p. 487)
builtin.SubscriptionBuiltinTopicData
(p. 1509)
>
) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1516
SubscriptionBuiltinTopicDataSeq
(Instantiates
com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< builtin.SubscriptionBuiltinTopicData (p. 1509) > ) . . 1517
SubscriptionBuiltinTopicDataTypeSupport
(Instantiates
TypeSupport < builtin.SubscriptionBuiltinTopicData
(p. 1509) > ) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1518
SubscriptionMatchedStatus (Com.rti.dds.infrastructure.StatusKind.StatusKind.SUBSCRIPTION MATCHED STATUS ) . . . . . . . . . . . . . . . . . . . . . . 1519
SystemException (System exception ) . . . . . . . . . . . . . . . . . 1522
SystemResourceLimitsQosPolicy
(Configures
com.rti.dds.domain.DomainParticipant
(p. 654)independent
resources
used
by
RTI
Connext.
Mainly used to change the maximum number of
com.rti.dds.domain.DomainParticipant (p. 654) entities that can be created within a single process (address
space) ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1523
TCKind (Enumeration type for com.rti.dds.typecode.TypeCode
(p. 1611) kinds ) . . . . . . . . . . . . . . . . . . . . . . . . . 1525
ThreadSettings t (The properties of a thread of execution ) . . . . . 1530
ThreadSettingsCpuRotationKind
(Determines
how
com.rti.dds.infrastructure.ThreadSettings t.cpu list (p. 1531) affects processor affinity for thread-related QoS
policies that apply to multiple threads ) . . . . . . . . . . . . 1533
ThreadSettingsKind (A collection of flags used to configure threads
of execution ) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1535
Time t (Type for time representation ) . . . . . . . . . . . . . . . . . 1537
TimeBasedFilterQosPolicy
(Filter
that
allows
a
com.rti.dds.subscription.DataReader (p. 487) to specify
that it is interested only in (potentially) a subset of the values
of the data ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1541
Topic (<<interface>> ( p. 279) The most basic description of the
data to be published and subscribed ) . . . . . . . . . . . . . 1545
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
36
Class Index
TopicAdapter (<<eXtension>> ( p. 278) A listener adapter in the
spirit of the Java AWT listener adapters. (The Adapter provides empty implementations for the listener methods) ) . . . 1550
TopicBuiltinTopicData (Entry created when a Topic (p. 1545) object discovered ) . . . . . . . . . . . . . . . . . . . . . . . . . 1552
TopicBuiltinTopicDataDataReader (Instantiates DataReader <
builtin.TopicBuiltinTopicData (p. 1552) > ) . . . . . . . . 1556
TopicBuiltinTopicDataSeq
(Instantiates
com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< builtin.TopicBuiltinTopicData (p. 1552) > ) . . . . . . 1557
TopicBuiltinTopicDataTypeSupport (Instantiates TypeSupport
(p. 1665) < builtin.TopicBuiltinTopicData (p. 1552) > ) 1558
TopicDataQosPolicy (Attaches a buffer of opaque data that is distributed by means of Built-in Topics (p. 157) during discovery ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1559
TopicDescription (Com.rti.dds.topic.Topic entity and associated elements ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1561
TopicListener
(<<interface>>
( p. 279)
com.rti.dds.infrastructure.Listener
(p. 1130)
for
com.rti.dds.topic.Topic (p. 1545) entities ) . . . . . . . . . 1564
TopicQos (QoS policies supported by a com.rti.dds.topic.Topic
(p. 1545) entity ) . . . . . . . . . . . . . . . . . . . . . . . . . 1566
Transport (RTI Connexts abstract pluggable transport (p. 376) interface ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1569
Transport.Property t (Base structure that must be inherited by
derived Transport (p. 1569) Plugin classes ) . . . . . . . . . 1570
TransportBuiltinKind (Built-in transport kind ) . . . . . . . . . . . 1578
TransportBuiltinQosPolicy (Specifies which built-in transports are
used ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1580
TransportMulticastMapping t (Type representing a list of multicast mapping elements ) . . . . . . . . . . . . . . . . . . . . . 1582
TransportMulticastMappingFunction t (Type representing an
external mapping function ) . . . . . . . . . . . . . . . . . . . 1585
TransportMulticastMappingQosPolicy (Specifies the multicast
address on which a com.rti.dds.subscription.DataReader
(p. 487) wants to receive its data.
It can also specify a port number as well as a subset of the available
(at the com.rti.dds.domain.DomainParticipant (p. 654)
level) transports with which to receive the multicast data ) . 1587
TransportMulticastMappingSeq (Declares IDL sequence<
com.rti.dds.infrastructure.TransportMulticastSettings t (p. 1594) > ) . . . . . . . . . . . . . . . . . . . . . . . . . . 1589
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
37
1590
1593
1594
1597
1598
1600
1602
1605
1608
1610
1611
1647
1661
1663
1665
38
Class Index
TypeSupportQosPolicy (Allows you to attach application-specific
values to a DataWriter or DataReader that are passed to the
serialization or deserialization routine of the associated data
type ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1666
UDPv4Transport (Built-in transport (p. 376) plug-in using
UDP/IPv4 ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1668
UDPv4Transport.Property t (Configurable IPv4/UDP TransportPlugin properties ) . . . . . . . . . . . . . . . . . . . . . . . . 1672
UDPv6Transport (Built-in transport (p. 376) plug-in using
UDP/IPv6 ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1680
UDPv6Transport.Property t (Configurable IPv6/UDP TransportPlugin properties ) . . . . . . . . . . . . . . . . . . . . . . . . 1684
Union . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1691
UnionMember (A description of a member of a union ) . . . . . . . 1692
UserDataQosPolicy (Attaches a buffer of opaque data that is distributed by means of Built-in Topics (p. 157) during discovery ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1694
UserException (User exception ) . . . . . . . . . . . . . . . . . . . . 1696
ValueMember (A description of a member of a value type ) . . . . . 1697
VendorId t (<<eXtension>> ( p. 278) Type used to represent the
vendor of the service implementing the RTPS protocol ) . . . 1699
Version (<<interface>> ( p. 279) The version of an RTI Connext
distribution ) . . . . . . . . . . . . . . . . . . . . . . . . . . . 1701
ViewStateKind (Indicates whether or not an instance is new ) . . . 1703
VM ABSTRACT (Constant used to indicate that a value type has
the abstract modifier ) . . . . . . . . . . . . . . . . . . . . . 1705
VM CUSTOM (Constant used to indicate that a value type has the
custom modifier ) . . . . . . . . . . . . . . . . . . . . . . . . . 1706
VM NONE (Constant used to indicate that a value type has no modifiers ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1707
VM TRUNCATABLE (Constant used to indicate that a value type
has the truncatable modifier ) . . . . . . . . . . . . . . . . . 1708
WaitSet
(<<interface>> ( p. 279)
Allows
an
application to wait until one or more of the attached
com.rti.dds.infrastructure.Condition (p. 464) objects
has a trigger value of com.rti.dds.infrastructure.true or
else until the timeout expires ) . . . . . . . . . . . . . . . . . 1709
WaitSetProperty t (<<eXtension>> ( p. 278) Specifies the
com.rti.dds.infrastructure.WaitSet (p. 1709) behavior for
multiple trigger events ) . . . . . . . . . . . . . . . . . . . . . 1719
WcharSeq (Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence
< com.rti.dds.infrastructure.char > ) . . . . . . . . . . . . . . 1721
WireProtocolQosPolicy (Specifies the wire-protocol-related attributes for the com.rti.dds.domain.DomainParticipant
(p. 654) ) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1723
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
39
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
40
Class Index
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
Chapter 6
Module Documentation
6.1
ASYNCHRONOUS PUBLISHER
Classes
class AsynchronousPublisherQosPolicy
Configures the mechanism that sends user data in an external middleware
thread.
Variables
static final QosPolicyId t ASYNCHRONOUSPUBLISHER QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.AsynchronousPublisherQosPolicy
( p. 397)
6.1.1
for
Detailed Description
42
Module Documentation
6.1.2
Variable Documentation
6.1.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.2 AVAILABILITY
6.2
43
AVAILABILITY
Classes
class AvailabilityQosPolicy
Configures the availability of data.
class EndpointGroup t
Specifies a group of endpoints that can be collectively identified by a name
and satisfied by a quorum.
class EndpointGroupSeq
A sequence of com.rti.dds.infrastructure.EndpointGroup t ( p. 928).
Variables
static final QosPolicyId t AVAILABILITY QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.AvailabilityQosPolicy ( p. 402)
6.2.1
for
Detailed Description
6.2.2
Variable Documentation
6.2.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
44
Module Documentation
6.3
BATCH
Classes
class BatchQosPolicy
Used to configure batching of multiple samples into a single network packet
in order to increase throughput for small samples.
Variables
static final QosPolicyId t BATCH QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.BatchQosPolicy ( p. 412)
6.3.1
for
Detailed Description
6.3.2
Variable Documentation
6.3.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.4
45
com.rti.dds.infrastructure.Condition
(p. 464)
com.rti.dds.infrastructure.WaitSet (p. 1709) and related items.
and
Classes
interface Condition
<<interface>> (p. 279) Root class for all the conditions that may be attached to a com.rti.dds.infrastructure.WaitSet ( p. 1709).
class ConditionSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.infrastructure.Condition ( p. 464) >.
class GuardCondition
<<interface>> (p. 279) A specific com.rti.dds.infrastructure.Condition
( p. 464) whose trigger value is completely under the control of the application.
interface StatusCondition
<<interface>> (p. 279) A specific com.rti.dds.infrastructure.Condition
( p. 464) that is associated with each com.rti.dds.infrastructure.Entity
( p. 931).
class WaitSet
<<interface>> (p. 279) Allows an application to wait until one or more
of the attached com.rti.dds.infrastructure.Condition ( p. 464) objects has
a trigger value of com.rti.dds.infrastructure.true or else until the timeout
expires.
class WaitSetProperty t
<<eXtension>>
(p. 278)
Specifies
the
com.rti.dds.infrastructure.WaitSet ( p. 1709) behavior for multiple
trigger events.
6.4.1
Detailed Description
com.rti.dds.infrastructure.Condition
(p. 464)
com.rti.dds.infrastructure.WaitSet (p. 1709) and related items.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
and
46
Module Documentation
6.5
DATABASE
Classes
class DatabaseQosPolicy
Various threads and resource limits settings used by RTI Connext to control
its internal database.
Variables
static final QosPolicyId t DATABASE QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.DatabaseQosPolicy ( p. 482)
6.5.1
for
Detailed Description
6.5.2
Variable Documentation
6.5.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.6
47
Classes
class DataReaderProtocolQosPolicy
Along
with
com.rti.dds.infrastructure.WireProtocolQosPolicy
( p. 1723) and com.rti.dds.infrastructure.DataWriterProtocolQosPolicy
( p. 592), this QoS policy configures the DDS on-the-network protocol
(RTPS).
Variables
static final QosPolicyId t
POLICY ID
DATAREADERPROTOCOL QOS -
<<eXtension>>
(p. 278)
Identifier
for
com.rti.dds.infrastructure.DataReaderProtocolQosPolicy ( p. 521)
6.6.1
Detailed Description
6.6.2
Variable Documentation
6.6.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
48
Module Documentation
6.7
Classes
class DataReaderResourceLimitsQosPolicy
Various
settings
that
com.rti.dds.subscription.DataReader
physical memory for internal resources.
configure
how
( p. 487) allocates and
a
uses
Variables
static final int AUTO MAX TOTAL INSTANCES
<<eXtension>>
(p. 278)
This
value
is
used
to
make
com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy.max total instances ( p. 551) equal to com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max instances ( p. 1352).
6.7.1
Detailed Description
6.7.2
Variable Documentation
6.7.2.1
<<eXtension>>
( p. 278)
This
value
is
used
to
make
com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy.max total instances (p. 551) equal to com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max instances (p. 1352).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
49
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
50
Module Documentation
6.8
Classes
class DataWriterProtocolQosPolicy
Protocol that applies only to com.rti.dds.publication.DataWriter ( p. 557)
instances.
Variables
static final QosPolicyId t
POLICY ID
DATAWRITERPROTOCOL QOS -
<<eXtension>>
(p. 278)
Identifier
for
com.rti.dds.infrastructure.DataWriterProtocolQosPolicy ( p. 592)
6.8.1
Detailed Description
6.8.2
Variable Documentation
6.8.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.9
51
Classes
class DataWriterResourceLimitsInstanceReplacementKind
Sets the kinds of instances that can be replaced when instance resource limits
are reached.
class DataWriterResourceLimitsQosPolicy
Various
settings
that
configure
how
a
com.rti.dds.publication.DataWriter ( p. 557) allocates and uses physical
memory for internal resources.
Variables
static final QosPolicyId t DATA WRITER RESOURCE LIMITS QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
for
com.rti.dds.infrastructure.DataWriterResourceLimitsQosPolicy
( p. 621)
6.9.1
Detailed Description
6.9.2
Variable Documentation
6.9.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
52
Module Documentation
6.10
DEADLINE
Expresses the maximum duration (deadline) within which an instance is expected to be updated.
Classes
class DeadlineQosPolicy
Expresses the maximum duration (deadline) within which an instance is expected to be updated.
Variables
static final QosPolicyId t DEADLINE QOS POLICY ID
Identifier for com.rti.dds.infrastructure.DeadlineQosPolicy ( p. 628).
6.10.1
Detailed Description
Expresses the maximum duration (deadline) within which an instance is expected to be updated.
6.10.2
Variable Documentation
6.10.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.11
53
DESTINATION ORDER
Controls the criteria used to determine the logical order among changes made
by com.rti.dds.publication.Publisher (p. 1262) entities to the same instance
of data (i.e., matching com.rti.dds.topic.Topic (p. 1545) and key).
Classes
class DestinationOrderQosPolicy
Controls how the middleware will deal with data sent by multiple
com.rti.dds.publication.DataWriter ( p. 557) entities for the same instance of data (i.e., same com.rti.dds.topic.Topic ( p. 1545) and key).
class DestinationOrderQosPolicyKind
Kinds of destination order.
Variables
static final QosPolicyId t DESTINATIONORDER QOS POLICY ID
Identifier for com.rti.dds.infrastructure.DestinationOrderQosPolicy
( p. 631).
6.11.1
Detailed Description
Controls the criteria used to determine the logical order among changes made
by com.rti.dds.publication.Publisher (p. 1262) entities to the same instance
of data (i.e., matching com.rti.dds.topic.Topic (p. 1545) and key).
6.11.2
Variable Documentation
6.11.2.1
Identifier
(p. 631).
for
com.rti.dds.infrastructure.DestinationOrderQosPolicy
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
54
Module Documentation
6.12
DISCOVERY CONFIG
Classes
class BuiltinTopicReaderResourceLimits t
Built-in topic ( p. 359) readers resource limits.
class DiscoveryConfigBuiltinPluginKind
Built-in discovery plugins that can be used.
class DiscoveryConfigQosPolicy
Settings for discovery configuration.
class RemoteParticipantPurgeKind
Available behaviors for halting communication with remote participants (and
their contained entities) with which discovery communication has been lost.
Variables
static final int SDP
Built-in discovery plugins that can be used.
6.12.1
for
Detailed Description
6.12.2
Variable Documentation
6.12.2.1
55
6.12.2.2
.SDP
6.12.2.3
6.12.2.4
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
56
Module Documentation
6.13
DISCOVERY
<<eXtension>> ( p. 278) Specifies the attributes required to discover participants in the domain.
Modules
NDDS DISCOVERY PEERS
Environment variable or a file that specifies the default values of
com.rti.dds.infrastructure.DiscoveryQosPolicy.initial peers ( p. 651)
and
com.rti.dds.infrastructure.DiscoveryQosPolicy.multicast receive addresses
( p. 650)
contained
in
the
com.rti.dds.domain.DomainParticipantQos.discovery
( p. 776)
qos policy.
Classes
class DiscoveryQosPolicy
Configures the mechanism used by the middleware to automatically discover
and connect with new remote applications.
Variables
static final QosPolicyId t DISCOVERY QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.DiscoveryQosPolicy ( p. 649)
6.13.1
for
Detailed Description
<<eXtension>> ( p. 278) Specifies the attributes required to discover participants in the domain.
6.13.2
Variable Documentation
6.13.2.1
6.14
57
58
Module Documentation
The application programmer is free to not use the default values; instead use
values supplied by other means.
NDDS DISCOVERY PEERS can be specified either in an environment variable
as comma (,) separated "peer descriptors" (see Peer Descriptor Format
(p. 58)) or in a file. These formats are described below.
6.14.1
Locator Format
59
portion of the locator. Note that a transport class name is an implicit alias
that is used to refer to all the transport plugin instances of that class.
optional Address. See Address Format (p. 59).
These are separated by the //: string. The separator is specified if and only
if a transport name is specified.
If a transport name is specified, the address may be omitted; in that case, all
the unicast addresses (across all transport plugin instances) associated with the
transport class are implied. Thus, a locator string may specify several addresses.
If an address is specified, the transport name and the separator string
may be omitted; in that case all the available transport plugins (for the
com.rti.dds.infrastructure.Entity (p. 931)) may be used to parse the address string.
6.14.1.2
Address Format
An address string specifies a transport-independent network address that qualifies a transport-dependent address string.
Addresses are used to form locators.
Addresses are also used in
com.rti.dds.infrastructure.DiscoveryQosPolicy.multicast receive addresses (p. 650), and com.rti.dds.infrastructure.TransportMulticastSettings t.receive address (p. 1595) fields. An address is equivalent to a locator in
which the transport name and separator are omitted.
An address consists of:
optional Network Address. An address in IPv4 or IPv6 string notation. If omitted, the network address of the transport is implied (Transport Network
Address (p. 381)).
optional Transport Address.
A string that is passed to the transport for processing.
The transport maps this string into
com.rti.ndds.transport.Transport.Property t.address bit count
(p. 1573) bits. If omitted the network address is used as the fully qualified
address.
These are separated by the # character. If a separator is specified, it must be
followed by a non-empty string which is passed to the transport plugin.
The
bits
resulting
from
the
transport
address
string
are
prepended with the network address.
The least significant
com.rti.ndds.transport.Transport.Property t.address bit count
(p. 1573) bits of the network address are ignored (Transport Network
Address (p. 381)).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
60
Module Documentation
If the separator is omitted and the string is not a valid IPv4 or IPv6 address,
it is treated as a transport address with an implicit network address (of the
transport plugin).
6.14.2
61
udpv4://
Default maximum participant ID on host 0/0/R (StarFabric)
0/0/R
#0/0/R
Default maximum participant ID on host 0/0/R (StarFabric) using the starfabric (StarFabric) transport plugin(s)
starfabric://0/0/R
starfabric://#0/0/R
Default maximum participant ID on host 0/0/R (StarFabric) using the starfabric (StarFabric) transport plugin(s) registered at network address FAA0::0
starfabric://FBB0::0#0/0/R
Default maximum participant ID on all unicast addresses accessed via the starfabric (StarFabric) transport plugin(s)
starfabric://
Default maximum participant ID on all unicast addresses accessed via the
shmem (shared memory) transport plugin(s)
shmem://
Default maximum participant ID on all unicast addresses accessed via the
shmem (shared memory) transport plugin(s) registered at network address
FCC0::0
shmem://FCC0::0
Default maximum participant ID on hosts himalaya and gangotri
himalaya,gangotri
Maximum participant ID of 1 on hosts himalaya and gangotri
1@himalaya,1@gangotri
Combinations of above
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
62
Module Documentation
239.255.0.1,localhost,192.168.1.1,0/0/R
FAA0::1,FAA0::0#localhost,FBB0::0#0/0/R
udpv4://himalaya,udpv4://FAA0::0#localhost,#0/0/R
starfabric://0/0/R,starfabric://FBB0::0#0/0/R,shmem://
starfabric://,shmem://FCC0::0,1@himalaya,1@gangotri
6.14.3
NDDS DISCOVERY PEERS can be specified via a file of the same name in the
programs current working directory. A NDDS DISCOVERY PEERS file would
contain a sequence of peer descriptors separated by whitespace or the comma
(,) character. The file may also contain comments starting with a semicolon
(;) character till the end of the line.
Example:
;; NDDS_DISCOVERY_PEERS - Default Discovery Configuration File
;;
;;
;; NOTE:
;;
1. This file must be in the current working directory, i.e.
;;
in the folder from which the application is launched.
;;
;;
2. This file takes precedence over the environment variable NDDS_DISCOVERY_PEERS
;;
;; Multicast
239.255.0.1
;; Unicast
localhost,192.168.1.1
FAA0::1
FAA0::0#localhost
1@himalaya
1@gangotri
;; UDPv4
udpv4://himalaya
udpv4://FAA0::0#localhost
;; Shared Memory
shmem://
builtin.shmem://
shmem://FCC0::0
;; StarFabric
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.14.4
;
;
;
;
;
;
63
If the current working directory from which the RTI Connext application is
launched contains a file called NDDS DISCOVERY PEERS, and an environment variable named NDDS DISCOVERY PEERS is also defined, the file takes
precedence; the environment variable is ignored.
6.14.5
;;
;;
;;
;;
;;
builtin.udpv4://127.0.0.1
;;
;;
;;
;;
;;
builtin.shmem://
6.14.6
64
Module Documentation
shmem - com.rti.ndds.transport.ShmemTransport (p. 1435)
udpv4 - com.rti.ndds.transport.UDPv4Transport (p. 1668)
udpv6 - com.rti.ndds.transport.UDPv6Transport (p. 1680)
These may be used as the transport names in the Locator Format (p. 58).
6.14.7
and
Local
Host
Suppose you want to communicate with other RTI Connext applications on the
same host and you are setting NDDS DISCOVERY PEERS explicitly (generally
in order to use unicast discovery with applications on other hosts).
If the local host platform does not support the shared memory transport, then
you can include the name of the local host in the NDDS DISCOVERY PEERS
list.
If the local host platform supports the shared memory transport, then you can
do one of the following:
Include shmem:// in the NDDS DISCOVERY PEERS list. This will
cause shared memory to be used for discovery and data traffic for applications on the same host.
or:
Include the name of the local host in the NDDS DISCOVERY PEERS list and disable the shared memory transport in the
com.rti.dds.infrastructure.TransportBuiltinQosPolicy (p. 1580) of
the com.rti.dds.domain.DomainParticipant (p. 654). This will cause
UDP loopback to be used for discovery and data traffic for applications
on the same host.
(To check if your platform supports shared memory, see the Platform Notes.)
See also:
com.rti.dds.infrastructure.DiscoveryQosPolicy.multicast receive addresses (p. 650)
com.rti.dds.infrastructure.DiscoveryQosPolicy.initial peers
(p. 651)
com.rti.dds.domain.DomainParticipant.add peer() (p. 720)
com.rti.dds.domain.DomainParticipantFactory.PARTICIPANT QOS DEFAULT (p. 149)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
65
66
Module Documentation
6.15
Classes
class AllocationSettings t
Resource allocation settings.
class DomainParticipantResourceLimitsQosPolicy
Various
settings
that
configure
how
a
com.rti.dds.domain.DomainParticipant ( p. 654) allocates and uses
physical memory for internal resources, including the maximum sizes of
various properties.
Variables
static final QosPolicyId t DOMAINPARTICIPANTRESOURCELIMITS QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
for
com.rti.dds.infrastructure.DomainParticipantResourceLimitsQosPolicy
( p. 778)
6.15.1
Detailed Description
6.15.2
Variable Documentation
6.15.2.1
67
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
68
Module Documentation
6.16
DURABILITY
Classes
class DurabilityQosPolicy
This QoS policy specifies whether or not RTI Connext will
store and deliver previously published data samples to new
com.rti.dds.subscription.DataReader ( p. 487) entities that join the
network later.
class DurabilityQosPolicyKind
Kinds of durability.
Variables
static final QosPolicyId t DURABILITY QOS POLICY ID
Identifier for com.rti.dds.infrastructure.DurabilityQosPolicy ( p. 802).
6.16.1
Detailed Description
6.16.2
Variable Documentation
6.16.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.17
69
DURABILITY SERVICE
Various
settings
to
configure
the
external
RTI
Persistence Service used by RTI Connext for DataWriters with a
com.rti.dds.infrastructure.DurabilityQosPolicy (p. 802) setting of
com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.PERSISTENT DURABILITY QOS or com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.TRANSIENT
DURABILITY QOS.
Classes
class DurabilityServiceQosPolicy
Various
settings
to
configure
the
external
RTI
Persistence Service used by RTI Connext for DataWriters with a
com.rti.dds.infrastructure.DurabilityQosPolicy ( p. 802) setting of
com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.PERSISTENT DURABILITY QOS or com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.TRANSIENT DURABILITY QOS.
Variables
static
final
POLICY ID
QosPolicyId t
6.17.1
Detailed Description
Various
settings
to
configure
the
external
RTI
Persistence Service used by RTI Connext for DataWriters with a
com.rti.dds.infrastructure.DurabilityQosPolicy (p. 802) setting of
com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.PERSISTENT DURABILITY QOS or com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.TRANSIENT
DURABILITY QOS.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
70
Module Documentation
6.17.2
Variable Documentation
6.17.2.1
Identifier
(p. 810).
for
com.rti.dds.infrastructure.DurabilityServiceQosPolicy
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.18
Time Support
Classes
class Duration t
Type for duration representation.
class Time t
Type for time representation.
6.18.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
71
72
Module Documentation
6.19
Entity Support
Classes
interface DomainEntity
<<interface>> (p. 279) Abstract base class for all DDS entities except for
the com.rti.dds.domain.DomainParticipant ( p. 654).
interface Entity
<<interface>> (p. 279) Abstract base class for all the DDS objects that
support QoS policies, a listener, and a status condition.
interface Listener
<<interface>> (p. 279) Abstract base class for all Listener ( p. 1130) interfaces.
6.19.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.20
73
ENTITY FACTORY
Classes
class EntityFactoryQosPolicy
A
QoS
policy
for
all
com.rti.dds.infrastructure.Entity
( p. 931) types that can act as factories for one or more other
com.rti.dds.infrastructure.Entity ( p. 931) types.
Variables
static final QosPolicyId t ENTITYFACTORY QOS POLICY ID
Identifier
( p. 938).
6.20.1
for
com.rti.dds.infrastructure.EntityFactoryQosPolicy
Detailed Description
6.20.2
Variable Documentation
6.20.2.1
Identifier
(p. 938).
for
com.rti.dds.infrastructure.EntityFactoryQosPolicy
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
74
Module Documentation
6.21
ENTITY NAME
Assigns
a
name
to
a
<<eXtension>>
( p. 278)
com.rti.dds.domain.DomainParticipant (p. 654).
This name will be
visible during the discovery process and in RTI tools to help you visualize and
debug your system.
Classes
class EntityNameQosPolicy
Assigns
a
name
and
a
role
name
to
a
com.rti.dds.domain.DomainParticipant
( p. 654),
com.rti.dds.publication.DataWriter
( p. 557)
or
com.rti.dds.subscription.DataReader ( p. 487).
These names will
be visible during the discovery process and in RTI tools to help you visualize
and debug your system.
6.21.1
Detailed Description
<<eXtension>>
( p. 278)
Assigns
a
name
to
a
com.rti.dds.domain.DomainParticipant (p. 654).
This name will be
visible during the discovery process and in RTI tools to help you visualize and
debug your system.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.22 EVENT
6.22
75
EVENT
<<eXtension>> ( p. 278) Configures the internal thread in a DomainParticipant that handles timed events.
Classes
class EventQosPolicy
Settings for event.
Variables
static final QosPolicyId t EVENT QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.EventQosPolicy ( p. 949)
6.22.1
for
Detailed Description
<<eXtension>> ( p. 278) Configures the internal thread in a DomainParticipant that handles timed events.
6.22.2
Variable Documentation
6.22.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
76
Module Documentation
6.23
EXCLUSIVE AREA
Classes
class ExclusiveAreaQosPolicy
Configures multi-thread concurrency and deadlock prevention capabilities.
Variables
static final QosPolicyId t EXCLUSIVEAREA QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.ExclusiveAreaQosPolicy ( p. 952)
6.23.1
for
Detailed Description
6.23.2
Variable Documentation
6.23.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.24
77
GROUP DATA
Classes
class GroupDataQosPolicy
Attaches a buffer of opaque data that is distributed by means of Built-in
Topics ( p. 157) during discovery.
Variables
static final QosPolicyId t GROUPDATA QOS POLICY ID
Identifier
( p. 1039).
6.24.1
for
com.rti.dds.infrastructure.GroupDataQosPolicy
Detailed Description
6.24.2
Variable Documentation
6.24.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
78
Module Documentation
6.25
GUID Support
Classes
class GUID t
Type for GUID (Global Unique Identifier) representation.
6.25.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.26 HISTORY
6.26
79
HISTORY
Specifies the behavior of RTI Connext in the case where the value of an instance
changes (one or more times) before it can be successfully communicated to one
or more existing subscribers.
Classes
class HistoryQosPolicy
Specifies the behavior of RTI Connext in the case where the value of a sample
changes (one or more times) before it can be successfully communicated to
one or more existing subscribers.
class HistoryQosPolicyKind
Kinds of history.
class RefilterQosPolicyKind
<<eXtension>> (p. 278) Kinds of Refiltering
Variables
static final QosPolicyId t HISTORY QOS POLICY ID
Identifier for com.rti.dds.infrastructure.HistoryQosPolicy ( p. 1046).
6.26.1
Detailed Description
Specifies the behavior of RTI Connext in the case where the value of an instance
changes (one or more times) before it can be successfully communicated to one
or more existing subscribers.
6.26.2
Variable Documentation
6.26.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
80
Module Documentation
6.27
LATENCY BUDGET
Provides a hint as to the maximum acceptable delay from the time the data is
written to the time it is received by the subscribing applications.
Classes
class LatencyBudgetQosPolicy
Provides a hint as to the maximum acceptable delay from the time the data
is written to the time it is received by the subscribing applications.
Variables
static final QosPolicyId t LATENCYBUDGET QOS POLICY ID
Identifier
( p. 1124).
6.27.1
for
com.rti.dds.infrastructure.LatencyBudgetQosPolicy
Detailed Description
Provides a hint as to the maximum acceptable delay from the time the data is
written to the time it is received by the subscribing applications.
6.27.2
Variable Documentation
6.27.2.1
Identifier
(p. 1124).
for
com.rti.dds.infrastructure.LatencyBudgetQosPolicy
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.28 LIFESPAN
6.28
81
LIFESPAN
Specifies
how
long
the
data
written
by
com.rti.dds.publication.DataWriter (p. 557) is considered valid.
the
Classes
class LifespanQosPolicy
Specifies
how
long
the
data
written
by
com.rti.dds.publication.DataWriter ( p. 557) is considered valid.
the
Variables
static final QosPolicyId t LIFESPAN QOS POLICY ID
Identifier for com.rti.dds.infrastructure.LifespanQosPolicy ( p. 1128).
6.28.1
Detailed Description
Specifies
how
long
the
data
written
by
com.rti.dds.publication.DataWriter (p. 557) is considered valid.
6.28.2
Variable Documentation
6.28.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
the
82
Module Documentation
6.29
LIVELINESS
Specifies
and
configures
the
mechanism
that
allows
com.rti.dds.subscription.DataReader (p. 487) entities to detect when
com.rti.dds.publication.DataWriter (p. 557) entities become disconnected
or dead..
Classes
class LivelinessQosPolicy
Specifies
and
configures
the
mechanism
that
allows
com.rti.dds.subscription.DataReader ( p. 487) entities to detect
when com.rti.dds.publication.DataWriter ( p. 557) entities become
disconnected or dead..
class LivelinessQosPolicyKind
Kinds of liveliness.
Variables
static final QosPolicyId t LIVELINESS QOS POLICY ID
Identifier for com.rti.dds.infrastructure.LivelinessQosPolicy ( p. 1140).
6.29.1
Detailed Description
Specifies
and
configures
the
mechanism
that
allows
com.rti.dds.subscription.DataReader (p. 487) entities to detect when
com.rti.dds.publication.DataWriter (p. 557) entities become disconnected
or dead..
6.29.2
Variable Documentation
6.29.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.30 LOCATORFILTER
6.30
83
LOCATORFILTER
Classes
class LocatorFilter t
Specifies the configuration of an individual channel within a MultiChannel
DataWriter.
class LocatorFilterQosPolicy
The QoS policy used to report the configuration of a MultiChannel
DataWriter as part of builtin.PublicationBuiltinTopicData.
class LocatorFilterSeq
Declares IDL sequence< com.rti.dds.infrastructure.LocatorFilter t ( p. 1154) >.
Variables
static final QosPolicyId t LOCATORFILTER QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.LocatorFilterQosPolicy ( p. 1157)
6.30.1
for
Detailed Description
6.30.2
Variable Documentation
6.30.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
84
Module Documentation
6.31
LOGGING
Classes
class LoggingQosPolicy
Configures the RTI Connext logging facility.
Variables
static final QosPolicyId t LOGGING QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.LoggingQosPolicy ( p. 1169)
6.31.1
for
Detailed Description
6.31.2
Variable Documentation
6.31.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.32 MULTICHANNEL
6.32
85
MULTICHANNEL
Classes
class ChannelSettings t
Type used to configure the properties of a channel.
class ChannelSettingsSeq
Declares IDL sequence< com.rti.dds.infrastructure.ChannelSettings t
( p. 454) >.
class MultiChannelQosPolicy
Configures the ability of a DataWriter to send data on different multicast
groups (addresses) based on the value of the data.
Variables
static final QosPolicyId t MULTICHANNEL QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.MultiChannelQosPolicy ( p. 1187)
6.32.1
for
Detailed Description
6.32.2
Variable Documentation
6.32.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
86
Module Documentation
6.33
Object Support
Classes
interface Copyable
<<eXtension>> (p. 278) <<interface>> (p. 279) Interface for all the
user-defined data type classes that support copy.
class ObjectHolder
<<eXtension>> (p. 278) Holder of object instance
6.33.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.34 OWNERSHIP
6.34
87
OWNERSHIP
Specifies
whether
it
is
allowed
for
multiple
com.rti.dds.publication.DataWriter (p. 557) (s) to write the same
instance of the data and if so, how these modifications should be arbitrated.
Classes
class OwnershipQosPolicy
Specifies
whether
it
is
allowed
for
multiple
com.rti.dds.publication.DataWriter ( p. 557) (s) to write the same
instance of the data and if so, how these modifications should be arbitrated.
class OwnershipQosPolicyKind
Kinds of ownership.
Variables
static final QosPolicyId t OWNERSHIP QOS POLICY ID
Identifier
( p. 1199).
6.34.1
for
com.rti.dds.infrastructure.OwnershipQosPolicy
Detailed Description
Specifies
whether
it
is
allowed
for
multiple
com.rti.dds.publication.DataWriter (p. 557) (s) to write the same
instance of the data and if so, how these modifications should be arbitrated.
6.34.2
Variable Documentation
6.34.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
88
Module Documentation
6.35
OWNERSHIP STRENGTH
Classes
class OwnershipStrengthQosPolicy
Specifies the value of the strength used to arbitrate among multiple com.rti.dds.publication.DataWriter ( p. 557) objects that attempt to modify the same instance of a data type (identified by
com.rti.dds.topic.Topic ( p. 1545) + key).
Variables
static final QosPolicyId t
POLICY ID
OWNERSHIPSTRENGTH QOS -
6.35.1
Detailed Description
6.35.2
Variable Documentation
6.35.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.36 PARTITION
6.36
89
PARTITION
Set of strings that introduces a logical partition among the topics visible by a com.rti.dds.publication.Publisher (p. 1262) and a
com.rti.dds.subscription.Subscriber (p. 1476).
Classes
class PartitionQosPolicy
Set of strings that introduces a logical partition among the topics visible by a com.rti.dds.publication.Publisher ( p. 1262) and a
com.rti.dds.subscription.Subscriber ( p. 1476).
Variables
static final QosPolicyId t PARTITION QOS POLICY ID
Identifier for com.rti.dds.infrastructure.PartitionQosPolicy ( p. 1217).
6.36.1
Detailed Description
Set of strings that introduces a logical partition among the topics visible by a com.rti.dds.publication.Publisher (p. 1262) and a
com.rti.dds.subscription.Subscriber (p. 1476).
6.36.2
Variable Documentation
6.36.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
90
Module Documentation
6.37
PRESENTATION
Specifies how the samples representing changes to data instances are presented
to a subscribing application.
Classes
class PresentationQosPolicy
Specifies how the samples representing changes to data instances are presented to a subscribing application.
class PresentationQosPolicyAccessScopeKind
Kinds of presentation access scope.
Variables
static final QosPolicyId t PRESENTATION QOS POLICY ID
Identifier
( p. 1221).
6.37.1
for
com.rti.dds.infrastructure.PresentationQosPolicy
Detailed Description
Specifies how the samples representing changes to data instances are presented
to a subscribing application.
6.37.2
Variable Documentation
6.37.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.38 PROFILE
6.38
91
PROFILE
<<eXtension>> ( p. 278) Configures the way that XML documents containing QoS profiles are loaded by RTI Connext.
Classes
class ProfileQosPolicy
Configures the way that XML documents containing QoS profiles are loaded
by RTI Connext.
Variables
static final QosPolicyId t PROFILE QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.ProfileQosPolicy ( p. 1231)
6.38.1
for
Detailed Description
<<eXtension>> ( p. 278) Configures the way that XML documents containing QoS profiles are loaded by RTI Connext.
6.38.2
Variable Documentation
6.38.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
92
Module Documentation
6.39
PROPERTY
Classes
class Property t
Properties are name/value pairs objects.
class PropertyQosPolicy
Stores name/value(string) pairs that can be used to configure certain parameters of RTI Connext that are not exposed through formal QoS policies. Can
also be used to store and propagate application-specific name/value pairs that
can be retrieved by user code during discovery.
class PropertyQosPolicyHelper
Policy Helpers which facilitate management of the properties in the input
policy.
class PropertySeq
Declares IDL
( p. 1234) >.
6.39.1
sequence
<
com.rti.dds.infrastructure.Property t
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.40
93
PUBLISH MODE
Classes
class PublishModeQosPolicy
Specifies how RTI Connext sends application data on the network. This QoS
policy can be used to tell RTI Connext to use its own thread to send data,
instead of the user thread.
class PublishModeQosPolicyKind
Kinds of publishing mode.
Variables
static final QosPolicyId t PUBLISHMODE QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.PublishModeQosPolicy ( p. 1295)
6.40.1
for
Detailed Description
6.40.2
Variable Documentation
6.40.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
94
Module Documentation
6.41
QoS Policies
Modules
ASYNCHRONOUS PUBLISHER
<<eXtension>> (p. 278) Specifies the asynchronous publishing settings of
the com.rti.dds.publication.Publisher ( p. 1262) instances.
AVAILABILITY
<<eXtension>> (p. 278) Configures the availability of data.
BATCH
<<eXtension>> (p. 278) Batch QoS policy used to enable batching in
com.rti.dds.publication.DataWriter ( p. 557) instances.
DATABASE
<<eXtension>> (p. 278) Various threads and resource limits settings used
by RTI Connext to control its internal database.
DEADLINE
Expresses the maximum duration (deadline) within which an instance is expected to be updated.
DESTINATION ORDER
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
95
Controls the criteria used to determine the logical order among changes made
by com.rti.dds.publication.Publisher ( p. 1262) entities to the same instance of data (i.e., matching com.rti.dds.topic.Topic ( p. 1545) and key).
DISCOVERY CONFIG
<<eXtension>> (p. 278) Specifies the discovery configuration QoS.
DISCOVERY
<<eXtension>> (p. 278) Specifies the attributes required to discover participants in the domain.
DURABILITY
This QoS policy specifies whether or not RTI Connext will
store and deliver previously published data samples to new
com.rti.dds.subscription.DataReader ( p. 487) entities that join the
network later.
DURABILITY SERVICE
Various
settings
to
configure
the
external
RTI
Persistence Service used by RTI Connext for DataWriters with a
com.rti.dds.infrastructure.DurabilityQosPolicy ( p. 802) setting of
com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.PERSISTENT DURABILITY QOS or com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.TRANSIENT DURABILITY QOS.
ENTITY FACTORY
A
QoS
policy
for
all
com.rti.dds.infrastructure.Entity
( p. 931) types that can act as factories for one or more other
com.rti.dds.infrastructure.Entity ( p. 931) types.
ENTITY NAME
<<eXtension>>
(p. 278)
Assigns
a
name
to
a
com.rti.dds.domain.DomainParticipant ( p. 654).
This name will
be visible during the discovery process and in RTI tools to help you visualize
and debug your system.
EVENT
<<eXtension>> (p. 278) Configures the internal thread in a DomainParticipant that handles timed events.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
96
Module Documentation
EXCLUSIVE AREA
<<eXtension>> (p. 278) Configures multi-thread concurrency and deadlock prevention capabilities.
GROUP DATA
Attaches a buffer of opaque data that is distributed by means of Built-in
Topics ( p. 157) during discovery.
HISTORY
Specifies the behavior of RTI Connext in the case where the value of an
instance changes (one or more times) before it can be successfully communicated to one or more existing subscribers.
LATENCY BUDGET
Provides a hint as to the maximum acceptable delay from the time the data
is written to the time it is received by the subscribing applications.
LIFESPAN
Specifies
how
long
the
data
written
by
com.rti.dds.publication.DataWriter ( p. 557) is considered valid.
the
LIVELINESS
Specifies
and
configures
the
mechanism
that
allows
com.rti.dds.subscription.DataReader ( p. 487) entities to detect
when com.rti.dds.publication.DataWriter ( p. 557) entities become
disconnected or dead..
LOCATORFILTER
<<eXtension>> (p. 278) The QoS policy used to report the configuration of
a MultiChannel DataWriter as part of builtin.PublicationBuiltinTopicData.
LOGGING
<<eXtension>> (p. 278) Configures the RTI Connext logging facility.
MULTICHANNEL
<<eXtension>> (p. 278) Configures the ability of a DataWriter to send
data on different multicast groups (addresses) based on the value of the data.
OWNERSHIP
Specifies
whether
it
is
allowed
for
multiple
com.rti.dds.publication.DataWriter ( p. 557) (s) to write the same
instance of the data and if so, how these modifications should be arbitrated.
OWNERSHIP STRENGTH
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
97
Specifies the value of the strength used to arbitrate among multiple com.rti.dds.publication.DataWriter ( p. 557) objects that attempt to modify the same instance of a data type (identified by
com.rti.dds.topic.Topic ( p. 1545) + key).
PARTITION
Set of strings that introduces a logical partition among the topics visible by a com.rti.dds.publication.Publisher ( p. 1262) and a
com.rti.dds.subscription.Subscriber ( p. 1476).
PRESENTATION
Specifies how the samples representing changes to data instances are presented to a subscribing application.
PROFILE
<<eXtension>> (p. 278) Configures the way that XML documents containing QoS profiles are loaded by RTI Connext.
PROPERTY
<<eXtension>> (p. 278) Stores name/value (string) pairs that can be used
to configure certain parameters of RTI Connext that are not exposed through
formal QoS policies. Can also be used to store and propagate applicationspecific name/value pairs that can be retrieved by user code during discovery.
PUBLISH MODE
<<eXtension>> (p. 278) Specifies how RTI Connext sends application data
on the network. This QoS policy can be used to tell RTI Connext to use its
own thread to send data, instead of the user thread.
RECEIVER POOL
<<eXtension>> (p. 278) Configures threads used by RTI Connext to receive and process data from transports (for example, UDP sockets).
RELIABILITY
Indicates the level of reliability offered/requested by RTI Connext.
RESOURCE LIMITS
Controls the amount of physical memory allocated for DDS entities, if dynamic allocations are allowed, and how they occur. Also controls memory
usage among different instance values for keyed topics.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
98
Module Documentation
SYSTEM RESOURCE LIMITS
<<eXtension>> (p. 278) Configures DomainParticipant-independent resources used by RTI Connext.
TOPIC DATA
Attaches a buffer of opaque data that is distributed by means of Built-in
Topics ( p. 157) during discovery.
TRANSPORT BUILTIN
<<eXtension>> (p. 278) Specifies which built-in transports are used.
TRANSPORT MULTICAST
<<eXtension>> (p. 278) Specifies the multicast address on which a
com.rti.dds.subscription.DataReader ( p. 487) wants to receive its data.
It can also specify a port number, as well as a subset of the available (at the
com.rti.dds.domain.DomainParticipant ( p. 654) level) transports with
which to receive the multicast data.
TRANSPORT PRIORITY
This QoS policy allows the application to take advantage of transports that
are capable of sending messages with different priorities.
TRANSPORT SELECTION
<<eXtension>>
(p. 278)
Specifies
the
physical
transports
that
a
com.rti.dds.publication.DataWriter
( p. 557)
or
com.rti.dds.subscription.DataReader ( p. 487) may use to send or
receive data.
TRANSPORT UNICAST
<<eXtension>> (p. 278) Specifies a subset of transports and a port number
that can be used by an Entity to receive data.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
99
TYPESUPPORT
<<eXtension>> (p. 278) Allows you to attach application-specific values
to a DataWriter or DataReader that are passed to the serialization or deserialization routine of the associated data type.
USER DATA
Attaches a buffer of opaque data that is distributed by means of Built-in
Topics ( p. 157) during discovery.
WIRE PROTOCOL
<<eXtension>> (p. 278) Specifies the wire protocol related attributes for
the com.rti.dds.domain.DomainParticipant ( p. 654).
Classes
class Qos
An abstract base class for all QoS types.
class QosPolicy
The base class for all QoS policies.
class QosPolicyCount
Type to hold a counter for a com.rti.dds.infrastructure.QosPolicyId t
( p. 1305).
class QosPolicyCountSeq
Declares IDL sequence < com.rti.dds.infrastructure.QosPolicyCount
( p. 1302) >.
class QosPolicyId t
Type to identify QosPolicies.
6.41.1
Detailed Description
100
Module Documentation
6.41.2
QosPolicies
can
be
set
programmatically
when
an
com.rti.dds.infrastructure.Entity (p. 931) is created, or modified with
the com.rti.dds.infrastructure.Entity (p. 931)s set qos (abstract)
(p. 932) method.
QosPolicies can also be configured from XML resources (files, strings). With
this approach, you can change the QoS without recompiling the application.
For more information, see Configuring QoS Profiles with XML (p. 233).
To customize a com.rti.dds.infrastructure.Entity (p. 931)s QoS before creating the entity, the correct pattern is:
First, initialize a QoS object with the appropriate INITIALIZER constructor.
Call the relevant get <entity> default qos() method.
Modify the QoS values as desired.
Finally, create the entity.
Each QosPolicy is treated independently from the others. This approach has
the advantage of being very extensible. However, there may be cases where
several policies are in conflict. Consistency checking is performed each time the
policies are modified via the set qos (abstract) (p. 932) operation, or when
the com.rti.dds.infrastructure.Entity (p. 931) is created.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
101
When a policy is changed after being set to a given value, it is not required that the new value be applied instantaneously; RTI Connext is allowed to apply it after a transition phase. In addition, some QosPolicy
have immutable semantics, meaning that they can only be specified either at
com.rti.dds.infrastructure.Entity (p. 931) creation time or else prior to calling the com.rti.dds.infrastructure.Entity.enable (p. 935) operation on the
entity.
Each com.rti.dds.infrastructure.Entity (p. 931) can be configured with
a list of QosPolicy objects.
However, not all QosPolicies are supFor inported by each com.rti.dds.infrastructure.Entity (p. 931).
stance, a com.rti.dds.domain.DomainParticipant (p. 654) supports a different set of QosPolicies than a com.rti.dds.topic.Topic (p. 1545) or a
com.rti.dds.publication.Publisher (p. 1262).
6.41.3
QoS compatibility
In several cases, for communications to occur properly (or efficiently), a QosPolicy on the publisher side must be compatible with a corresponding policy on
the subscriber side. For example, if a com.rti.dds.subscription.Subscriber
(p. 1476) requests to receive data reliably while the corresponding
com.rti.dds.publication.Publisher (p. 1262) defines a best-effort policy,
communication will not happen as requested.
To address this issue and maintain the desirable decoupling of publication
and subscription as much as possible, the QosPolicy specification follows the
subscriber-requested, publisher-offered pattern.
In this pattern, the subscriber side can specify a requested value for
a particular QosPolicy. The publisher side specifes an offered value
for that QosPolicy.
RTI Connext will then determine whether the
value requested by the subscriber side is compatible with what is offered by the publisher side.
If the two policies are compatible, then
communication will be established. If the two policies are not compatible, RTI Connext will not establish communications between the two
com.rti.dds.infrastructure.Entity (p. 931) objects and will record this fact
by means of the com.rti.dds.infrastructure.StatusKind.StatusKind.OFFERED on
the
publisher
end
and
INCOMPATIBLE QOS STATUS
com.rti.dds.infrastructure.StatusKind.StatusKind.REQUESTED INCOMPATIBLE QOS STATUS on the subscriber end. The application
can detect this fact by means of a com.rti.dds.infrastructure.Listener
(p. 1130) or a com.rti.dds.infrastructure.Condition (p. 464).
The following properties are defined on a QosPolicy.
RxO (p. 101) property
The QosPolicy objects that need to be set in a compatible manner between
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
102
Module Documentation
the publisher and subscriber end are indicated by the setting of the
RxO (p. 101) property:
RxO (p. 101) = YES indicates that the policy can be set both at
the publishing and subscribing ends and the values must be set in a
compatible manner. In this case the compatible values are explicitly
defined.
RxO (p. 101) = NO indicates that the policy can be set both at the
publishing and subscribing ends but the two settings are independent.
That is, all combinations of values are compatible.
RxO (p. 101) = N/A indicates that the policy can only be specified
at either the publishing or the subscribing end, but not at both ends.
So compatibility does not apply.
Changeable (p. 102) property
Determines whether a QosPolicy can be changed.
NO
(p. 102)
policy
can
only
be
specified
com.rti.dds.infrastructure.Entity (p. 931) creation time.
at
UNTIL ENABLE (p. 102) policy can only be changed before the
com.rti.dds.infrastructure.Entity (p. 931) is enabled.
YES (p. 102) policy can be changed at any time.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.42
103
Controls how a DataReader manages the lifecycle of the data that it has received.
Classes
class ReaderDataLifecycleQosPolicy
Controls how a DataReader manages the lifecycle of the data that it has
received.
Variables
static final QosPolicyId t
POLICY ID
READERDATALIFECYCLE QOS -
6.42.1
Detailed Description
Controls how a DataReader manages the lifecycle of the data that it has received.
6.42.2
Variable Documentation
6.42.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
104
Module Documentation
6.43
RECEIVER POOL
Classes
class ReceiverPoolQosPolicy
Configures threads used by RTI Connext to receive and process data from
transports (for example, UDP sockets).
Variables
static final QosPolicyId t RECEIVERPOOL QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.ReceiverPoolQosPolicy ( p. 1318)
6.43.1
for
Detailed Description
6.43.2
Variable Documentation
6.43.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.44 RELIABILITY
6.44
105
RELIABILITY
Classes
class ReliabilityQosPolicy
Indicates the level of reliability offered/requested by RTI Connext.
class ReliabilityQosPolicyAcknowledgmentModeKind
Kinds of acknowledgment.
class ReliabilityQosPolicyKind
Kinds of reliability.
Variables
static final QosPolicyId t RELIABILITY QOS POLICY ID
Identifier
( p. 1324).
6.44.1
for
com.rti.dds.infrastructure.ReliabilityQosPolicy
Detailed Description
6.44.2
Variable Documentation
6.44.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
106
Module Documentation
6.45
RESOURCE LIMITS
Controls the amount of physical memory allocated for DDS entities, if dynamic
allocations are allowed, and how they occur. Also controls memory usage among
different instance values for keyed topics.
Classes
class ResourceLimitsQosPolicy
Controls the amount of physical memory allocated for DDS entities, if dynamic allocations are allowed, and how they occur. Also controls memory
usage among different instance values for keyed topics.
Variables
static final QosPolicyId t RESOURCELIMITS QOS POLICY ID
Identifier for
( p. 1348).
com.rti.dds.infrastructure.ResourceLimitsQosPolicy
6.45.1
Detailed Description
Controls the amount of physical memory allocated for DDS entities, if dynamic
allocations are allowed, and how they occur. Also controls memory usage among
different instance values for keyed topics.
6.45.2
Variable Documentation
6.45.2.1
Identifier
(p. 1348).
6.45.2.2
for
com.rti.dds.infrastructure.ResourceLimitsQosPolicy
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.46
107
Return Codes
Classes
class RETCODE ALREADY DELETED
The object target of this operation has already been deleted.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
108
Module Documentation
class RETCODE UNSUPPORTED
Unsupported operation. Can only returned by operations that are unsupported.
6.46.1
Detailed Description
6.46.2
Any void operation that documents that it may throw an exception of type may
throw exactly com.rti.dds.infrastructure.RETCODE ERROR (p. 1356)
or
com.rti.dds.infrastructure.RETCODE ILLEGAL OPERATION
(p. 1357). Any such operation that takes one or more input parameters may
additionally throw the subclass com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355).
Any operation on an object created from any of the factories may additionally throw the subclass
com.rti.dds.infrastructure.RETCODE ALREADY DELETED
(p. 1354). Any operation that is stated as optional may additionally throw
the subclass com.rti.dds.infrastructure.RETCODE UNSUPPORTED
(p. 1365).
Thus, the standard return codes are:
com.rti.dds.infrastructure.RETCODE OK
com.rti.dds.infrastructure.RETCODE ERROR (p. 1356)
com.rti.dds.infrastructure.RETCODE ILLEGAL OPERATION
(p. 1357)
com.rti.dds.infrastructure.RETCODE ALREADY DELETED
(p. 1354)
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355)
com.rti.dds.infrastructure.RETCODE UNSUPPORTED
(p. 1365)
Operations that may throw any other exception type will state so explicitly.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.47
Classes
class SequenceNumber t
Type for sequence number representation.
6.47.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
109
110
Module Documentation
6.48
Status Kinds
Classes
class StatusKind
Type for status kinds.
Variables
static final int STATUS MASK NONE
No bits are set.
6.48.1
Detailed Description
111
An
application
is
notified
of
communication
status
by
means
of
the
com.rti.dds.infrastructure.Listener
(p. 1130)
or
the
com.rti.dds.infrastructure.WaitSet
(p. 1709)
/
The
com.rti.dds.infrastructure.Condition (p. 464) mechanism.
two mechanisms may be combined in the application (e.g.,
using
com.rti.dds.infrastructure.WaitSet
(p. 1709)
(s)
/
com.rti.dds.infrastructure.Condition (p. 464) (s) to access the data
and com.rti.dds.infrastructure.Listener (p. 1130) (s) to be warned
asynchronously of erroneous communication statuses).
It is likely that the application will choose one or the other mechanism for each
particular communication status (not both). However, if both mechanisms are
enabled, then the com.rti.dds.infrastructure.Listener (p. 1130) mechanism
is used first and then the com.rti.dds.infrastructure.WaitSet (p. 1709) objects are signalled.
The statuses may be classified into:
read communication statuses: i.e., those that are related to arrival of data,
namely
com.rti.dds.infrastructure.StatusKind.StatusKind.DATA ON READERS STATUS and com.rti.dds.infrastructure.StatusKind.StatusKind.DATA AVAILABLE STATUS.
plain communication statuses: i.e., all the others.
Read communication statuses are treated slightly differently than
the others because they dont change independently.
In other
words,
at least two changes will appear at the same time
(com.rti.dds.infrastructure.StatusKind.StatusKind.DATA ON READERS STATUS
and
com.rti.dds.infrastructure.StatusKind.StatusKind.DATA AVAILABLE STATUS) and even several of the last kind may be part of the
set. This grouping has to be communicated to the application.
For each plain communication status, there is a corresponding structure to hold
the status value. These values contain the information related to the change of
status, as well as information related to the statuses themselves (e.g., contains
cumulative counts).
6.48.2
Changes in Status
112
Module Documentation
6.48.2.1
For the plain communication status, the StatusChangedFlag flag is initially set to FALSE. It becomes TRUE whenever the plain communication status changes and it is reset to com.rti.dds.infrastructure.false
each time the application accesses the plain communication status
via the proper get <plain communication status>() operation on the
com.rti.dds.infrastructure.Entity (p. 931).
The communication status is also reset to FALSE whenever the associated listener operation is called as the listener implicitly accesses the status which is
passed as a parameter to the operation. The fact that the status is reset prior
to calling the listener means that if the application calls the get <plain communication status> from inside the listener it will see the status already reset.
An exception to this rule is when the associated listener is the nil listener. The
nil listener is treated as a NOOP and the act of calling the nil listener does
not reset the communication status.
For example, the value of the StatusChangedFlag associated with
the
com.rti.dds.infrastructure.StatusKind.StatusKind.REQUESTED DEADLINE MISSED STATUS
will
become
TRUE
each
time
new
deadline
occurs
(which
increases
the
com.rti.dds.subscription.RequestedDeadlineMissedStatus.total count (p. 1344) field).
The value changes to FALSE when
the
application
accesses
the
status
via
the
corresponding
com.rti.dds.subscription.DataReader.get requested deadline missed status (p. 499) method on the proper Entity
6.48.2.2
113
The arrival of the notification that an instance has been disposed by:
the
com.rti.dds.publication.DataWriter
(p. 557)
that owns it if OWNERSHIP (p. 87) QoS kind=
com.rti.dds.infrastructure.OwnershipQosPolicyKind.OwnershipQosPolicyKind.EXCLUSIVE OWNERSHIP QOS
or
by
any
com.rti.dds.publication.DataWriter
(p. 557)
if
OWNERSHIP
(p. 87)
QoS
kind=
com.rti.dds.infrastructure.OwnershipQosPolicyKind.OwnershipQosPolicyKind.SHARED OWNERSHIP QOS
The loss of liveliness of the com.rti.dds.publication.DataWriter
(p. 557) of an instance for which there is no other
com.rti.dds.publication.DataWriter (p. 557).
The arrival of the notification that an instance has been unregistered
by the only com.rti.dds.publication.DataWriter (p. 557) that is
known to be writing the instance.
Depending on the kind of StatusChangedFlag, the flag transitions to FALSE
again as follows:
The
com.rti.dds.infrastructure.StatusKind.StatusKind.DATA AVAILABLE STATUS StatusChangedFlag becomes FALSE when
either the corresponding listener operation (on data available) is called or
the read or take operation (or their variants) is called on the associated
com.rti.dds.subscription.DataReader (p. 487).
The
com.rti.dds.infrastructure.StatusKind.StatusKind.DATA ON READERS STATUS StatusChangedFlag becomes FALSE when any of
the following events occurs:
The corresponding listener operation (on data on readers) is called.
The on data available listener operation is called on any
com.rti.dds.subscription.DataReader (p. 487) belonging to
the com.rti.dds.subscription.Subscriber (p. 1476).
The read or take operation (or their variants) is called on any
com.rti.dds.subscription.DataReader (p. 487) belonging to the
com.rti.dds.subscription.Subscriber (p. 1476).
See also:
com.rti.dds.infrastructure.Listener (p. 1130)
com.rti.dds.infrastructure.WaitSet
com.rti.dds.infrastructure.Condition (p. 464)
(p. 1709),
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
114
Module Documentation
6.48.3
Variable Documentation
6.48.3.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.49
115
Classes
class SystemResourceLimitsQosPolicy
Configures
com.rti.dds.domain.DomainParticipant
( p. 654)independent resources used by RTI Connext. Mainly used to change
the maximum number of com.rti.dds.domain.DomainParticipant
( p. 654) entities that can be created within a single process (address space).
Variables
static final QosPolicyId t SYSTEMRESOURCELIMITS QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.SystemResourceLimitsQosPolicy
( p. 1523)
6.49.1
for
Detailed Description
6.49.2
Variable Documentation
6.49.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
116
Module Documentation
6.50
Thread Settings
Classes
class ThreadSettings t
The properties of a thread of execution.
class ThreadSettingsCpuRotationKind
Determines how com.rti.dds.infrastructure.ThreadSettings t.cpu list
( p. 1531) affects processor affinity for thread-related QoS policies that apply to multiple threads.
class ThreadSettingsKind
A collection of flags used to configure threads of execution.
Variables
static final int THREAD SETTINGS KIND MASK DEFAULT
The mask of default thread options.
6.50.1
Detailed Description
6.50.2
Variable Documentation
6.50.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.51
117
Filter that allows a com.rti.dds.subscription.DataReader (p. 487) to specify that it is interested only in (potentially) a subset of the values of the data.
Classes
class TimeBasedFilterQosPolicy
Filter that allows a com.rti.dds.subscription.DataReader ( p. 487) to
specify that it is interested only in (potentially) a subset of the values of
the data.
Variables
static final QosPolicyId t TIMEBASEDFILTER QOS POLICY ID
Identifier for com.rti.dds.infrastructure.TimeBasedFilterQosPolicy
( p. 1541).
6.51.1
Detailed Description
Filter that allows a com.rti.dds.subscription.DataReader (p. 487) to specify that it is interested only in (potentially) a subset of the values of the data.
6.51.2
Variable Documentation
6.51.2.1
Identifier
(p. 1541).
for
com.rti.dds.infrastructure.TimeBasedFilterQosPolicy
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
118
Module Documentation
6.52
TOPIC DATA
Classes
class TopicDataQosPolicy
Attaches a buffer of opaque data that is distributed by means of Built-in
Topics ( p. 157) during discovery.
Variables
static final QosPolicyId t TOPICDATA QOS POLICY ID
Identifier
( p. 1559).
6.52.1
for
com.rti.dds.infrastructure.TopicDataQosPolicy
Detailed Description
6.52.2
Variable Documentation
6.52.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.53
119
TRANSPORT BUILTIN
Classes
class TransportBuiltinKind
Built-in transport kind.
class TransportBuiltinQosPolicy
Specifies which built-in transports are used.
Variables
static final QosPolicyId t TRANSPORTBUILTIN QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.TransportBuiltinQosPolicy ( p. 1580)
for
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
120
Module Documentation
6.53.1
Detailed Description
6.53.2
Variable Documentation
6.53.2.1
6.53.2.2
6.53.2.3
6.53.2.4
6.53.2.5
None of the built-in transports will be registered automatically when the com.rti.dds.domain.DomainParticipant (p. 654)
is enabled.
The user must explictly register transports using
com.rti.ndds.transport.TransportSupport.register transport.
See also:
com.rti.dds.infrastructure.TransportBuiltinKindMask
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
121
6.53.2.7
All the available built-in transports are registered automatically when the
com.rti.dds.domain.DomainParticipant (p. 654) is enabled.
See also:
com.rti.dds.infrastructure.TransportBuiltinKindMask
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
122
Module Documentation
6.54
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.55
123
TRANSPORT MULTICAST
Classes
class TransportMulticastMappingQosPolicy
Specifies
the
multicast
address
on
which
a
com.rti.dds.subscription.DataReader ( p. 487) wants to receive its
data. It can also specify a port number as well as a subset of the available (at the com.rti.dds.domain.DomainParticipant ( p. 654) level)
transports with which to receive the multicast data.
class TransportMulticastQosPolicy
Specifies
the
multicast
address
on
which
a
com.rti.dds.subscription.DataReader ( p. 487) wants to receive its
data. It can also specify a port number as well as a subset of the available (at the com.rti.dds.domain.DomainParticipant ( p. 654) level)
transports with which to receive the multicast data.
class TransportMulticastQosPolicyKind
Transport Multicast Policy Kind.
Variables
static final QosPolicyId t
POLICY ID
TRANSPORTMULTICAST QOS -
<<eXtension>>
(p. 278)
Identifier
for
com.rti.dds.infrastructure.TransportMulticastQosPolicy ( p. 1590)
static
final
TransportMulticastQosPolicyKind
TRANSPORT MULTICAST QOS
AUTOMATIC -
static final TransportMulticastQosPolicyKind UNICAST ONLY TRANSPORT MULTICAST QOS = new TransportMulticastQosPolicyKind(UNICAST ONLY TRANSPORT MULTICAST QOS,
1)
Transport Multicast Policy Kind.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
124
Module Documentation
6.55.1
Detailed Description
6.55.2
Variable Documentation
6.55.2.1
final TransportMulticastQosPolicyKind
AUTOMATIC TRANSPORT MULTICAST QOS
[static, inherited]
Initial value:
new TransportMulticastQosPolicyKind(
"AUTOMATIC_TRANSPORT_MULTICAST_QOS", 0)
6.55.2.3
final TransportMulticastQosPolicyKind
UNICAST ONLY TRANSPORT MULTICAST QOS =
new TransportMulticastQosPolicyKind(UNICAST ONLY TRANSPORT MULTICAST QOS, 1) [static,
inherited]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
125
126
Module Documentation
6.56
TRANSPORT PRIORITY
This QoS policy allows the application to take advantage of transports that are
capable of sending messages with different priorities.
Classes
class TransportPriorityQosPolicy
This QoS policy allows the application to take advantage of transports that
are capable of sending messages with different priorities.
Variables
static
final
POLICY ID
QosPolicyId t
TRANSPORTPRIORITY QOS -
6.56.1
Detailed Description
This QoS policy allows the application to take advantage of transports that are
capable of sending messages with different priorities.
6.56.2
Variable Documentation
6.56.2.1
Identifier for
(p. 1598).
com.rti.dds.infrastructure.TransportPriorityQosPolicy
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.57
127
TRANSPORT SELECTION
Specifies
the
physical
transports
<<eXtension>>
( p. 278)
that
a
com.rti.dds.publication.DataWriter
(p. 557)
or
com.rti.dds.subscription.DataReader (p. 487) may use to send or receive data.
Classes
class TransportSelectionQosPolicy
Specifies the physical transports a com.rti.dds.publication.DataWriter
( p. 557) or com.rti.dds.subscription.DataReader ( p. 487) may use to
send or receive data.
Variables
static final QosPolicyId t
POLICY ID
TRANSPORTSELECTION QOS -
<<eXtension>>
(p. 278)
Identifier
for
com.rti.dds.infrastructure.TransportSelectionQosPolicy ( p. 1600)
6.57.1
Detailed Description
<<eXtension>>
( p. 278)
Specifies
the
physical
transports
that
a
com.rti.dds.publication.DataWriter
(p. 557)
or
com.rti.dds.subscription.DataReader (p. 487) may use to send or receive data.
6.57.2
Variable Documentation
6.57.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
128
Module Documentation
6.58
TRANSPORT UNICAST
Classes
class TransportUnicastQosPolicy
Specifies a subset of transports and a port number that can be used by an
Entity ( p. 931) to receive data.
Variables
static
final
POLICY ID
QosPolicyId t
TRANSPORTUNICAST QOS -
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.TransportUnicastQosPolicy ( p. 1605)
6.58.1
for
Detailed Description
6.58.2
Variable Documentation
6.58.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.59
129
Defines the rules for determining whether the type used to publish a given topic
is consistent with that used to subscribe to it.
Classes
class TypeConsistencyEnforcementQosPolicy
Defines the rules for determining whether the type used to publish a given
topic ( p. 359) is consistent with that used to subscribe to it.
class TypeConsistencyKind
Kinds of type consistency.
6.59.1
Detailed Description
Defines the rules for determining whether the type used to publish a given topic
is consistent with that used to subscribe to it.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
130
Module Documentation
6.60
TYPESUPPORT
Classes
class TypeSupportQosPolicy
Allows you to attach application-specific values to a DataWriter or
DataReader that are passed to the serialization or deserialization routine
of the associated data type.
Variables
static final QosPolicyId t TYPESUPPORT QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.TypeSupportQosPolicy ( p. 1666)
for
6.60.1
for
Detailed Description
6.60.2
Variable Documentation
6.60.2.1
6.60 TYPESUPPORT
6.60.2.2
131
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
132
Module Documentation
6.61
USER DATA
Classes
class UserDataQosPolicy
Attaches a buffer of opaque data that is distributed by means of Built-in
Topics ( p. 157) during discovery.
Variables
static final QosPolicyId t USERDATA QOS POLICY ID
Identifier for com.rti.dds.infrastructure.UserDataQosPolicy ( p. 1694).
6.61.1
Detailed Description
6.61.2
Variable Documentation
6.61.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.62
133
Exception Codes
Classes
class BAD PARAM
The exception BadKind ( p. 409) is thrown when an inappropriate operation
is invoked on a TypeCode object.
class BadKind
The exception BadKind ( p. 409) is thrown when an inappropriate operation
is invoked on a TypeCode object.
class BadMemberId
The specified com.rti.dds.typecode.TypeCode ( p. 1611) member ID is invalid.
class BadMemberName
The specified com.rti.dds.typecode.TypeCode ( p. 1611) member name is
invalid.
class Bounds
A user exception thrown when a parameter is not within the legal bounds.
class SystemException
System exception.
class UserException
User exception.
6.62.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
134
Module Documentation
6.63
WIRE PROTOCOL
<<eXtension>> ( p. 278) Specifies the wire protocol related attributes for the
com.rti.dds.domain.DomainParticipant (p. 654).
Classes
class RtpsReservedPortKind
RTPS reserved port kind, used to identify the types of ports that can be reserved on domain ( p. 328) participant enable.
class RtpsWellKnownPorts t
RTPS well-known port mapping configuration.
class WireProtocolQosPolicy
Specifies
the
wire-protocol-related
attributes
com.rti.dds.domain.DomainParticipant ( p. 654).
for
the
class WireProtocolQosPolicyAutoKind
Kind of auto mechanism used to calculate the GUID prefix.
Variables
static final QosPolicyId t WIREPROTOCOL QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.WireProtocolQosPolicy ( p. 1723)
for
static final int MASK DEFAULT = BUILTIN UNICAST | BUILTIN MULTICAST | USER UNICAST
The default value of com.rti.dds.infrastructure.WireProtocolQosPolicy.rtps reserved port mask ( p. 1731).
static
final
RtpsWellKnownPorts t
RTI BACKWARDS COMPATIBLE RTPS WELL KNOWN PORTS
Assign to use well-known port mappings which are compatible with previous
versions of the RTI Connext middleware.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
135
INTEROPERABLE RTPS -
Assign to use well-known port mappings which are compliant with OMGs
DDS Interoperability Wire Protocol.
static final WireProtocolQosPolicyAutoKind RTPS AUTO ID FROM IP = new WireProtocolQosPolicyAutoKind(RTPS AUTO ID FROM IP, 0)
Kind of auto mechanism used to calculate the GUID prefix.
static final WireProtocolQosPolicyAutoKind RTPS AUTO ID FROM MAC = new WireProtocolQosPolicyAutoKind(RTPS AUTO ID FROM MAC, 1)
Kind of auto mechanism used to calculate the GUID prefix.
6.63.1
Detailed Description
<<eXtension>> ( p. 278) Specifies the wire protocol related attributes for the
com.rti.dds.domain.DomainParticipant (p. 654).
6.63.2
Variable Documentation
6.63.2.1
6.63.2.2
136
Module Documentation
This setting will avoid reserving the usertraffic multicast port, which is not
actually used unless there are DataReaders that enable multicast but fail to
specify a port.
Automatic participant ID selection will be based on finding a participant index
with both the discovery (metatraffic) unicast port and usertraffic unicast port
available.
See also:
com.rti.dds.infrastructure.RtpsReservedPortKindMask
6.63.2.3
6.63.2.4
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
137
final RtpsWellKnownPorts t RTI BACKWARDS COMPATIBLE RTPS WELL KNOWN PORTS [static,
inherited]
Assign to use well-known port mappings which are compatible with previous
versions of the RTI Connext middleware.
Assign com.rti.dds.infrastructure.WireProtocolQosPolicy.rtps well known ports (p. 1729) to this value to remain compatible with previous
versions of the RTI Connext middleware that used fixed port mappings.
values
for
The
following
are
the
rtps well known ports
com.rti.dds.infrastructure.RtpsWellKnownPorts t.RTI BACKWARDS COMPATIBLE RTPS WELL KNOWN PORTS
(p. 137):
port base = 7400
domain id gain = 10
participant id gain = 1000
builtin multicast port offset = 2
builtin unicast port offset = 0
user multicast port offset = 1
user unicast port offset = 3
These settings are not compliant with OMGs DDS Interoperability Wire Protocol.
To comply with the specification,
please
use
com.rti.dds.infrastructure.RtpsWellKnownPorts t.INTEROPERABLE RTPS WELL KNOWN PORTS (p. 137).
See also:
com.rti.dds.infrastructure.WireProtocolQosPolicy.rtps well known ports (p. 1729)
com.rti.dds.infrastructure.RtpsWellKnownPorts t.INTEROPERABLE RTPS WELL KNOWN PORTS (p. 137)
6.63.2.6
Assign to use well-known port mappings which are compliant with OMGs DDS
Interoperability Wire Protocol.
Assign com.rti.dds.infrastructure.WireProtocolQosPolicy.rtps well known ports (p. 1729) to this value to use well-known port mappings which
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
138
Module Documentation
6.63.2.7
final WireProtocolQosPolicyAutoKind
RTPS AUTO ID FROM IP = new
WireProtocolQosPolicyAutoKind(RTPS AUTO ID FROM IP, 0) [static,
inherited]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
final WireProtocolQosPolicyAutoKind
RTPS AUTO ID FROM MAC = new
WireProtocolQosPolicyAutoKind(RTPS AUTO ID FROM MAC, 1) [static,
inherited]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
139
140
Module Documentation
6.64
Controls how a DataWriter handles the lifecycle of the instances (keys) that it
is registered to manage.
Classes
class WriterDataLifecycleQosPolicy
Controls how a com.rti.dds.publication.DataWriter ( p. 557) handles the
lifecycle of the instances (keys) that it is registered to manage.
Variables
static final QosPolicyId t
POLICY ID
WRITERDATALIFECYCLE QOS -
6.64.1
Detailed Description
Controls how a DataWriter handles the lifecycle of the instances (keys) that it
is registered to manage.
6.64.2
Variable Documentation
6.64.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.65
141
Classes
class KeyedString
Keyed string built-in type.
class KeyedStringDataReader
<<interface>>
(p. 279)
Instantiates
DataReader
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString >.
<
class KeyedStringDataWriter
<<interface>>
(p. 279)
Instantiates
DataWriter
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString >.
<
class KeyedStringSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString > .
class KeyedStringTypeSupport
<<interface>> (p. 279) Keyed string type support.
6.65.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
142
Module Documentation
6.66
Classes
class Bytes
Built-in type consisting of a variable-length array of opaque bytes.
class BytesDataReader
<<interface>>
(p. 279)
Instantiates
DataReader
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes >.
<
class BytesDataWriter
<<interface>>
(p. 279)
Instantiates
DataWriter
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes >.
<
class BytesSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes > .
class BytesTypeSupport
<<interface>> (p. 279) com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes
type support.
6.66.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.67
143
Classes
class KeyedBytes
Built-in type consisting of a variable-length array of opaque bytes and a string
that is the key.
class KeyedBytesDataReader
<<interface>>
(p. 279)
Instantiates
DataReader
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes >.
<
class KeyedBytesDataWriter
<<interface>>
(p. 279)
Instantiates
DataWriter
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes >.
<
class KeyedBytesSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes >.
class KeyedBytesTypeSupport
<<interface>> (p. 279) com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes
type support.
6.67.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
144
Module Documentation
6.68
Sequence Support
Modules
Built-in Sequences
Defines sequences of primitive data type.
Classes
interface Sequence
<<interface>> (p. 279) <<generic>> (p. 279) A type-safe, ordered collection of elements. The type of these elements is referred to in this documentation as com.rti.ndds.example.Foo (p. 977).
class FooSeq
<<interface>> (p. 279) <<generic>> (p. 279) A type-safe, ordered collection of elements. The type of these elements is referred to in this documentation as com.rti.ndds.example.Foo (p. 977).
6.68.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.69
145
Clock Selection
APIs related to clock selection. RTI Connext uses clocks to measure time and
generate timestamps.
The middleware uses two clocks, an internal clock and an external clock. The
internal clock is used to measure time and handles all timing in the middleware.
The external clock is used solely to generate timestamps, such as the source
timestamp and the reception timestamp, in addition to providing the time given
by com.rti.dds.domain.DomainParticipant.get current time (p. 723).
6.69.1
Available Clocks
Two clock implementations are generally available, the monotonic clock and the
realtime clock.
The monotonic clock provides times that are monotonic from a clock that is not
adjustable. This clock is useful to use in order to not be subject to changes in
the system or realtime clock, which may be adjusted by the user or via time
synchronization protocols. However, this time generally starts from an arbitrary
point in time, such as system startup. Note that this clock is not available for
all architectures. Please see the Platform Notes for the architectures on which
it is supported. For the purposes of clock selection, this clock can be referenced
by the name monotonic.
The realtime clock provides the realtime of the system. This clock may generally
be monotonic but may not be guaranteed to be so. It is adjustable and may be
subject to small and large changes in time. The time obtained from this clock
is generally a meaningful time in that it is the amount of time from a known
epoch. For the purposes of clock selection, this clock can be referenced by the
names realtime or system.
6.69.2
By default, both the internal and external clocks use the real-time clock. If you
want your application to be robust to changes in the system time, you may use
the monotonic clock as the internal clock, and leave the system clock as the
external clock. Note, however, that this may slightly diminish performance in
that both the send and receive paths may need to obtain times from both clocks.
Since the monotonic clock is not available on all architectures, you may want
to specify monotonic,realtime for the internal clock (see the table below). By
doing so, the middleware will attempt to use the monotonic clock if available,
and will fall back to the realtime clock if the monotonic clock is not available.
If you want your application to be robust to changes in the system time, you
are not relying on source timestamps, and you want to avoid obtaining times
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
146
Module Documentation
from both clocks, you may use the monotonic clock for both the internal and
external clocks.
6.69.3
To configure the clock selection, use the PROPERTY (p. 92) QoS policy associated with the com.rti.dds.domain.DomainParticipant (p. 654).
See also:
com.rti.dds.infrastructure.PropertyQosPolicy (p. 1236)
The following table lists the supported clock selection properties.
Property
dds.clock.external clock
dds.clock.internal clock
Description
Comma-delimited list of clocks to
use for the external clock, in the
order of preference. Valid clock
names are realtime, system,
and monotonic.
Default: realtime
Comma-delimited list of clocks to
use for the internal clock, in the
order of preference. Valid clock
names are realtime, system,
and monotonic.
Default: realtime
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.70
147
Domain Module
Modules
DomainParticipantFactory
com.rti.dds.domain.DomainParticipantFactory ( p. 742) entity and associated elements
DomainParticipants
com.rti.dds.domain.DomainParticipant ( p. 654) entity and associated
elements
Built-in Topics
Built-in objects created by RTI Connext but accessible to the application.
Variables
static DomainParticipantFactory TheParticipantFactory = create singletonI()
Can be used as an alias for the singleton factory returned by the operation com.rti.dds.domain.DomainParticipantFactory.get instance()
( p. 747).
6.70.1
Detailed Description
148
Module Documentation
6.70.2
Variable Documentation
6.70.2.1
DomainParticipantFactory TheParticipantFactory =
create singletonI() [static, inherited]
Can be used as an alias for the singleton factory returned by the operation
com.rti.dds.domain.DomainParticipantFactory.get instance() (p. 747).
See also:
com.rti.dds.domain.DomainParticipantFactory.get instance
(p. 747)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.71 DomainParticipantFactory
6.71
149
DomainParticipantFactory
Classes
class DomainParticipantFactory
<<singleton>> (p. 279) <<interface>> (p. 279) Allows creation and destruction of com.rti.dds.domain.DomainParticipant ( p. 654) objects.
class DomainParticipantFactoryQos
QoS policies supported by a com.rti.dds.domain.DomainParticipantFactory
( p. 742).
Variables
static
final
DEFAULT
DomainParticipantQos
PARTICIPANT QOS -
6.71.1
Detailed Description
6.71.2
Variable Documentation
6.71.2.1
Initial value:
new DomainParticipantQos()
Special value for creating a DomainParticipant (p. 654) with default QoS.
When used in com.rti.dds.domain.DomainParticipantFactory.create participant (p. 748), this special value is used to indicate that the
com.rti.dds.domain.DomainParticipant (p. 654) should be created with
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
150
Module Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.72 DomainParticipants
6.72
151
DomainParticipants
Classes
interface DomainParticipant
<<interface>>
(p. 279)
Container
for
com.rti.dds.infrastructure.DomainEntity ( p. 653) objects.
all
class DomainParticipantAdapter
<<eXtension>> (p. 278) A listener adapter in the spirit of the Java AWT
listener adapters. (The Adapter provides empty implementations for the listener methods)
interface DomainParticipantListener
<<interface>> (p. 279) Listener for participant status.
class DomainParticipantQos
QoS policies supported by a com.rti.dds.domain.DomainParticipant
( p. 654) entity.
Variables
static final TopicQos TOPIC QOS DEFAULT = new TopicQos()
Special value for creating a com.rti.dds.topic.Topic ( p. 1545) with default
QoS.
FLOW CONTROLLER -
<<eXtension>>
(p. 278)
Special
value
for
creating
a
com.rti.dds.publication.FlowController ( p. 964) with default property.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
152
Module Documentation
6.72.1
Detailed Description
6.72.2
Variable Documentation
6.72.2.1
6.72 DomainParticipants
153
See also:
com.rti.dds.domain.DomainParticipant.create topic (p. 697)
com.rti.dds.domain.DomainParticipant.set default topic qos
(p. 667)
com.rti.dds.topic.Topic.set qos (p. 1547)
6.72.2.2
6.72.2.3
Initial value:
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
154
Module Documentation
new SubscriberQos()
6.72.2.4
Initial value:
new FlowControllerProperty_t()
Special
value
for
creating
<<eXtension>>
( p. 278)
com.rti.dds.publication.FlowController (p. 964) with default property.
When
used
in
com.rti.dds.domain.DomainParticipant.create flowcontroller (p. 681), this special value is used to indicate that the
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.72 DomainParticipants
155
6.72.2.5
<<eXtension>> ( p. 278) The name of the built-in SQL filter that can be
used with ContentFilteredTopics and MultiChannel DataWriters.
See also:
Queries and Filters Syntax (p. 286)
6.72.2.6
156
Module Documentation
The StringMatch Filter is a subset of the SQL filter; it only supports the
MATCH relational operator on a single string field.
See also:
Queries and Filters Syntax (p. 286)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.73
157
Built-in Topics
Packages
package com.rti.dds.domain.builtin
Builtin topic ( p. 359) for accessing information about the DomainParticipants discovered by RTI Connext.
package com.rti.dds.publication.builtin
Builtin topic ( p. 359) for accessing information about the Publications discovered by RTI Connext.
package com.rti.dds.subscription.builtin
Builtin topic ( p. 359) for accessing information about the Subscriptions discovered by RTI Connext.
package com.rti.dds.topic.builtin
Builtin topic ( p. 359) for accessing information about the Topics discovered
by RTI Connext.
Classes
class ContentFilterProperty t
<<eXtension>> (p. 278) Type used to provide all the required information
to enable content filtering.
class Locator t
<<eXtension>> (p. 278) Type used to represent the addressing information
needed to send a message to an RTPS Endpoint using one of the supported
transports.
class LocatorSeq
Declares IDL sequence < com.rti.dds.infrastructure.Locator t ( p. 1150)
>.
class ProductVersion t
<<eXtension>> (p. 278) Type used to represent the current version of RTI
Connext.
class ProtocolVersion t
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
158
Module Documentation
<<eXtension>> (p. 278) Type used to represent the version of the RTPS
protocol.
class VendorId t
<<eXtension>> (p. 278) Type used to represent the vendor of the service
implementing the RTPS protocol.
class BuiltinTopicKey t
The key type of the built-in topic ( p. 359) types.
6.73.1
Detailed Description
159
The
built-in
com.rti.dds.subscription.DataReader
(p. 487)
will
not provide data pertaining to entities created from the same
com.rti.dds.domain.DomainParticipant (p. 654) under the assumption that such entities are already known to the application that created
them.
Refer to builtin.ParticipantBuiltinTopicData, builtin.TopicBuiltinTopicData,
builtin.SubscriptionBuiltinTopicData and builtin.PublicationBuiltinTopicData
for a description of all the built-in topics and their contents.
The QoS of the built-in com.rti.dds.subscription.Subscriber (p. 1476) and
com.rti.dds.subscription.DataReader (p. 487) objects is given by the following table:
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
160
Module Documentation
QoS
Value
0-length sequence
com.rti.dds.infrastructure.UserDataQosPolicy
(p. 1694)
0-length sequence
com.rti.dds.infrastructure.TopicDataQosPolicy
(p. 1559)
0-length sequence
com.rti.dds.infrastructure.GroupDataQosPolicy
(p. 1039)
com.rti.dds.infrastructure.DurabilityQosPolicy
com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQ
(p. 802)
LOCAL DURABILITY QOS
Does not apply as
com.rti.dds.infrastructure.DurabilityQosPolicyKind
com.rti.dds.infrastructure.DurabilityServiceQosPolicy
(p. 807) is
(p. 810)
com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQ
LOCAL DURABILITY QOS
access scope =
com.rti.dds.infrastructure.PresentationQosPolicy
com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeK
(p. 1221)
PRESENTATION QOS
coherent access =
com.rti.dds.infrastructure.false
ordered access =
com.rti.dds.infrastructure.false
Period = infinite
com.rti.dds.infrastructure.DeadlineQosPolicy
(p. 628)
duration = 0
com.rti.dds.infrastructure.LatencyBudgetQosPolicy
(p. 1124)
com.rti.dds.infrastructure.OwnershipQosPolicy
com.rti.dds.infrastructure.OwnershipQosPolicyKind.Ownership
(p. 1199)
OWNERSHIP QOS
value = 0
com.rti.dds.infrastructure.OwnershipStrengthQosPolicy
(p. 1209)
kind =
com.rti.dds.infrastructure.LivelinessQosPolicy
com.rti.dds.infrastructure.LivelinessQosPolicyKind.LivelinessQo
(p. 1140)
LIVELINESS QOS lease duration =
0
minimum separation = 0
com.rti.dds.infrastructure.TimeBasedFilterQosPolicy
(p. 1541)
0-length sequence
com.rti.dds.infrastructure.PartitionQosPolicy
(p. 1217)
Generated on Mon Aug 13 09:02:20 2012
for RTI
kind
= Connext Java API by Doxygen
com.rti.dds.infrastructure.ReliabilityQosPolicy
com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQ
(p. 1324)
RELIABILITY QOS
max blocking time = 100
milliseconds
com.rti.dds.infrastructure.DestinationOrderQosPolicy
com.rti.dds.infrastructure.DestinationOrderQosPolicyKind.Des
(p. 631)
RECEPTION TIMESTAMP -
6.74
161
Topic Module
Contains
the
com.rti.dds.topic.Topic
(p. 1545),
com.rti.dds.topic.ContentFilteredTopic
(p. 471),
and
com.rti.dds.topic.MultiTopic
(p. 1190)
classes,
the
com.rti.dds.topic.TopicListener (p. 1564) interface, and more generally, all that is needed by an application to define com.rti.dds.topic.Topic
(p. 1545) objects and attach QoS policies to them.
Modules
Topics
com.rti.dds.topic.Topic ( p. 1545) entity and associated elements
Built-in Types
<<eXtension>> (p. 278) RTI Connext provides a set of very simple data
types for you to use with the topics in your application.
Dynamic Data
<<eXtension>> (p. 278) The Dynamic Data API provides a way to interact with arbitrarily complex data types at runtime without the need for code
generation.
6.74.1
Detailed Description
Contains
the
com.rti.dds.topic.Topic
(p. 1545),
com.rti.dds.topic.ContentFilteredTopic
(p. 471),
and
com.rti.dds.topic.MultiTopic
(p. 1190)
classes,
the
com.rti.dds.topic.TopicListener (p. 1564) interface, and more generally, all that is needed by an application to define com.rti.dds.topic.Topic
(p. 1545) objects and attach QoS policies to them.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
162
Module Documentation
6.75
Topics
Classes
interface ContentFilter
<<interface>> (p. 279) Interface to be used by a custom filter of a
com.rti.dds.topic.ContentFilteredTopic ( p. 471)
interface ContentFilteredTopic
<<interface>>
(p. 279)
Specialization
of
com.rti.dds.topic.TopicDescription ( p. 1561) that allows for contentbased subscriptions.
class InconsistentTopicStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.INCONSISTENT TOPIC STATUS
interface MultiTopic
[Not supported (optional)] <<interface>> (p. 279) A specialization
of com.rti.dds.topic.TopicDescription ( p. 1561) that allows subscriptions
that combine/filter/rearrange data coming from several topics.
interface Topic
<<interface>> (p. 279) The most basic description of the data to be published and subscribed.
class TopicAdapter
<<eXtension>> (p. 278) A listener adapter in the spirit of the Java AWT
listener adapters. (The Adapter provides empty implementations for the listener methods)
interface TopicDescription
com.rti.dds.topic.Topic ( p. 1545) entity and associated elements
interface TopicListener
<<interface>> (p. 279) com.rti.dds.infrastructure.Listener ( p. 1130)
for com.rti.dds.topic.Topic ( p. 1545) entities.
class TopicQos
QoS policies supported by a com.rti.dds.topic.Topic ( p. 1545) entity.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.75 Topics
6.75.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
163
164
Module Documentation
6.76
Classes
class InstanceHandle t
Type definition for an instance handle.
class InstanceHandleSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.infrastructure.InstanceHandle t ( p. 1055) > .
interface TypeSupport
<<interface>> (p. 279) An abstract marker interface that has to be specialized for each concrete user data type that will be used by the application.
class Foo
A representative user-defined data type.
class FooTypeSupport
<<interface>> (p. 279) <<generic>> (p. 279) User data type specific interface.
6.76.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.77
165
Classes
class EnumMember
A description of a member of an enumeration.
class ExtensibilityKind
Type to indicate the extensibility of a type.
class StructMember
A description of a member of a struct.
class TCKind
Enumeration type for com.rti.dds.typecode.TypeCode ( p. 1611) kinds.
class TypeCode
The definition of a particular data type, which you can use to inspect the
name, members, and other properties of types generated with rtiddsgen
( p. 298) or to modify types you define yourself at runtime.
class TypeCodeFactory
A singleton factory for creating, copying, and deleting data type definitions
dynamically.
class UnionMember
A description of a member of a union.
class ValueMember
A description of a member of a value type.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
166
Module Documentation
class VM ABSTRACT
Constant used to indicate that a value type has the abstract modifier.
class VM CUSTOM
Constant used to indicate that a value type has the custom modifier.
class VM NONE
Constant used to indicate that a value type has no modifiers.
class VM TRUNCATABLE
Constant used to indicate that a value type has the truncatable modifier.
Variables
static final ExtensibilityKind FINAL EXTENSIBILITY
Specifies that a type has FINAL extensibility.
6.77.1
Detailed Description
167
6.77.2
When generating types with rtiddsgen (p. 298), type codes are enabled
by default. (The -notypecode option can be used to disable generation of
com.rti.dds.typecode.TypeCode (p. 1611) information.) For these types,
a com.rti.dds.typecode.TypeCode (p. 1611) may be accessed via the
FooTypeCode.VALUE member.
This
API
also
includes
support
for
dynamic
creation
of
values,
typically
com.rti.dds.typecode.TypeCode
(p. 1611)
for use with the Dynamic Data (p. 175) API. You can create
a
com.rti.dds.typecode.TypeCode
(p. 1611)
using
the
You will
com.rti.dds.typecode.TypeCodeFactory (p. 1647) class.
construct the com.rti.dds.typecode.TypeCode (p. 1611) recursively, from
the outside in: start with the type codes for primitive types, then compose
them into complex types like arrays, structures, and so on. You will find the
following methods helpful:
com.rti.dds.typecode.TypeCodeFactory.get primitive tc
(p. 1660), which provides the com.rti.dds.typecode.TypeCode
(p. 1611)
instances
corresponding
to
the
primitive
types
(e.g.
com.rti.dds.typecode.TCKind.TK LONG (p. 1527),
com.rti.dds.typecode.TCKind.TK SHORT (p. 1527),
and so
on).
com.rti.dds.typecode.TypeCodeFactory.create string tc (p. 1657)
and
com.rti.dds.typecode.TypeCodeFactory.create wstring tc (p. 1658) create a com.rti.dds.typecode.TypeCode (p. 1611)
representing a text string with a certain bound (i.e. maximum length).
com.rti.dds.typecode.TypeCodeFactory.create array tc (p. 1659)
and com.rti.dds.typecode.TypeCodeFactory.create sequence tc
(p. 1658) create a com.rti.dds.typecode.TypeCode (p. 1611) for a
collection based on the com.rti.dds.typecode.TypeCode (p. 1611) for
its elements.
com.rti.dds.typecode.TypeCodeFactory.create struct tc
(p. 1651), com.rti.dds.typecode.TypeCodeFactory.create value tc
(p. 1652), and com.rti.dds.typecode.TypeCodeFactory.create sparse tc (p. 1653) create a com.rti.dds.typecode.TypeCode
(p. 1611) for a structured type.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
168
Module Documentation
6.77.3
6.77.4
Variable Documentation
6.77.4.1
169
6.77.4.2
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
170
Module Documentation
6.78
Built-in Types
Modules
KeyedString Built-in Type
Built-in type consisting of a single character string.
6.78.1
Detailed Description
171
6.78.2
When a sample is written, the DataWriter serializes it and stores the result in
a buffer obtained from a pool of preallocated buffers. In the same way, when
a sample is received, the DataReader deserializes it and stores the result in a
sample coming from a pool of preallocated samples.
For builtin types, the maximum size of the buffers/samples and depends on the
nature of the application using the builtin type.
You can configure the maximum size of the builtin types
on
a
per-DataWriter
and
per-DataReader
basis
using
the
com.rti.dds.infrastructure.PropertyQosPolicy (p. 1236) in DataWriters,
DataReaders or Participants.
The following table lists the supported builtin type properties to configure memory allocation. When the properties are defined in the DomainParticipant, they
are applicable to all DataWriters and DataReaders belonging to the DomainParticipant unless they are overwrittem in the DataWriters and DataReaders.
The previous properties must be set consistently with respect to the corresponding .max size properties that set the maximum size of the builtin types in the
typecode.
6.78.3
The typecodes associated with the builtin types are generated from the following
IDL type definitions:
module DDS {
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
172
Module Documentation
struct String {
string value;
};
struct KeyedString {
string key;
string value;
};
struct Octets {
sequence<octet> value;
};
struct KeyedOctets {
string key;
sequence<octet> value;
};
};
The maximum size of the strings and sequences that will be included in the type
code definitions can be configured on a per-DomainParticipant-basis by using
the properties in following table.
For more information about the built-in types, including how to control memory usage and maximum lengths, please see chapter 3, Data Types and Data
Samples, in the Users Manual.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
173
Description
Maximum size of the strings
published by the
com.rti.dds.type.builtin.StringDataWriter
(p. 1465) or received the
com.rti.dds.type.builtin.StringDataReader
(p. 1462) (includes the
NULL-terminated character).
Default:
dds.builtin type.string.max size if
defined. Otherwise, 1024.
Maximum size of the keys used by
the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataWriter
or
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataReader
(includes the NULL-terminated
character).
Default: dds.builtin type.keyed string.max key size if defined.
Otherwise, 1024.
Maximum size of the strings
published by the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataWriter
or received by the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataReader
(includes the NULL-terminated
character).
Default: dds.builtin type.keyed string.max size if defined.
Otherwise, 1024.
Maximum size of the octet
sequences published the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.BytesDataWriter
or received by the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.BytesDataReader.
Default:
dds.builtin type.octets.max size if
defined. Otherwise, 2048.
Maximum size of the key published by the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataWriter
or received by the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataReader
(includes the NULL-terminated
character).
Default: dds.builtin type.keyed size
if by
defined.
for octets.max
RTI Connextkey
Java
API
Doxygen
Otherwise, 1024.
Maximum size of the octets
sequences published by a
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataWriter
or received by a
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataReader.
Default: dds.builtin type.keyed -
174
Module Documentation
Property
dds.builtin type.string.max size
Description
Maximum size of the strings
published by the StringDataWriters
and received by the
StringDataReaders belonging to a
DomainParticipant (includes the
NULL-terminated character).
Default: 1024.
Maximum size of the keys used by
the KeyedStringDataWriters and
KeyedStringDataReaders belonging
to a DomainParticipant (includes
the NULL-terminated character).
Default: 1024.
Maximum size of the strings
published by the
KeyedStringDataWriters and
received by the
KeyedStringDataReaders belonging
to a DomainParticipant using the
builtin type (includes the
NULL-terminated character).
Default: 1024
Maximum size of the octet
sequences published by the
OctetsDataWriters and received by
the OctetsDataReader belonging to
a DomainParticipant.
Default: 2048
Maximum size of the keys used by
the KeyedOctetsStringDataWriters
and KeyedOctetsStringDataReaders
belonging to a DomainParticipant
(includes the NULL-terminated
character).
Default: 1024.
Maximum size of the octet
sequences published by the
KeyedOctetsDataWriters and
received by the
KeyedOctetsDataReaders belonging
to a DomainParticipant.
Default: 2048
Table 6.4: Properties for Allocating Size of Builtin Types, per DomainParticipant
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.79
175
Dynamic Data
<<eXtension>> ( p. 278) The Dynamic Data API provides a way to interact with arbitrarily complex data types at runtime without the need for code
generation.
Classes
class DynamicData
A sample of any complex data type, which can be inspected and manipulated
reflectively.
class DynamicDataInfo
A descriptor for a com.rti.dds.dynamicdata.DynamicData ( p. 817) object.
class DynamicDataMemberInfo
A descriptor for a single member (i.e. field) of dynamically defined data type.
class DynamicDataProperty t
A
collection
of
attributes
used
to
com.rti.dds.dynamicdata.DynamicData ( p. 817) objects.
configure
class DynamicDataReader
Reads
(subscribes
to)
objects
com.rti.dds.dynamicdata.DynamicData ( p. 817).
of
type
class DynamicDataSeq
An ordered collection
( p. 817) elements.
of
com.rti.dds.dynamicdata.DynamicData
class DynamicDataTypeProperty t
A
collection
of
attributes
used
to
com.rti.dds.dynamicdata.DynamicData ( p. 817) objects.
configure
class DynamicDataTypeSerializationProperty t
Properties that govern how data of a certain type will be serialized on the
network.
class DynamicDataTypeSupport
A factory for registering a dynamically defined type and creating
com.rti.dds.dynamicdata.DynamicData ( p. 817) objects.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
176
Module Documentation
class DynamicDataWriter
Writes (publishes) objects of type com.rti.dds.dynamicdata.DynamicData
( p. 817).
Functions
DynamicDataInfo ()
A descriptor for a com.rti.dds.dynamicdata.DynamicData ( p. 817) object.
DynamicDataInfo (int member count, int stored size, boolean is optimized storage)
A descriptor for a com.rti.dds.dynamicdata.DynamicData ( p. 817) object.
DynamicDataMemberInfo ()
A descriptor for a single member (i.e. field) of dynamically defined data type.
Variables
static final DynamicDataProperty t PROPERTY DEFAULT
Sentinel
constant
indicating
default
values
com.rti.dds.dynamicdata.DynamicDataProperty t ( p. 890).
static final
DEFAULT
DynamicDataTypeProperty t
TYPE PROPERTY -
Sentinel
constant
indicating
default
values
com.rti.dds.dynamicdata.DynamicDataTypeProperty t ( p. 897).
6.79.1
for
for
Detailed Description
<<eXtension>> ( p. 278) The Dynamic Data API provides a way to interact with arbitrarily complex data types at runtime without the need for code
generation.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
177
This API allows you to define new data types, modify existing data types, and
interact reflectively with samples. To use it, you will take the following steps:
1. Obtain a com.rti.dds.typecode.TypeCode (p. 1611) (see Type Code
Support (p. 165)) that defines the type definition you want to use.
A com.rti.dds.typecode.TypeCode (p. 1611) includes a types kind
(com.rti.dds.typecode.TCKind (p. 1525)), name, and members (that
is, fields). You can create your own com.rti.dds.typecode.TypeCode
(p. 1611) using the com.rti.dds.typecode.TypeCodeFactory (p. 1647) class
see, for example, the com.rti.dds.typecode.TypeCodeFactory.create struct tc (p. 1651) method.
Alternatively, you can use a remote
com.rti.dds.typecode.TypeCode (p. 1611) that you discovered on the network (see Built-in Topics (p. 157)) or one generated by rtiddsgen (p. 298).
2.
Wrap the com.rti.dds.typecode.TypeCode (p. 1611) in a
com.rti.dds.dynamicdata.DynamicDataTypeSupport (p. 901) object.
from
the
Use the name under which you registered your data type see
com.rti.dds.domain.DomainParticipant.create topic (p. 697).
This
com.rti.dds.topic.Topic (p. 1545) is what you will use to produce and consume data.
5. Create a com.rti.dds.dynamicdata.DynamicDataWriter (p. 907)
and/or com.rti.dds.dynamicdata.DynamicDataReader (p. 892).
These
objects
will
produce
and/or
consume
data
(of
type
com.rti.dds.dynamicdata.DynamicData
(p. 817))
on
the
com.rti.dds.topic.Topic (p. 1545).
You can create these objects directly from the com.rti.dds.domain.DomainParticipant (p. 654) see
com.rti.dds.domain.DomainParticipant.create datawriter (p. 688) and
com.rti.dds.domain.DomainParticipant.create datareader
(p. 693)
or by first creating intermediate com.rti.dds.publication.Publisher
(p. 1262) and com.rti.dds.subscription.Subscriber (p. 1476) objects see
com.rti.dds.domain.DomainParticipant.create publisher (p. 683) and
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
178
Module Documentation
6.79.2
Function Documentation
6.79.2.1
DynamicDataInfo () [inherited]
6.79.2.2
6.79.2.3
DynamicDataMemberInfo () [inherited]
A descriptor for a single member (i.e. field) of dynamically defined data type.
See also:
com.rti.dds.dynamicdata.DynamicData.get member info (p. 840)
6.79.2.4
A descriptor for a single member (i.e. field) of dynamically defined data type.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
179
See also:
com.rti.dds.dynamicdata.DynamicData.get member info (p. 840)
6.79.3
Variable Documentation
6.79.3.1
Sentinel
constant
indicating
default
values
com.rti.dds.dynamicdata.DynamicDataProperty t (p. 890).
for
Pass this object instead of your own com.rti.dds.dynamicdata.DynamicDataProperty t (p. 890) object to use the default property values:
DynamicData sample = new DynamicData(
myTypeCode,
DynamicData.DYNAMIC_DATA_PROPERTY_DEFAULT);
See also:
com.rti.dds.dynamicdata.DynamicDataProperty t (p. 890)
6.79.3.2
final DynamicDataTypeProperty t
TYPE PROPERTY DEFAULT [static, inherited]
Sentinel
constant
indicating
default
values
com.rti.dds.dynamicdata.DynamicDataTypeProperty t (p. 897).
for
Pass this object instead of your own com.rti.dds.dynamicdata.DynamicDataTypeProperty t (p. 897) object to use the default property values:
DynamicDataTypeSupport support = new DynamicDataTypeSupport(
myTypeCode,
DynamicDataTypeSupport.DYNAMIC_DATA_TYPE_PROPERTY_DEFAULT);
See also:
com.rti.dds.dynamicdata.DynamicDataTypeProperty t (p. 897)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
180
Module Documentation
6.80
Publication Module
Contains
the
com.rti.dds.publication.FlowController
com.rti.dds.publication.Publisher
(p. 1262),
and
(p. 964),
com.rti.dds.publication.DataWriter (p. 557) classes as well as
the
com.rti.dds.publication.PublisherListener
(p. 1289)
and
com.rti.dds.publication.DataWriterListener (p. 586) interfaces, and
more generally, all that is needed on the publication side.
Modules
Publishers
com.rti.dds.publication.Publisher ( p. 1262) entity and associated elements
Data Writers
com.rti.dds.publication.DataWriter ( p. 557) entity and associated elements
Flow Controllers
<<eXtension>> (p. 278) com.rti.dds.publication.FlowController
( p. 964) and associated elements
6.80.1
Detailed Description
Contains
the
com.rti.dds.publication.FlowController
com.rti.dds.publication.Publisher
(p. 1262),
and
(p. 964),
com.rti.dds.publication.DataWriter (p. 557) classes as well as
the
com.rti.dds.publication.PublisherListener
(p. 1289)
and
com.rti.dds.publication.DataWriterListener (p. 586) interfaces, and
more generally, all that is needed on the publication side.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.81 Publishers
6.81
181
Publishers
Classes
interface Publisher
<<interface>> (p. 279) A publisher is the object responsible for the actual
dissemination of publications.
class PublisherAdapter
<<eXtension>> (p. 278) A listener adapter in the spirit of the Java AWT
listener adapters. (The Adapter provides empty implementations for the listener methods)
interface PublisherListener
<<interface>> (p. 279) com.rti.dds.infrastructure.Listener ( p. 1130)
for com.rti.dds.publication.Publisher ( p. 1262) status.
class PublisherQos
QoS policies supported by a com.rti.dds.publication.Publisher ( p. 1262)
entity.
class PublisherSeq
Declares IDL sequence < com.rti.dds.publication.Publisher ( p. 1262) >
.
Variables
static final DataWriterQos DATAWRITER QOS DEFAULT
Special value for creating com.rti.dds.publication.DataWriter ( p. 557)
with default QoS.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
182
Module Documentation
6.81.1
Detailed Description
6.81.2
Variable Documentation
6.81.2.1
Initial value:
new DataWriterQos()
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.81 Publishers
6.81.2.2
183
final DataWriterQos DATAWRITER QOS USE TOPIC QOS = new DataWriterQos() [static,
inherited]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
184
Module Documentation
6.82
Data Writers
Classes
class AcknowledgmentInfo
Information about an application-level acknowledged sample.
interface DataWriter
<<interface>> (p. 279) Allows an application to set the value of the data
to be published under a given com.rti.dds.topic.Topic ( p. 1545).
class DataWriterAdapter
<<eXtension>> (p. 278) A listener adapter in the spirit of the Java AWT
listener adapters. (The Adapter provides empty implementations for the listener methods or functions.)
class DataWriterCacheStatus
<<eXtension>> (p. 278) The status of the writers cache.
interface DataWriterListener
<<interface>> (p. 279) com.rti.dds.infrastructure.Listener ( p. 1130)
for writer status.
class DataWriterProtocolStatus
<<eXtension>> (p. 278) The status of a writers internal protocol related
metrics, like the number of samples pushed, pulled, filtered; and status of
wire protocol traffic.
class DataWriterQos
QoS policies supported by a com.rti.dds.publication.DataWriter ( p. 557)
entity.
class LivelinessLostStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.LIVELINESS LOST STATUS
class OfferedDeadlineMissedStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.OFFERED DEADLINE MISSED STATUS
class OfferedIncompatibleQosStatus
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
185
class PublicationMatchedStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.PUBLICATION MATCHED STATUS
class ReliableReaderActivityChangedStatus
<<eXtension>> (p. 278) Describes the activity (i.e. are acknowledgements
forthcoming) of reliable readers matched to a reliable writer.
class ReliableWriterCacheChangedStatus
<<eXtension>> (p. 278) A summary of the state of a data writers cache
of unacknowledged samples written.
class ReliableWriterCacheEventCount
<<eXtension>> (p. 278) The number of times the number of unacknowledged samples in the cache of a reliable writer hit a certain well-defined
threshold.
class FooDataWriter
<<interface>> (p. 279) <<generic>> (p. 279) User data type specific
data writer.
6.82.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
186
Module Documentation
6.83
Flow Controllers
com.rti.dds.publication.FlowController
<<eXtension>>
( p. 278)
(p. 964) and associated elements
Classes
interface FlowController
<<interface>> (p. 279) A flow controller is the object responsible for
shaping the network traffic by determining when attached asynchronous
com.rti.dds.publication.DataWriter ( p. 557) instances are allowed to
write data.
class FlowControllerProperty t
Determines
the
flow
control
characteristics
com.rti.dds.publication.FlowController ( p. 964).
of
the
class FlowControllerSchedulingPolicy
Kinds of flow controller scheduling policy.
class FlowControllerTokenBucketProperty t
com.rti.dds.publication.FlowController ( p. 964) uses the popular token
bucket approach for open loop network flow control. The flow control characteristics are determined by the token bucket properties.
Variables
static final String DEFAULT FLOW CONTROLLER NAME
[default] Special value of com.rti.dds.infrastructure.PublishModeQosPolicy.flow controller name ( p. 1297) that refers to the built-in default flow controller.
static
final
NAME
String
Special value of com.rti.dds.infrastructure.PublishModeQosPolicy.flow controller name ( p. 1297) that refers to the built-in fixed-rate flow
controller.
static final
NAME
String
Special value of com.rti.dds.infrastructure.PublishModeQosPolicy.flow controller name ( p. 1297) that refers to the built-in on-demand flow
controller.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.83.1
187
Detailed Description
<<eXtension>>
( p. 278)
com.rti.dds.publication.FlowController
(p. 964) and associated elements
com.rti.dds.publication.FlowController (p. 964) provides the network traffic shaping capability to asynchronous com.rti.dds.publication.DataWriter
(p. 557) instances. For use cases and advantages of publishing asnychronously,
please refer to com.rti.dds.infrastructure.PublishModeQosPolicy
(p. 1295) of com.rti.dds.publication.DataWriterQos (p. 610).
See also:
com.rti.dds.infrastructure.PublishModeQosPolicy (p. 1295)
com.rti.dds.publication.DataWriterQos.publish mode (p. 615)
com.rti.dds.infrastructure.AsynchronousPublisherQosPolicy
(p. 397)
6.83.2
Variable Documentation
6.83.2.1
[default] Special value of com.rti.dds.infrastructure.PublishModeQosPolicy.flow controller name (p. 1297) that refers to the built-in default flow controller.
RTI Connext provides several built-in com.rti.dds.publication.FlowController
(p. 964) for use with an asynchronous com.rti.dds.publication.DataWriter
(p. 557). The user can choose to use the built-in flow controllers and optionally
modify their properties or can create a custom flow controller.
By default, flow control is disabled.
That is, the built-in
com.rti.dds.publication.FlowController.DEFAULT FLOW CONTROLLER NAME (p. 187) flow controller does not apply any
flow control. Instead, it allows data to be sent asynchronously as soon as it is
written by the com.rti.dds.publication.DataWriter (p. 557).
Essentially,
this
is
equivalent
to
a
user-created
com.rti.dds.publication.FlowController (p. 964) with the following
com.rti.dds.publication.FlowControllerProperty t (p. 968) settings:
- com.rti.dds.publication.FlowControllerProperty t.scheduling policy
(p. 969) = com.rti.dds.publication.FlowControllerSchedulingPolicy.FlowControllerSchedulingPolicy.EDF FLOW CONTROLLER SCHED POLICY
com.rti.dds.publication.FlowControllerProperty t.token bucket
(p. 969) max tokens = com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
188
Module Documentation
6.83.2.2
Special value of com.rti.dds.infrastructure.PublishModeQosPolicy.flow controller name (p. 1297) that refers to the built-in fixed-rate flow controller.
RTI
Connext
provides
several
builtin
(p. 352)
com.rti.dds.publication.FlowController (p. 964) for use with an asynchronous com.rti.dds.publication.DataWriter (p. 557).
The user can
choose to use the built-in flow controllers and optionally modify their
properties or can create a custom flow controller.
The built-in com.rti.dds.publication.FlowController.FIXED RATE FLOW CONTROLLER NAME (p. 188) flow controller shapes the network
traffic by allowing data to be sent only once every second. Any accumulated
samples destined for the same destination are coalesced into as few network
packets as possible.
Essentially,
this
is
equivalent
to
a
user-created
com.rti.dds.publication.FlowController (p. 964) with the following
com.rti.dds.publication.FlowControllerProperty t (p. 968) settings:
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
189
6.83.2.3
Special value of com.rti.dds.infrastructure.PublishModeQosPolicy.flow controller name (p. 1297) that refers to the built-in on-demand flow controller.
RTI
Connext
provides
several
builtin
(p. 352)
com.rti.dds.publication.FlowController (p. 964) for use with an asynchronous com.rti.dds.publication.DataWriter (p. 557).
The user can
choose to use the built-in flow controllers and optionally modify their
properties or can create a custom flow controller.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
190
Module Documentation
The built-in com.rti.dds.publication.FlowController.ON DEMAND FLOW CONTROLLER NAME (p. 189) allows data to be sent only
when the user calls com.rti.dds.publication.FlowController.trigger flow
(p. 967). With each trigger, all accumulated data since the previous trigger is sent (across all com.rti.dds.publication.Publisher (p. 1262) or
com.rti.dds.publication.DataWriter (p. 557) instances). In other words,
the network traffic shape is fully controlled by the user. Any accumulated samples destined for the same destination are coalesced into as few network packets
as possible.
This external trigger source is ideal for users who want to implement some
form of closed-loop flow control or who want to only put data on the
wire every so many samples (e.g.
with the number of samples based
on com.rti.ndds.transport.Transport.Property t.gather send buffer count max (p. 1574)).
Essentially,
this
is
equivalent
to
a
user-created
com.rti.dds.publication.FlowController (p. 964) with the following
com.rti.dds.publication.FlowControllerProperty t (p. 968) settings:
- com.rti.dds.publication.FlowControllerProperty t.scheduling policy
(p. 969) = com.rti.dds.publication.FlowControllerSchedulingPolicy.FlowControllerSchedulingPolicy.EDF
FLOW CONTROLLER SCHED POLICY
com.rti.dds.publication.FlowControllerProperty t.token bucket
(p. 969) max tokens = com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
com.rti.dds.publication.FlowControllerProperty t.token bucket
(p. 969)
tokens added per period
=
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
com.rti.dds.publication.FlowControllerProperty t.token bucket
(p. 969)
tokens leaked per period
=
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
com.rti.dds.publication.FlowControllerProperty t.token bucket
(p. 969) period = com.rti.dds.infrastructure.Duration t.INFINITE
com.rti.dds.publication.FlowControllerProperty t.token bucket
(p. 969)
bytes per token
=
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
See also:
com.rti.dds.publication.Publisher.create datawriter (p. 1269)
com.rti.dds.domain.DomainParticipant.lookup flowcontroller
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
191
192
Module Documentation
6.84
Subscription Module
Contains
the
com.rti.dds.subscription.Subscriber
(p. 1476),
com.rti.dds.subscription.DataReader
(p. 487),
and
com.rti.dds.subscription.ReadCondition
(p. 1313),
com.rti.dds.subscription.QueryCondition (p. 1311) classes, as well
as the com.rti.dds.subscription.SubscriberListener (p. 1503) and
com.rti.dds.subscription.DataReaderListener (p. 518) interfaces, and
more generally, all that is needed on the subscription side.
Modules
Subscribers
com.rti.dds.subscription.Subscriber ( p. 1476) entity and associated elements
DataReaders
com.rti.dds.subscription.DataReader ( p. 487) entity and associated elements
Data Samples
com.rti.dds.subscription.SampleInfo
com.rti.dds.subscription.SampleStateKind
com.rti.dds.subscription.ViewStateKind
com.rti.dds.subscription.InstanceStateKind
ated elements
6.84.1
( p. 1061)
( p. 1398),
( p. 1426),
( p. 1703),
and associ-
Detailed Description
Contains
the
com.rti.dds.subscription.Subscriber
(p. 1476),
com.rti.dds.subscription.DataReader
(p. 487),
com.rti.dds.subscription.ReadCondition
(p. 1313),
and
com.rti.dds.subscription.QueryCondition (p. 1311) classes, as well
as the com.rti.dds.subscription.SubscriberListener (p. 1503) and
com.rti.dds.subscription.DataReaderListener (p. 518) interfaces, and
more generally, all that is needed on the subscription side.
6.84.2
Data is
erations
jects:
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
193
(p. 983),
(p. 991),
The general semantics of the read() operation is that the application only gets
access to the corresponding data (i.e. a precise instance value); the data remains
the responsibility of RTI Connext and can be read again.
The semantics of the take() operations is that the application takes full responsibility for the data; that data will no longer be available locally to RTI
Connext. Consequently, it is possible to access the same information multiple
times only if all previous accesses were read() operations, not take().
Each of these operations returns a collection of Data values and associated
com.rti.dds.subscription.SampleInfo (p. 1398) objects. Each data value
represents an atom of data information (i.e., a value for one instance). This
collection may contain samples related to the same or different instances (identified by the key). Multiple samples can refer to the same instance if the settings
of the HISTORY (p. 79) QoS allow for it.
To return the memory back to the middleware, every read() or take()
that retrieves a sequence of samples must be followed with a call to
com.rti.ndds.example.FooDataReader.return loan (p. 1008).
See also:
Interpretation of the SampleInfo (p. 1400)
6.84.2.1
of
the
desired
view
states
(any
combination
com.rti.dds.subscription.ViewStateKind (p. 1703))
of
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
194
Module Documentation
the
desired
instance
states
(any
combination
com.rti.dds.subscription.InstanceStateKind (p. 1061))
of
The read() and take() operations are non-blocking and just deliver what is
currently available that matches the specified states.
The read w condition() and take w condition() operations take a
com.rti.dds.subscription.ReadCondition (p. 1313) object as a parameter instead of sample, view or instance states.
The behaviour is
that the samples returned will only be those for which the condition is com.rti.dds.infrastructure.true.
These operations, in conjunction
with com.rti.dds.subscription.ReadCondition (p. 1313) objects and a
com.rti.dds.infrastructure.WaitSet (p. 1709), allow performing waiting
reads.
Once the data samples are available to the data readers, they can be read or
taken by the application. The basic rule is that the application may do this in
any order it wishes. This approach is very flexible and allows the application
ultimate control.
To access data coherently, or in order, the PRESENTATION (p. 90) QoS
must be set properly.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.85 Subscribers
6.85
195
Subscribers
Classes
interface Subscriber
<<interface>> (p. 279) A subscriber is the object responsible for actually
receiving data from a subscription ( p. 353).
class SubscriberAdapter
A listener adapter in the spirit of the Java AWT listener adapters. (The
Adapter provides empty implementations for the listener methods).
interface SubscriberListener
<<interface>> (p. 279) com.rti.dds.infrastructure.Listener ( p. 1130)
for status about a subscriber.
class SubscriberQos
QoS policies supported
( p. 1476) entity.
by
com.rti.dds.subscription.Subscriber
class SubscriberSeq
Declares IDL sequence < com.rti.dds.subscription.Subscriber ( p. 1476)
>.
Variables
static final DataReaderQos DATAREADER QOS DEFAULT
Special value for creating data reader with default QoS.
static final DataReaderQos DATAREADER QOS USE TOPIC QOS = new DataReaderQos()
Special value for creating com.rti.dds.subscription.DataReader
( p. 487)
with
a
combination
of
the
default
com.rti.dds.subscription.DataReaderQos
( p. 536)
and
the
com.rti.dds.topic.TopicQos ( p. 1566).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
196
Module Documentation
6.85.1
Detailed Description
6.85.2
Variable Documentation
6.85.2.1
Initial value:
new DataReaderQos()
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.85 Subscribers
6.85.2.2
197
final DataReaderQos DATAREADER QOS USE TOPIC QOS = new DataReaderQos() [static,
inherited]
Special
value
for
creating
com.rti.dds.subscription.DataReader
(p. 487)
with
a
combination
of
the
default
and
the
com.rti.dds.subscription.DataReaderQos
(p. 536)
com.rti.dds.topic.TopicQos (p. 1566).
The use of this value is equivalent to the application obtaining the
default com.rti.dds.subscription.DataReaderQos (p. 536) and the
com.rti.dds.topic.TopicQos (p. 1566) (by means of the operation
com.rti.dds.topic.Topic.get qos (p. 1548)) and then combining these two
QoS using the operation com.rti.dds.subscription.Subscriber.copy from topic qos (p. 1499) whereby any policy that is set on the
com.rti.dds.topic.TopicQos (p. 1566) overrides the corresponding policy
on the default QoS. The resulting QoS is then applied to the creation of the
com.rti.dds.subscription.DataReader (p. 487).
This value should only be used in com.rti.dds.subscription.Subscriber.create datareader (p. 1483).
See also:
com.rti.dds.subscription.Subscriber.create datareader (p. 1483)
com.rti.dds.subscription.Subscriber.get default datareader qos
(p. 1480)
com.rti.dds.topic.Topic.get qos (p. 1548)
com.rti.dds.subscription.Subscriber.copy from topic qos (p. 1499)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
198
Module Documentation
6.86
DataReaders
Modules
Read Conditions
com.rti.dds.subscription.ReadCondition ( p. 1313) and associated elements
Query Conditions
com.rti.dds.subscription.QueryCondition ( p. 1311) and associated elements
Classes
interface DataReader
<<interface>> (p. 279) Allows the application to: (1) declare the data it
wishes to receive (i.e. make a subscription ( p. 353)) and (2) access the data
received by the attached com.rti.dds.subscription.Subscriber ( p. 1476).
class DataReaderAdapter
<<eXtension>> (p. 278) A listener adapter in the spirit of the Java AWT
listener adapters. (The Adapter provides empty implementations for the listener methods)
class DataReaderCacheStatus
<<eXtension>> (p. 278) The status of the readers cache.
interface DataReaderListener
<<interface>> (p. 279) com.rti.dds.infrastructure.Listener ( p. 1130)
for reader status.
class DataReaderProtocolStatus
<<eXtension>> (p. 278) The status of a readers internal protocol related
metrics, like the number of samples received, filtered, rejected; and status of
wire protocol traffic.
class DataReaderQos
QoS policies supported by a com.rti.dds.subscription.DataReader
( p. 487) entity.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.86 DataReaders
199
class DataReaderSeq
Declares IDL sequence < com.rti.dds.subscription.DataReader ( p. 487)
>.
class LivelinessChangedStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.LIVELINESS CHANGED STATUS
class RequestedDeadlineMissedStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.REQUESTED DEADLINE MISSED STATUS
class RequestedIncompatibleQosStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.REQUESTED INCOMPATIBLE QOS STATUS
class SampleLostStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.SAMPLE LOST STATUS STATUS
class SampleLostStatusKind
Kinds of reasons why a sample was lost.
class SampleRejectedStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.SAMPLE REJECTED STATUS
class SampleRejectedStatusKind
Kinds of reasons for rejecting a sample.
class SubscriptionMatchedStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.SUBSCRIPTION MATCHED STATUS
class FooDataReader
<<interface>> (p. 279) <<generic>> (p. 279) User data type-specific
data reader.
6.86.1
Detailed Description
200
Module Documentation
6.87
Read Conditions
Classes
interface ReadCondition
<<interface>> (p. 279) Conditions specifically dedicated to read operations
and attached to one com.rti.dds.subscription.DataReader ( p. 487).
6.87.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.88
201
Query Conditions
Classes
interface QueryCondition
<<interface>>
(p. 279)
These
are
specialised
com.rti.dds.subscription.ReadCondition ( p. 1313) objects that allow the application to also specify a filter on the locally available data.
6.88.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
202
Module Documentation
6.89
Data Samples
com.rti.dds.subscription.SampleInfo
(p. 1398),
com.rti.dds.subscription.SampleStateKind
(p. 1426),
com.rti.dds.subscription.ViewStateKind
(p. 1703),
com.rti.dds.subscription.InstanceStateKind (p. 1061) and associated
elements
Modules
Sample States
com.rti.dds.subscription.SampleStateKind ( p. 1426) and associated elements
View States
com.rti.dds.subscription.ViewStateKind ( p. 1703) and associated elements
Instance States
com.rti.dds.subscription.InstanceStateKind ( p. 1061) and associated
elements
Classes
class SampleInfo
Information that accompanies each sample that is read or taken.
class SampleInfoSeq
Declares IDL
( p. 1398) > .
6.89.1
sequence
<
com.rti.dds.subscription.SampleInfo
Detailed Description
com.rti.dds.subscription.SampleInfo
(p. 1398),
com.rti.dds.subscription.SampleStateKind
(p. 1426),
com.rti.dds.subscription.ViewStateKind
(p. 1703),
com.rti.dds.subscription.InstanceStateKind (p. 1061) and associated
elements
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.90
203
Sample States
Classes
class SampleStateKind
Indicates whether or not a sample has ever been read.
Variables
static final int ANY SAMPLE STATE = 0xffff
Any sample state com.rti.dds.subscription.SampleStateKind.SampleStateKind.READ SAMPLE STATE | com.rti.dds.subscription.SampleStateKind.SampleStateKind.NOT READ SAMPLE STATE.
6.90.1
Detailed Description
6.90.2
Variable Documentation
6.90.2.1
Any sample state com.rti.dds.subscription.SampleStateKind.SampleStateKind.READ SAMPLE STATE | com.rti.dds.subscription.SampleStateKind.SampleStateKind.NOT READ SAMPLE STATE.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
204
Module Documentation
6.91
View States
Classes
class ViewStateKind
Indicates whether or not an instance is new.
Variables
static final int ANY VIEW STATE = 0xffff
Any view state com.rti.dds.subscription.ViewStateKind.ViewStateKind.NEW VIEW STATE | com.rti.dds.subscription.ViewStateKind.ViewStateKind.NOT NEW VIEW STATE.
6.91.1
Detailed Description
6.91.2
Variable Documentation
6.91.2.1
Any view state com.rti.dds.subscription.ViewStateKind.ViewStateKind.NEW VIEW STATE | com.rti.dds.subscription.ViewStateKind.ViewStateKind.NOT NEW VIEW STATE.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.92
205
Instance States
Classes
class InstanceStateKind
Indicates
is
the
samples
are
from
com.rti.dds.publication.DataWriter ( p. 557) or not.
live
Variables
static final int ANY INSTANCE STATE = 0xffff
Any instance state ALIVE INSTANCE STATE | NOT ALIVE DISPOSED INSTANCE STATE
|
NOT ALIVE NO WRITERS INSTANCE STATE.
6.92.1
Detailed Description
6.92.2
Variable Documentation
6.92.2.1
Any instance state ALIVE INSTANCE STATE | NOT ALIVE DISPOSED INSTANCE STATE | NOT ALIVE NO WRITERS INSTANCE STATE.
6.92.2.2
Not alive instance state NOT ALIVE DISPOSED INSTANCE STATE | NOT ALIVE NO WRITERS INSTANCE STATE.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
206
Module Documentation
6.93
Infrastructure Module
Defines the abstract classes and the interfaces that are refined by the other
modules. Contains common definitions such as return codes, status values, and
QoS policies.
Modules
Conditions and WaitSets
com.rti.dds.infrastructure.Condition
( p. 464)
com.rti.dds.infrastructure.WaitSet ( p. 1709) and related items.
and
Time Support
Time and duration types and defines.
Entity Support
com.rti.dds.infrastructure.Entity
( p. 931),
com.rti.dds.infrastructure.Listener ( p. 1130) and related items.
GUID Support
<<eXtension>> (p. 278) GUID type and defines.
Object Support
<<eXtension>> (p. 278) Object related items.
QoS Policies
Quality of Service (QoS) policies.
Return Codes
Types of return codes.
Status Kinds
Kinds of communication status.
Exception Codes
<<eXtension>> (p. 278) Exception codes.
Sequence Support
The com.rti.dds.infrastructure.com.rti.dds.util.Sequence interface allows you
to work with variable-length collections of homogeneous data.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
207
Classes
class Enum
A superclass for all type-safe enumerated types.
6.93.1
Detailed Description
Defines the abstract classes and the interfaces that are refined by the other
modules. Contains common definitions such as return codes, status values, and
QoS policies.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
208
Module Documentation
6.94
Built-in Sequences
Classes
class BooleanSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
boolean >.
class ByteSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
byte >.
class CharSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
char >.
class DoubleSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
double >.
class FloatSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
float >.
class IntSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.infrastructure.int >.
class LongDoubleSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.infrastructure.LongDouble >.
class LongSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
long >.
class ShortSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
short >.
class StringSeq
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
209
class WcharSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.infrastructure.char >.
class WstringSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.infrastructure.char >.
6.94.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
210
Module Documentation
6.95
Multi-channel DataWriters
6.95.1
6.95.2
6.95.3
6.95.4
6.95.4.1
Reliable Delivery
211
Reliable
delivery
is
only
guaranteed
when
the
com.rti.dds.infrastructure.PresentationQosPolicy.access scope
(p. 1225) is set to com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPolicyAccessSco
PRESENTATION QOS and the filters in com.rti.dds.infrastructure.MultiChannelQosPolicy
(p. 1187) are keyed-only based.
If any of the guard filters are based on non-key fields, RTI Connext only guarantees reception of the most recent data from the MultiChannel DataWriter.
6.95.4.2
212
Module Documentation
With
batching
and
MultiChannel
DataWriters,
the
size
of
the
DataWriters
send
queue
should
be
configured
using
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max samples
(p. 1351) instead of max batches com.rti.dds.infrastructure.DataWriterResourceLimitsQosPolicy
batches (p. 624) in order to take advantage of heartbeats per max samples.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.96
213
Pluggable Transports
Modules
Using Transport Plugins
Configuring transports used by RTI Connext.
6.96.1
Detailed Description
6.96.2
Overview
RTI Connext has a pluggable transports architecture. The core of RTI Connext is transport agnostic; it does not make any assumptions about the actual
transports used to send and receive messages. Instead, the RTI Connext core
uses an abstract transport API to interact with the transport plugins which
implement that API.
A transport plugin implements the abstract transport API and performs the
actual work of sending and receiving messages over a physical transport. A
collection of builtin plugins (see Built-in Transport Plugins (p. 222)) is
delivered with RTI Connext for commonly used transports. New transport
plugins can easily be created, thus enabling RTI Connext applications to run
over transports that may not even be conceived yet. This is a powerful capability
and that distinguishes RTI Connext from competing middleware approaches.
RTI Connext also provides a set of APIs for installing and configuring transport plugins to be used in an application. So that RTI Connext applications
work out of the box, a subset of the builtin transport plugins is preconfigured
by default (see com.rti.dds.infrastructure.TransportBuiltinQosPolicy
(p. 1580)). You can turn-off some or all of the builtin transport plugins. In
addition, you can configure other transport plugins for use by the application.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
214
Module Documentation
6.96.3
Transport Aliases
6.96.4
215
Transport Lifecycle
A transport plugin is owned by whoever created it. Thus, if you create and
register a transport plugin with a com.rti.dds.domain.DomainParticipant
(p. 654), you are responsible for deleting it by calling its destructor. Note that
builtin transport plugins (TRANSPORT BUILTIN (p. 119)) and transport
plugins that are loaded through the PROPERTY (p. 92) QoS policy (see
Loading Transport Plugins through Property QoS Policy of Domain
Participant (p. 219)) are automatically managed by RTI Connext.
A user-created transport plugin must not be deleted while it is still in
This
use by a com.rti.dds.domain.DomainParticipant (p. 654).
generally means that a user-created transport plugin instance can
only be deleted after the com.rti.dds.domain.DomainParticipant
(p. 654)
with
which
it
was
registered
is
deleted
(see
com.rti.dds.domain.DomainParticipantFactory.delete participant
(p. 749)). Note that a transport plugin cannot be unregistered from a
com.rti.dds.domain.DomainParticipant (p. 654).
A transport plugin instance cannot be registered with more than one
com.rti.dds.domain.DomainParticipant (p. 654) at a time. This requirement is necessary to guarantee the multi-threaded safety of the transport API.
If the same physical transport resources are to be used with more
than one com.rti.dds.domain.DomainParticipant (p. 654) in the same
address space, the transport plugin should be written in such a
way so that it can be instantiated multiple timesonce for each
com.rti.dds.domain.DomainParticipant (p. 654) in the address space.
Note that it is always possible to write the transport plugin so that multiple transport plugin instances share the same underlying resources; however the
burden (if any) of guaranteeing multi-threaded safety to access shared resource
shifts to the transport plugin developer.
6.96.5
216
Module Documentation
used to distinguish between different transport plugin implementations.
Thus, a transport plugin vendor should ensure that its transport plugin
implementation has a unique class.
Two transport plugin instances report the same class iff they have compatible implementations. Transport plugin instances with mismatching
classes are not allowed (by the RTI Connext Core) to communicate with
one another.
Multiple implementations (possibly from different vendors) for a physical
transport mechanism can co-exist in an RTI Connext application, provided
they use different transport class IDs.
The class ID can also be used to distinguish between different transport
protocols over the same physical transport network (e.g., UDP vs. TCP
over the IP routing infrastructure).
The remaining bits of an address using the 128-bit address representation will be considered as part of the network address (see Transport
Network Address (p. 381)) and thus ignored by the transport plugins
internal addressing scheme.
For unicast addresses, the transport plugin is expected to ignore the higher
(128 - com.rti.ndds.transport.Transport.Property t.address bit count (p. 1573)) bits. RTI Connext is free to manipulate those bits freely
in the addresses passed in/out to the transport plugin APIs.
Theoretically, the significant address bits count, N is related to the size of
the underlying transport network as follows:
address bits count >= ceil(log2 (total addressable transport unicast interf aces))
The equality holds when the most compact (theoretical) internal address
mapping scheme is used. A practical address mapping scheme may waste
some bits.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.96.6
217
The per instance attributes to configure the plugin instance are generally passed
in to the plugin constructor. These are defined by the transport plugin writer,
and can be used to:
- customize the behavior of an instance of a transport plugin, including the send
and the receiver buffer sizes, the maximum message size, various transport level
classes of service (CoS), and so on.
- specify the resource values, network interfaces to use, various transport level
policies, and so on.
RTI Connext requires that every transport plugin instance must specify
the
com.rti.ndds.transport.Transport.Property t.message size max
(p. 1574) and com.rti.ndds.transport.Transport.Property t.gather send buffer count max (p. 1574).
It is up to the transport plugin developer to make these available for configuration to transport plugin user.
Note that it is important that the instance attributes are compatible between
the sending side and the receiving side of communicating applications using
different instances of a transport plugin class. For example, if one side is configured to send messages larger than can be received by the other side, then
communications via the plugin may fail.
6.96.7
The address bits not used by the transport plugin for its internal addressing
constitute its network address bits.
In order for RTI Connext to properly route the messages, each unicast interface in the RTI Connext domain must have a unique address. RTI Connext
allows the user to specify the value of the network address when installing
a transport plugin via the com.rti.ndds.transport.TransportSupport.register transport() API.
The network address for a transport plugin should be chosen such that the
resulting fully qualified 128-bit address will be unique in the RTI Connext
domain. Thus, if two instances of a transport plugin are registered with a
com.rti.dds.domain.DomainParticipant (p. 654), they will be at different
network addresses in order for their unicast interfaces to have unique fully qualified 128-bit addresses. It is also possible to create multiple transports with the
same network address, as it can be useful for certain use cases; note that this
will require special entity configuration for most transports to avoid clashes in
resource use (e.g. sockets for UDPv4 transport).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
218
Module Documentation
6.96.8
The user can set up a routing table to restrict the use of a transport plugin to
send messages to selected addresses ranges.
6.96.9
By default, a transport plugin is configured to receive incoming messages destined to addresses in the network address range at which the plugin was registered.
RTI Connext allows the user to configure the routing of incoming messages via
the com.rti.ndds.transport.TransportSupport.add receive route() API, so that
a transport plugin will be used to receive messages only on certain ranges of
addresses. The method can be called multiple times for a transport plugin, with
different address ranges.
+--------------------------------------------------------------------+
|
Transport Plugin
<- Incoming Address Range 1 |
+--------------------------------------------------------------------+
|
:
<:
|
+--------------------------------------------------------------------+
|
Transport Plugin
<- Incoming Address Range M |
+--------------------------------------------------------------------+
The user can set up a routing table to restrict the use of a transport plugin
to receive messages from selected ranges. For example, the user may restrict a
transport plugin to
- receive messages from a certain multicast address range.
- receive messages only on certain unicast interfaces (when multiple unicast
interfaces are available on the transport plugin).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.97
219
Classes
class TransportSupport
<<interface>> (p. 279) The utility class used to configure RTI Connext
pluggable transports.
6.97.1
Detailed Description
6.97.2
220
Module Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
<TRANSPORT PREFIX>.library
13
Description
Required?
Comma-separated
YES
strings indicating the
prefix names of all
plugins that will be
loaded by RTI
Connext. Up to 8
plugins may be
specified. For example,
dds.transport.WAN.wan1,
dds.transport.DTLS.dtls1,
In the following
examples,
<TRANSPORT PREFIX> is used to
indicate one element of
this string that is used
as a prefix in the
property names for all
the settings that are
related to the plugin.
<TRANSPORT PREFIX> must begin
with dds.transport.
(such as
dds.transport.mytransport).
Should be set to the
YES
name of the dynamic
library (.so for
Unix/Solaris, and .dll
for Windows) that
contains the transport
plugin implementation.
This library (and all
the other dependent
dynamic libraries)
needs to be in the path
during run time for
used by RTI Connext
(in the LD LIBRARY PATH
environment variable
on UNIX/Solaris
systems, in PATH for
Windows systems).
Should be set to the
YES
name of the function
with the
of
09:02:20
2012prototype
for RTI Connext
Java API by Doxygen
com.rti.ndds.transport.NDDS Transport create plugin that can be
called by RTI Connext
to create an instance of
the plugin. The
resulting transport
plugin will then be
221
222
Module Documentation
6.98
Classes
interface ShmemTransport
Built-in transport ( p. 376) plug-in for inter-process communications using
shared memory.
interface UDPv4Transport
Built-in transport ( p. 376) plug-in using UDP/IPv4.
interface UDPv6Transport
Built-in transport ( p. 376) plug-in using UDP/IPv6.
6.98.1
Detailed Description
223
Each builtin transport contains its own set of properties. For example, the
com.rti.ndds.transport.UDPv4Transport (p. 1668) allows the application
to specify whether or not multicast is supported, the maximum size of the
message, and provides a mechanism for the application to filter out network
interfaces.
The builtin transport plugin properties can be changed by
the
method
com.rti.ndds.transport.TransportSupport.set builtin transport property()
(p. 1603)
or
by
using
the
PROPERTY
(p. 92)
QoS
policy
associated
with
the
com.rti.dds.domain.DomainParticipant (p. 654). Builtin transport plugin
properties specified in com.rti.dds.infrastructure.PropertyQosPolicy
always
overwrite
the
ones
specified
through
(p. 1236)
com.rti.ndds.transport.TransportSupport.set builtin transport property() (p. 1603). Refer to the specific builtin transport for the list of
property names that can be specified through PROPERTY (p. 92) QoS
policy.
Any changes to the builtin transport properties after the builtin transports have
been registered with will have no effect.
See also:
com.rti.ndds.transport.TransportSupport.set builtin transport property() (p. 1603) com.rti.dds.infrastructure.PropertyQosPolicy
(p. 1236)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
224
Module Documentation
6.99
Configuration Utilities
Classes
class LibraryVersion t
The version of a single library shipped as part of an RTI Connext distribution.
class LogCategory
Categories of logged messages.
class Logger
<<interface>> (p. 279) The singleton type used to configure RTI Connext
logging.
interface LoggerDevice
<<interface>> (p. 279) Logging device interface. Use for user-defined logging devices.
class LogLevel
Level category assigned to RTI Connext log messages returned to an output
device.
class LogMessage
Log message.
class LogPrintFormat
The format used to output RTI Connext diagnostic information.
class LogVerbosity
The verbosities at which RTI Connext diagnostic information is logged.
class Version
<<interface>> (p. 279) The version of an RTI Connext distribution.
6.99.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.100
225
APIs related to RTI Connext Durability and Persistence. RTI Connext offers
the following mechanisms for achieving durability and persistence:
Durable Writer History (p. 225)
Durable Reader State (p. 225)
Data Durability (p. 226)
To use any of these features, you need a relational database, which is not
included with RTI Connext. Supported databases are listed in the Release
Notes.
These three features can be used separately or in combination.
6.100.1
6.100.2
226
Module Documentation
6.100.3
Data Durability
6.100.4
Every
modification
to
the
global
dataspace
made
by
a
com.rti.dds.publication.DataWriter (p. 557) is identified by a pair
(virtual GUID, sequence number).
The virtual GUID (Global Unique Identifier) is a 16-byte character identifier associated with a com.rti.dds.publication.DataWriter (p. 557) or
com.rti.dds.subscription.DataReader (p. 487); it is used to uniquely
identify this entity in the global data space.
The sequence number is a 64-bit identifier that identifies changes published
by a specific com.rti.dds.publication.DataWriter (p. 557).
entities
Several
com.rti.dds.publication.DataWriter
(p. 557)
can be configured with the same virtual GUID. If each of these
com.rti.dds.publication.DataWriter (p. 557) entities publishes a sample with sequence number 0, the sample will only be received once by the
com.rti.dds.subscription.DataReader (p. 487) entities subscribing to the
content published by the com.rti.dds.publication.DataWriter (p. 557)
entities.
RTI Connext also uses the virtual GUID (Global Unique Identifier) to associate
a persisted state (state in permanent storage) to the corresponding DDS entity.
For example, the history of a com.rti.dds.publication.DataWriter (p. 557)
will be persisted in a database table with a name generated from the virtual GUID of the com.rti.dds.publication.DataWriter (p. 557). If the
com.rti.dds.publication.DataWriter (p. 557) is restarted, it must have associated the same virtual GUID to restore its previous history.
Likewise, the state of a com.rti.dds.subscription.DataReader (p. 487)
will be persisted in a database table whose name is generated from the
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
227
6.100.5
6.100.6
228
Module Documentation
6.100.7
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
229
Description
Must be set to dds.data writer.history.odbc plugin.builtin
to enable durable writer history in
the DataWriter. This property is
required.
The ODBC DSN (Data Source
Name) associated with the database
where the writer history must be
persisted. This property is required.
This property tells RTI Connext
which ODBC driver to load. If the
property is not specified, RTI
Connext will try to use the standard
ODBC driver manager library:
UnixOdbc (odbc32.dll) on
UNIX/Linux systems; the Windows
ODBC driver manager (libodbc.so)
on Windows systems).
Configures the username used to
connect to the database. This
property is not used if it is
unspecified. There is no default
value.
Configures the password used to
connect to the database. This
property is not used if it is
unspecified. There is no default
value.
If set to 1, RTI Connext creates a
single connection per DSN that will
be shared across DataWriters within
the same Publisher.
If set to 0 (the default), a
com.rti.dds.publication.DataWriter
(p. 557) will create its own database
connection.
Default: 0 (false)
These properties configure the
resource limits associated with the
ODBC writer history caches. To
minimize the number of accesses to
the database, RTI Connext uses two
caches, one for samples and one for
instances. The initial and maximum
sizes of these caches are configured
using these properties. The resource
for limits
RTI Connext
API by Doxygen
instances,
initial Java
max instances, initial samples,
max samples and
max samples per instance in the
com.rti.dds.infrastructure.ResourceLimitsQosPolicy
(p. 1348) are used to configure the
maximum number of samples and
instances that can be stored in the
230
Property
dds.data reader.state.odbc.dsn
Module Documentation
Description
The ODBC DSN (Data Source
Name) associated with the database where the
com.rti.dds.subscription.DataReader
(p. 487) state must be persisted.
This property is required.
dds.data reader.state.filter To enable durable reader state, this
redundant samples
property must be set to 1.
Otherwise, the reader state will not
be kept and/or persisted. When the
reader state is not maintained, RTI
Connext does not filter duplicate
samples that may be coming from
the same virtual writer. By default,
this property is set to 1.
dds.data reader.state.odbc.driver
This property is used to indicate
which ODBC driver to load. If the
property is not specified, RTI
Connext will try to use the standard
ODBC driver manager library:
UnixOdbc (odbc32.dll) on
UNIX/Linux systems; the Windows
ODBC driver manager (libodbc.so)
on Windows systems).
dds.data This property configures the
reader.state.odbc.username
username used to connect to the
database. This property is not used
if it is unspecified. There is no
default value.
dds.data reader.state.odbc.password This property configures the
password used to connect to the
database. This property is not used
if it is unspecified. There is no
default value.
dds.data reader.state.restore
This property indicates if the
persisted
com.rti.dds.subscription.DataReader
(p. 487) state must be restored or
not once the
com.rti.dds.subscription.DataReader
(p. 487) is restarted. If this property
is 0, the previous state will be
deleted from the database. If it is 1,
the
com.rti.dds.subscription.DataReader
(p. 487) will restore its previous
state
from
the database
content.
Generated on Mon Aug 13 09:02:20 2012
for RTI
Connext
Java API
by Doxygen
Default: 1
dds.data reader.state.checkpoint This property controls how often
frequency
the reader state is stored in the
database. A value of N means to
store the state once every N
samples.
A high frequency will provide better
6.101
231
System Properties
System
Properties.
RTI
Connext
uses
the
com.rti.dds.infrastructure.PropertyQosPolicy (p. 1236) of a DomainParticipant to maintain a set of properties that provide system information such
as hostname.
Unless the default com.rti.dds.domain.DomainParticipantQos (p. 773)
value is overwritten, the system properties are automatically set in the
com.rti.dds.domain.DomainParticipantQos (p. 773) obtained by calling
the
method
com.rti.dds.domain.DomainParticipantFactory.get (p. 750)
or
using
the
constant
default participant qos
com.rti.dds.domain.DomainParticipantFactory.PARTICIPANT QOS DEFAULT (p. 149).
System
properties
are
also
automatically
set
in
the
com.rti.dds.domain.DomainParticipantQos (p. 773) loaded from an
XML QoS profile unless you disable property inheritance using the attribute
inherit in the XML tag <property>.
By default, the system properties are propagated to other DomainParticipants in the system and can be accessed through
builtin.ParticipantBuiltinTopicData.property.
You can disable the propagation of individual properties by setting
the flag com.rti.dds.infrastructure.Property t.propagate (p. 1235) to
com.rti.dds.infrastructure.false or by removing the property using the
method com.rti.dds.infrastructure.PropertyQosPolicyHelper.remove property (p. 1242).
The
number
of
system
properties
set
on
the
com.rti.dds.domain.DomainParticipantQos (p. 773) is platform specific.
6.101.1
6.101.2
Description
Hostname
Process ID
System
properties
are
affected
by
the
resource
limits
com.rti.dds.infrastructure.DomainParticipantResourceLimitsQosPolicy.participant Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
232
Module Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.102
233
6.102.1
234
Module Documentation
com.rti.dds.domain.DomainParticipantFactory.get datareader qos from profile (p. 761)
com.rti.dds.domain.DomainParticipantFactory.get datareader qos from profile w topic name (p. 761)
com.rti.dds.domain.DomainParticipantFactory.get qos profile libraries (p. 763)
com.rti.dds.domain.DomainParticipantFactory.get qos profiles
(p. 764)
com.rti.dds.domain.DomainParticipantFactory.load profiles
(p. 754)
The QoS profiles are reloaded replacing previously loaded profiles when the
following operations are called:
com.rti.dds.domain.DomainParticipantFactory.set qos (p. 754)
com.rti.dds.domain.DomainParticipantFactory.reload profiles
(p. 755)
The com.rti.dds.domain.DomainParticipantFactory.unload profiles()
(p. 755) operation will free the resources associated with the XML QoS profiles.
There are five ways to configure the XML resources (listed by load order):
The file NDDS QOS PROFILES.xml in NDDSHOME/resource/qos profiles 5.0.0/xml
is
loaded
if
it
exists
and
com.rti.dds.infrastructure.ProfileQosPolicy.ignore resource profile (p. 1233) in com.rti.dds.infrastructure.ProfileQosPolicy
(p. 1231) is set to com.rti.dds.infrastructure.false (first to be loaded). An
example file, NDDS QOS PROFILES.example.xml, is available for reference.
The URL groups separated by semicolons referenced by the enviroment variable NDDS QOS PROFILES are loaded if they exist
and
com.rti.dds.infrastructure.ProfileQosPolicy.ignore environment profile (p. 1232) in com.rti.dds.infrastructure.ProfileQosPolicy
(p. 1231) is set to com.rti.dds.infrastructure.false.
The
file
USER QOS PROFILES.xml
in
the
working
directory
will
be
loaded
if
it
exists
and
com.rti.dds.infrastructure.ProfileQosPolicy.ignore user profile
(p. 1232) in com.rti.dds.infrastructure.ProfileQosPolicy (p. 1231) is
set to com.rti.dds.infrastructure.false.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
235
by
6.102.2
URL
The location of the XML resources (only files and strings are supported) is
specified using a URL (Uniform Resource Locator) format. For example:
File Specification: file:///usr/local/default dds.xml
String Specification:
library></dds>
str://<dds><qos library> .
lt;/qos -
If the URL schema name is omitted, RTI Connext will assume a file name. For
example:
File Specification: /usr/local/default dds.xml
6.102.2.1
URL groups
To provide redundancy and fault tolerance, you can specify multiple locations
for a single XML document via URL groups. The syntax of a URL group is as
follows:
[URL1 | URL2 | URL2 | . . .| URLn]
For example:
[file:///usr/local/default dds.xml | file:///usr/local/alternative default dds.xml]
Only one of the elements in the group will be loaded by RTI Connext, starting
from the left.
Brackets are not required for groups with a single URL.
6.102.2.2
236
Module Documentation
The URL groups referenced by the environment variable are loaded if they exist
and com.rti.dds.infrastructure.ProfileQosPolicy.ignore environment profile (p. 1232) is set to com.rti.dds.infrastructure.false
For more information on XML Configuration, refer to the Users Manual.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.103
Publication Example
6.103.1
Prep
Create user data types using rtiddsgen (p. 298)
Set up
Get the factory (p. 239)
Set up participant (p. 239)
Set up publisher (p. 247)
Register user data type(s) (p. 241)
Set up topic(s) (p. 241)
Set up data writer(s) (p. 248)
Adjust the desired quality of service (QoS)
Adjust QoS on entities as necessary (p. 257)
Send data
Send data (p. 249)
Tear down
Tear down data writer(s) (p. 249)
Tear down topic(s) (p. 241)
Tear down publisher (p. 247)
Tear down participant (p. 240)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
237
238
Module Documentation
6.104
Subscription Example
6.104.1
Prep
Create user data types using rtiddsgen (p. 298)
Set up
Get the factory (p. 239)
Set up participant (p. 239)
Set up subscriber (p. 250)
Register user data type(s) (p. 241)
Set up topic(s) (p. 241)
Set up data reader(s) (p. 253)
Set up data reader (p. 254) OR Set up subscriber (p. 250) to receive
data
Adjust the desired quality of service (QoS)
Adjust QoS on entities as necessary (p. 257)
Receive data
Access received data either via a reader (p. 254) OR via a subscriber
(p. 251) (possibly in a ordered or coherent (p. 252) manner)
Tear down
Tear down data reader(s) (p. 256)
Tear down topic(s) (p. 241)
Tear down subscriber (p. 252)
Tear down participant (p. 240)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.105
239
6.105.1
6.105.2
6.105.3
Setting up a participant
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
240
Module Documentation
/* Set the peer hosts. These list all the computers the application
may communicate with along with the maximum maximum participant
index of the participants that can concurrently run on that
computer. This list only needs to be a superset of the actual list
of computers and participants that will be running at any time.
*/
/* To run this example across multiple nodes, modify the following
IP addresses to match your network configuration.
*/
final String[] NDDS_DISCOVERY_INITIAL_PEERS = {
"1@udpv4://10.10.1.192",
"1@udpv4://10.10.1.190",
"1@udpv4://10.10.1.152"
};
participant_qos.discovery.initial_peers.
ensureCapacity(NDDS_DISCOVERY_INITIAL_PEERS.length);
for (int i = 0; i < NDDS_DISCOVERY_INITIAL_PEERS.length; ++i) {
participant_qos.discovery.initial_peers.add(
NDDS_DISCOVERY_INITIAL_PEERS[i]);
}
// Initialize listener if desired
DomainParticipantListener participant_listener = null;
6.105.4
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.106
241
6.106.1
6.106.2
Setting up a topic
6.106.3
Delete Topic:
try {
participant.delete_topic(topic);
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
242
Module Documentation
} catch (RETCODE_ERROR err) {
// handle exception
}
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.107
243
6.107.1
6.107.2
244
Module Documentation
6.107.3
245
lishing thread.
The thread accumulates samples from different
com.rti.dds.publication.DataWriter (p. 557) instances (across any
com.rti.dds.publication.Publisher (p. 1262)) and sends all data since
the previous trigger.
The properties of the built-in com.rti.dds.publication.FlowController
(p. 964) instances can be adjusted.
Set up participant (p. 239)
Lookup built-in flow controller
FlowController controller = null;
try {
controller = participant.lookup_flowcontroller(
FlowController.DEFAULT_FLOW_CONTROLLER_NAME);
} catch (RETCODE_ERROR err) {
// This should never happen, built-in flow controllers are always created
// handle exception
}
6.107.4
246
Module Documentation
Configure com.rti.dds.publication.DataWriter (p. 557) instances to
only use a single transport
Associate all data writers using the same transport to the corresponding flow controller (p. 243)
For each transport, the corresponding flow controller limits the network
traffic based on the token bucket properties
6.107.5
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.108
247
6.108.1
Setting up a publisher
6.108.2
Delete DDSPublisher:
try {
participant.delete_publisher(publisher);
} catch (RETCODE_ERROR err) {
// respond to exception
}
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
248
Module Documentation
6.109
6.109.1
6.109.2
Managing instances
// user data
try {
writer.get_key_value(data, instance_handle);
} catch (RETCODE_ERROR err) {
// ... check for cause of failure
}
249
try {
writer.unregister_instance(data, instance_handle);
} catch (RETCODE_ERROR err) {
// ... check for cause of failure
}
6.109.3
Sending data
// user data
InstanceHandle_t instance_handle
= InstanceHandle_t.HANDLE_NIL; // or a valid registered handle
try {
writer.write(data, instance_handle);
} catch (RETCODE_ERR err) {
// ... check for cause of failure
}
6.109.4
Delete DataWriter:
try {
publisher.delete_datawriter(writer);
} catch (RETCODE_ERR err) {
// ... check for cause of failure
}
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
250
Module Documentation
6.110
6.110.1
Setting up a subscriber
6.110.2
251
The processing to handle the status change is done when the subscribers attached status condition is triggered (p. 261) and the
DATA ON READERS STATUS status on the subscriber is changed.
Typical processing will access the received data (p. 251), either in
an arbitrary order or in a coherent and ordered manner (p. 252).
6.110.3
Upon successfully getting the list of readers with data, process the data
readers to either:
Read the data in each reader (p. 255), OR
Take the data in each reader (p. 254)
If the intent is to access the data coherently or in order (p. 252), the
list of data readers must be processed in the order returned:
for (int i = 0; i < reader_seq.size(); ++i) {
FooDataReader reader = (FooDataReader) reader_seq.get(i);
// Take the data from reader,
//
OR
// Read the data from reader
}
Alternatively, call com.rti.dds.subscription.Subscriber.notify datareaders (p. 1491) to invoke the DataReaderListener for each of the
data readers.
subscriber.notify_datareaders();
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
252
Module Documentation
6.110.4
Access received data via the subscriber, making sure that the
data readers are processed in the order returned. (p. 251)
Indicate that the data access via the subscriber is done:
subscriber.end_access();
6.110.5
Delete Subscriber:
try {
participant.delete_subscriber(subscriber);
} catch (RETCODE_ERROR err) {
// handle exception
}
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.111
253
6.111.1
6.111.2
Managing instances
254
Module Documentation
6.111.3
6.111.4
6.111.5
Taking data
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
255
instance_state_mask = InstanceStateMask.ANY_INSTANCE_STATE;
try {
reader.take(data_seq, info_seq,
max_samples,
sample_state_mask,
view_state_mask,
instance_state_mask);
} catch (RETCODE_ERROR) {
// ... check for cause of failure
}
Return the data samples and the information buffers back to the middleware. IMPORTANT : Once this call returns, you must not retain any
pointers to any part of any sample or sample info object.
reader.return_loan(data_seq, info_seq);
6.111.6
Reading data
try {
reader.read(data_seq, info_seq,
max_samples,
sample_state_mask,
view_state_mask,
instance_state_mask);
} catch (RETCODE_ERROR) {
// ... check for cause of failure
}
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
256
Module Documentation
Use the received data
// Use the received data samples data_seq and associated
// information info_seq
for (int i = 0; i < data_seq.size(); ++i) {
// use... data_seq.get(i) ...
// use... info_seq.get(i) ...
}
Return the data samples and the information buffers back to the middleware
reader.return_loan(data_seq, info_seq);
6.111.7
Delete DDSDataReader:
try {
subscriber.delete_datareader(reader);
} catch (RETCODE_ERROR err) {
// ... check for cause of failure
}
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.112
257
6.112.1
Enabling an entity
6.112.2
Check if status kind was changed since the last time it was cleared.
A plain communication status change is cleared when the status is read
using the entitys get <plain communication status>() method. A
read communication status change is cleared when the data is taken from
the middleware via a TDataReader take() call [see Changes in Status
(p. 111) for details].
if ((status_changes_list & status_kind) != 0) {
return true; /* ... YES, status_kind changed ... */
} else {
return false; /* ... NO, status_kind did NOT change ... */
}
6.112.3
The QoS for an entity can be specified at the entity creation time. Once an
entity has been created, its QoS can be manipulated as follows.
Get an entitys QoS settings using get qos (abstract) (p. 933)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
258
Module Documentation
try {
entity.get_qos(qos);
} catch (RETCODE_ERROR err) {
System.out.println("***Error: failed to get qos\n");
}
6.112.4
The listener for an entity can be specified at the entity creation time. By default
the listener is enabled for all the statuses supported by the entity.
Once an entity has been created, its listener and/or the statuses for which it is
enabled can be manipulated as follows.
User defines entity listener methods
/* ... methods defined by EntityListener ... */
public class MyEntityListener implements Listener {
// ... methods defined by EntityListener ...
}
259
enabled_status_list |= status_kind;
Set an entitys listener to entity listener using set listener (abstract) (p. 934). Only enable the listener for the statuses specified by
the enabled status list.
try {
entity.set_listener(entity_listener, enabled_status_list);
} catch (RETCODE_ERROR err) {
// respond to failure
}
6.112.5
Upon entity creation, by default, all the statuses are enabled for the DDS StatusCondition associated with the entity.
Once an entity has been created, the list of statuses for which the DDS StatusCondition is triggered can be manipulated as follows.
Given an entity, a status kind, and the associated status condition:
statuscondition = entity.get_statuscondition();
Check if the given status kind is enabled for the status condition
if ((enabled_status_list & status_kind) > 0) {
/*... YES, status_kind is enabled ... */
} else {
/* ... NO, status_kind is NOT enabled ... */
}
260
Module Documentation
Disable status kind for the status condition
try {
statuscondition.set_enabled_statuses(enabled_status_list & ~status_kind);
} catch (RETCODE_ERROR err) {
// ... check for cause of failure
}
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.113
261
6.113.1
Setting up a wait-set
Create a wait-set
WaitSet waitset = new WaitSet();
Attach conditions
Condition cond1 = ...;
Condition cond2 = entity.get_statuscondition();
Condition cond3 = reader.create_readcondition(
SampleStateKind.NOT_READ_SAMPLE_STATE,
ViewStateKind.ANY_VIEW_STATE,
InstanceStateKind.ANY_INSTANCE_STATE);
Condition cond4 = new GuardCondition();
Condition cond5 = ...;
waitset.attach_condition(cond1);
waitset.attach_condition(cond2);
waitset.attach_condition(cond3);
waitset.attach_condition(cond4);
waitset.attach_condition(cond5);
6.113.2
262
Module Documentation
System.out.println("Cond2 was triggered!");
is_cond2_triggered = true;
}
}
if (is_cond1_triggered) {
// ... do something because "cond1" was triggered ...
}
if (is_cond2_triggered) {
// ... do something because "cond2" was triggered ...
}
} catch (RETCODE_TIMEOUT timed_out) {
// timeout!
System.out.println(
"Wait timed out!! None of the conditions was triggered.");
} catch (RETCODE_ERROR ex) {
// ... check for cause of failure
throw ex;
}
6.113.3
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.114
263
6.114.1
6.114.2
say
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
264
Module Documentation
Change the property fields as desired. Note that the properties should be
changed carefully, as inappropriate values may prevent communications.
For example, the com.rti.ndds.transport.UDPv4Transport (p. 1668)
properties can be changed to support large messages (assuming the underlying operating systems UDPv4 stack supports the large message size).
Note: if message size max is increased from the default for any of the
built-in transports, then the DDS ReceiverPoolQosPolicy.buffer size on
the DomainParticipant should also be changed.
/* Increase the UDPv4 maximum message size to 64K (large messages). */
property.message_size_max
= 65535;
property.recv_socket_buffer_size = 65535;
property.send_socket_buffer_size = 65535;
say
TransportSupport.set_builtin_transport_property(participant, property);
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.115
265
6.115.1
Introduction
Overview of ContentFilteredTopic
Each
com.rti.dds.topic.ContentFilteredTopic
(p. 471)
is
created
based
on
an
existing
com.rti.dds.topic.Topic
(p. 1545).
The com.rti.dds.topic.Topic (p. 1545) specifies the field names
and field types of the data contained within the topic.
The
com.rti.dds.topic.ContentFilteredTopic (p. 471), by means of its filter expression and expression parameters, futher specifies the values of the
data which the com.rti.dds.subscription.DataReader (p. 487) wishes to
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
266
Module Documentation
receive.
Custom filters may also be constructed and utilized as described in the Creating Custom Content Filters (p. 271) module.
Once the com.rti.dds.topic.ContentFilteredTopic (p. 471) has been created, a com.rti.dds.subscription.DataReader (p. 487) can be created
using the filtered topic.
The filters characteristics are exchanged between the com.rti.dds.subscription.DataReader (p. 487) and any matching
com.rti.dds.publication.DataWriter (p. 557) during the discovery processs.
If the com.rti.dds.publication.DataWriter (p. 557) allows (by
com.rti.dds.infrastructure.DataWriterResourceLimitsQosPolicy.max (p. 623))
and
the
number
of
filtered
remote reader filters
com.rti.dds.subscription.DataReader (p. 487) is less than or equal
to 32, and the com.rti.dds.subscription.DataReader (p. 487) s
com.rti.dds.infrastructure.TransportMulticastQosPolicy
(p. 1590)
is empty, then the com.rti.dds.publication.DataWriter (p. 557) will performing filtering and send to the com.rti.dds.subscription.DataReader
(p. 487) only those samples that meet the filtering criteria.
If disallowed by the com.rti.dds.publication.DataWriter (p. 557), or
if more than 32 com.rti.dds.subscription.DataReader (p. 487) require
filtering, or the com.rti.dds.subscription.DataReader (p. 487) has set
the com.rti.dds.infrastructure.TransportMulticastQosPolicy (p. 1590),
then the com.rti.dds.publication.DataWriter (p. 557) sends all samples to the com.rti.dds.subscription.DataReader (p. 487), and the
com.rti.dds.subscription.DataReader (p. 487) discards any samples that
do not meet the filtering criteria.
Although the filter expression cannot be changed once the
com.rti.dds.topic.ContentFilteredTopic
(p. 471)
has
been
created,
the
expression parameters
can
be
modified
using
com.rti.dds.topic.ContentFilteredTopic.set expression parameters (p. 473).
Any changes made to the filtering criteria
by
means
of
com.rti.dds.topic.ContentFilteredTopic.set expression parameters (p. 473), will be conveyed to any conNew samples
nected com.rti.dds.publication.DataWriter (p. 557).
will be subject to the modified filtering criteria, but samples that
have already been accepted or rejected are unaffected.
However, if
the com.rti.dds.subscription.DataReader (p. 487) connects to a
com.rti.dds.publication.DataWriter (p. 557) that re-sends its data,
the re-sent samples will be subjected to the new filtering criteria.
6.115.1.2
Overview of QueryCondition
com.rti.dds.subscription.QueryCondition
(p. 1311)
combine
aspects
of
the
content
filtering
capabilities
of
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
267
com.rti.dds.topic.ContentFilteredTopic (p. 471) with state filtering capabilities of com.rti.dds.subscription.ReadCondition (p. 1313)
to create a reconfigurable means of filtering or searching data in the
com.rti.dds.subscription.DataReader (p. 487) queue.
com.rti.dds.subscription.QueryCondition (p. 1311) may be created on
a disabled com.rti.dds.subscription.DataReader (p. 487), or after the
com.rti.dds.subscription.DataReader (p. 487) has been enabled. If the
com.rti.dds.subscription.DataReader (p. 487) is enabled, and has already
recevied and stored samples in its queue, then all data samples in the are filtered against the com.rti.dds.subscription.QueryCondition (p. 1311) filter criteria at the time that the com.rti.dds.subscription.QueryCondition
(Note that an exclusive lock is held on the
(p. 1311) is created.
com.rti.dds.subscription.DataReader (p. 487) sample queue for the duration of the com.rti.dds.subscription.QueryCondition (p. 1311) creation).
Once
created,
incoming
samples
are
filtered
against
com.rti.dds.subscription.QueryCondition
(p. 1311)
filter
teria at the time of their arrival and storage into
com.rti.dds.subscription.DataReader (p. 487) queue.
all
crithe
6.115.2
268
Module Documentation
FooDataReader reader = (FooDataReader)
subscriber.create_datareader(
cft,
datareader_qos, // or Subscriber.DATAREADER_QOS_DEFAULT //
listener, // or null //
StatusKind.STATUS_MASK_ALL);
if (reader == null) {
System.err.println("create_datareader error\n");
return;
}
Once
setup,
reading
samples
with
a
com.rti.dds.topic.ContentFilteredTopic (p. 471) is exactly the
same as normal reads or takes, as decribed in DataReader Use Cases
(p. 253).
Changing filter crieria using set expression parameters:
cft_parameters.set(0, "5");
cft_parameters.set(1, "9");
cft.set_expression_parameters(cft_parameters);
6.115.3
Creating a QueryCondition
QueryCondition queryCondition = null;
String qc_param_list[] = {"1", "100"};
StringSeq qc_parameters = new StringSeq(java.util.Arrays.asList(cft_param_list));
queryCondition = reader.create_querycondition(SampleStateKind.NOT_READ_SAMPLE_STATE,
ViewStateKind.ANY_VIEW_STATE,
InstanceStateKind.ANY_INSTANCE_STATE,
"value > %0 AND value < %1",
qc_parameters);
if (queryCondition == null) {
System.err.println("create_querycondition error\n");
return;
}
269
to
Any
com.rti.dds.subscription.QueryCondition
(p. 1311)
that
have
been
created
must
be
deleted
before
the
com.rti.dds.subscription.DataReader (p. 487) can be deleted. This
can be done using com.rti.dds.subscription.DataReader.delete contained entities (p. 504) or manually as in:
retcode = reader.delete_readcondition(queryCondition);
6.115.4
Filtering Performance
270
Module Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.116
271
6.116.1
Introduction
By default, RTI Connext creates content filters with the DDS SQL FILTER,
which implements a superset of the DDS-specified SQL WHERE clause. However, in many cases this filter may not be what you want. Some examples are:
The default filter can only filter based on the content of a sample, not on a
computation on the content of a sample. You can use a custom filter that
is customized for a specific type and can filter based on a computation of
the type members.
You want to use a different filter language then SQL
This HOWTO explains how to write your own custom filter and is divided into
the following sections:
The Custom Content Filter API (p. 271)
Example Using C format strings (p. 272)
6.116.2
A
custom
content
filter
is
created
by
calling
the
com.rti.dds.domain.DomainParticipant.register contentfilter
(p. 728) function with a com.rti.dds.topic.ContentFilter (p. 467) that
contains a compile, an evaluate function and a finalize function.
com.rti.dds.topic.ContentFilteredTopic (p. 471) can be created with
com.rti.dds.domain.DomainParticipant.create contentfilteredtopic with filter (p. 702) to use this filter.
A custom content filter is used by RTI Connext at the following times during the
life-time of a com.rti.dds.topic.ContentFilteredTopic (p. 471) (the function
called is shown in parenthesis).
When a com.rti.dds.topic.ContentFilteredTopic (p. 471) is created
(compile (p. 272))
When
the
filter
parameters
are
changed
on
the
com.rti.dds.topic.ContentFilteredTopic (p. 471) (compile (p. 272))
with
com.rti.dds.topic.ContentFilteredTopic.set expression parameters (p. 473)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
272
Module Documentation
When a sample is filtered (evaluate (p. 272)). This function is called by
the RTI Connext core with a de-serialized sample
When a com.rti.dds.topic.ContentFilteredTopic (p. 471) is deleted
(finalize (p. 272))
6.116.2.1
The compile (p. 272) function is used to compile a filter expression and expression parameters. Please note that the term compile is intentionally loosely
defined. It is up to the user to decide what this function should do and return.
See com.rti.dds.topic.ContentFilter.compile (p. 468) for details.
6.116.2.2
The evaluate (p. 273) function is called each time a sample is received to determine if a sample should be filtered out and discarded.
See com.rti.dds.topic.ContentFilter.evaluate (p. 469) for details.
6.116.2.3
The finalize (p. 273) function is called when an instance of the custom content
filter is no longer needed. When this function is called, it is safe to free all
resources used by this particular instance of the custom content filter.
See com.rti.dds.topic.ContentFilter.finalize (p. 470) for details.
6.116.3
The first thing to note is that we can ignore the filter expression, since we
already know what the expression is. The second is that x is a parameter that
can be changed. By using this information, the compile function is very easy to
implement. Simply return the parameter string. This string will then be passed
to the evaluate function every time a sample of this type is filtered.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
273
6.116.3.2
The next step is to implement the evaluate function. The evaluate function
receives the parameter string with the actual value to test against. Thus the
evaluate function must read the actual value from the parameter string before
evaluating the expression. Below is the entire evaluate (p. 272) function.
public boolean evaluate(
Object compile_data, Object sample, FilterSampleInfo meta_data) {
String parameter = (String)compile_data;
int x;
Foo foo_sample = (Foo)sample;
x = Integer.parseInt(parameter);
return (foo_sample.x > x ? false : true);
}
6.116.3.3
The last function to write is the finalize function. It is safe to free all resources
used by this particular instance of the custom content filter that is allocated in
compile. Below is the entire finalize (p. 272) function.
public void finalize(
Object compile_data) {
/* nothing to do since no resource are allocated */
}
6.116.3.4
Before the custom filter can be used, it must be registered with RTI Connext:
ContentFilter myCustomFilter = new MyContentFilter();
participant.register_contentfilter("MyCustomFilter", myCustomFilter);
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
274
Module Documentation
6.116.3.5
When the filter is no longer needed, it can be unregistered from RTI Connext:
participant.unregister_contentfilter("MyCustomFilter");
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.117
275
6.117.1
Introduction
RTI Connext supports data types whose size exceeds the maximum message
size of the underlying transports. A com.rti.dds.publication.DataWriter
(p. 557) will fragment data samples when required. Fragments are automatically
reassembled at the receiving end.
Once all fragments of a sample have been received, the new sample is passed
to the com.rti.dds.subscription.DataReader (p. 487) which can then make
it available to the user. Note that the new sample is treated as a regular
sample at that point and its availability depends on standard QoS settings such
as com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max samples
(p. 1351) and com.rti.dds.infrastructure.HistoryQosPolicyKind.HistoryQosPolicyKind.KEEP LAST HISTORY QOS.
The large data feature is fully supported by all DDS APIs, so its use is mostly
transparent. Some additional considerations apply as explained below.
6.117.2
In
order
to
use
the
large
data
feature
with
the
com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQosPolicyKind.RELIABLE RELIABILITY QOS setting, the com.rti.dds.publication.DataWriter
(p. 557)
must
be
configured
as
an
asynchronous
writer
(com.rti.dds.infrastructure.PublishModeQosPolicyKind.PublishModeQosPolicyKind.ASYNCHRONOUS PUBLISH MODE QOS) with associated com.rti.dds.publication.FlowController
(p. 964).
While
the
use
of
an
asynchronous
writer
and
flow
controller
is
optional
when
using
the
com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQosPolicyKind.BEST EFFORT RELIABILITY QOS setting, most large data use cases will benefit
from the use of a flow controller to prevent flooding the network when fragments
are being sent.
Set up writer (p. 248)
Add flow control (p. 243)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
276
Module Documentation
6.117.3
Large data is supported by default and in most cases, no further changes are
required.
The com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy
allows
tuning
the
resources
available
to
the
(p. 542)
com.rti.dds.subscription.DataReader (p. 487) for reassembling fragmented large data.
Set up reader (p. 253)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.118
277
Documentation Roadmap
This section contains a roadmap for the new user with pointers on what to read
first.
If you are new to RTI Connext, we recommend starting in the following order:
See the Getting Started Guide. This document provides download and
installation instructions. It also lays out the core value and concepts
behind the product and takes you step-by-step through the creation of a
simple example application.
The Users Manual describes the features of the product and how to use
them. It is organized around the structure of the DDS APIs and certain
common high-level tasks.
The documentation in the DDS API Reference (p. 280) provides an
overview of API classes and modules for the DDS data-centric publishsubscribe (DCPS) package from a programmers perspective. Start by
reading the documentation on the main page.
After reading the high level module documentation, look at the Publication Example (p. 237) and Subscription Example (p. 238) for stepby-step examples of creating a publication and subscription. These are
hyperlinked code snippets to the full API documentation, and provide a
good place to begin learning the APIs.
Next, work through your own application using the example code files
generated by rtiddsgen (p. 298).
To integrate similar code into your own application and build system, you
will likely need to refer to the Platform Notes.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
278
Module Documentation
6.119
Conventions
6.119.1
Unsupported Features
[Not supported (optional)] This note means that the optional feature from
the DDS specification is not supported in the current release.
6.119.2
6.119.3
Stereotypes
Extensions
<<eXtension>> ( p. 278)
An RTI Connext product extension to the DDS standard specification.
The extension APIs complement the standard APIs specified by the
OMG DDS specification. They are provided to improve product
usability and enable access to product-specific features such as pluggable transports.
6.119.3.2
Experimental
<<experimental>> ( p. 278)
RTI Connext experimental features are used to evaluate new features
and get user feedback.
These features are not guaranteed to be fully supported and might be
implemented only of some of the programming languages supported
bt RTI Connext
The functional APIs corresponding to experimental features can be
distinguished from other APIs by the suffix exp.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.119 Conventions
279
Types
<<interface>> ( p. 279)
Pure interface type with no state.
Languages such as Java natively support the concept of an interface type, which is a collection of method signatures devoid of any
dynamic state.
In C++, this is achieved via a class with all pure virtual methods
and devoid of any instance variables (ie no dynamic state).
Interfaces are generally organized into a type hierarchy. Static typecasting along the interface type hierarchy is safe for valid objects.
<<generic>> ( p. 279)
A generic type is a skeleton class written in terms of generic parameters. Type-specific instantiations of such types are conventionally referred to in this documentation in terms of the hypothetical
type Foo; for example: FooSeq, FooDataType, FooDataWriter,
and FooDataReader.
<<singleton>> ( p. 279)
Singleton class. There is a single instance of the class.
Generally acccessed via a get instance() static method.
6.119.3.4
Method Parameters
<<in>> ( p. 279)
An input parameter.
<<out>> ( p. 279)
An output parameter.
<<inout>> ( p. 279)
An input and output parameter.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
280
Module Documentation
6.120
Modules
Domain Module
Contains the com.rti.dds.domain.DomainParticipant ( p. 654) class that
acts as an entrypoint of RTI Connext and acts as a factory for many of the
classes. The com.rti.dds.domain.DomainParticipant ( p. 654) also acts
as a container for the other objects that make up RTI Connext.
Topic Module
Contains
the
com.rti.dds.topic.Topic
( p. 1545),
com.rti.dds.topic.ContentFilteredTopic
( p. 471),
and
com.rti.dds.topic.MultiTopic
( p. 1190)
classes,
the
com.rti.dds.topic.TopicListener ( p. 1564) interface, and more generally,
all that is needed by an application to define com.rti.dds.topic.Topic
( p. 1545) objects and attach QoS policies to them.
Publication Module
Contains
the
com.rti.dds.publication.FlowController
( p. 964),
com.rti.dds.publication.Publisher
( p. 1262),
and
com.rti.dds.publication.DataWriter ( p. 557) classes as well as
the
com.rti.dds.publication.PublisherListener
( p. 1289)
and
com.rti.dds.publication.DataWriterListener
( p. 586)
interfaces,
and more generally, all that is needed on the publication side.
Subscription Module
Contains
the
com.rti.dds.subscription.Subscriber
( p. 1476),
com.rti.dds.subscription.DataReader
( p. 487),
and
com.rti.dds.subscription.ReadCondition
( p. 1313),
com.rti.dds.subscription.QueryCondition ( p. 1311) classes, as well
as the com.rti.dds.subscription.SubscriberListener ( p. 1503) and
com.rti.dds.subscription.DataReaderListener ( p. 518) interfaces, and
more generally, all that is needed on the subscription side.
Infrastructure Module
Defines the abstract classes and the interfaces that are refined by the other
modules. Contains common definitions such as return codes, status values,
and QoS policies.
6.120.1
281
Detailed Description
6.120.2
Overview
Information
flows
with
the
aid
of
the
following
constructs:
com.rti.dds.publication.Publisher
(p. 1262)
and
on
the
sendcom.rti.dds.publication.DataWriter
(p. 557)
ing
side,
com.rti.dds.subscription.Subscriber
(p. 1476)
and
com.rti.dds.subscription.DataReader (p. 487) on the receiving side.
A com.rti.dds.publication.Publisher (p. 1262) is an object responsible for data distribution.
It may publish data of different data types.
A TDataWriter acts as a typed (i.e.
each
com.rti.dds.publication.DataWriter (p. 557) object is dedicated
to one application data type) accessor to a publisher.
A
com.rti.dds.publication.DataWriter (p. 557) is the object the application must use to communicate to a publisher the existence and value of
data objects of a given type. When data object values have been communicated to the publisher through the appropriate data-writer, it is the
publishers responsibility to perform the distribution (the publisher will do
this according to its own QoS, or the QoS attached to the corresponding
data-writer). A publication is defined by the association of a data-writer
to a publisher. This association expresses the intent of the application to
publish the data described by the data-writer in the context provided by
the publisher.
A com.rti.dds.subscription.Subscriber (p. 1476) is an object responsible for receiving published data and making it available (according to
the Subscribers QoS) to the receiving application. It may receive and
dispatch data of different specified types. To access the received data, the
application must use a typed TDataReader attached to the subscriber.
Thus, a subscription is defined by the association of a data-reader with
a subscriber. This association expresses the intent of the application to
subscribe to the data described by the data-reader in the context provided
by the subscriber.
com.rti.dds.topic.Topic (p. 1545) objects conceptually fit between publications and subscriptions. Publications must be known in such a way that
subscriptions can refer to them unambiguously. A com.rti.dds.topic.Topic
(p. 1545) is meant to fulfill that purpose: it associates a name (unique in the
domain i.e. the set of applications that are communicating with each other),
a data type, and QoS related to the data itself. In addition to the topic
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
282
Module Documentation
QoS, the QoS of the com.rti.dds.publication.DataWriter (p. 557) associated with that Topic and the QoS of the com.rti.dds.publication.Publisher
(p. 1262) associated to the com.rti.dds.publication.DataWriter (p. 557)
control the behavior on the publishers side, while the corresponding
com.rti.dds.topic.Topic (p. 1545), com.rti.dds.subscription.DataReader
(p. 487) and com.rti.dds.subscription.Subscriber (p. 1476) QoS control the
behavior on the subscribers side.
When an application wishes to publish data of a given type, it
must create a com.rti.dds.publication.Publisher (p. 1262) (or reuse
an already created one) and a com.rti.dds.publication.DataWriter
Sim(p. 557) with all the characteristics of the desired publication.
ilarly, when an application wishes to receive data, it must create a
com.rti.dds.subscription.Subscriber (p. 1476) (or reuse an already created
one) and a com.rti.dds.subscription.DataReader (p. 487) to define the subscription.
6.120.3
Conceptual Model
283
jects for the com.rti.dds.subscription.DataReader (p. 487)); conditions (in conjunction with com.rti.dds.infrastructure.WaitSet
(p. 1709) objects) provide support for an alternate communication style
between the middleware and the application (i.e., wait-based rather than
notification-based).
All DCPS entities are attached to a com.rti.dds.domain.DomainParticipant
(p. 654). A domain participant represents the local membership of the application in a domain. A domain is a distributed concept that links all the
applications able to communicate with each other. It represents a communication plane: only the publishers and the subscribers attached to the same
domain may interact.
com.rti.dds.infrastructure.DomainEntity (p. 653) is an intermediate object whose only purpose is to state that a DomainParticipant cannot contain
other domain participants.
At the DCPS level, data types represent information that is sent atomically.
For performance reasons, only plain data structures are handled by this level.
By default, each data modification is propagated individually, independently, and uncorrelated with other modifications. However, an application may request that several modifications be sent as a whole and interpreted as such at the recipient side. This functionality is offered on a Publisher/Subscriber basis. That is, these relationships can only be specified
among com.rti.dds.publication.DataWriter (p. 557) objects attached to
the same com.rti.dds.publication.Publisher (p. 1262) and retrieved among
com.rti.dds.subscription.DataReader (p. 487) objects attached to the same
com.rti.dds.subscription.Subscriber (p. 1476).
By definition, a com.rti.dds.topic.Topic (p. 1545) corresponds to a single data
type. However, several topics may refer to the same data type. Therefore, a
com.rti.dds.topic.Topic (p. 1545) identifies data of a single type, ranging from
one single instance to a whole collection of instances of that given type. This is
shown below for the hypothetical data type Foo.
In case a set of instances is gathered under the same topic, different instances
must be distinguishable. This is achieved by means of the values of some data
fields that form the key to that data set. The key description (i.e., the list of
data fields whose value forms the key) has to be indicated to the middleware.
The rule is simple: different data samples with the same key value represent
successive values for the same instance, while different data samples with different key values represent different instances. If no key is provided, the data set
associated with the com.rti.dds.topic.Topic (p. 1545) is restricted to a single
instance.
Topics need to be known by the middleware and potentially propagated. Topic objects are created using the create operations provided by
com.rti.dds.domain.DomainParticipant (p. 654).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
284
Module Documentation
The interaction style is straightforward on the publishers side: when the application decides that it wants to make data available for publication, it calls the
appropriate operation on the related com.rti.dds.publication.DataWriter
(p. 557) (this, in turn, will trigger its com.rti.dds.publication.Publisher
(p. 1262)).
On the subscribers side however, there are more choices: relevant information may arrive when the application is busy doing something else or when
the application is just waiting for that information. Therefore, depending
on the way the application is designed, asynchronous notifications or synchronous access may be more appropriate. Both interaction modes are allowed,
a com.rti.dds.infrastructure.Listener (p. 1130) is used to provide a callback
for synchronous access and a com.rti.dds.infrastructure.WaitSet (p. 1709)
associated with one or several com.rti.dds.infrastructure.Condition
(p. 464) objects provides asynchronous data access.
The same synchronous and asynchronous interaction modes can also be used
to access changes that affect the middleware communication status (see Status Kinds (p. 110)). For instance, this may occur when the middleware asynchronously detects an inconsistency. In addition, other middleware information
that may be relevant to the application (such as the list of the existing topics)
is made available by means of built-in topics (p. 157) that the application can
access as plain application data, using built-in data-readers.
6.120.4
Modules
285
Publication
module
(p. 180)
contains
the
and
com.rti.dds.publication.Publisher
(p. 1262)
com.rti.dds.publication.DataWriter (p. 557) classes as well as
the com.rti.dds.publication.PublisherListener (p. 1289) and
com.rti.dds.publication.DataWriterListener (p. 586) interfaces, and
more generally, all that is needed on the publication side.
Subscription
module
(p. 192)
contains
the
com.rti.dds.subscription.Subscriber
(p. 1476),
com.rti.dds.subscription.DataReader
(p. 487),
com.rti.dds.subscription.ReadCondition
(p. 1313),
and
com.rti.dds.subscription.QueryCondition (p. 1311) classes, as
well as the com.rti.dds.subscription.SubscriberListener (p. 1503)
and com.rti.dds.subscription.DataReaderListener (p. 518) interfaces, and more generally, all that is needed on the subscription
side.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
286
Module Documentation
6.121
6.121.1
6.121.2
FIELD-
Selection
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
287
MATCH
288
Module Documentation
.
Note INNER JOIN, INNER NATURAL JOIN, NATURAL JOIN, and NATURAL INNER JOIN are all aliases, in the sense that they have the same semantics. They are all supported because they all are part of the SQL standard.
6.121.3
Token expression
The syntax and meaning of the tokens used in the SQL grammar is described
as follows:
IDENTIFIER - An identifier for a FIELDNAME, and is defined as any
series of characters a, ..., z, A, ..., Z, 0, ..., 9, but may not start
with a digit.
Formal notation:
IDENTIFIER: LETTER ( PART LETTER )*
where LETTER : [ "A"-"Z"," ","a"-"z" ]
PART LETTER : [ "A"-"Z"," ","a"-"z","0"-"9" ]
289
IDL Type
boolean
octet, (unsigned) short, (unsigned)
long, (unsigned) long long
float, double
char, wchar
string, wstring
enum
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
290
Module Documentation
STRING - Any series of characters encapsulated in single quotes, except
the single quote itself.
Formal notation:
STRING : "" (~[""])* ""
6.121.4
String Parameters
Strings used as parameter values must contain the enclosing quotation marks
() within the parameter value, and not place the quotation marks within the
expression statement. For example, the following expression is legal:
" symbol MATCH %0 " with parameter 0 = " IBM "
6.121.5
291
Only certain combination of type comparisons are valid in Predicate. The following table marked all the compatible pairs with YES:
INTEENUBOOLEANFLOAT- CHAR- STRING MERGERVALUE
VALUE
VALUE VALUE
ATEDVALUE
YES
BOOLEAN
INTEYES
YES
GERVALUE
YES
YES
FLOATVALUE
YES
YES
YES
CHARVALUE
YES
YES
STRING
YES(1)
ENUYES
MERYES(2) YES(2) YES(3)
ATEDVALUE
(1) See SQL Extension: Regular Expression Matching (p. 291)
(2) Because the formal notation of the Enumeration values, they are
compatible with string and char literals, but they are not compatible with
string or char variables, i.e., MyEnum=EnumValue would be correct,
but MyEnum=MyString is not allowed.
(3) Only for same type Enums.
6.121.6
The relational operator MATCH may only be used with string fields. The righthand operator is a string pattern. A string pattern specifies a template that
the left-hand field value must match. The characters ,/?[]- !% have special
meanings.
MATCH is case-sensitive.
The pattern allows limited wild card matching under the following rules:
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
292
Module Documentation
Character
,
[charlist]
[s-e]
%
[!charlist] or [ charlist]
[!s-e] or [ s-e]
\
Meaning
, separates a list of alternate
patterns. The field string is
matched if it matches one or more
of the patterns.
/ in the pattern string matches a
/ in the field string. This character
is used to separate a sequence of
mandatory substrings.
? in the pattern string matches
any single non-special characters in
the field string.
in the pattern string matches 0
or more non-special characters in
field string.
Matches any one of the characters
from the list of characters in
charlist.
Matches any character any
character from s to e, inclusive.
% is used to designate filter
expressions parameters.
Matches any characters not in
charlist (not supported).
Matches any characters not in the
interval [s-e] (not supported).
Escape character for special
characters (not supported)
The syntax is similar to the POSIX fnmatch syntax (1003.2-1992 section B.6).
The MATCH syntax is also similar to the subject strings of TIBCO Rendezvous.
6.121.7
Examples
Examples
of
filter expression
using
MATCH
(for
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
293
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
294
Module Documentation
6.122
Modules
Clock Selection
APIs related to clock selection.
Multi-channel DataWriters
APIs related to Multi-channel DataWriters.
Pluggable Transports
APIs related to RTI Connext pluggable transports.
Configuration Utilities
Utility APIs independent of the DDS standard.
System Properties
System Properties.
6.122.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.123
295
Programming How-Tos
These How Tos illustrate how to apply RTI Connext APIs to common use
cases.
Modules
Publication Example
A data publication example.
Subscription Example
A data subscription example.
296
Module Documentation
6.123.1
Detailed Description
These How Tos illustrate how to apply RTI Connext APIs to common use
cases.
These are a good starting point to familiarize yourself with DDS. You can use
these code fragments as templates for writing your own code.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.124
297
Programming Tools
Modules
rtiddsgen
Generates source code from data types declared in IDL, XML, XSD, or
WSDL files.
rtiddsping
Sends or receives simple messages using RTI Connext.
rtiddsspy
Debugging tool which receives all RTI Connext communication.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
298
Module Documentation
6.125
rtiddsgen
Generates source code from data types declared in IDL, XML, XSD, or WSDL
files. Generates code necessary to allocate, send, receive, and print user-defined
data types.
6.125.1
Usage
6.125 rtiddsgen
299
-d Specifies where to put the generated files. If omitted, the input files directory
is used.
-language Generates output for only the language specified. The default is
C++.
Use of generated Ada 2005 code requires installation of RTI Ada 2005 Language
Support. Please contact support@rti.com for more information.
-namespace Specifies the use of C++ namespaces (for C++ only).
-package Specifies a packagePrefix to use as the root package (for Java only).
-example Generates example programs and makefiles (for UNIX-based systems) or workspace and project files (for Windows systems) based on the input
types description file.
The <arch> parameter specifies the architecture for the example makefiles.
For -language C/C++, valid options for <arch> are:
sparcSol2.9gcc3.2,
sparc64Sol2.10gcc3.4.2,
x64Sol2.10gcc3.4.3,
sparcSol2.9cc5.4,
i86Sol2.9gcc3.3.2,
sparcSol2.10gcc3.4.2,
i86Sol2.10gcc3.4.4,
i86Linux2.6gcc3.4.3,
x64Linux2.6gcc3.4.5,
x64Linux2.6gcc4.1.1,
i86Linux2.6gcc4.1.2,
i86Linux2.6gcc4.2.1,
i86Linux2.6gcc4.4.3,
x64Linux2.6gcc4.3.4,
i86Linux2.6gcc4.4.5,
i86Linux2.6gcc3.4.6,
i86RedHawk5.1gcc4.1.2,
x64Linux2.6gcc4.4.4,
x64Linux2.6gcc4.5.1,
x64Suse10.1gcc4.1.0,
cell64Linux2.6gcc4.5.1,
i86WRLinux2.6gcc4.3.2, x64WRLinux2.6gcc4.4.1,
i86Linux2.6gcc4.1.1,
x64Linux2.6gcc4.1.2,
x64Linux2.6gcc4.4.3,
x64Linux2.6gcc4.4.5,
i86RedHawk5.4gcc4.2.1,
i86Suse10.1gcc4.1.0,
armv7leLinux2.6gcc4.4.1,
x64Darwin10gcc4.2.1,
ppc4xxFPLinux2.6gcc4.3.3,
ppc7400Linux2.6gcc3.3.3,
ppc85xxLinux2.6gcc4.3.2, ppc85xxWRLinux2.6gcc4.3.2,
i86Win32VS2005, x64Win64VS2005,
i86Win32VS2010, x64Win64VS2010,
ppc85xxInty5.0.11.xes-p2020,
mInty10.0.0.pcx86,
i86Win32VS2008,
x64Win64VS2008,
mpc8349Inty5.0.11.mds8349,
pentiu-
ppc7400Lynx4.0.0gcc3.2.2,
ppc7400Lynx4.2.0gcc3.2.2,
ppc750Lynx4.0.0gcc3.2.2, ppc7400Lynx5.0.0gcc3.4.3, i86Lynx4.0.0gcc3.2.2,
ppc604Vx5.5gcc, ppc603Vx5.5gcc, ppc604Vx6.3gcc3.4.4, ppc604Vx6.3gcc3.4.4 rtp, ppc604Vx6.5gcc3.4.4, ppc604Vx6.5gcc3.4.4 rtp, pentiumVx6.6gcc4.1.2,
pentiumVx6.6gcc4.1.2 rtp,
ppc405Vx6.6gcc4.1.2,
ppc405Vx6.6gcc4.1.2 rtp,
ppc604Vx6.6gcc4.1.2,
ppc604Vx6.6gcc4.1.2 rtp,
pentiumVx6.7gcc4.1.2,
pentiumVx6.7gcc4.1.2 rtp,
ppc604Vx6.7gcc4.1.2,
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
300
Module Documentation
x64Win64dotnet2.0,
i86Win32dotnet4.0,
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.125 rtiddsgen
301
CORBA support requires the RTI CORBA Compatibility Kit, an addon product that provides a different version of rtiddsgen. Please contact
support@rti.com for more information.
-optimization Sets the optimization level. (Only applies to C/C++)
0 (default): No optimization.
1: Compiler generates extra code for typedefs but optimizes its use. If the
type that is used is a typedef that can be resolved either to a primitive type
or to another type defined in the same file, the generated code will invoke
the code of the most basic type to which the typedef can be resolved,
unless the most basic type is an array or a sequence. This level can be
used if the generated code is not expected to be modified.
2: Maximum optimization. Functionally the same as level 1, but extra
code for typedef is not generated. This level can be used if the typedefs
are only referred by types within the same file.
-typeSequenceSuffix Assigns a suffix to the name of the implicit sequence
defined for IDL types. (Only applies to CORBA)
By default, the suffix is Seq. For example, given the type Foo the name of
the implicit sequence will be FooSeq.
-dataReaderSuffix Assigns a suffix to the name of the DataReader interface.
(Only applies to CORBA)
By default, the suffix is DataReader. For example, given the type Foo the
name of the DataReader interface will be FooDataReader.
-dataWriterSuffix Assigns a suffix to the name of the DataWriter interface.
(Only applies to CORBA)
By default, the suffix is DataWriter. For example, given the type Foo the
name of the DataWriter interface will be FooDataWriter.
-stringSize Sets the size for unbounded strings. Default: 255 bytes.
-sequenceSize Sets the size for unbounded sequences. Default: 100 elements.
-notypecode: Disables the generation of type code information.
-ppDisable: Disables the preprocessor.
-ppPath <preprocessor executable>: Specifies the preprocessor path. If you
only specify the name of an executable (not a complete path to that executable),
the executable must be found in your Path.
The default value is cpp for non-Windows architectures, cl.exe for Windows
architectures.
If the default preprocessor is not found in your Path and you use -ppPath
to provide its full path and filename, you must also use -ppOption (described
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
302
Module Documentation
6.125 rtiddsgen
303
6.125.2
Description
304
Module Documentation
6.125.3
C++ Example
XML notation
<?xml version="1.0" encoding="UTF-8"?>
<types xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:noNamespaceSchemaLocation="rti dds topic types.xsd">
<struct name="myDataType">
<member name="value" type="long"/>
</struct>
</types>
XSD notation
WSDL notation
6.125 rtiddsgen
305
</xsd:schema>
</types>
</definitions>
Assuming the name of the idl file is myFileName.(idl|xml|xsd|wsdl) then all you
need to do is type:
rtiddsgen myFileName.(idl|xml|xsd|wsdl)
This generates myFileName.cxx, myFileName.h, myFileNamePlugin.cxx, myFileNamePlugin.h, myFileNameSupport.cxx and myFileNameSupport.h. By
default, rtiddsgen will not overwrite these files. You must use the -replace
argument to do that.
6.125.4
IDL Language
In the IDL language, data types are described in a fashion almost identical to
structures in C. The complete description of the language can be found at the
OMG website.
rtiddsgen does not support the full IDL language.
For detailed information about the IDL support in RTI Connext see Chapter 3
in the Users Manual.
The supported IDL types are:
char
wchar
octet
short
unsigned short
long
unsigned long
long long
unsigned long long
float
double
long double
boolean
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
306
Module Documentation
bounded string
unbounded string
bounded wstring
unbounded wstring
enum
typedef
struct
valuetypes (limited support)
union
sequences
unbounded sequences
arrays
array of sequences
constant
6.125 rtiddsgen
307
You can specify multiple types in a single IDL file. This can simplify management of files in your distributed program.
Use of Directives in an IDL File
The following directives can be used in your IDL file: Note: Do not put a space
between the slashes and the @ sign. Note: Directives are case-sensitive (for
example: use key, not Key).
//@key Specifies that the field declared just before this directive in the
enclosing structure is part of the key. Any number of a structures fields
may be declared part of the key.
//@copy Copies a line of text (verbatim) into the generated code (for all
languages). The text is copied into all the type-specific files generated by
rtiddsgen except the examples.
//@copy-declaration Like //@copy, but only copies the text into the file
where the type is declared (<type>.h for C++/C, or <type>.java for
Java).
//@copy-c Like //@copy, but for C++/C-only code.
//@copy-c-declaration Like //@copy-declaration, but for C++/C-only
code.
//@copy-java Like //@copy, but for Java-only code.
//@copy-java-begin Copies a line of text at the beginning of all the Java
files generated for a type. The directive only applies to the first type that
is immediately below in the IDL file.
//@copy-java-declaration Like //@copy-declaration, but for Java-only
code.
//@copy-java-declaration-begin Like //@copy-java-begin but only copies
the text into the file where the type is declared.
//@copy-ada Like //@copy, but for Ada-only code.
//@copy-ada-begin Like //@copy-java-begin, but for Ada-only code.
//@copy-ada-declaration Like //@copy-declaration, but for Ada-only
code.
//@copy-ada-declaration-begin Like //@copy-java-declaration, but for
Ada-only code.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
308
Module Documentation
//@resolve-name [true|false] Specifies whether or not rtiddsgen should resolve the scope of a type. If this directive is not present or is set to true,
rtiddsgen resolves the scope. Otherwise rtiddsgen delegates the resolution
of a type to the user.
//@top-level [true|false] Specifies whether or not rtiddsgen should generate
type-support code for a particular struct or union. The default is true.
6.125.5
XML Language
can
be
under
The
XSD
definition
of
the
XML
elements
found
in
../../../resource/xsd/rti dds topic types.xsd
<NDDSHOME>/resource/rtiddsgen/schema.
can
be
under
The XML validation performed by rtiddsgen always uses the DTD definition.
If the <!DOCTYPE> tag is not present in the XML file, rtiddsgen will look for
the DTD document under <NDDSHOME>/resource/rtiddsgen/schema. Otherwise, it will use the location specified in <!DOCTYPE>.
For detailed information about the mapping between IDL and XML, see Chapter
3 in the Users Manual.
6.125.6
XSD Language
The data types can be described using XML schemas (XSD files). The XSD
specification is based on the standard IDL to WSDL mapping described in the
OMG document CORBA to WSDL/SOAP Interworking Specification
For detailed information about the mapping between IDL and XML see Chapter
3 in the Users Manual.
6.125.7
WSDL Language
The data types can be described using XML schemas contained in WSDL
files. The XSD specification is based on the standard IDL to WSDL mapping described in the OMG document CORBA to WSDL/SOAP Interworking
Specification
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.125 rtiddsgen
309
For detailed information about the mapping between IDL and XML see Chapter
3 in the Users Manual.
6.125.8
You can use the generated type-specific source and header files without linking
the RTI Connext libraries or even including the RTI Connext header files. That
is, the generated files for your data types can be used standalone.
The directory <NDDSHOME>/resource/rtiddsgen/standalone contains the
helper files required to work in standalone mode:
include: header and templates files for C/C++.
src: source files for C/C++.
class: Java jar file.
Using Standalone Types in C
The generated files that can be used standalone are:
<idl file name>.c : Types source file
<idl file name>.h : Types header file
You cannot use the type plug-in (<idl file>Plugin.c <idl file>Plugin.h) or the
type support (<idl file>Support.c <idl file>Support.h) code standalone.
To use the rtiddsgen-generated types in a standalone manner:
Include the directory <NDDSHOME>/resource/rtiddsgen/standalone/include
in the list of directories to be searched for header files.
Add the source files ndds standalone type.c and <idl file name>.c to your
project.
Include the file <idl file name>.h in the source files that will use the
generated types in a standalone way.
Compile the project using the two following preprocessor definitions:
NDDS STANDALONE TYPE
The definition for your platform: RTI VXWORKS, RTI QNX, RTI WIN32, RTI INTY, RTI LYNX or RTI UNIX
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
310
Module Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.126 rtiddsping
6.126
311
rtiddsping
Sends or receives simple messages using RTI Connext. The rtiddsping utility
uses RTI Connext to send and receive preconfigured Ping messages to other
rtiddsping applications which can be running in the same or different computers.
The rtiddsping utility can used to test the network and/or computer configuration and the environment settings that affect the operation of RTI Connext.
Usage
rtiddsping [-help] [-version]
[-domainId <domainId>]
... defaults to 0
[-index <NN>]
... defaults to -1 (auto)
[-appId <ID>]
... defaults to a middleware-selected value
[-Verbosity <NN>]
... can be 0..5
[-peer <PEER>]
... PEER format is NN@TRANSPORT://ADDRESS
[-discoveryTTL <NN>]
... can be 0..255
[-transport <MASK>]
... defaults to DDS TRANSPORTBUILTIN MASK DEFAULT
[-msgMaxSize <SIZE>]
... defaults to -1 (transport default)
[-shmRcvSize <SIZE>]
... defaults to -1 (transport default)
[-deadline
<SS>]
... defaults to -1 (no deadline)
[-durability <TYPE>]
... TYPE can be VOLATILE or TRANSIENT LOCAL
[-multicast <ADDRESS>]
... defaults to no multicast
[-numSamples <NN>]
... defaults to infinite
[-publisher]
... this is the default
[-queueSize <NN>]
... defaults to 1
[-reliable]
... defaults to best-efforts
[-sendPeriod <SS>]
... SS is in seconds, defaults to 1
[-subscriber]
[-timeFilter <SS>]
... defaults to 0 (no filter)
[-timeout
<SS>]
... SS is in seconds, defaults to infinite
[-topicName <NAME>]
... defaults to PingTopic
[-typeName
<NAME>]
... defaults to PingType
[-useKeys
<NN>]
... defaults to PingType
[-qosFile <file>]
[-qosProfile <lib.prof>]
Example: rtiddsping -domainId 3 -publisher -numSamples 100
VxWorks Usage
rtiddsping "[<options>]"
The options use the same syntax as above.
Example rtiddsping "-domainId 3 -publisher -numSamples 100"
If the stack of the shell is not large enough to run rtiddsping, use "taskSpawn":
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
312
Module Documentation
Options:
-help Prints a help message and exits.
-version Prints the version and exits.
-Verbosity <NN> Sets the verbosity level. The range is 0 to 5.
0 has minimal output and does not echo the fact that data is being sent or
received.
1 prints the most relevant statuses, including the sending and receiving of data.
This is the default.
2 prints a summary of the parameters that are in use and echoes more detailed
status messages.
3-5 Mostly affects the verbosity used by the internal RTI Connext modules that
implement rtiddsping. The output is not always readable; its main purpose is
to provide information that may be useful to RTIs support team.
Example: rtiddsping -Verbosity 2
-domainId <NN>
Sets the domain ID. The valid range is 0 to 100.
Example: rtiddsping -domainId 31
-appId <ID>
Sets the application ID. If unspecified, the system will pick one automatically.
This option is rarely used.
Example: rtiddsping -appId 34556
-index <NN>
Sets the participantIndex. If participantIndex is not -1 (auto), it must be different than the one used by all other applications in the same computer and
domainId. If this is not respected, rtiddsping (or the application that starts
last) will get an initialization error.
Example: rtiddsping -index 2
-peer <PEER>
Specifies a PEER to be used for discovery. Like any RTI Connext application, it
defaults to the setting of the environment variable NDDS DISCOVERY PEERS
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.126 rtiddsping
313
314
Module Documentation
-deadline <SS>
This option only applies if the -subscriber option is also specified.
Sets the DEADLINE QoS for the subscriptions made by rtiddsping.
Note that this may cause the subscription QoS to be incompatible with the
publisher if the publisher did not specify a sendPeriod greater than the deadline.
If the QoS is incompatible, rtiddsping will not receive updates.
Each time a deadline is detected, rtiddsping will print a message indicating the
number of deadlines received so far.
Example: rtiddsping -deadline 3.5
-durability <TYPE>
Sets the DURABILITY QoS used for publishing or subscribing. Valid settings
are: VOLATILE and TRANSIENT LOCAL (default). The effect of this setting
can only be observed when it is used in in conjunction with reliability and a
queueSize larger than 1. If all these conditions are met, a late-joining subscriber
will be able to see up to queueSize samples that were previously written by the
publisher.
Example: rtiddsping -durability VOLATILE
-multicast <ADDRESS>
This option only applies if the -subscriber option is also specified.
Configures ping to receive messages over multicast. The <ADDRESS> parameter indicates the address to use. ADDRESS must be in the valid range for multicast addresses. For IP version 4 the valid range is 224.0.0.1 to 239.255.255.255
Example: rtiddsping -multicast 225.1.1.1
-numSamples <NN>
Sets the number of samples that will be sent by rtiddsping. After those samples
are sent, rtiddsping will exit. messages.
Example: rtiddsping -numSamples 10
-publisher
Causes rtiddsping to send ping messages. This is the default.
Example: rtiddsping -publisher
-queueSize <NN>
Specifies the maximal number of samples to hold in the queue. In the case of the
publisher, it affects the samples that are available for a late-joining subscriber.
Example: rtiddsping -queueSize 100
-reliable
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.126 rtiddsping
315
316
Module Documentation
The value of NN only affects the publishing behavior. However NN still needs
to be specified when the -useKeys option is used with the -subscriber option.
For communication to occur, both the publisher and subscriber must agree on
whether the topic that they publish/subscribe contains a key. Consequently, if
you specify the -useKeys parameter for the publisher, you must do the same
with the subscriber. Otherwise communication will not be stablished.
Example: rtiddsping -useKeys 20
-qosFile <file>
Allow you to specify additional QoS XML settings using url profile. For more
information on the syntax, see Chapter 15 in the RTI Connext Users Manual.
Example: rtiddsping -qosFile /home/user/QoSProfileFile.xml
-qosProfile <lib.prof>
This option specifies the library name and profile name that the tool should use.
QoS settings
rtiddsping is configured internally using a special set of QoS settings in a profile called InternalPingLibrary.InternalPingProfile. This is the default profile
unless a profile called DefaultPingLibrary.DefaultPingProfile is found. You can
use the command-line option -qosProfile to tell rtiddsping to use a different
lib.profile instead of DefaultPingLibrary.DefaultPingProfile. Like all the other
RTI Connext applications, rtiddsping loads all the profiles specified using the
environment variable NDDS QOS PROFILES or the file named USER QOS PROFILES found in the current working directory.
The QoS settings used internally are available in the file RTIDDSSPING QOS PROFILES.example.xml.
Description
The usage depends on the operating system from which rtiddsping is executed.
Examples for UNIX, Linux, and Windows Systems
On UNIX, Linux, Windows and other operating systems that have a shell, the
syntax matches the one of the regular commands available in the shell. In the
examples below, the string shell prompt> represents the prompt that the shell
prints and are not part of the command that must be typed.
shell prompt>
shell prompt>
shell prompt>
VxWorks examples:
On VxWorks systems, the libraries libnddscore.so, libnddsc.so and libnddscpp.so
must first be loaded. The rtiddsping command must be typed to the VxWorks
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.126 rtiddsping
317
shell (either an rlogin shell, a target-server shell, or the serial line prompt). The
arguments are passed embedded into a single string, but otherwise have the
same syntax as for Unix/Windows. In the Unix, Linux, Windows and other
operating systems that have a shell, the syntax matches the one of the regular
commands available in the shell. In the examples below, the string vxworks
prompt> represents the prompt that the shell prints and are not part of the
command that must be typed.
vxworks prompt>
vxworks prompt>
vxworks prompt>
vxworks prompt> taskSpawn "rtiddsping", 100, 0x8, 50000, rtiddsping, "-domainId 3 -publisher -numSamples 100
vxworks prompt> taskSpawn "rtiddsping", 100, 0x8, 50000, rtiddsping, "-domainId 5 -subscriber -timeout 20"
vxworks prompt> taskSpawn "rtiddsping", 100, 0x8, 50000, rtiddsping, "-help"
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
318
Module Documentation
6.127
rtiddsspy
Debugging tool which receives all RTI Connext communication. The rtiddsspy
utility allows the user to monitor groups of publications available on any RTI
Connext domain.
Note: If you have more than one DataWriter for the same Topic, and these
DataWriters have different settings for the Ownership QoS, then rtiddsspy will
only receive (and thus report on) the samples from the first DataWriter.
To run rtiddsspy, like any RTI Connext application, you must have the NDDS DISCOVERY PEERS environment variable that defines your RTI Connext domain; otherwise you must specify the peers as command line parameters.
Usage
rtiddsspy [-help] [-version]
[-domainId <domainId>]
[-index <NN>]
[-appId <ID>]
[-Verbosity <NN>]
[-peer <PEER>]
[-discoveryTTL <NN>]
[-transport <MASK>]
[-msgMaxSize <SIZE>]
[-shmRcvSize <SIZE>]
[-tcMaxSize <SIZE>]
[-hOutput]
[-deadline
<SS>]
[-history
<DEPTH>]
[-timeFilter <SS>]
[-useFirstPublicationQos]
[-showHandle]
[-typeRegex <REGEX>]
[-topicRegex <REGEX>]
[-typeWidth <WIDTH>]
[-topicWidth <WIDTH>]
[-truncate]
[-printSample]
[-qosFile <file>]
[-qosProfile <lib.prof>]
...
...
...
...
...
...
...
...
...
...
defaults to 0
defaults to -1 (auto)
defaults to a middleware-selected value
can be 0..5
PEER format is NN@TRANSPORT://ADDRESS
can be 0..255
defaults to DDS TRANSPORTBUILTIN MASK DEFAULT
defaults to -1 (transport default)
defaults to -1 (transport default)
defaults to 4096
...
...
...
...
defaults to "*"
defaults to "*"
can be 1..255
can be 1..255
VxWorks Usage
rtiddsspy "[<options>]"
The options use the same syntax as above.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
6.127 rtiddsspy
319
rtiddsspy requires about 25 kB of stack. If the stack size of the shell from which it is invoked is not la
taskSpawn <name>, <priority>, <taskspawn options>, <stack size in bytes>, rtiddsspy, "[\<options\>]"
The options use the same syntax as above.
Example taskSpawn "rtiddsspy", 100, 0x8, 50000, rtiddsspy, "-domainId 3 -topicRegex Alarm*"
Options:
-help Prints a help message and exits.
-version Prints the version and exits.
-Verbosity <NN> Sets the verbosity level. The range is 0 to 5.
0 has minimal output and does not echo the fact that data is being sent or
received.
1 prints the most relevant statuses, including the sending and receiving of data.
This is the default.
2 prints a summary of the parameters being used and echoes more detailed
status messages.
3-5 Mostly affect the verbosity used by the internal RTI Connext modules that
implement rtiddsspy. The output is not always readable; its main purpose is to
provide information that may be useful to RTIs support team.
Example: rtiddsspy -Verbosity 2
-domainId <NN>
Sets the domain ID. The valid range is 0 to 100.
Example: rtiddsspy -domainId 31
-appId <ID>
Sets the application ID. If unspecified, the system will pick one automatically.
This option is rarely used.
Example: rtiddsspy -appId 34556
-index <NN>
Sets the participantIndex. If participantIndex is not -1 (auto), it must be different than the one used by all other applications in the same computer and
domainId. If this is not respected, rtiddsspy (or the application that starts last)
will get an initialization error.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
320
Module Documentation
6.127 rtiddsspy
321
-shmRcvSize <SIZE>
Increases the shared memory receive-buffer size. This is needed if you are using rtiddsspy to communicate with an application that has set these transport
parameters to larger than default values.
-tcMaxSize <SIZE>
Configures the maximum size, in bytes, of a received type code.
-hOutput
Prints information on the output format used by rtiddsspy.
This option prints an explanation of the output and then exits.
Example: rtiddsspy -hOutput
-deadline <SS>
Sets the requested DEADLINE QoS for the subscriptions made by rtiddsspy.
Note that this may cause the subscription QoS to be incompatible with the
publisher if the publisher did not specify an offered deadline that is greater or
equal to the one requested by rtiddsspy. If the QoS is incompatible rtiddsspy
will not receive updates from that writer.
Each time a deadline is detected rtiddsspy will print a message that indicates
the number of deadlines received so far.
Example: rtiddsspy -deadline 3.5
-timeFilter <SS>
Sets the TIME BASED FILTER QoS for the subscriptions made by rtiddsspy.
This QoS causes RTI Connext to filter-out messages that are published at a rate
faster than what the filter duration permits. For example if the filter duration
is 10 seconds, messages will be printed no faster than once each 10 seconds.
Example: rtiddsspy -timeFilter 10.0
-history <DEPTH>
Sets the HISTORY depth QoS for the subscriptions made by rtiddsspy.
This may be relevant if the publisher has batching turned on, or if the useFirstPublicationQos option is used that is causing a reliable or durable subscription to be created.
Example: rtiddsspy -history 1
-useFirstPublicationQos
Sets the RELIABILITY and DURABILITY QoS of the subscription based on
the first discovered publication of that topic.
See also -history option.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
322
Module Documentation
6.127 rtiddsspy
323
rtiddsspy -domainId 3
rtiddsspy -domainId 5 -topicRegex "Alarm*"
rtiddsspy -help
324
Module Documentation
operating systems that have a shell, the syntax matches the one of the regular
comamnds available in the shell. In the examples below, the string vxworks
prompt> represents the prompt that the shell prints and are not part of the
command that must be typed.
vxworks prompt>
vxworks prompt>
vxworks prompt>
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
Chapter 7
Namespace Documentation
7.1
Package com.rti
RTI.
Packages
package dds
DDS.
package ndds
DDS extensions.
7.1.1
RTI.
Detailed Description
326
Namespace Documentation
7.2
Package com.rti.dds
DDS.
Packages
package domain
Contains the com.rti.dds.domain.DomainParticipant ( p. 654) class that
acts as an entrypoint of RTI Connext and acts as a factory for many of the
classes. The com.rti.dds.domain.DomainParticipant ( p. 654) also acts
as a container for the other objects that make up RTI Connext.
package dynamicdata
<<eXtension>> (p. 278) The Dynamic Data API provides a way to interact with arbitrarily complex data types at runtime without the need for code
generation.
package infrastructure
Defines the abstract classes and the interfaces that are refined by the other
modules. Contains common definitions such as return codes, status values,
and QoS policies.
package publication
Contains
the
com.rti.dds.publication.FlowController
( p. 964),
com.rti.dds.publication.Publisher
( p. 1262),
and
com.rti.dds.publication.DataWriter ( p. 557) classes as well as
and
the
com.rti.dds.publication.PublisherListener
( p. 1289)
com.rti.dds.publication.DataWriterListener
( p. 586)
interfaces,
and more generally, all that is needed on the publication ( p. 349) side.
package subscription
Contains
the
com.rti.dds.subscription.Subscriber
( p. 1476),
com.rti.dds.subscription.DataReader
( p. 487),
com.rti.dds.subscription.ReadCondition
( p. 1313),
and
com.rti.dds.subscription.QueryCondition ( p. 1311) classes, as well
as the com.rti.dds.subscription.SubscriberListener ( p. 1503) and
com.rti.dds.subscription.DataReaderListener ( p. 518) interfaces, and
more generally, all that is needed on the subscription ( p. 353) side.
package topic
Contains
the
com.rti.dds.topic.Topic
( p. 1545),
com.rti.dds.topic.ContentFilteredTopic
( p. 471),
and
com.rti.dds.topic.MultiTopic
( p. 1190)
classes,
the
com.rti.dds.topic.TopicListener ( p. 1564) interface, and more generally,
all that is needed by an application to define com.rti.dds.topic.Topic
( p. 1545) objects and attach QoS policies to them.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
327
package typecode
<<eXtension>> (p. 278) A com.rti.dds.typecode.TypeCode (p. 1611)
is a mechanism for representing a type at runtime. RTI Connext can use type
codes to send type definitions on the network. You will need to understand
this API in order to use the Dynamic Data ( p. 175) capability or to inspect
the type information you receive from remote readers and writers.
package util
Utility types that support the DDS API.
7.2.1
Detailed Description
DDS.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
328
Namespace Documentation
7.3
Package com.rti.dds.domain
Classes
interface DomainParticipant
<<interface>>
(p. 279)
Container
for
com.rti.dds.infrastructure.DomainEntity ( p. 653) objects.
all
class DomainParticipantAdapter
<<eXtension>> (p. 278) A listener adapter in the spirit of the Java AWT
listener adapters. (The Adapter provides empty implementations for the listener methods)
class DomainParticipantFactory
<<singleton>> (p. 279) <<interface>> (p. 279) Allows creation and destruction of com.rti.dds.domain.DomainParticipant ( p. 654) objects.
class DomainParticipantFactoryQos
QoS policies supported by a com.rti.dds.domain.DomainParticipantFactory
( p. 742).
interface DomainParticipantListener
<<interface>> (p. 279) Listener for participant status.
class DomainParticipantQos
QoS policies supported by a com.rti.dds.domain.DomainParticipant
( p. 654) entity.
Packages
package builtin
Builtin topic ( p. 359) for accessing information about the DomainParticipants discovered by RTI Connext.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
7.3.1
329
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
330
Namespace Documentation
7.4
Package com.rti.dds.domain.builtin
Builtin topic (p. 359) for accessing information about the DomainParticipants
discovered by RTI Connext.
Classes
class ParticipantBuiltinTopicData
Entry created when a DomainParticipant ( p. 654) object is discovered.
class ParticipantBuiltinTopicDataDataReader
Instantiates
DataReader
( p. 1211) > .
<
builtin.ParticipantBuiltinTopicData
class ParticipantBuiltinTopicDataSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
builtin.ParticipantBuiltinTopicData ( p. 1211) > .
class ParticipantBuiltinTopicDataTypeSupport
Instantiates TypeSupport
( p. 1211) > .
7.4.1
<
builtin.ParticipantBuiltinTopicData
Detailed Description
Builtin topic (p. 359) for accessing information about the DomainParticipants
discovered by RTI Connext.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
7.5
331
Package com.rti.dds.dynamicdata
<<eXtension>> ( p. 278) The Dynamic Data API provides a way to interact with arbitrarily complex data types at runtime without the need for code
generation.
Classes
class DynamicData
A sample of any complex data type, which can be inspected and manipulated
reflectively.
class DynamicDataInfo
A descriptor for a com.rti.dds.dynamicdata.DynamicData ( p. 817) object.
class DynamicDataMemberInfo
A descriptor for a single member (i.e. field) of dynamically defined data type.
class DynamicDataProperty t
A
collection
of
attributes
used
to
com.rti.dds.dynamicdata.DynamicData ( p. 817) objects.
configure
class DynamicDataReader
Reads
(subscribes
to)
objects
com.rti.dds.dynamicdata.DynamicData ( p. 817).
of
type
class DynamicDataSeq
An ordered collection
( p. 817) elements.
of
com.rti.dds.dynamicdata.DynamicData
class DynamicDataTypeProperty t
A
collection
of
attributes
used
to
com.rti.dds.dynamicdata.DynamicData ( p. 817) objects.
configure
class DynamicDataTypeSerializationProperty t
Properties that govern how data of a certain type will be serialized on the
network.
class DynamicDataTypeSupport
A factory for registering a dynamically defined type and creating
com.rti.dds.dynamicdata.DynamicData ( p. 817) objects.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
332
Namespace Documentation
class DynamicDataWriter
Writes (publishes) objects of type com.rti.dds.dynamicdata.DynamicData
( p. 817).
7.5.1
Detailed Description
<<eXtension>> ( p. 278) The Dynamic Data API provides a way to interact with arbitrarily complex data types at runtime without the need for code
generation.
This API allows you to define new data types, modify existing data types, and
interact reflectively with samples. To use it, you will take the following steps:
1. Obtain a com.rti.dds.typecode.TypeCode (p. 1611) (see Type Code
Support (p. 165)) that defines the type definition you want to use.
A com.rti.dds.typecode.TypeCode (p. 1611) includes a types kind
(com.rti.dds.typecode.TCKind (p. 1525)), name, and members (that
is, fields). You can create your own com.rti.dds.typecode.TypeCode
(p. 1611) using the com.rti.dds.typecode.TypeCodeFactory (p. 1647) class
see, for example, the com.rti.dds.typecode.TypeCodeFactory.create Alternatively, you can use a remote
struct tc (p. 1651) method.
com.rti.dds.typecode.TypeCode (p. 1611) that you discovered on the network (see Built-in Topics (p. 157)) or one generated by rtiddsgen (p. 298).
2.
Wrap the com.rti.dds.typecode.TypeCode (p. 1611) in a
com.rti.dds.dynamicdata.DynamicDataTypeSupport (p. 901) object.
from
the
Use the name under which you registered your data type see
com.rti.dds.domain.DomainParticipant.create topic (p. 697).
This
com.rti.dds.topic.Topic (p. 1545) is what you will use to produce and consume data.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
333
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
334
Namespace Documentation
7.6
Package com.rti.dds.infrastructure
Defines the abstract classes and the interfaces that are refined by the other
modules. Contains common definitions such as return codes, status values, and
QoS policies.
Classes
class AckResponseData t
Data payload of an application-level acknowledgment.
class AllocationSettings t
Resource allocation settings.
class AsynchronousPublisherQosPolicy
Configures the mechanism that sends user data in an external middleware
thread.
class AvailabilityQosPolicy
Configures the availability of data.
class BadKind
The exception BadKind ( p. 409) is thrown when an inappropriate operation
is invoked on a TypeCode object.
class BadMemberId
The specified com.rti.dds.typecode.TypeCode ( p. 1611) member ID is invalid.
class BadMemberName
The specified com.rti.dds.typecode.TypeCode ( p. 1611) member name is
invalid.
class BatchQosPolicy
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
335
class BooleanSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
boolean >.
class Bounds
A user exception thrown when a parameter is not within the legal bounds.
class BuiltinTopicReaderResourceLimits t
Built-in topic ( p. 359) readers resource limits.
class ByteSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
byte >.
class ChannelSettings t
Type used to configure the properties of a channel.
class ChannelSettingsSeq
Declares IDL sequence< com.rti.dds.infrastructure.ChannelSettings t
( p. 454) >.
class CharSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
char >.
interface Condition
<<interface>> (p. 279) Root class for all the conditions that may be attached to a com.rti.dds.infrastructure.WaitSet ( p. 1709).
class ConditionSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.infrastructure.Condition ( p. 464) >.
class ContentFilterProperty t
<<eXtension>> (p. 278) Type used to provide all the required information
to enable content filtering.
class Cookie t
<<eXtension>> (p. 278) Sequence of bytes identifying a written data sample, used when writing with parameters.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
336
Namespace Documentation
class CookieSeq
interface Copyable
<<eXtension>> (p. 278) <<interface>> (p. 279) Interface for all the
user-defined data type classes that support copy.
class DatabaseQosPolicy
Various threads and resource limits settings used by RTI Connext to control
its internal database.
class DataReaderProtocolQosPolicy
Along
with
com.rti.dds.infrastructure.WireProtocolQosPolicy
( p. 1723) and com.rti.dds.infrastructure.DataWriterProtocolQosPolicy
( p. 592), this QoS policy configures the DDS on-the-network protocol
(RTPS).
class DataReaderResourceLimitsQosPolicy
Various
settings
that
com.rti.dds.subscription.DataReader
physical memory for internal resources.
configure
how
( p. 487) allocates and
a
uses
class DataWriterProtocolQosPolicy
Protocol that applies only to com.rti.dds.publication.DataWriter ( p. 557)
instances.
class DataWriterResourceLimitsInstanceReplacementKind
Sets the kinds of instances that can be replaced when instance resource limits
are reached.
class DataWriterResourceLimitsQosPolicy
Various
settings
that
configure
how
a
com.rti.dds.publication.DataWriter ( p. 557) allocates and uses physical
memory for internal resources.
class DeadlineQosPolicy
Expresses the maximum duration (deadline) within which an instance is expected to be updated.
class DestinationOrderQosPolicy
Controls how the middleware will deal with data sent by multiple
com.rti.dds.publication.DataWriter ( p. 557) entities for the same instance of data (i.e., same com.rti.dds.topic.Topic ( p. 1545) and key).
class DestinationOrderQosPolicyKind
Kinds of destination order.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
337
class DiscoveryBuiltinReaderFragmentationResourceLimits t
class DiscoveryConfigBuiltinPluginKind
Built-in discovery plugins that can be used.
class DiscoveryConfigQosPolicy
Settings for discovery configuration.
class DiscoveryPluginPromiscuityKind
<<eXtension>> (p. 278) Type used to indicate promiscuity mode of the
discovery plugin.
class DiscoveryQosPolicy
Configures the mechanism used by the middleware to automatically discover
and connect with new remote applications.
interface DomainEntity
<<interface>> (p. 279) Abstract base class for all DDS entities except for
the com.rti.dds.domain.DomainParticipant ( p. 654).
class DomainParticipantResourceLimitsQosPolicy
Various
settings
that
configure
how
a
com.rti.dds.domain.DomainParticipant ( p. 654) allocates and uses
physical memory for internal resources, including the maximum sizes of
various properties.
class DoubleSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
double >.
class DurabilityQosPolicy
This QoS policy specifies whether or not RTI Connext will
store and deliver previously published data samples to new
com.rti.dds.subscription.DataReader ( p. 487) entities that join the
network later.
class DurabilityQosPolicyKind
Kinds of durability.
class DurabilityServiceQosPolicy
Various
settings
to
configure
the
external
RTI
Persistence Service used by RTI Connext for DataWriters with a
com.rti.dds.infrastructure.DurabilityQosPolicy ( p. 802) setting of
com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.PERSISTENT DURABILITY QOS or com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.TRANSIENT DURABILITY QOS.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
338
Namespace Documentation
class Duration t
Type for duration representation.
class EndpointGroup t
Specifies a group of endpoints that can be collectively identified by a name
and satisfied by a quorum.
class EndpointGroupSeq
A sequence of com.rti.dds.infrastructure.EndpointGroup t ( p. 928).
interface Entity
<<interface>> (p. 279) Abstract base class for all the DDS objects that
support QoS policies, a listener, and a status condition.
class EntityFactoryQosPolicy
A
QoS
policy
for
all
com.rti.dds.infrastructure.Entity
( p. 931) types that can act as factories for one or more other
com.rti.dds.infrastructure.Entity ( p. 931) types.
class EntityNameQosPolicy
Assigns
a
name
and
a
role
name
to
a
com.rti.dds.domain.DomainParticipant
( p. 654),
com.rti.dds.publication.DataWriter
( p. 557)
or
These names will
com.rti.dds.subscription.DataReader ( p. 487).
be visible during the discovery process and in RTI tools to help you visualize
and debug your system.
class EventQosPolicy
Settings for event.
class ExclusiveAreaQosPolicy
Configures multi-thread concurrency and deadlock prevention capabilities.
class FloatSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
float >.
class GroupDataQosPolicy
Attaches a buffer of opaque data that is distributed by means of Built-in
Topics ( p. 157) during discovery.
class GuardCondition
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
339
class GUID t
Type for GUID (Global Unique Identifier) representation.
class HistoryQosPolicy
Specifies the behavior of RTI Connext in the case where the value of a sample
changes (one or more times) before it can be successfully communicated to
one or more existing subscribers.
class HistoryQosPolicyKind
Kinds of history.
class InetAddressSeq
Declares IDL sequence< com.rti.dds.infrastructure.java.net.InetAddress >.
class InstanceHandle t
Type definition for an instance handle.
class InstanceHandleSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.infrastructure.InstanceHandle t ( p. 1055) > .
class IntSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.infrastructure.int >.
class LatencyBudgetQosPolicy
Provides a hint as to the maximum acceptable delay from the time the data
is written to the time it is received by the subscribing applications.
class LifespanQosPolicy
Specifies
how
long
the
data
written
by
com.rti.dds.publication.DataWriter ( p. 557) is considered valid.
the
interface Listener
<<interface>> (p. 279) Abstract base class for all Listener ( p. 1130) interfaces.
class LivelinessQosPolicy
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
340
Namespace Documentation
Specifies
and
configures
the
mechanism
that
allows
com.rti.dds.subscription.DataReader ( p. 487) entities to detect
when com.rti.dds.publication.DataWriter ( p. 557) entities become
disconnected or dead..
class LivelinessQosPolicyKind
Kinds of liveliness.
class Locator t
<<eXtension>> (p. 278) Type used to represent the addressing information
needed to send a message to an RTPS Endpoint using one of the supported
transports.
class LocatorFilter t
Specifies the configuration of an individual channel within a MultiChannel
DataWriter.
class LocatorFilterQosPolicy
The QoS policy used to report the configuration of a MultiChannel
DataWriter as part of builtin.PublicationBuiltinTopicData.
class LocatorFilterSeq
Declares IDL sequence< com.rti.dds.infrastructure.LocatorFilter t ( p. 1154) >.
class LocatorSeq
Declares IDL sequence < com.rti.dds.infrastructure.Locator t ( p. 1150)
>.
class LoggingQosPolicy
Configures the RTI Connext logging facility.
class LongDoubleSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.infrastructure.LongDouble >.
class LongSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
long >.
class MultiChannelQosPolicy
Configures the ability of a DataWriter to send data on different multicast
groups (addresses) based on the value of the data.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
341
class ObjectHolder
<<eXtension>> (p. 278) Holder of object instance
class OwnershipQosPolicy
Specifies
whether
it
is
allowed
for
multiple
com.rti.dds.publication.DataWriter ( p. 557) (s) to write the same
instance of the data and if so, how these modifications should be arbitrated.
class OwnershipQosPolicyKind
Kinds of ownership.
class OwnershipStrengthQosPolicy
Specifies the value of the strength used to arbitrate among multiple com.rti.dds.publication.DataWriter ( p. 557) objects that attempt to modify the same instance of a data type (identified by
com.rti.dds.topic.Topic ( p. 1545) + key).
class PartitionQosPolicy
Set of strings that introduces a logical partition among the topics visible by a com.rti.dds.publication.Publisher ( p. 1262) and a
com.rti.dds.subscription.Subscriber ( p. 1476).
class PresentationQosPolicy
Specifies how the samples representing changes to data instances are presented to a subscribing application.
class PresentationQosPolicyAccessScopeKind
Kinds of presentation access scope.
class ProductVersion t
<<eXtension>> (p. 278) Type used to represent the current version of RTI
Connext.
class ProfileQosPolicy
Configures the way that XML documents containing QoS profiles are loaded
by RTI Connext.
class Property t
Properties are name/value pairs objects.
class PropertyQosPolicy
Stores name/value(string) pairs that can be used to configure certain parameters of RTI Connext that are not exposed through formal QoS policies. Can
also be used to store and propagate application-specific name/value pairs that
can be retrieved by user code during discovery.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
342
Namespace Documentation
class PropertyQosPolicyHelper
Policy Helpers which facilitate management of the properties in the input
policy.
class PropertySeq
Declares IDL
( p. 1234) >.
sequence
<
com.rti.dds.infrastructure.Property t
class ProtocolVersion t
<<eXtension>> (p. 278) Type used to represent the version of the RTPS
protocol.
class PublishModeQosPolicy
Specifies how RTI Connext sends application data on the network. This QoS
policy can be used to tell RTI Connext to use its own thread to send data,
instead of the user thread.
class PublishModeQosPolicyKind
Kinds of publishing mode.
class Qos
An abstract base class for all QoS types.
class QosPolicy
The base class for all QoS policies.
class QosPolicyCount
Type to hold a counter for a com.rti.dds.infrastructure.QosPolicyId t
( p. 1305).
class QosPolicyCountSeq
Declares IDL sequence < com.rti.dds.infrastructure.QosPolicyCount
( p. 1302) >.
class QosPolicyId t
Type to identify QosPolicies.
class ReaderDataLifecycleQosPolicy
Controls how a DataReader manages the lifecycle of the data that it has
received.
class ReceiverPoolQosPolicy
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
343
Configures threads used by RTI Connext to receive and process data from
transports (for example, UDP sockets).
class RefilterQosPolicyKind
<<eXtension>> (p. 278) Kinds of Refiltering
class ReliabilityQosPolicy
Indicates the level of reliability offered/requested by RTI Connext.
class ReliabilityQosPolicyAcknowledgmentModeKind
Kinds of acknowledgment.
class ReliabilityQosPolicyKind
Kinds of reliability.
class RemoteParticipantPurgeKind
Available behaviors for halting communication with remote participants (and
their contained entities) with which discovery communication has been lost.
class ResourceLimitsQosPolicy
Controls the amount of physical memory allocated for DDS entities, if dynamic allocations are allowed, and how they occur. Also controls memory
usage among different instance values for keyed topics.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
344
Namespace Documentation
class RETCODE NO DATA
Indicates a transient situation where the operation did not return any data
but there is no inherent error.
class RtpsReliableReaderProtocol t
Qos ( p. 1300) related to reliable reader protocol defined in RTPS.
class RtpsReliableWriterProtocol t
QoS related to the reliable writer protocol defined in RTPS.
class RtpsReservedPortKind
RTPS reserved port kind, used to identify the types of ports that can be reserved on domain ( p. 328) participant enable.
class RtpsWellKnownPorts t
RTPS well-known port mapping configuration.
class SampleIdentity t
Type definition for an Sample Identity.
class SequenceNumber t
Type for sequence number representation.
class ShortSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
short >.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
345
interface StatusCondition
<<interface>> (p. 279) A specific com.rti.dds.infrastructure.Condition
( p. 464) that is associated with each com.rti.dds.infrastructure.Entity
( p. 931).
class StatusKind
Type for status kinds.
class StringSeq
Declares IDL sequence < com.rti.dds.infrastructure.String > .
class SystemException
System exception.
class SystemResourceLimitsQosPolicy
Configures
com.rti.dds.domain.DomainParticipant
( p. 654)independent resources used by RTI Connext. Mainly used to change
the maximum number of com.rti.dds.domain.DomainParticipant
( p. 654) entities that can be created within a single process (address space).
class ThreadSettings t
The properties of a thread of execution.
class ThreadSettingsCpuRotationKind
Determines how com.rti.dds.infrastructure.ThreadSettings t.cpu list
( p. 1531) affects processor affinity for thread-related QoS policies that apply to multiple threads.
class ThreadSettingsKind
A collection of flags used to configure threads of execution.
class Time t
Type for time representation.
class TimeBasedFilterQosPolicy
Filter that allows a com.rti.dds.subscription.DataReader ( p. 487) to
specify that it is interested only in (potentially) a subset of the values of
the data.
class TopicDataQosPolicy
Attaches a buffer of opaque data that is distributed by means of Built-in
Topics ( p. 157) during discovery.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
346
Namespace Documentation
class TransportBuiltinKind
Built-in transport kind.
class TransportBuiltinQosPolicy
Specifies which built-in transports are used.
class TransportMulticastMapping t
Type representing a list of multicast mapping elements.
class TransportMulticastMappingFunction t
Type representing an external mapping function.
class TransportMulticastMappingQosPolicy
Specifies
the
multicast
address
on
which
a
com.rti.dds.subscription.DataReader ( p. 487) wants to receive its
data. It can also specify a port number as well as a subset of the available (at the com.rti.dds.domain.DomainParticipant ( p. 654) level)
transports with which to receive the multicast data.
class TransportMulticastMappingSeq
Declares IDL sequence< com.rti.dds.infrastructure.TransportMulticastSettings t ( p. 1594) >.
class TransportMulticastQosPolicy
Specifies
the
multicast
address
on
which
a
com.rti.dds.subscription.DataReader ( p. 487) wants to receive its
data. It can also specify a port number as well as a subset of the available (at the com.rti.dds.domain.DomainParticipant ( p. 654) level)
transports with which to receive the multicast data.
class TransportMulticastQosPolicyKind
Transport Multicast Policy Kind.
class TransportMulticastSettings t
Type representing a list of multicast locators.
class TransportMulticastSettingsSeq
Declares IDL sequence< com.rti.dds.infrastructure.TransportMulticastSettings t ( p. 1594) >.
class TransportPriorityQosPolicy
This QoS policy allows the application to take advantage of transports that
are capable of sending messages with different priorities.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
347
class TransportSelectionQosPolicy
Specifies the physical transports a com.rti.dds.publication.DataWriter
( p. 557) or com.rti.dds.subscription.DataReader ( p. 487) may use to
send or receive data.
class TransportUnicastQosPolicy
Specifies a subset of transports and a port number that can be used by an
Entity ( p. 931) to receive data.
class TransportUnicastSettings t
Type representing a list of unicast locators.
class TransportUnicastSettingsSeq
Declares IDL sequence< com.rti.dds.infrastructure.TransportUnicastSettings t ( p. 1608) >.
class TypeConsistencyEnforcementQosPolicy
Defines the rules for determining whether the type used to publish a given
topic ( p. 359) is consistent with that used to subscribe to it.
class TypeConsistencyKind
Kinds of type consistency.
class TypeSupportQosPolicy
Allows you to attach application-specific values to a DataWriter or
DataReader that are passed to the serialization or deserialization routine
of the associated data type.
class UserDataQosPolicy
Attaches a buffer of opaque data that is distributed by means of Built-in
Topics ( p. 157) during discovery.
class UserException
User exception.
class VendorId t
<<eXtension>> (p. 278) Type used to represent the vendor of the service
implementing the RTPS protocol.
class WaitSet
<<interface>> (p. 279) Allows an application to wait until one or more
of the attached com.rti.dds.infrastructure.Condition ( p. 464) objects has
a trigger value of com.rti.dds.infrastructure.true or else until the timeout
expires.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
348
Namespace Documentation
class WaitSetProperty t
<<eXtension>>
(p. 278)
Specifies
the
com.rti.dds.infrastructure.WaitSet ( p. 1709) behavior for multiple
trigger events.
class WcharSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.infrastructure.char >.
class WireProtocolQosPolicy
Specifies
the
wire-protocol-related
attributes
com.rti.dds.domain.DomainParticipant ( p. 654).
for
the
class WireProtocolQosPolicyAutoKind
Kind of auto mechanism used to calculate the GUID prefix.
class WriteParams t
<<eXtension>>
(p. 278) Input parameters for writing with
( p. 1026),
com.rti.ndds.example.FooDataWriter.write w params
com.rti.ndds.example.FooDataWriter.dispose w params
( p. 1031),
com.rti.ndds.example.FooDataWriter.register instance w params
( p. 1016),
com.rti.ndds.example.FooDataWriter.unregister instance w params ( p. 1021)
class WriterDataLifecycleQosPolicy
Controls how a com.rti.dds.publication.DataWriter ( p. 557) handles the
lifecycle of the instances (keys) that it is registered to manage.
class WstringSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.infrastructure.char >.
7.6.1
Detailed Description
Defines the abstract classes and the interfaces that are refined by the other
modules. Contains common definitions such as return codes, status values, and
QoS policies.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
7.7
349
Package com.rti.dds.publication
Contains
the
com.rti.dds.publication.FlowController
com.rti.dds.publication.Publisher
(p. 1262),
and
(p. 964),
com.rti.dds.publication.DataWriter (p. 557) classes as well as
the
com.rti.dds.publication.PublisherListener
(p. 1289)
and
com.rti.dds.publication.DataWriterListener (p. 586) interfaces, and
more generally, all that is needed on the publication (p. 349) side.
Classes
class AcknowledgmentInfo
Information about an application-level acknowledged sample.
interface DataWriter
<<interface>> (p. 279) Allows an application to set the value of the data
to be published under a given com.rti.dds.topic.Topic ( p. 1545).
class DataWriterAdapter
<<eXtension>> (p. 278) A listener adapter in the spirit of the Java AWT
listener adapters. (The Adapter provides empty implementations for the listener methods or functions.)
class DataWriterCacheStatus
<<eXtension>> (p. 278) The status of the writers cache.
interface DataWriterListener
<<interface>> (p. 279) com.rti.dds.infrastructure.Listener ( p. 1130)
for writer status.
class DataWriterProtocolStatus
<<eXtension>> (p. 278) The status of a writers internal protocol related
metrics, like the number of samples pushed, pulled, filtered; and status of
wire protocol traffic.
class DataWriterQos
QoS policies supported by a com.rti.dds.publication.DataWriter ( p. 557)
entity.
interface FlowController
<<interface>> (p. 279) A flow controller is the object responsible for
shaping the network traffic by determining when attached asynchronous
com.rti.dds.publication.DataWriter ( p. 557) instances are allowed to
write data.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
350
Namespace Documentation
class FlowControllerProperty t
Determines
the
flow
control
characteristics
com.rti.dds.publication.FlowController ( p. 964).
of
the
class FlowControllerSchedulingPolicy
Kinds of flow controller scheduling policy.
class FlowControllerTokenBucketProperty t
com.rti.dds.publication.FlowController ( p. 964) uses the popular token
bucket approach for open loop network flow control. The flow control characteristics are determined by the token bucket properties.
class LivelinessLostStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.LIVELINESS LOST STATUS
class OfferedDeadlineMissedStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.OFFERED DEADLINE MISSED STATUS
class OfferedIncompatibleQosStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.OFFERED INCOMPATIBLE QOS STATUS
class PublicationMatchedStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.PUBLICATION MATCHED STATUS
interface Publisher
<<interface>> (p. 279) A publisher is the object responsible for the actual
dissemination of publications.
class PublisherAdapter
<<eXtension>> (p. 278) A listener adapter in the spirit of the Java AWT
listener adapters. (The Adapter provides empty implementations for the listener methods)
interface PublisherListener
<<interface>> (p. 279) com.rti.dds.infrastructure.Listener ( p. 1130)
for com.rti.dds.publication.Publisher ( p. 1262) status.
class PublisherQos
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
351
class PublisherSeq
Declares IDL sequence < com.rti.dds.publication.Publisher ( p. 1262) >
.
class ReliableReaderActivityChangedStatus
<<eXtension>> (p. 278) Describes the activity (i.e. are acknowledgements
forthcoming) of reliable readers matched to a reliable writer.
class ReliableWriterCacheChangedStatus
<<eXtension>> (p. 278) A summary of the state of a data writers cache
of unacknowledged samples written.
class ReliableWriterCacheEventCount
<<eXtension>> (p. 278) The number of times the number of unacknowledged samples in the cache of a reliable writer hit a certain well-defined
threshold.
Packages
package builtin
Builtin topic ( p. 359) for accessing information about the Publications discovered by RTI Connext.
7.7.1
Detailed Description
Contains
the
com.rti.dds.publication.FlowController
(p. 964),
com.rti.dds.publication.Publisher
(p. 1262),
and
com.rti.dds.publication.DataWriter (p. 557) classes as well as
the
com.rti.dds.publication.PublisherListener
(p. 1289)
and
com.rti.dds.publication.DataWriterListener (p. 586) interfaces, and
more generally, all that is needed on the publication (p. 349) side.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
352
Namespace Documentation
7.8
Package com.rti.dds.publication.builtin
Builtin topic (p. 359) for accessing information about the Publications discovered by RTI Connext.
Classes
class PublicationBuiltinTopicData
Entry created when a com.rti.dds.publication.DataWriter ( p. 557) is discovered in association with its Publisher ( p. 1262).
class PublicationBuiltinTopicDataDataReader
Instantiates
DataReader
( p. 1249) > .
<
builtin.PublicationBuiltinTopicData
class PublicationBuiltinTopicDataSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
builtin.PublicationBuiltinTopicData ( p. 1249) > .
class PublicationBuiltinTopicDataTypeSupport
Instantiates TypeSupport
( p. 1249) > .
7.8.1
<
builtin.PublicationBuiltinTopicData
Detailed Description
Builtin topic (p. 359) for accessing information about the Publications discovered by RTI Connext.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
7.9
353
Package com.rti.dds.subscription
Contains
the
com.rti.dds.subscription.Subscriber
(p. 1476),
com.rti.dds.subscription.DataReader
(p. 487),
and
com.rti.dds.subscription.ReadCondition
(p. 1313),
com.rti.dds.subscription.QueryCondition (p. 1311) classes, as well
as the com.rti.dds.subscription.SubscriberListener (p. 1503) and
com.rti.dds.subscription.DataReaderListener (p. 518) interfaces, and
more generally, all that is needed on the subscription (p. 353) side.
Classes
interface DataReader
<<interface>> (p. 279) Allows the application to: (1) declare the data it
wishes to receive (i.e. make a subscription ( p. 353)) and (2) access the data
received by the attached com.rti.dds.subscription.Subscriber ( p. 1476).
class DataReaderAdapter
<<eXtension>> (p. 278) A listener adapter in the spirit of the Java AWT
listener adapters. (The Adapter provides empty implementations for the listener methods)
class DataReaderCacheStatus
<<eXtension>> (p. 278) The status of the readers cache.
interface DataReaderListener
<<interface>> (p. 279) com.rti.dds.infrastructure.Listener ( p. 1130)
for reader status.
class DataReaderProtocolStatus
<<eXtension>> (p. 278) The status of a readers internal protocol related
metrics, like the number of samples received, filtered, rejected; and status of
wire protocol traffic.
class DataReaderQos
QoS policies supported by a com.rti.dds.subscription.DataReader
( p. 487) entity.
class DataReaderSeq
Declares IDL sequence < com.rti.dds.subscription.DataReader ( p. 487)
>.
class InstanceStateKind
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
354
Namespace Documentation
Indicates
is
the
samples
are
from
com.rti.dds.publication.DataWriter ( p. 557) or not.
live
class LivelinessChangedStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.LIVELINESS CHANGED STATUS
interface QueryCondition
<<interface>>
(p. 279)
These
are
specialised
com.rti.dds.subscription.ReadCondition ( p. 1313) objects that allow the application to also specify a filter on the locally available data.
interface ReadCondition
<<interface>> (p. 279) Conditions specifically dedicated to read operations
and attached to one com.rti.dds.subscription.DataReader ( p. 487).
class RequestedDeadlineMissedStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.REQUESTED DEADLINE MISSED STATUS
class RequestedIncompatibleQosStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.REQUESTED INCOMPATIBLE QOS STATUS
class SampleInfo
Information that accompanies each sample that is read or taken.
class SampleInfoSeq
Declares IDL
( p. 1398) > .
sequence
<
com.rti.dds.subscription.SampleInfo
class SampleLostStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.SAMPLE LOST STATUS STATUS
class SampleLostStatusKind
Kinds of reasons why a sample was lost.
class SampleRejectedStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.SAMPLE REJECTED STATUS
class SampleRejectedStatusKind
Kinds of reasons for rejecting a sample.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
355
class SampleStateKind
Indicates whether or not a sample has ever been read.
interface Subscriber
<<interface>> (p. 279) A subscriber is the object responsible for actually
receiving data from a subscription ( p. 353).
class SubscriberAdapter
A listener adapter in the spirit of the Java AWT listener adapters. (The
Adapter provides empty implementations for the listener methods).
interface SubscriberListener
<<interface>> (p. 279) com.rti.dds.infrastructure.Listener ( p. 1130)
for status about a subscriber.
class SubscriberQos
QoS policies supported
( p. 1476) entity.
by
com.rti.dds.subscription.Subscriber
class SubscriberSeq
Declares IDL sequence < com.rti.dds.subscription.Subscriber ( p. 1476)
>.
class SubscriptionMatchedStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.SUBSCRIPTION MATCHED STATUS
class ViewStateKind
Indicates whether or not an instance is new.
Packages
package builtin
Builtin topic ( p. 359) for accessing information about the Subscriptions discovered by RTI Connext.
7.9.1
Contains
(p. 1476),
Detailed Description
the
com.rti.dds.subscription.Subscriber
com.rti.dds.subscription.DataReader
(p. 487),
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
356
Namespace Documentation
com.rti.dds.subscription.ReadCondition
(p. 1313),
com.rti.dds.subscription.QueryCondition (p. 1311) classes, as
as the com.rti.dds.subscription.SubscriberListener (p. 1503)
com.rti.dds.subscription.DataReaderListener (p. 518) interfaces,
more generally, all that is needed on the subscription (p. 353) side.
7.9.2
and
well
and
and
7.9.2.1
357
The way RTI Connext builds the collection depends on QoS policies set on the com.rti.dds.subscription.DataReader (p. 487) and
com.rti.dds.subscription.Subscriber (p. 1476), as well as the source timestamp of the samples, and the parameters passed to the read() / take()
operations, namely:
the
desired
sample
states
(any
combination
com.rti.dds.subscription.SampleStateKind (p. 1426))
of
the
desired
view
states
(any
combination
com.rti.dds.subscription.ViewStateKind (p. 1703))
of
the
desired
instance
states
(any
combination
com.rti.dds.subscription.InstanceStateKind (p. 1061))
of
The read() and take() operations are non-blocking and just deliver what is
currently available that matches the specified states.
The read w condition() and take w condition() operations take a
com.rti.dds.subscription.ReadCondition (p. 1313) object as a parameter instead of sample, view or instance states.
The behaviour is
that the samples returned will only be those for which the condition is com.rti.dds.infrastructure.true.
These operations, in conjunction
with com.rti.dds.subscription.ReadCondition (p. 1313) objects and a
com.rti.dds.infrastructure.WaitSet (p. 1709), allow performing waiting
reads.
Once the data samples are available to the data readers, they can be read or
taken by the application. The basic rule is that the application may do this in
any order it wishes. This approach is very flexible and allows the application
ultimate control.
To access data coherently, or in order, the PRESENTATION (p. 90) QoS
must be set properly.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
358
Namespace Documentation
7.10
Package com.rti.dds.subscription.builtin
Builtin topic (p. 359) for accessing information about the Subscriptions discovered by RTI Connext.
Classes
class SubscriptionBuiltinTopicData
Entry created when a com.rti.dds.subscription.DataReader ( p. 487) is
discovered in association with its Subscriber ( p. 1476).
class SubscriptionBuiltinTopicDataDataReader
Instantiates DataReader (p. 487) < builtin.SubscriptionBuiltinTopicData
( p. 1509) > .
class SubscriptionBuiltinTopicDataSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
builtin.SubscriptionBuiltinTopicData ( p. 1509) > .
class SubscriptionBuiltinTopicDataTypeSupport
Instantiates TypeSupport
( p. 1509) > .
7.10.1
<
builtin.SubscriptionBuiltinTopicData
Detailed Description
Builtin topic (p. 359) for accessing information about the Subscriptions discovered by RTI Connext.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
7.11
359
Package com.rti.dds.topic
Contains
the
com.rti.dds.topic.Topic
(p. 1545),
com.rti.dds.topic.ContentFilteredTopic
(p. 471),
and
com.rti.dds.topic.MultiTopic
(p. 1190)
classes,
the
com.rti.dds.topic.TopicListener (p. 1564) interface, and more generally, all that is needed by an application to define com.rti.dds.topic.Topic
(p. 1545) objects and attach QoS policies to them.
Classes
class BuiltinTopicKey t
The key type of the built-in topic ( p. 359) types.
interface ContentFilter
<<interface>> (p. 279) Interface to be used by a custom filter of a
com.rti.dds.topic.ContentFilteredTopic ( p. 471)
interface ContentFilteredTopic
<<interface>>
(p. 279)
Specialization
of
com.rti.dds.topic.TopicDescription ( p. 1561) that allows for contentbased subscriptions.
class ExpressionProperty
class FilterSampleInfo
class InconsistentTopicStatus
com.rti.dds.infrastructure.StatusKind.StatusKind.INCONSISTENT TOPIC STATUS
interface MultiTopic
[Not supported (optional)] <<interface>> (p. 279) A specialization
of com.rti.dds.topic.TopicDescription ( p. 1561) that allows subscriptions
that combine/filter/rearrange data coming from several topics.
interface Topic
<<interface>> (p. 279) The most basic description of the data to be published and subscribed.
class TopicAdapter
<<eXtension>> (p. 278) A listener adapter in the spirit of the Java AWT
listener adapters. (The Adapter provides empty implementations for the listener methods)
interface TopicDescription
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
360
Namespace Documentation
com.rti.dds.topic.Topic ( p. 1545) entity and associated elements
interface TopicListener
<<interface>> (p. 279) com.rti.dds.infrastructure.Listener ( p. 1130)
for com.rti.dds.topic.Topic ( p. 1545) entities.
class TopicQos
QoS policies supported by a com.rti.dds.topic.Topic ( p. 1545) entity.
interface TypeSupport
<<interface>> (p. 279) An abstract marker interface that has to be specialized for each concrete user data type that will be used by the application.
interface WriterContentFilter
Packages
package builtin
Builtin topic ( p. 359) for accessing information about the Topics discovered
by RTI Connext.
7.11.1
Detailed Description
Contains
the
com.rti.dds.topic.Topic
(p. 1545),
com.rti.dds.topic.ContentFilteredTopic
(p. 471),
and
com.rti.dds.topic.MultiTopic
(p. 1190)
classes,
the
com.rti.dds.topic.TopicListener (p. 1564) interface, and more generally, all that is needed by an application to define com.rti.dds.topic.Topic
(p. 1545) objects and attach QoS policies to them.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
7.12
361
Package com.rti.dds.topic.builtin
Builtin topic (p. 359) for accessing information about the Topics discovered by
RTI Connext.
Classes
class AbstractBuiltinTopicDataTypeSupport
class TopicBuiltinTopicData
Entry created when a Topic ( p. 1545) object discovered.
class TopicBuiltinTopicDataDataReader
Instantiates DataReader < builtin.TopicBuiltinTopicData ( p. 1552) > .
class TopicBuiltinTopicDataSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
builtin.TopicBuiltinTopicData ( p. 1552) > .
class TopicBuiltinTopicDataTypeSupport
Instantiates TypeSupport (p. 1665) < builtin.TopicBuiltinTopicData
( p. 1552) > .
7.12.1
Detailed Description
Builtin topic (p. 359) for accessing information about the Topics discovered by
RTI Connext.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
362
Namespace Documentation
7.13
Package com.rti.dds.type.builtin
Classes
class Bytes
Built-in type consisting of a variable-length array of opaque bytes.
class BytesDataReader
<<interface>>
(p. 279)
Instantiates
DataReader
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes >.
<
class BytesDataWriter
<<interface>>
(p. 279)
Instantiates
DataWriter
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes >.
<
class BytesSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes > .
class BytesTypeSupport
<<interface>> (p. 279) com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes
type support.
class KeyedBytes
Built-in type consisting of a variable-length array of opaque bytes and a string
that is the key.
class KeyedBytesDataReader
<<interface>>
(p. 279)
Instantiates
DataReader
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes >.
<
class KeyedBytesDataWriter
<<interface>>
(p. 279)
Instantiates
DataWriter
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes >.
<
class KeyedBytesSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes >.
class KeyedBytesTypeSupport
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
363
class KeyedString
Keyed string built-in type.
class KeyedStringDataReader
<<interface>>
(p. 279)
Instantiates
DataReader
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString >.
<
class KeyedStringDataWriter
<<interface>>
(p. 279)
Instantiates
DataWriter
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString >.
<
class KeyedStringSeq
Instantiates com.rti.dds.infrastructure.com.rti.dds.util.Sequence <
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString > .
class KeyedStringTypeSupport
<<interface>> (p. 279) Keyed string type support.
class StringDataReader
<<interface>>
(p. 279)
com.rti.dds.infrastructure.String >.
Instantiates
DataReader
<
Instantiates
DataWriter
<
class StringDataWriter
<<interface>>
(p. 279)
com.rti.dds.infrastructure.String >.
class StringTypeSupport
<<interface>> (p. 279) String type support.
7.13.1
Detailed Description
364
Namespace Documentation
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString: A payload
consisting of a single string of characters and a second string, the key,
that identifies the instance to which the sample belongs.
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes: A payload consisting of an opaque variable-length array of bytes. This type has no
key.
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes: A payload
consisting of an opaque variable-length array of bytes and a string, the
key, that identifies the instance to which the sample belongs.
7.13.2
When a sample is written, the DataWriter serializes it and stores the result in
a buffer obtained from a pool of preallocated buffers. In the same way, when
a sample is received, the DataReader deserializes it and stores the result in a
sample coming from a pool of preallocated samples.
For builtin (p. 362) types, the maximum size of the buffers/samples and depends on the nature of the application using the builtin (p. 362) type.
You can configure the maximum size of the builtin (p. 362)
types on a per-DataWriter and per-DataReader basis using the
com.rti.dds.infrastructure.PropertyQosPolicy (p. 1236) in DataWriters,
DataReaders or Participants.
The following table lists the supported builtin (p. 362) type properties to configure memory allocation. When the properties are defined in the DomainParticipant, they are applicable to all DataWriters and DataReaders belonging
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
365
The previous properties must be set consistently with respect to the corresponding .max size properties that set the maximum size of the builtin (p. 362) types
in the typecode (p. 368).
7.13.3
The typecodes associated with the builtin (p. 362) types are generated from
the following IDL type definitions:
module DDS {
struct String {
string value;
};
struct KeyedString {
string key;
string value;
};
struct Octets {
sequence<octet> value;
};
struct KeyedOctets {
string key;
sequence<octet> value;
};
};
The maximum size of the strings and sequences that will be included in the type
code definitions can be configured on a per-DomainParticipant-basis by using
the properties in following table.
For more information about the built-in types, including how to control memory usage and maximum lengths, please see chapter 3, Data Types and Data
Samples, in the Users Manual.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
366
Property
dds.builtin type.string.alloc size
Namespace Documentation
Description
Maximum size of the strings
published by the
com.rti.dds.type.builtin.StringDataWriter
(p. 1465) or received the
com.rti.dds.type.builtin.StringDataReader
(p. 1462) (includes the
NULL-terminated character).
Default:
dds.builtin type.string.max size if
defined. Otherwise, 1024.
dds.builtin type.keyed string.alloc Maximum size of the keys used by
key size
the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDa
or
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDa
(includes the NULL-terminated
character).
Default: dds.builtin type.keyed string.max key size if defined.
Otherwise, 1024.
dds.builtin type.keyed string.alloc Maximum size of the strings
size
published by the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDa
or received by the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDa
(includes the NULL-terminated
character).
Default: dds.builtin type.keyed string.max size if defined.
Otherwise, 1024.
dds.builtin type.octets.alloc size
Maximum size of the octet
sequences published the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.BytesDataWrit
or received by the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.BytesDataRead
Default:
dds.builtin type.octets.max size if
defined. Otherwise, 2048.
dds.builtin type.keyed octets.alloc Maxkey size
imum size of the key published by the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDa
or received by the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDa
(includes the NULL-terminated
character).
Default: dds.builtin type.keyed octets.max
key size
if API
defined.
Generated on Mon Aug 13 09:02:20 2012
for RTI Connext
Java
by Doxygen
Otherwise, 1024.
dds.builtin type.keyed octets.alloc Maximum size of the octets
size
sequences published by a
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDa
or received by a
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDa
Default: dds.builtin type.keyed -
367
Description
Maximum size of the strings
published by the StringDataWriters
and received by the
StringDataReaders belonging to a
DomainParticipant (includes the
NULL-terminated character).
Default: 1024.
Maximum size of the keys used by
the KeyedStringDataWriters and
KeyedStringDataReaders belonging
to a DomainParticipant (includes
the NULL-terminated character).
Default: 1024.
Maximum size of the strings
published by the
KeyedStringDataWriters and
received by the
KeyedStringDataReaders belonging
to a DomainParticipant using the
builtin (p. 362) type (includes the
NULL-terminated character).
Default: 1024
Maximum size of the octet
sequences published by the
OctetsDataWriters and received by
the OctetsDataReader belonging to
a DomainParticipant.
Default: 2048
Maximum size of the keys used by
the KeyedOctetsStringDataWriters
and KeyedOctetsStringDataReaders
belonging to a DomainParticipant
(includes the NULL-terminated
character).
Default: 1024.
Maximum size of the octet
sequences published by the
KeyedOctetsDataWriters and
received by the
KeyedOctetsDataReaders belonging
to a DomainParticipant.
Default: 2048
Table 7.2: Properties for Allocating Size of Builtin Types, per DomainParticipant
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
368
Namespace Documentation
7.14
Package com.rti.dds.typecode
Classes
class EnumMember
A description of a member of an enumeration.
class ExtensibilityKind
Type to indicate the extensibility of a type.
class StructMember
A description of a member of a struct.
class TCKind
Enumeration type for com.rti.dds.typecode.TypeCode ( p. 1611) kinds.
class TypeCode
The definition of a particular data type, which you can use to inspect the
name, members, and other properties of types generated with rtiddsgen
( p. 298) or to modify types you define yourself at runtime.
class TypeCodeFactory
A singleton factory for creating, copying, and deleting data type definitions
dynamically.
class UnionMember
A description of a member of a union.
class ValueMember
A description of a member of a value type.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
369
class VM ABSTRACT
Constant used to indicate that a value type has the abstract modifier.
class VM CUSTOM
Constant used to indicate that a value type has the custom modifier.
class VM NONE
Constant used to indicate that a value type has no modifiers.
class VM TRUNCATABLE
Constant used to indicate that a value type has the truncatable modifier.
7.14.1
Detailed Description
7.14.2
When generating types with rtiddsgen (p. 298), type codes are enabled
by default. (The -notypecode option can be used to disable generation of
com.rti.dds.typecode.TypeCode (p. 1611) information.) For these types,
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
370
Namespace Documentation
7.14.3
371
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
372
Namespace Documentation
7.15
Package com.rti.dds.util
Classes
class AbstractPrimitiveSequence
class AbstractSequence
Abstract sequence.
class Enum
A superclass for all type-safe enumerated types.
class LoanableSequence
A sequence capable of storing its elements directly or taking out a loan on
them from an internal middleware store.
interface Sequence
<<interface>> (p. 279) <<generic>> (p. 279) A type-safe, ordered collection of elements. The type of these elements is referred to in this documentation as com.rti.ndds.example.Foo (p. 977).
class Union
7.15.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
7.16
Package com.rti.ndds
DDS extensions.
Packages
package config
Utility APIs independent of the DDS standard.
package transport
APIs related to RTI Connext pluggable transports.
package example
Programming HowTos: Code templates for common use cases.
7.16.1
Detailed Description
DDS extensions.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
373
374
Namespace Documentation
7.17
Package com.rti.ndds.config
Classes
class LibraryVersion t
The version of a single library shipped as part of an RTI Connext distribution.
class LogCategory
Categories of logged messages.
class Logger
<<interface>> (p. 279) The singleton type used to configure RTI Connext
logging.
interface LoggerDevice
<<interface>> (p. 279) Logging device interface. Use for user-defined logging devices.
class LogLevel
Level category assigned to RTI Connext log messages returned to an output
device.
class LogMessage
Log message.
class LogPrintFormat
The format used to output RTI Connext diagnostic information.
class LogVerbosity
The verbosities at which RTI Connext diagnostic information is logged.
class Version
<<interface>> (p. 279) The version of an RTI Connext distribution.
7.17.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
7.18
375
Package com.rti.ndds.example
Classes
class Foo
A representative user-defined data type.
class FooDataReader
<<interface>> (p. 279) <<generic>> (p. 279) User data type-specific
data reader.
class FooDataWriter
<<interface>> (p. 279) <<generic>> (p. 279) User data type specific
data writer.
class FooSeq
<<interface>> (p. 279) <<generic>> (p. 279) A type-safe, ordered collection of elements. The type of these elements is referred to in this documentation as com.rti.ndds.example.Foo (p. 977).
class FooTypeSupport
<<interface>> (p. 279) <<generic>> (p. 279) User data type specific interface.
7.18.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
376
Namespace Documentation
7.19
Package com.rti.ndds.transport
Classes
interface ShmemTransport
Built-in transport ( p. 376) plug-in for inter-process communications using
shared memory.
interface Transport
RTI Connexts abstract pluggable transport ( p. 376) interface.
class TransportSupport
<<interface>> (p. 279) The utility class used to configure RTI Connext
pluggable transports.
interface UDPv4Transport
Built-in transport ( p. 376) plug-in using UDP/IPv4.
interface UDPv6Transport
Built-in transport ( p. 376) plug-in using UDP/IPv6.
7.19.1
Detailed Description
7.19.2
Overview
RTI Connext has a pluggable transports architecture. The core of RTI Connext
is transport (p. 376) agnostic; it does not make any assumptions about the
actual transports used to send and receive messages. Instead, the RTI Connext
core uses an abstract transport API to interact with the transport (p. 376)
plugins which implement that API.
A transport (p. 376) plugin implements the abstract transport (p. 376) API
and performs the actual work of sending and receiving messages over a physical
transport (p. 376). A collection of builtin plugins (see Built-in Transport
Plugins (p. 222)) is delivered with RTI Connext for commonly used transports.
New transport (p. 376) plugins can easily be created, thus enabling RTI Connext applications to run over transports that may not even be conceived yet.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
377
This is a powerful capability and that distinguishes RTI Connext from competing middleware approaches.
RTI Connext also provides a set of APIs for installing and configSo
uring transport (p. 376) plugins to be used in an application.
that RTI Connext applications work out of the box, a subset of
the builtin transport (p. 376) plugins is preconfigured by default (see
com.rti.dds.infrastructure.TransportBuiltinQosPolicy (p. 1580)). You
can turn-off some or all of the builtin transport (p. 376) plugins. In addition,
you can configure other transport (p. 376) plugins for use by the application.
7.19.3
Transport Aliases
In order to use a transport (p. 376) plugin instance in an RTI Connext application, it must be registered with a com.rti.dds.domain.DomainParticipant
(p. 654). When you register a transport (p. 376), you specify a sequence of
alias strings to symbolically refer to the transport (p. 376) plugin. The same
alias strings can be used to register more than one transport (p. 376) plugin.
You can register multiple transport (p. 376) plugins with a
An alias symbolicom.rti.dds.domain.DomainParticipant (p. 654).
cally refers to one or more transport (p. 376) plugins registered with the
com.rti.dds.domain.DomainParticipant (p. 654).
Builtin transport
(p. 376) plugin instances can be referred to using preconfigured aliases (see
TRANSPORT BUILTIN (p. 119)).
A transport (p. 376) plugins class name is automatically used as an implicit
alias. It can be used to refer to all the transport (p. 376) plugin instances of
that class.
You can use aliases to refer to transport (p. 376) plugins, in order to specify:
- the transport (p. 376) plugins to use for discovery (see
com.rti.dds.infrastructure.DiscoveryQosPolicy.enabled transports
(p. 650)),
and
for
com.rti.dds.publication.DataWriter
(p. 557)
and
com.rti.dds.subscription.DataReader
(p. 487)
entities
(see
com.rti.dds.infrastructure.TransportSelectionQosPolicy (p. 1600)).
- the multicast addresses on which to receive discovery messages (see
com.rti.dds.infrastructure.DiscoveryQosPolicy.multicast receive addresses (p. 650)), and the multicast addresses and ports on which to receive
user data (see com.rti.dds.subscription.DataReaderQos.multicast
(p. 541)).
the
unicast
ports
used
for
user
data
(see
com.rti.dds.infrastructure.TransportUnicastQosPolicy
(p. 1605))
on
both
com.rti.dds.publication.DataWriter
(p. 557)
and
com.rti.dds.subscription.DataReader (p. 487) entities.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
378
Namespace Documentation
- the transport (p. 376) plugins used to parse an address string in a locator
(Locator Format (p. 58) and NDDS DISCOVERY PEERS (p. 57)).
A
com.rti.dds.domain.DomainParticipant
(p. 654)
(and
contained its entities) start using a transport (p. 376) plugin after the
com.rti.dds.domain.DomainParticipant (p. 654) is enabled (see
com.rti.dds.infrastructure.Entity.enable (p. 935)). An entity will use
all the transport (p. 376) plugins that match the specified transport (p. 376)
QoS policy. All transport (p. 376) plugins are treated uniformly, regardless
of how they were created or registered; there is no notion of some transports
being more special that others.
7.19.4
Transport Lifecycle
Thus,
A transport (p. 376) plugin is owned by whoever created it.
if you create and register a transport (p. 376) plugin with a
com.rti.dds.domain.DomainParticipant (p. 654), you are responsible
for deleting it by calling its destructor. Note that builtin transport (p. 376)
plugins (TRANSPORT BUILTIN (p. 119)) and transport (p. 376) plugins
that are loaded through the PROPERTY (p. 92) QoS policy (see Loading Transport Plugins through Property QoS Policy of Domain
Participant (p. 219)) are automatically managed by RTI Connext.
A user-created transport (p. 376) plugin must not be deleted while it is
still in use by a com.rti.dds.domain.DomainParticipant (p. 654). This
generally means that a user-created transport (p. 376) plugin instance
can only be deleted after the com.rti.dds.domain.DomainParticipant
(p. 654)
with
which
it
was
registered
is
deleted
(see
com.rti.dds.domain.DomainParticipantFactory.delete participant
(p. 749)). Note that a transport (p. 376) plugin cannot be unregistered
from a com.rti.dds.domain.DomainParticipant (p. 654).
A transport (p. 376) plugin instance cannot be registered with more than
one com.rti.dds.domain.DomainParticipant (p. 654) at a time. This requirement is necessary to guarantee the multi-threaded safety of the transport
(p. 376) API.
If the same physical transport (p. 376) resources are to be used with
more than one com.rti.dds.domain.DomainParticipant (p. 654) in the
same address space, the transport (p. 376) plugin should be written in
such a way so that it can be instantiated multiple timesonce for each
com.rti.dds.domain.DomainParticipant (p. 654) in the address space.
Note that it is always possible to write the transport (p. 376) plugin so that
multiple transport (p. 376) plugin instances share the same underlying resources; however the burden (if any) of guaranteeing multi-threaded safety to
access shared resource shifts to the transport (p. 376) plugin developer.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
7.19.5
379
A transport (p. 376) plugin instance is associated with two kinds of attributes:
- the class attributes that are decided by the plugin writer; these are invariant
across all instances of the transport (p. 376) plugin class, and
- the instance attributes that can be set on a per instance basis by the transport
(p. 376) plugin user.
Every transport (p. 376) plugin must specify the following class attributes.
transport (p. 376) class id (see com.rti.ndds.transport.Transport.Property t.classid (p. 1573))
Identifies a transport (p. 376) plugin implementation class. It denotes a
unique class to which the transport (p. 376) plugin instance belongs.
The class is used to distinguish between different transport (p. 376)
plugin implementations. Thus, a transport (p. 376) plugin vendor
should ensure that its transport (p. 376) plugin implementation has a
unique class.
Two transport (p. 376) plugin instances report the same class iff they
have compatible implementations. Transport (p. 1569) plugin instances
with mismatching classes are not allowed (by the RTI Connext Core) to
communicate with one another.
Multiple implementations (possibly from different vendors) for a physical
transport (p. 376) mechanism can co-exist in an RTI Connext application, provided they use different transport (p. 376) class IDs.
The class ID can also be used to distinguish between different transport
(p. 376) protocols over the same physical transport (p. 376) network (e.g.,
UDP vs. TCP over the IP routing infrastructure).
transport (p. 376) significant address bit count (see com.rti.ndds.transport.Transport.Property t.add
RTI Connexts addressing is modeled after the IPv6 and uses 128-bit
addresses ( java.net.InetAddress ) to route messages.
A transport (p. 376) plugin is expected to map the transports internal addressing scheme to 128-bit addresses. In general, this mapping is
likely to use only N least significant bits (LSB); these are specified by this
attribute.
>-------------- netmask ----------------<
+---------------------------------------+----------------------------+
|
Network Address
|
Transport Local Address |
+---------------------------------------+----------------------------+
>------------ N ------------<
address_bits_count
Only these bits are used
by the transport plugin.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
380
Namespace Documentation
The remaining bits of an address using the 128-bit address representation will be considered as part of the network address (see Transport
Network Address (p. 381)) and thus ignored by the transport (p. 376)
plugins internal addressing scheme.
For unicast addresses, the transport (p. 376) plugin is expected to ignore the higher (128 - com.rti.ndds.transport.Transport.Property t.address bit count (p. 1573)) bits. RTI Connext is free to manipulate
those bits freely in the addresses passed in/out to the transport (p. 376)
plugin APIs.
Theoretically, the significant address bits count, N is related to the size of
the underlying transport (p. 376) network as follows:
address bits count >= ceil(log2 (total addressable transport unicast interf aces))
The equality holds when the most compact (theoretical) internal address
mapping scheme is used. A practical address mapping scheme may waste
some bits.
7.19.6
The per instance attributes to configure the plugin instance are generally passed
in to the plugin constructor. These are defined by the transport (p. 376) plugin
writer, and can be used to:
- customize the behavior of an instance of a transport (p. 376) plugin, including the send and the receiver buffer sizes, the maximum message size, various
transport (p. 376) level classes of service (CoS), and so on.
- specify the resource values, network interfaces to use, various transport
(p. 376) level policies, and so on.
RTI Connext requires that every transport (p. 376) plugin instance must
specify the com.rti.ndds.transport.Transport.Property t.message size max (p. 1574) and com.rti.ndds.transport.Transport.Property t.gather send buffer count max (p. 1574).
It is up to the transport (p. 376) plugin developer to make these available for
configuration to transport (p. 376) plugin user.
Note that it is important that the instance attributes are compatible between
the sending side and the receiving side of communicating applications using
different instances of a transport (p. 376) plugin class. For example (p. 375),
if one side is configured to send messages larger than can be received by the
other side, then communications via the plugin may fail.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
7.19.7
381
The address bits not used by the transport (p. 376) plugin for its internal
addressing constitute its network address bits.
In order for RTI Connext to properly route the messages, each unicast interface
in the RTI Connext domain must have a unique address. RTI Connext allows
the user to specify the value of the network address when installing a transport (p. 376) plugin via the com.rti.ndds.transport.TransportSupport.register transport() API.
The network address for a transport (p. 376) plugin should be chosen such that
the resulting fully qualified 128-bit address will be unique in the RTI Connext
domain. Thus, if two instances of a transport (p. 376) plugin are registered
with a com.rti.dds.domain.DomainParticipant (p. 654), they will be at different network addresses in order for their unicast interfaces to have unique fully
qualified 128-bit addresses. It is also possible to create multiple transports with
the same network address, as it can be useful for certain use cases; note that
this will require special entity configuration for most transports to avoid clashes
in resource use (e.g. sockets for UDPv4 transport (p. 376)).
7.19.8
+--------------------------------------------------------------------+
|
Outgoing Address Range 1
->
Transport Plugin
|
+--------------------------------------------------------------------+
|
:
->
:
|
+--------------------------------------------------------------------+
|
Outgoing Address Range K
->
Transport Plugin
|
+--------------------------------------------------------------------+
The user can set up a routing table to restrict the use of a transport (p. 376)
plugin to send messages to selected addresses ranges.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
382
Namespace Documentation
7.19.9
By default, a transport (p. 376) plugin is configured to receive incoming messages destined to addresses in the network address range at which the plugin
was registered.
RTI Connext allows the user to configure the routing of incoming messages via
the com.rti.ndds.transport.TransportSupport.add receive route() API, so that
a transport (p. 376) plugin will be used to receive messages only on certain
ranges of addresses. The method can be called multiple times for a transport
(p. 376) plugin, with different address ranges.
+--------------------------------------------------------------------+
|
Transport Plugin
<- Incoming Address Range 1 |
+--------------------------------------------------------------------+
|
:
<:
|
+--------------------------------------------------------------------+
|
Transport Plugin
<- Incoming Address Range M |
+--------------------------------------------------------------------+
The user can set up a routing table to restrict the use of a transport (p. 376)
plugin to receive messages from selected ranges. For example (p. 375), the user
may restrict a transport (p. 376) plugin to
- receive messages from a certain multicast address range.
- receive messages only on certain unicast interfaces (when multiple unicast
interfaces are available on the transport (p. 376) plugin).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
Chapter 8
Class Documentation
8.1
AbstractBuiltinTopicDataTypeSupport
Class Reference
8.1.1
Detailed Description
Revision
1.17
Date
2009/11/01 18:04:49
384
Class Documentation
8.1.2
8.1.2.1
Subclasses should call this method immediately after chaining to the super constructor.
Exceptions:
NullPointerException if the delegate is null
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.2
385
void unloan ()
Return the loaned buffer in the sequence and set the maximum to 0.
final
final
final
final
8.2.1
void clear ()
void setSize (int newSize)
int size ()
Object copy from (Object src)
Detailed Description
A base class for sequences whose elements are of primitive types. Such sequences
do not support null values.
8.2.2
8.2.2.1
Returns:
the primitive type of this sequence, not the wrapper type.
See also:
com.rti.dds.util.Sequence.getElementType() (p. 1430)
Reimplemented from AbstractSequence (p. 391).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
386
Class Documentation
8.2.2.2
387
Postcondition:
The sequence will store its elements in the buffer provided.
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.AbstractPrimitiveSequence.hasOwnership
== com.rti.dds.infrastructure.false
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.size()
==
new length
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.getMaximum
== new max
Parameters:
buffer The new buffer that the sequence will use. Must point to enough
memory to hold new max elements of type Foo. It may be NULL if
new max == 0.
new length The desired new length for the sequence.
Returns:
com.rti.dds.infrastructure.true if buffer is successfully loaned to this sequence or com.rti.dds.infrastructure.false otherwise. Failure only occurs
due to failing to meet the pre-conditions. Upon failure the sequence remains unmodified.
See also:
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.unloan,
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.loan discontiguous
8.2.2.4
void unloan ()
Return the loaned buffer in the sequence and set the maximum to 0.
This method affects only the state of this sequence; it does not change the
contents of the buffer in any way.
Only the user who originally loaned a buffer should return that loan, as the
user may have dependencies on that memory known only to them. Unloaning
someone elses buffer may cause unspecified problems. For example, suppose a
sequence is loaning memory from a custom memory pool. A user of the sequence
likely has no way to release the memory back into the pool, so unloaning the
sequence buffer would result in a resource leak. If the user were to then re-loan
a different buffer, the original creator of the sequence would have no way to
discover, when freeing the sequence, that the loan no longer referred to its own
memory and would thus not free the users memory properly, exacerbating the
situation and leading to undefined behavior.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
388
Class Documentation
Precondition:
owned == com.rti.dds.infrastructure.false
Postcondition:
owned == com.rti.dds.infrastructure.true
maximum == 0
Returns:
com.rti.dds.infrastructure.true if the preconditions were met. Otherwise
com.rti.dds.infrastructure.false. The function only fails if the pre-conditions
are not met, in which case it leaves the sequence unmodified.
See also:
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.AbstractPrimitiveSequence.loan(Object,
int),
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.loan discontiguous, com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.setMaximum
8.2.2.5
8.2.2.6
Set the logical size of this sequence to zero. This method does not generate any
garbage for collection.
See also:
java.util.Collection.clear()
8.2.2.7
389
Exceptions:
IndexOutOfBoundsException if the new size is less than zero or greater
than the allocated length of the array.
See also:
AbstractSequence.getMaximum() (p. 1429)
8.2.2.8
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
390
Class Documentation
8.3
Abstract sequence.
Inheritance diagram for AbstractSequence::
Class getElementType ()
void add (int index, Object element)
Inserts the specified element at the specified position in this sequence.
8.3.1
Detailed Description
Abstract sequence.
8.3.2
8.3.2.1
391
Parameters:
new max Must be >= 0.
Returns:
com.rti.dds.infrastructure.true on success, com.rti.dds.infrastructure.false if
the preconditions are not met. In that case the sequence is not modified.
Implements Sequence (p. 1429).
Reimplemented in LoanableSequence (p. 1148).
8.3.2.2
Class getElementType ()
Returns:
a common supertype for all elements in this sequence.
Implements Sequence (p. 1430).
Reimplemented in AbstractPrimitiveSequence (p. 385).
8.3.2.3
8.3.2.4
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
392
Class Documentation
8.3.2.5
Remove the element at the given index by shifting all subsequent elements left
by one.
See also:
java.util.List.remove(int)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.4
393
8.4.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
394
Class Documentation
8.5
Public Attributes
final ByteSeq value
a sequence of octets
8.5.1
Detailed Description
8.5.2
8.5.2.1
a sequence of octets
[default] empty (zero-length)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.6
395
Public Attributes
int initial count
The initial count of resources.
8.6.1
Detailed Description
8.6.2
8.6.2.1
396
Class Documentation
8.6.3
8.6.3.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.7
AsynchronousPublisherQosPolicy
Reference
397
Class
Public Attributes
boolean disable asynchronous write
Disable asynchronous publishing.
8.7.1
Detailed Description
398
Class Documentation
Entity:
com.rti.dds.publication.Publisher (p. 1262)
Properties:
RxO (p. 101) = N/A
Changeable (p. 102) = NO (p. 102)
8.7.2
Usage
You can use this QoS policy to reduce the amount of time your application
thread spends sending data.
You can also use it, along with com.rti.dds.infrastructure.PublishModeQosPolicy
(p. 1295) and a com.rti.dds.publication.FlowController (p. 964), to send
large data reliably. Large in this context means that the data that cannot
be sent as a single packet by a network transport. For example, to send data
larger than 63K reliably using UDP/IP, you must configure RTI Connext to
fragment the data and send it asynchronously.
The
asynchronous
publisher
thread
is
shared
by
all
com.rti.dds.infrastructure.PublishModeQosPolicyKind.PublishModeQosPolicyKind.ASYNCHRONOUS
PUBLISH MODE QOS
com.rti.dds.publication.DataWriter
(p. 557)
instances that belong to this publisher and handles their data transmission
chores.
The
asynchronous
batch
flushing
thread
is
shared
by
all
com.rti.dds.publication.DataWriter (p. 557) instances with batching
enabled that belong to this publisher.
This QoS policy also allows you to adjust the settings of the asynchronous publishing and the asynchronous batch flushing threads. To use different threads for
two different com.rti.dds.publication.DataWriter (p. 557) entities, the instances must belong to different com.rti.dds.publication.Publisher (p. 1262)
instances.
A com.rti.dds.publication.Publisher (p. 1262) must have asynchronous
publishing enabled for its com.rti.dds.publication.DataWriter (p. 557) instances to write asynchronously.
A com.rti.dds.publication.Publisher (p. 1262) must have asynchronous batch flushing enabled in order to flush the batches of its
com.rti.dds.publication.DataWriter (p. 557) instances asynchronously.
However, no asynchronous batch flushing thread will be started until the
first com.rti.dds.publication.DataWriter (p. 557) instance with batching
enabled is created from this com.rti.dds.publication.Publisher (p. 1262).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.7.3
8.7.3.1
399
8.7.3.2
thread
per
400
Class Documentation
8.7.3.3
8.7.3.4
flushing
thread
per
401
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
402
Class Documentation
8.8
Public Attributes
boolean enable required subscriptions
Enables
support
for
required
subscriptions
com.rti.dds.publication.DataWriter ( p. 557).
in
8.8.1
Detailed Description
(p. 487),
Properties:
RxO (p. 101) = NO
Changeable
(p. 102)
=
YES
(p. 102)
(only
on
a
com.rti.dds.publication.DataWriter (p. 557) except for the member
com.rti.dds.infrastructure.AvailabilityQosPolicy.enable required subscriptions (p. 404))
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.8.2
403
Usage
Ordered
delivery
of
samples
with
RTI
Persistence
Service:
When a late-joining DataReader configured with
com.rti.dds.infrastructure.DurabilityQosPolicy (p. 802) set to
com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.PERSISTENT DURABILITY QOS or com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.TRANSI
DURABILITY QOS joins a DDS domain (p. 328), it will start receiving
historical samples from multiple DataWriters. For example, if the original
DataWriter is still alive, the newly created DataReader will receive
samples from the original DataWriter and one or more RTI Persistence
Service DataWriters (PRSTDataWriters). This policy can be used to
configure the sample ordering process on the DataReader.
404
Class Documentation
(VGUIDn, VSNm-1) has already been delivered to the application.
All the known DataWriters publishing VGUIDn have announced that they
do not have (VGUIDn, VSNm-1).
None of the known DataWriters publishing GUIDn have announced potential availability of (VGUIDn, VSNm-1) and both timeouts in this QoS
policy have expired.
8.8.3
8.8.3.1
Enables
support
for
required
subscriptions
com.rti.dds.publication.DataWriter (p. 557).
in
[default] com.rti.dds.infrastructure.false
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
405
Defines how much time to wait before delivering a sample to the application
without having received some of the previous samples.
Collaborative DataWriters
A sample identified by (VGUIDn, VSNm) will be delivered to the application if
this timeout expires for the sample and the following two conditions are satisfied:
None of the known DataWriters publishing VGUIDn have announced potential availability of (VGUIDn, VSNm-1).
The DataWriters for all the endpoint groups specified in required matched endpoint groups (p. 406) have been discovered or max endpoint availability waiting time (p. 405) has expired.
Required Subscriptions
This field is not applicable to Required Subscriptions.
[default]
com.rti.dds.infrastructure.Duration t.AUTO
(com.rti.dds.infrastructure.Duration t.INFINITE
for
com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPolicyAccessScopeKind.GROUP
PRESENTATION QOS. Otherwise, 0 seconds)
[range]
[0,
com.rti.dds.infrastructure.Duration t.INFINITE],
com.rti.dds.infrastructure.Duration t.AUTO
8.8.3.3
Defines how much time to wait to discover DataWriters providing samples for
the same data source (virtual GUID).
Collaborative DataWriters
The set of endpoint groups that are required to provide samples for a data source
can be configured using required matched endpoint groups (p. 406).
A non-consecutive sample identified by (VGUIDn, VSNm) cannot be delivered
to the application unless DataWriters for all the endpoint groups in required matched endpoint groups (p. 406) are discovered or this timeout expires.
Required Subscriptions
This field is not applicable to Required Subscriptions.
[default]
com.rti.dds.infrastructure.Duration t.AUTO
(com.rti.dds.infrastructure.Duration t.INFINITE
for
com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPolicyAccessScopeKind.GROUP
PRESENTATION QOS. Otherwise, 0 seconds)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
406
Class Documentation
[range]
[0,
com.rti.dds.infrastructure.Duration t.INFINITE],
com.rti.dds.infrastructure.Duration t.AUTO
8.8.3.4
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.9
407
8.9.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
408
Class Documentation
8.10
8.10.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.11
409
8.11.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
410
Class Documentation
8.12
8.12.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.13
411
8.13.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
412
Class Documentation
8.14
Public Attributes
boolean enable
Specifies whether or not batching is enabled.
8.14.1
Detailed Description
413
Entity:
com.rti.dds.publication.DataWriter (p. 557)
Properties:
RxO (p. 101) = NO
Changeable (p. 102) = UNTIL ENABLE (p. 102)
8.14.2
8.14.2.1
boolean enable
8.14.2.2
8.14.3
Consistency
The
setting
of
com.rti.dds.infrastructure.BatchQosPolicy.max data bytes
(p. 413)
must
be
consistent
with
com.rti.dds.infrastructure.BatchQosPolicy.max samples
(p. 414).
For these two values to be consistent, they cannot be both
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
414
Class Documentation
8.14.3.1
8.14.4
Consistency
The
setting
of
com.rti.dds.infrastructure.BatchQosPolicy.max samples
(p. 414)
must
be
consistent
with
com.rti.dds.infrastructure.BatchQosPolicy.max data bytes
(p. 413).
For these two values to be consistent, they cannot be both
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106).
8.14.4.1
8.14.5
Consistency
The
setting
of
com.rti.dds.infrastructure.BatchQosPolicy.max flush delay
(p. 414)
must
be
consistent
with
com.rti.dds.infrastructure.AsynchronousPublisherQosPolicy.disable asynchronous batch (p. 400) and com.rti.dds.infrastructure.BatchQosPolicy.thread safe write
(p. 415).
If
the
delay
is
different
than
com.rti.dds.infrastructure.Duration t.INFINITE,
com.rti.dds.infrastructure.AsynchronousPublisherQosPolicy.disable asynchronous batch (p. 400) must be set to com.rti.dds.infrastructure.false
and
com.rti.dds.infrastructure.BatchQosPolicy.thread safe write
(p. 415) must be set to com.rti.dds.infrastructure.true.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
415
8.14.6
Consistency
8.14.6.1
416
Class Documentation
8.14.7
Consistency
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.15
417
418
Class Documentation
Return an array containing copy of the contents of this sequence.
int getMaximum ()
Get the current maximum number of elements that can be stored in this
sequence.
8.15.1
Detailed Description
8.15.2
8.15.2.1
BooleanSeq ()
419
Parameters:
booleans the initial contents of this sequence
Exceptions:
NullPointerException if the input array is null
8.15.3
8.15.3.1
Append length elements from the given array to this sequence, starting at index
offset in that array.
Exceptions:
NullPointerException if the given array is null.
8.15.3.2
Exceptions:
NullPointerException if the given array is null
8.15.3.3
Shift all elements in the sequence starting from the given index and add the
element to the given index.
8.15.3.5
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
420
Class Documentation
8.15.3.6
Set the new boolean at the given index and return the old boolean.
Exceptions:
IndexOutOfBoundsException if the index is out of bounds.
8.15.3.7
8.15.3.8
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
421
int getMaximum ()
Get the current maximum number of elements that can be stored in this sequence.
The maximum of the sequence represents the maximum number of elements that
the underlying buffer can hold. It does not represent the current number of
elements.
The maximum is a non-negative number. It is initialized when the sequence is
first created.
The maximum can be changed implicitly by adding an element
or explicitly by calling
to the sequence with add() (p. 422),
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.setMaximum.
Returns:
the current maximum of the sequence.
See also:
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.size()
Implements Sequence (p. 1429).
8.15.3.10
422
Class Documentation
8.15.3.12
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.16
A user exception thrown when a parameter is not within the legal bounds.
Inheritance diagram for Bounds::
8.16.1
Detailed Description
A user exception thrown when a parameter is not within the legal bounds.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
423
424
Class Documentation
8.17
Public Attributes
final int[ ] value
An array of four integers that uniquely
com.rti.dds.infrastructure.Entity ( p. 931).
8.17.1
represents
remote
Detailed Description
8.17.2
8.17.2.1
Exceptions:
NullPointerException if other is null.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
425
8.17.3
8.17.3.1
represents
remote
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
426
Class Documentation
8.18
BuiltinTopicReaderResourceLimits t
Class Reference
Public Attributes
int initial samples
Initial number of samples.
8.18.1
427
Detailed Description
8.18.2
8.18.2.1
BuiltinTopicReaderResourceLimits t ()
BuiltinTopicReaderResourceLimits t (int
initial samples, int max samples, int initial infos,
int max infos, int initial outstanding reads, int
max outstanding reads, int max samples per read,
boolean disable fragmentation support, int
max fragmented samples, int initial fragmented samples,
int max fragmented samples per remote writer,
int max fragments per sample, boolean
dynamically allocate fragmented samples)
8.18.3
8.18.3.1
428
Class Documentation
[default] 64
[range] [1, 1 million], <= max samples
8.18.3.2
429
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
430
Class Documentation
8.19
Public Attributes
int length
Number of bytes to serialize.
int offset
Offset from which to start serializing bytes .
byte[ ] value
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes array value.
8.19.1
Detailed Description
8.19.2
8.19.2.1
Bytes ()
431
Default Constructor.
The default constructor initializes the newly created object with null value, zero
length, and zero offset.
8.19.2.2
Copy constructor.
Parameters:
src <<in>> ( p. 279) Object to copy from.
Exceptions:
NullPointerException if src is null.
8.19.2.3
8.19.2.4
Create a new Bytes (p. 430) object to wrap the given array.
The value field will point to the given array. The offset will be set to 0. The
length will be set to the length of the array unless the array is null, in which
case the length will be set to 0 also.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
432
Class Documentation
8.19.3
8.19.3.1
8.19.4
8.19.4.1
int length
int offset
byte [ ] value
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.20
433
Instantiates
DataReader
<<interface>>
( p. 279)
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes >.
<
from
the
void take (BytesSeq received data, SampleInfoSeq info seq, int max samples, int sample states, int view states, int instance states)
Access
a
collection
of
data-samples
com.rti.dds.subscription.DataReader ( p. 487).
from
the
void read next sample (Bytes received data, SampleInfo sample info)
Copies the next not-previously-accessed data
com.rti.dds.subscription.DataReader ( p. 487).
value
from
the
void take next sample (Bytes received data, SampleInfo sample info)
Copies the next not-previously-accessed data
com.rti.dds.subscription.DataReader ( p. 487).
value
from
the
434
Class Documentation
Indicates to the com.rti.dds.subscription.DataReader ( p. 487) that
the application is done accessing the collection of received data and
info seq obtained by some earlier invocation of read or take on the
com.rti.dds.subscription.DataReader ( p. 487).
8.20.1
Detailed Description
Instantiates
DataReader
<<interface>>
( p. 279)
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes >.
<
See also:
com.rti.ndds.example.FooDataReader (p. 979)
com.rti.dds.subscription.DataReader (p. 487)
8.20.2
8.20.2.1
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
See also:
com.rti.ndds.example.FooDataReader.read (p. 981)
8.20.2.2
Access
a
collection
of
data-samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
See also:
com.rti.ndds.example.FooDataReader.take (p. 983)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
435
8.20.2.4
8.20.2.5
Copies
the
next
not-previously-accessed data
com.rti.dds.subscription.DataReader (p. 487).
value
from
the
See also:
com.rti.ndds.example.FooDataReader.read next sample (p. 993)
8.20.2.6
Copies
the
next
not-previously-accessed data
com.rti.dds.subscription.DataReader (p. 487).
value
from
the
See also:
com.rti.ndds.example.FooDataReader.take next sample (p. 994)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
436
Class Documentation
8.20.2.7
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.21
437
<<interface>>
( p. 279)
Instantiates
DataWriter
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes >.
<
void write (byte[ ] octets, int offset, int length, InstanceHandle t handle)
<<eXtension>>
(p. 278)
Modifies
the
value
of
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes data instance.
void write w timestamp (byte[ ] octets, int offset, int length, InstanceHandle t handle, Time t source timestamp)
<<eXtension>>
(p. 278)
Performs
the
same
function
as
com.rti.dds.type.builtin.com.rti.dds.type.builtin.BytesDataWriter.BytesDataWriter.write
except that it also provides the value for the source timestamp.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
438
Class Documentation
8.21.1
Detailed Description
<<interface>>
( p. 279)
Instantiates
DataWriter
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes >.
<
See also:
com.rti.ndds.example.FooDataWriter (p. 1012)
com.rti.dds.publication.DataWriter (p. 557)
8.21.2
8.21.2.1
8.21.2.2
Modifies
the
value
of
<<eXtension>>
( p. 278)
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes data instance.
Parameters:
octets <<in>> ( p. 279) Array of bytes to be published.
offset <<in>> ( p. 279) Offset from which to start publishing.
length <<in>> ( p. 279) Number of bytes to be published.
handle <<in>>
( p. 279)
The
special
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL should be used always.
value
See also:
com.rti.ndds.example.FooDataWriter.write (p. 1021)
8.21.2.3
<<eXtension>>
( p. 278)
Modifies
the
value
of
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes data instance.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
439
Parameters:
octets <<in>> ( p. 279) Sequence of bytes to be published.
handle <<in>>
( p. 279)
The
special
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL should be used always.
value
See also:
com.rti.ndds.example.FooDataWriter.write (p. 1021)
8.21.2.4
8.21.2.5
<<eXtension>>
( p. 278)
Performs
the
same
function
as
com.rti.dds.type.builtin.com.rti.dds.type.builtin.BytesDataWriter.BytesDataWriter.write
except that it also provides the value for the source timestamp.
Parameters:
octets <<in>> ( p. 279) Array of bytes to be published.
offset <<in>> ( p. 279) Offset from which to start publishing.
length <<in>> ( p. 279) Number of bytes to be published.
handle <<in>>
( p. 279)
The
special
value
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL should be used always.
source timestamp <<in>> ( p. 279) The timestamp value must be
greater than or equal to the timestamp value used in the last writer
operation. See com.rti.ndds.example.FooDataWriter.write w timestamp (p. 1024). Cannot be NULL.
See also:
com.rti.ndds.example.FooDataWriter.write w timestamp (p. 1024)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
440
Class Documentation
8.21.2.6
<<eXtension>>
( p. 278)
Performs
the
same
function
as
com.rti.dds.type.builtin.com.rti.dds.type.builtin.BytesDataWriter.BytesDataWriter.write
except that it also provides the value for the source timestamp.
Parameters:
octets <<in>> ( p. 279) Sequence of bytes to be published.
handle <<in>>
( p. 279)
The
special
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL should be used always.
value
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.22
441
void setByte (int dstIndex, byte[ ] elements, int srcIndex, int length)
Copy a portion of the given array into this sequence.
442
Class Documentation
int getMaximum ()
Get the current maximum number of elements that can be stored in this
sequence.
8.22.1
Detailed Description
8.22.2
8.22.2.1
ByteSeq ()
443
Parameters:
bytes the initial contents of this sequence
Exceptions:
NullPointerException if the input array is null
8.22.3
8.22.3.1
Append length elements from the given array to this sequence, starting at index
offset in that array.
Exceptions:
NullPointerException if the given array is null.
8.22.3.2
Exceptions:
NullPointerException if the given array is null
8.22.3.3
Shift all elements in the sequence starting from the given index and add the
element to the given index.
8.22.3.5
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
444
Class Documentation
8.22.3.6
Set the new byte at the given index and return the old byte.
Exceptions:
IndexOutOfBoundsException if the index is out of bounds.
8.22.3.7
8.22.3.8
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
445
int getMaximum ()
Get the current maximum number of elements that can be stored in this sequence.
The maximum of the sequence represents the maximum number of elements that
the underlying buffer can hold. It does not represent the current number of
elements.
The maximum is a non-negative number. It is initialized when the sequence is
first created.
The maximum can be changed implicitly by adding an element
or explicitly by calling
to the sequence with add() (p. 446),
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.setMaximum.
Returns:
the current maximum of the sequence.
See also:
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.size()
Implements Sequence (p. 1429).
8.22.3.10
446
Class Documentation
8.22.3.12
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.23
447
given
Package Attributes
transient Sequence loanedInfoSequence = null
8.23.1
Detailed Description
448
Class Documentation
8.23.2
8.23.2.1
BytesSeq ()
Constructs
a
new
sequence
containing
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes objects.
the
given
Parameters:
elements the initial contents of this sequence.
Exceptions:
NullPointerException if the input collection is null
8.23.3
8.23.3.1
Copy data into this object from another. The result of this method is that
both this and src will be the same size and contain the same data.
Parameters:
src The Object which contains the data to be copied
Returns:
this
Exceptions:
NullPointerException If src is null.
ClassCastException If src is not a Sequence OR if one of the objects
contained in the Sequence is not of the expected type.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
449
See also:
com.rti.dds.infrastructure.Copyable.copy from
(p. 480)(java.lang.Object)
Implements Copyable (p. 480).
8.23.4
8.23.4.1
When a memory loan has been taken out in the lower layers of NDDS, store a
pointer to the native sequence here. That way, when we call finish(), we can
give the memory back.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
450
Class Documentation
8.24
8.24.1
Detailed Description
8.24.2
8.24.2.1
451
com.rti.dds.type.builtin.com.rti.dds.type.builtin.BytesTypeSupport.get type name. Therefore, the usage of this function is optional and it is only
required when the automatic built-in type registration is disabled using the
participant property dds.builtin type.auto register.
This
method
can
also
be
used
to
register
the
same
com.rti.dds.type.builtin.com.rti.dds.type.builtin.BytesTypeSupport with a
com.rti.dds.domain.DomainParticipant (p. 654) using different values for
the type name.
is
called
multiple
times
with
the
same
If
register type
com.rti.dds.domain.DomainParticipant (p. 654) and type name, the
second (and subsequent) registrations are ignored by the operation.
Parameters:
participant <<in>> ( p. 279) the com.rti.dds.domain.DomainParticipant
to
register
the
data
type
(p. 654)
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes with. Cannot
be null.
type name <<in>> ( p. 279) the type name under with the data
type
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes
is
registered with the participant; this type name is used when
creating a new com.rti.dds.topic.Topic (p. 1545).
(See
com.rti.dds.domain.DomainParticipant.create topic (p. 697).)
The name may not be null or longer than 255 characters.
Exceptions:
One of
the
Standard
Return
Codes
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET
(p. 1363)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362).
(p. 108),
or
MT Safety:
UNSAFE on the FIRST call. It is not safe for two threads to simultaneously
make the first call to register a type. Subsequent calls are thread safe.
See also:
com.rti.dds.domain.DomainParticipant.create topic (p. 697)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
452
Class Documentation
8.24.2.2
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
453
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
454
Class Documentation
8.25
Public Attributes
TransportMulticastSettingsSeq multicast settings
A sequence of com.rti.dds.infrastructure.TransportMulticastSettings t
( p. 1594) used to configure the multicast addresses associated with a channel.
8.25.1
Detailed Description
8.25.2
8.25.2.1
ChannelSettings t ()
Constructor.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
455
Constructor.
Parameters:
src <<in>> ( p. 279) Settings used to initialized the new settings.
8.25.2.3
ChannelSettings t (TransportMulticastSettingsSeq
multicast settings, String filter expression)
Constructor.
Parameters:
multicast settings <<in>> ( p. 279) Multicast settings.
filter expression <<in>> ( p. 279) Filter expression.
8.25.3
8.25.3.1
Initial value:
new TransportMulticastSettingsSeq()
A sequence of com.rti.dds.infrastructure.TransportMulticastSettings t
(p. 1594) used to configure the multicast addresses associated with a channel.
The sequence cannot be empty.
The maximum number of multicast locators in a channel is limited to four (A
locator is defined by a transport alias, a multicast address and a port)
[default] Empty sequence (invalid value)
8.25.3.2
A logical expression used to determine the data that will be published in the
channel.
If the expression evaluates to TRUE, a sample will be published on the channel.
An empty string always evaluates the expression to TRUE.
A NULL value is not allowed.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
456
Class Documentation
of
The
filter
expression
length
(including
NULLterminated
character)
cannot
be
greater
than
com.rti.dds.infrastructure.DomainParticipantResourceLimitsQosPolicy.channel filter expression max length (p. 793).
See also:
Queries and Filters Syntax (p. 286)
[default] NULL (invalid value)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.26
457
8.26.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
458
Class Documentation
8.27
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
459
final void setChar (int dstIndex, char[ ] elements, int srcIndex, int
length)
Copy a portion of the given array into this sequence.
8.27.1
Detailed Description
8.27.2
8.27.2.1
CharSeq ()
460
Class Documentation
8.27.2.2
8.27.3
8.27.3.1
Append length elements from the given array to this sequence, starting at index
offset in that array.
Exceptions:
NullPointerException if the given array is null.
8.27.3.2
8.27.3.3
Shift all elements in the sequence starting from the given index and add the
element to the given index.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
461
8.27.3.6
Set the new character at the given index and return the old character.
Exceptions:
IndexOutOfBoundsException if the index is out of bounds.
8.27.3.7
8.27.3.8
462
Class Documentation
Returns:
A non-null array containing a copy of the contents of this sequence.
8.27.3.9
Get the current maximum number of elements that can be stored in this sequence.
The maximum of the sequence represents the maximum number of elements that
the underlying buffer can hold. It does not represent the current number of
elements.
The maximum is a non-negative number. It is initialized when the sequence is
first created.
The maximum can be changed implicitly by adding an element
or explicitly by calling
to the sequence with add() (p. 463),
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.setMaximum.
Returns:
the current maximum of the sequence.
See also:
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.size()
Implements Sequence (p. 1429).
8.27.3.10
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
463
464
Class Documentation
8.28
<<interface>> ( p. 279) Root class for all the conditions that may be attached
to a com.rti.dds.infrastructure.WaitSet (p. 1709).
Inheritance diagram for Condition::
Package Functions
boolean get trigger value ()
Retrieve the trigger value.
8.28.1
Detailed Description
<<interface>> ( p. 279) Root class for all the conditions that may be attached
to a com.rti.dds.infrastructure.WaitSet (p. 1709).
This basic class is specialised in three classes:
com.rti.dds.infrastructure.GuardCondition
com.rti.dds.infrastructure.StatusCondition
(p. 1448),
com.rti.dds.subscription.ReadCondition (p. 1313).
(p. 1041),
and
8.28.2
8.28.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.29
465
ConditionSeq ()
Create a empty Condition ( p. 464) Sequence with a initial maximum of
zero.
int getMaximum ()
Get the current maximum number of elements that can be stored in this
sequence.
8.29.1
Detailed Description
8.29.2
8.29.2.1
Create a Condition (p. 464) Sequence with the given contents. The size and
the maximum of the new sequence will match the size of the given collection.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
466
Class Documentation
Parameters:
conditions The initial contents of the sequence
Exceptions:
NullPointerException if the given collection is null
8.29.2.2
ConditionSeq ()
Create a empty Condition (p. 464) Sequence with a initial maximum of zero.
8.29.2.3
Create a Condition (p. 464) Sequence with the specified initial maximum.
Parameters:
initial maximum The initial maximum of the sequence.
8.29.3
8.29.3.1
int getMaximum ()
Get the current maximum number of elements that can be stored in this sequence.
The maximum of the sequence represents the maximum number of elements that
the underlying buffer can hold. It does not represent the current number of
elements.
The maximum is a non-negative number. It is initialized when the sequence is
first created.
The maximum can be changed implicitly by adding an element
or explicitly by calling
to the sequence with add() (p. 391),
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.setMaximum.
Returns:
the current maximum of the sequence.
See also:
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.size()
Implements Sequence (p. 1429).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.30
467
boolean evaluate (Object compile data, Object sample, FilterSampleInfo meta data)
Evaluate whether the sample is passing the filter or not according to the
sample content.
8.30.1
Detailed Description
468
Class Documentation
See also:
com.rti.dds.topic.ContentFilteredTopic (p. 471)
com.rti.dds.domain.DomainParticipant.register contentfilter
(p. 728)
8.30.2
8.30.2.1
Compile an instance of the content filter according to the filter expression and
parameters of the given data type.
This method is called when an instance of the locally registered content filter
is created or when the expression parameter for the locally registered content
filter instance is changed.
An instance of the locally registered content filter is created every time a local
com.rti.dds.topic.ContentFilteredTopic (p. 471) with the matching filter
name is created, or when a com.rti.dds.subscription.DataReader (p. 487)
with a matching filter name is discovered.
It is possible for multiple threads to be calling into this function at the same
time. However, this function will never be called on a content filter that has
been unregistered.
Parameters:
new compile data <<out>> ( p. 279) User specified opaque pointer
of this instance of the content filter. This value is then passed
to the com.rti.dds.topic.ContentFilter.evaluate (p. 469) and
com.rti.dds.topic.ContentFilter.finalize (p. 470) functions for
this instance of the content filter. Can be set to NULL.
expression <<in>> ( p. 279) An ASCIIZ string with the filter expression. The memory used by this string is owned by RTI Connext and
must not be freed. If you want to manipulate this string, you must
first make a copy of it.
parameters <<in>> ( p. 279) A string sequence with the expression parameters the com.rti.dds.topic.ContentFilteredTopic
The string sequence is
(p. 471) was created with.
equal (but not identical) to the string sequence passed
to
com.rti.dds.domain.DomainParticipant.create contentfilteredtopic (p. 701).
Note that the sequence passed
to the compile function is owned by RTI Connext and must not be
referenced outside the compile function.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
469
8.30.2.2
Evaluate whether the sample is passing the filter or not according to the sample
content.
This method is called when a sample for a locally created
com.rti.dds.subscription.DataReader
(p. 487)
associated
with the filter is received, or when a sample for a discovered
com.rti.dds.subscription.DataReader (p. 487) assocated with the filter needs to be sent.
It is possible for multiple threads to be calling into this function at the same
time. However, this function will never be called on a content filter that has
been unregistered.
Parameters:
compile data <<in>> ( p. 279) The last return value of the
com.rti.dds.topic.ContentFilter.compile
(p. 468)
function
for this instance of the content filter. Can be NULL.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
470
Class Documentation
sample <<in>> ( p. 279) Pointer to a deserialized sample to be filtered
Returns:
The function must return 0 if the sample should be filtered out, non zero
otherwise
8.30.2.3
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.31
471
8.31.1
Detailed Description
472
Class Documentation
The filter expression attribute is a string that specifies the criteria to
select the data samples of interest. It is similar to the WHERE part of an
SQL clause.
The expression parameters attribute is a sequence of strings that give
values to the parameters (i.e. %n tokens) in the filter expression.
The number of supplied parameters must fit with the requested values in
the filter expression (i.e. the number of n tokens).
Queries and Filters Syntax (p. 286) describes the syntax of filter expression and expression parameters.
Note on Content-Based Filtering and Sparse Value Types
If you are a user of the Dynamic Data (p. 175) API, you may define sparse
value types; that is, types for which every data sample need not include a value
for every field defined in the type. (See com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529) and com.rti.dds.typecode.TypeCodeFactory.create sparse tc (p. 1653).) In order for a filter expression on a field to be
well defined, that field must be present in the data sample. That means
that you will only be able to perform a content-based filter on fields
that are marked as com.rti.dds.typecode.TypeCode.KEY MEMBER
(p. 1645) or com.rti.dds.typecode.TypeCode.NONKEY REQUIRED MEMBER (p. 1646).
8.31.2
8.31.2.1
with
the
Returns:
the filter expression.
8.31.2.2
473
(p. 473) or, if that method is never called, the parameters specified when the
com.rti.dds.topic.ContentFilteredTopic (p. 471) was created.
Parameters:
parameters <<inout>> ( p. 279) the filter expression parameters. Cannot be NULL.
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.domain.DomainParticipant.create contentfilteredtopic (p. 701)
com.rti.dds.topic.ContentFilteredTopic.set expression parameters (p. 473)
8.31.2.3
with
the
Parameters:
parameters <<in>> ( p. 279) the filter expression parameters Cannot be
NULL.. Length of sequence cannot be greater than 100.
Exceptions:
One of the Standard Return Codes (p. 108)
8.31.2.4
the
Returns:
The
com.rti.dds.topic.Topic
(p. 1545)
assocated
com.rti.dds.topic.ContentFilteredTopic (p. 471).
with
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
the
474
Class Documentation
8.31.2.5
8.31.2.6
475
operators in order to remove a pattern from the match pattern list. For example,
if the filter expression paremeter value is:
IBM,MSFT
Then remove from expression parameter(0, IBM) would generate the expression:
MSFT
Parameters:
index <<in>> ( p. 279) The index of the parameter string to
be modified.
The first index is index 0.
When using the
com.rti.dds.domain.DomainParticipant.STRINGMATCHFILTER NAME (p. 155) filter, index must be 0.
val <<in>> ( p. 279) The string term to be removed from the parameter
string.
Exceptions:
One of the Standard Return Codes (p. 108)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
476
Class Documentation
8.32
Public Attributes
String content filter topic name
Name of the Content-filtered Topic associated with the Reader.
8.32.1
Detailed Description
8.32.2
8.32.2.1
ContentFilterProperty t ()
Constructor.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.32.3
8.32.3.1
477
Identifies the filter class this filter belongs to. RTPS can support multiple filter
classes (SQL, regular expressions, custom filters, etc).
8.32.3.4
The actual filter expression. Must be a valid expression for the filter class
specified using filterClassName.
8.32.3.5
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
478
Class Documentation
8.33
Public Attributes
final ByteSeq value
a sequence of octets
8.33.1
Detailed Description
8.33.2
8.33.2.1
a sequence of octets
[default] Empty (zero-sized)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.34
Inherits ArraySequence.
8.34.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
479
480
Class Documentation
8.35
<<eXtension>> ( p. 278) <<interface>> ( p. 279) Interface for all the userdefined data type classes that support copy.
Inheritance diagram for Copyable::
8.35.1
Detailed Description
<<eXtension>> ( p. 278) <<interface>> ( p. 279) Interface for all the userdefined data type classes that support copy.
A class implements the com.rti.dds.infrastructure.Copyable (p. 480) interface to indicate that it allows its entire state to be replaced with the state of
another object. This state copy is a deep copy, such that subsequent changes
to any part of one object will not be observed in the other.
Therefore, in general, object references in this object cannot simply be reassigned to those in the source object. (Strings are an exception to this rule,
because they are immutable.)
8.35.2
8.35.2.1
481
Returns:
Generally, return this but special cases (such as Enum) exist.
Exceptions:
NullPointerException If src is null.
ClassCastException If src is not the same type as this.
Implemented in DynamicData (p. 831), InstanceHandle t (p. 1056),
StringSeq (p. 1468), Time t (p. 1539), WriteParams t (p. 1734), SampleInfo (p. 1403), BuiltinTopicKey t (p. 425), Bytes (p. 432), BytesSeq
(p. 448), KeyedBytes (p. 1071), KeyedBytesSeq (p. 1092), KeyedString (p. 1099), KeyedStringSeq (p. 1118), AbstractPrimitiveSequence
(p. 389), Enum (p. 945), Foo (p. 977), and FooSeq (p. 1035).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
482
Class Documentation
8.36
Various threads and resource limits settings used by RTI Connext to control its
internal database.
Inheritance diagram for DatabaseQosPolicy::
Public Attributes
final ThreadSettings t thread
Database thread settings.
8.36.1
Detailed Description
Various threads and resource limits settings used by RTI Connext to control its
internal database.
RTI uses an internal in-memory database to store information about entities created locally as well as remote entities found during the discovery process. This database uses a background thread to garbage-collect records related
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
483
8.36.2
8.36.2.1
484
Class Documentation
The database thread will wake up at this rate to clean up the database.
[default] 61 seconds
[range] [0,1 year]
8.36.2.4
485
8.36.2.8
486
Class Documentation
A weak reference is an internal data structure that refers to a record within RTI
Connext internal database. This field configures the maximum number of such
references that RTI Connext may create.
The actual number of weak references is permitted to grow from an initial value
(indicated by com.rti.dds.infrastructure.DatabaseQosPolicy.initial weak references (p. 485)) to this maximum. To prevent RTI Connext from allocating any weak references after the system has reached a steady state, set the
initial and maximum values equal to one another. To indicate that the number
of weak references should continue to grow as needed indefinitely, set this field
to
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106). Be aware that although a single weak reference
occupies very little memory, allocating a very large number of them can have a
significant impact on your overall memory usage.
Tuning this value precisely is difficult without intimate knowledge of the structure of RTI Connext database; doing so is an advanced feature not required
by most applications. The default value has been chosen to be sufficient for
reasonably large systems. If you believe you may need to modify this value,
please consult with RTI support personnel for assistance.
[default] com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
[range] [1, 100 million] or com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106), >= initial weak references
See also:
com.rti.dds.infrastructure.DatabaseQosPolicy.initial weak references (p. 485)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.37
487
<<interface>> ( p. 279) Allows the application to: (1) declare the data it
wishes to receive (i.e. make a subscription (p. 353)) and (2) access the data
received by the attached com.rti.dds.subscription.Subscriber (p. 1476).
Inheritance diagram for DataReader::
QueryCondition create querycondition (int sample states, int view states, int instance states, String query expression, StringSeq query parameters)
Creates a com.rti.dds.subscription.QueryCondition ( p. 1311).
void set qos with profile (String library name, String profile name)
<<eXtension>> (p. 278) Change the QoS of this reader using the input
XML QoS profile.
488
Class Documentation
Calls the reader listener.
void
get matched publication datareader protocol status
(DataReaderProtocolStatus status, InstanceHandle t publication handle)
<<eXtension>> (p. 278) Get the datareader protocol status for this reader,
per matched publication ( p. 349) identified by the publication handle.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
489
with
this
void read untyped (List received data, SampleInfoSeq info seq, int
max samples, int sample states, int view states, int instance states)
Read data samples, if any are available.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
490
Class Documentation
void take untyped (List received data, SampleInfoSeq info seq, int
max samples, int sample states, int view states, int instance states)
Take data samples, if any are available.
void read instance w condition untyped (List received data, SampleInfoSeq info seq, int max samples, InstanceHandle t a handle,
ReadCondition read condition)
Read data samples, if any are available.
void take instance w condition untyped (List received data, SampleInfoSeq info seq, int max samples, InstanceHandle t a handle,
ReadCondition read condition)
Take data samples, if any are available.
void read next instance untyped (List received data, SampleInfoSeq info seq, int max samples, InstanceHandle t a handle, int sample states, int view states, int instance states)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
491
void take next instance untyped (List received data, SampleInfoSeq info seq, int max samples, InstanceHandle t a handle, int sample states, int view states, int instance states)
Take data samples, if any are available.
void return loan untyped (List received data, SampleInfoSeq info seq)
Return loaned sample data and meta-data.
8.37.1
Detailed Description
<<interface>> ( p. 279) Allows the application to: (1) declare the data it
wishes to receive (i.e. make a subscription (p. 353)) and (2) access the data
received by the attached com.rti.dds.subscription.Subscriber (p. 1476).
QoS:
com.rti.dds.subscription.DataReaderQos (p. 536)
Status:
com.rti.dds.infrastructure.StatusKind.StatusKind.DATA AVAILABLE STATUS;
com.rti.dds.infrastructure.StatusKind.StatusKind.LIVELINESS CHANGED STATUS, com.rti.dds.subscription.LivelinessChangedStatus
(p. 1135);
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
492
Class Documentation
493
com.rti.dds.infrastructure.Entity.get statuscondition
(p. 936)
and com.rti.dds.infrastructure.Entity.get status changes (p. 936)
com.rti.dds.subscription.DataReader.get liveliness changed com.rti.dds.subscription.DataReader.get status
(p. 498)
requested deadline missed status
(p. 499)
com.rti.dds.subscription.DataReader.get requested incompatible qos status
(p. 499)
com.rti.dds.subscription.DataReader.get sample lost status
(p. 499)
com.rti.dds.subscription.DataReader.get sample rejected status (p. 498) com.rti.dds.subscription.DataReader.get subscription matched status (p. 500)
All sample-accessing operations, namely: com.rti.ndds.example.FooDataReader.read
com.rti.ndds.example.FooDataReader.take
(p. 983),
(p. 981),
com.rti.ndds.example.FooDataReader.read w condition
(p. 990),
and com.rti.ndds.example.FooDataReader.take w condition (p. 991)
may fail with the error com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET
(p. 1363)
as
described
in
com.rti.dds.subscription.Subscriber.begin access (p. 1497).
See also:
Operations Allowed in Listener Callbacks (p. 1132)
8.37.2
8.37.2.1
494
Class Documentation
8.37.2.2
8.37.2.3
Deletes
a
com.rti.dds.subscription.ReadCondition
(p. 1313)
com.rti.dds.subscription.QueryCondition (p. 1311) attached to
com.rti.dds.subscription.DataReader (p. 487).
or
the
495
Parameters:
condition <<in>> ( p. 279) Condition to be deleted.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363)
8.37.2.4
496
Class Documentation
set qos (abstract) (p. 932)
com.rti.dds.subscription.DataReader.set qos (p. 495)
Operations Allowed in Listener Callbacks (p. 1132)
8.37.2.5
<<eXtension>> ( p. 278) Change the QoS of this reader using the input XML
QoS profile.
This operation modifies the QoS of the com.rti.dds.subscription.DataReader
(p. 487).
The
com.rti.dds.subscription.DataReaderQos.user data
(p. 539),
com.rti.dds.subscription.DataReaderQos.deadline
(p. 539),
com.rti.dds.subscription.DataReaderQos.latency budget
(p. 539),
com.rti.dds.subscription.DataReaderQos.time based filter
(p. 540),
com.rti.dds.subscription.DataReaderQos.reader data lifecycle (p. 540)
can be changed. The other policies are immutable.
Parameters:
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default
library (see com.rti.dds.subscription.Subscriber.set default library (p. 1494)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see
com.rti.dds.subscription.Subscriber.set default profile
(p. 1495)).
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE IMMUTABLE POLICY (p. 1358), or com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359).
See also:
com.rti.dds.subscription.DataReaderQos (p. 536) for rules on consistency among QoS
com.rti.dds.subscription.DataReader.set qos (p. 495)
Operations Allowed in Listener Callbacks (p. 1132)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
497
8.37.2.7
8.37.2.8
(p. 518)
of
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
the
498
Class Documentation
See also:
get listener (abstract) (p. 934)
8.37.2.9
8.37.2.10
8.37.2.11
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
499
8.37.2.13
8.37.2.14
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
500
Class Documentation
8.37.2.15
8.37.2.16
<<eXtension>> ( p. 278) Get the datareader cache status for this reader.
Parameters:
status <<inout>> ( p. 279) com.rti.dds.subscription.DataReaderCacheStatus
(p. 517) to be filled in. Cannot be NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
8.37.2.17
or
<<eXtension>> ( p. 278) Get the datareader protocol status for this reader.
Parameters:
status <<inout>> ( p. 279) com.rti.dds.subscription.DataReaderProtocolStatus
(p. 526) to be filled in. Cannot be NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
or
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
501
<<eXtension>> ( p. 278) Get the datareader protocol status for this reader,
per matched publication (p. 349) identified by the publication handle.
Note: Status for a remote entity is only kept while the entity is alive. Once a
remote entity is no longer alive, its status is deleted.
Parameters:
status <<inout>> ( p. 279). The information to be filled in on the associated publication (p. 349). Cannot be NULL.
publication handle <<in>> ( p. 279). Handle to a specific publication
(p. 349) associated with the com.rti.dds.publication.DataWriter
(p. 557).
Cannot be NULL..
Must correspond to
a
publication
(p. 349)
currently
associated
with
the
com.rti.dds.subscription.DataReader (p. 487).
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361)
8.37.2.19
or
with
this
Matching publications are those in the same domain (p. 328) that
have a matching com.rti.dds.topic.Topic (p. 1545), compatible QoS
common partition that the com.rti.dds.domain.DomainParticipant
(p. 654) has not indicated should be ignored by means of the
com.rti.dds.domain.DomainParticipant.ignore publication (p. 716) operation.
The handles returned in the publication handles list are the ones
that are used by the DDS implementation to locally identify the corresponding matched com.rti.dds.publication.DataWriter (p. 557) entities. These handles match the ones that appear in the instance handle
field of the com.rti.dds.subscription.SampleInfo (p. 1398) when reading the builtin.PublicationBuiltinTopicDataTypeSupport.PUBLICATION TOPIC NAME builtin (p. 358) topic (p. 359)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
502
Class Documentation
Parameters:
publication handles <<inout>> ( p. 279). The sequence will be grown
if the sequence has ownership and the system has the corresponding resources. Use a sequence without ownership to avoid dynamic
memory allocation. If the sequence is too small to store all the
matches and the system can not resize the sequence, this method
will fail with com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362).
The maximum number of matches possible is configured with
com.rti.dds.infrastructure.DomainParticipantResourceLimitsQosPolicy
(p. 778). You can use a zero-maximum sequence without ownership to quickly
check whether there are any matches without allocating any memory. Cannot
be NULL..
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362) if the sequence is too small and the system
can not resize it, or com.rti.dds.infrastructure.RETCODE NOT ENABLED (p. 1361)
8.37.2.20
This operation retrieves the information on a publication (p. 349) that is currently associated with the com.rti.dds.subscription.DataReader (p. 487).
Publication with a matching com.rti.dds.topic.Topic (p. 1545), compatible
QoS and common partition that the application has not indicated should be ignored by means of the com.rti.dds.domain.DomainParticipant.ignore publication (p. 716) operation.
The publication handle must correspond to a publication (p. 349) currently
associated with the com.rti.dds.subscription.DataReader (p. 487). Otherwise, the operation will fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355).
Use
the
operation
com.rti.dds.subscription.DataReader.get matched publications
(p. 501) to find the publications that are currently matched with the
com.rti.dds.subscription.DataReader (p. 487).
Note: This operation does not retrieve the following information in
builtin.PublicationBuiltinTopicData:
builtin.PublicationBuiltinTopicData.type code (p. 1254)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
503
through
on
the
Parameters:
publication data <<inout>> ( p. 279). The information to be filled in
on the associated publication (p. 349). Cannot be NULL.
publication handle <<in>> ( p. 279). Handle to a specific publication
(p. 349) associated with the com.rti.dds.publication.DataWriter
(p. 557).
Cannot be NULL..
Must correspond to
currently
associated
with
the
a
publication
(p. 349)
com.rti.dds.subscription.DataReader (p. 487).
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361)
8.37.2.21
or
8.37.2.22
which
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
the
504
Class Documentation
8.37.2.23
Deletes all the entities that were created by means of the create operations
on the com.rti.dds.subscription.DataReader (p. 487).
Deletes all contained com.rti.dds.subscription.ReadCondition (p. 1313)
and com.rti.dds.subscription.QueryCondition (p. 1311) objects.
The operation will fail with com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363) if the any of the contained entities
is in a state where it cannot be deleted.
Once
com.rti.dds.subscription.DataReader.delete contained entities (p. 504) completes successfully, the application may delete the
com.rti.dds.subscription.DataReader (p. 487), knowing that it has
no contained com.rti.dds.subscription.ReadCondition (p. 1313) and
com.rti.dds.subscription.QueryCondition (p. 1311) objects.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363)
8.37.2.24
Waits
until
all
historical
com.rti.dds.subscription.DataReader
non-VOLATILE Durability Qos kind.
data
(p. 487)
is
received
for
entities that have a
505
8.37.2.25
8.37.2.26
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
506
Class Documentation
8.37.2.27
8.37.2.28
8.37.2.29
507
Statically
type-safe
code
should
use
the
appropriate
com.rti.ndds.example.FooDataReader.read (p. 981) method instead
of this one. See that method for detailed documentation.
See also:
com.rti.dds.subscription.DataReader.take untyped (p. 507)
com.rti.ndds.example.FooDataReader.read (p. 981)
8.37.2.30
8.37.2.31
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
508
Class Documentation
8.37.2.32
8.37.2.33
8.37.2.34
509
See also:
com.rti.dds.subscription.DataReader.read next sample untyped
(p. 508)
com.rti.ndds.example.FooDataReader.take next sample (p. 994)
8.37.2.35
8.37.2.36
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
510
Class Documentation
8.37.2.37
8.37.2.38
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
511
8.37.2.40
8.37.2.41
512
Class Documentation
8.37.2.42
8.37.2.43
513
See also:
com.rti.ndds.example.FooDataReader.return loan (p. 1008)
8.37.2.44
8.37.2.45
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
514
Class Documentation
8.38
Re-
(DataReader
reader,
Liveliness-
8.38.1
515
Detailed Description
8.38.2
8.38.2.1
516
Class Documentation
8.38.2.5
Handle
the
com.rti.dds.infrastructure.StatusKind.StatusKind.DATA AVAILABLE STATUS communication status.
Implements DataReaderListener (p. 520).
8.38.2.6
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.39
517
Public Attributes
long sample count peak
The highest number of samples in the readers queue over the lifetime of the
reader.
8.39.1
Detailed Description
8.39.2
8.39.2.1
The highest number of samples in the readers queue over the lifetime of the
reader.
8.39.2.2
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
518
Class Documentation
8.40
Re-
(DataReader
reader,
Liveliness-
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.40.1
519
Detailed Description
8.40.2
8.40.2.1
520
Class Documentation
8.40.2.2
Handle
the
com.rti.dds.infrastructure.StatusKind.StatusKind.DATA AVAILABLE STATUS communication status.
Implemented in DataReaderAdapter (p. 516).
8.40.2.6
8.41
521
Public Attributes
GUID t virtual guid
The virtual GUID (Global Unique Identifier).
8.41.1
Detailed Description
522
Class Documentation
8.41.2
8.41.2.1
523
Specifies whether this DataReader expects inline QoS with every sample.
In RTI Connext, a com.rti.dds.subscription.DataReader (p. 487)
nominally relies on Discovery to propagate QoS on a matched
com.rti.dds.publication.DataWriter (p. 557).
Alternatively,
a
com.rti.dds.subscription.DataReader (p. 487) may get information
on a matched com.rti.dds.publication.DataWriter (p. 557) through QoS
sent inline with a sample.
Asserting com.rti.dds.infrastructure.DataReaderProtocolQosPolicy.expects inline qos
(p. 523)
indicates
to
a
matching
com.rti.dds.publication.DataWriter
(p. 557)
that
this
com.rti.dds.subscription.DataReader (p. 487) expects to receive inline QoS with every sample.
The complete set of inline QoS that a
com.rti.dds.publication.DataWriter (p. 557) may send inline is specified
by the Real-Time Publish-Subscribe (RTPS) Wire Interoperability Protocol.
Because RTI Connext com.rti.dds.publication.DataWriter (p. 557) and
com.rti.dds.subscription.DataReader (p. 487) cache Discovery information, inline QoS are largely redundant and thus unecessary. Only for other stateless implementations whose com.rti.dds.subscription.DataReader (p. 487)
does not cache Discovery information is inline QoS necessary.
Also note that inline QoS are additional wire-payload that consume additional
bandwidth and serialization and deserialization time.
[default] com.rti.dds.infrastructure.false
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
524
Class Documentation
8.41.2.4
Indicates
whether
or
not
an
instance
can
move
to
com.rti.dds.subscription.InstanceStateKind.InstanceStateKind.NOT ALIVE DISPOSED INSTANCE STATE state without being in
com.rti.dds.subscription.InstanceStateKind.InstanceStateKind.ALIVE INTANCE STATE state.
the
the
Initial value:
new RtpsReliableReaderProtocol_t()
525
[default] min heartbeat response delay 0 seconds; max heartbeat response delay 0.5 seconds
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
526
Class Documentation
8.42
DataReaderProtocolStatus
ence
Class
Refer-
Public Attributes
long received sample count
The number of user samples from a remote DataWriter received for the first
time by a local DataReader ( p. 487).
527
528
Class Documentation
The incremental change in the number of ACKs sent from a local
DataReader ( p. 487) to a matching remote DataWriter since the last time
the status was read.
529
The incremental change in the number of bytes of GAPs received from remote
DataWriter to this DataReader ( p. 487) since the last time the status was
read.
8.42.1
Detailed Description
8.42.2
8.42.2.1
The number of user samples from a remote DataWriter received for the first
time by a local DataReader (p. 487).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
530
Class Documentation
8.42.2.2
The incremental change in the number of user samples from a remote DataWriter
received for the first time by a local DataReader (p. 487) since the last time
the status was read.
8.42.2.3
The number of bytes of user samples from a remote DataWriter received for the
first time by a local DataReader (p. 487).
8.42.2.4
The incremental change in the number of bytes of user samples from a remote
DataWriter received for the first time by a local DataReader (p. 487) since the
last time the status was read.
8.42.2.5
The number of samples from a remote DataWriter received, not for the first
time, by a local DataReader (p. 487).
Such samples can be redundant, out-of-order, etc. and are not stored in the
readers queue.
8.42.2.6
8.42.2.7
The number of bytes of samples from a remote DataWriter received, not for the
first time, by a local DataReader (p. 487).
Such samples can be redundant, out-of-order, etc. and are not stored in the
readers queue.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
531
8.42.2.9
The number of user samples filtered by the local DataReader (p. 487) due to
Content-Filtered Topics or Time-Based Filter.
8.42.2.10
The incremental change in the number of user samples filtered by the local
DataReader (p. 487) due to Content-Filtered Topics or Time-Based Filter since
the last time the status was read.
8.42.2.11
The number of bytes of user samples filtered by the local DataReader (p. 487)
due to Content-Filtered Topics or Time-Based Filter.
8.42.2.12
The incremental change in the number of bytes of user samples filtered by the
local DataReader (p. 487) due to Content-Filtered Topics or Time-Based Filter
since the last time the status was read.
8.42.2.13
8.42.2.14
532
Class Documentation
8.42.2.15
8.42.2.16
8.42.2.17
The number of ACKs sent from a local DataReader (p. 487) to a matching
remote DataWriter.
8.42.2.18
The incremental change in the number of ACKs sent from a local DataReader
(p. 487) to a matching remote DataWriter since the last time the status was
read.
8.42.2.19
The number of bytes of ACKs sent from a local DataReader (p. 487) to a
matching remote DataWriter.
8.42.2.20
The incremental change in the number of bytes of ACKs sent from a local
DataReader (p. 487) to a matching remote DataWriter since the last time the
status was read.
8.42.2.21
The number of NACKs sent from a local DataReader (p. 487) to a matching
remote DataWriter.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
533
The incremental change in the number of NACKs sent from a local DataReader
(p. 487) to a matching remote DataWriter since the last time the status was read.
8.42.2.23
The number of bytes of NACKs sent from a local DataReader (p. 487) to a
matching remote DataWriter.
8.42.2.24
The incremental change in the number of bytes of NACKs sent from a local
DataReader (p. 487) to a matching remote DataWriter since the last time the
status was read.
8.42.2.25
The incremental change in the number of bytes of GAPs received from remote
DataWriter to this DataReader (p. 487) since the last time the status was
read.
8.42.2.29
The number of times a sample is rejected due to exceptions in the receive path.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
534
Class Documentation
8.42.2.30
Sequence number of the first available sample in a matched Datawriters reliability queue.
Applicable only for reliable DataReaders, and when retrieving matched
DataWriter statuses.
Updated upon receiving Heartbeat submessages from a matched reliable
DataWriter.
8.42.2.32
Sequence number of the last available sample in a matched Datawriters reliability queue.
Applicable only for reliable DataReaders, and when retrieving matched
DataWriter statuses.
Updated upon receiving Heartbeat submessages from a matched reliable
DataWriter.
8.42.2.33
Sequence number of the newest sample received from the matched DataWriter
committed to the DataReaders queue.
Applicable only when retrieving matched DataWriter statuses.
For best-effort DataReaders, this is the sequence number of the latest sample
received.
For reliable DataReaders, this is the sequence number of the latest sample that
is available to be read or taken from the DataReaders queue.
8.42.2.34
Number of received samples that are not yet available to be read or taken, due
to being received out of order.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
535
536
Class Documentation
8.43
Public Attributes
final DurabilityQosPolicy durability
Durability policy, DURABILITY ( p. 68).
537
final DataReaderResourceLimitsQosPolicy
limits
reader resource -
<<eXtension>>
(p. 278)
com.rti.dds.subscription.DataReader
( p. 487) resource limits policy, DATA READER RESOURCE LIMITS
( p. 48). This policy is an extension to the DDS standard.
policy,
TYPE CONSISTENCY -
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
538
Class Documentation
8.43.1
Detailed Description
<=
com.rti.dds.subscription.DataReaderQos.reader resource limits.initial remote writers per instance <= com.rti.dds.subscription.DataReaderQos.reader resource limits.max remote writers per instance
com.rti.dds.subscription.DataReaderQos.reader resource limits.initial infos <=
com.rti.dds.subscription.DataReaderQos.reader resource limits.max infos
com.rti.dds.subscription.DataReaderQos.reader resource limits.max remote writers per instance <= com.rti.dds.subscription.DataReaderQos.reader resource limits.max remote writers
com.rti.dds.subscription.DataReaderQos.reader resource limits.max samples per remote writer
<=
com.rti.dds.subscription.DataReaderQos.resource limits.max samples
length
of
com.rti.dds.subscription.DataReaderQos.user data.value
<=
com.rti.dds.domain.DomainParticipantQos.resource limits.reader user data max length
If any of the above are not true, com.rti.dds.subscription.DataReader.set qos (p. 495) and com.rti.dds.subscription.DataReader.set qos with profile (p. 496) will fail with com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.43.2
8.43.2.1
8.43.2.2
8.43.2.3
8.43.2.4
8.43.2.5
8.43.2.6
8.43.2.7
8.43.2.8
8.43.2.9
539
540
Class Documentation
8.43.2.10
final DataReaderResourceLimitsQosPolicy
reader resource limits
use
by
the
TRANSPORT -
Specifies the unicast transport interfaces and ports on which messages can be
received.
The
unicast
interfaces
are
used
to
receive
messages
from
com.rti.dds.publication.DataWriter (p. 557) entities in the domain
(p. 328).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
541
final TypeConsistencyEnforcementQosPolicy
type consistency
Type
consistency
enforcement
ENFORCEMENT (p. 129).
8.43.2.22
policy,
TYPE CONSISTENCY -
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
542
Class Documentation
8.44
DataReaderResourceLimitsQosPolicy
Class Reference
Public Attributes
int max remote writers
The
maximum
number
of
remote
writers
from
which
a
com.rti.dds.subscription.DataReader ( p. 487) may read, including
all instances.
units
that
a
can use to store
543
The
initial
number
of
info
units
that
a
com.rti.dds.subscription.DataReader ( p. 487) can have, which are
used to store com.rti.dds.subscription.SampleInfo ( p. 1398).
544
Class Documentation
Determines whether the com.rti.dds.subscription.DataReader ( p. 487)
pre-allocates storage for storing fragmented samples.
which a
including
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.44.1
545
Detailed Description
8.44.2
8.44.2.1
The
maximum
number
of
remote
writers
from
which
a
com.rti.dds.subscription.DataReader (p. 487) may read, including all
instances.
[default] com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
[range] [1, 1 million] or com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106), >= initial remote writers, >= max remote writers per instance
For unkeyed types, this value has to be equal to max remote writers per instance if max remote writers per instance is not equal to
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
546
Class Documentation
8.44.2.2
The
maximum
number
of
remote
writers
from
which
a
com.rti.dds.subscription.DataReader (p. 487) may read a single instance.
[default] com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
[range] [1, 1024] or com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED
(p. 106),
<=
max remote writers
or
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106), >= initial remote writers per instance
For unkeyed types, this value has to be equal to max remote writers if it is
not com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106).
Note:
For efficiency,
set max remote writers per instance <=
com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy.max remote writers (p. 545)
8.44.2.3
547
The
maximum
number
of
info
com.rti.dds.subscription.DataReader (p. 487)
com.rti.dds.subscription.SampleInfo (p. 1398).
units
that
a
can use to store
8.44.2.5
The
initial
number
of
remote
writers
from
which
a
com.rti.dds.subscription.DataReader (p. 487) may read, including all
instances.
[default] 2
[range] [1, 1 million], <= max remote writers
For unkeyed types this value has to be equal to initial remote writers per instance.
>=
Note:
For
efficiency,
set
initial remote writers
com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy.initial remote writers per instance (p. 547).
8.44.2.6
The
initial
number
of
remote
writers
from
which
a
com.rti.dds.subscription.DataReader (p. 487) may read a single instance.
[default] 2
[range] [1,1024], <= max remote writers per instance
For unkeyed types this value has to be equal to initial remote writers.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
548
Class Documentation
Note:
For efficiency,
set initial remote writers per instance <=
com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy.initial remote writers (p. 547).
8.44.2.7
The
initial
number
of
info
units
that
com.rti.dds.subscription.DataReader (p. 487) can have, which
used to store com.rti.dds.subscription.SampleInfo (p. 1398).
a
are
[default] 32
[range] [1,1 million], <= max infos
8.44.2.8
8.44.2.9
8.44.2.10
The maximum number of data samples that the application can receive from the
middleware in a single call to com.rti.ndds.example.FooDataReader.read
(p. 981) or com.rti.ndds.example.FooDataReader.take (p. 983). If more
data exists in the middleware, the application will need to issue multiple
read/take calls.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
549
When reading data using listeners, the expected number of samples available
for delivery in a single take call is typically small: usually just one, in the
case of unbatched data, or the number of samples in a single batch, in the case
of batched data. (See com.rti.dds.infrastructure.BatchQosPolicy (p. 412)
for more information about this feature.) When polling for data or using
a com.rti.dds.infrastructure.WaitSet (p. 1709), however, multiple samples
(or batches) could be retrieved at once, depending on the data rate.
A larger value for this parameter makes the API simpler to use at the expense
of some additional memory consumption.
[default] 1024
[range] [1,65536]
8.44.2.11
8.44.2.12
The
maximum
number
of
samples
for
which
the
com.rti.dds.subscription.DataReader (p. 487) may store fragments at
a given point in time.
At any given time, a com.rti.dds.subscription.DataReader (p. 487)
may store fragments for up to max fragmented samples samples while
waiting for the remaining fragments.
These samples need not have
consecutive sequence numbers and may have been sent by different
com.rti.dds.publication.DataWriter (p. 557) instances.
Once all fragments of a sample have been received, the sample is treated
as a regular sample and becomes subject to standard QoS settings such
as com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max samples
(p. 1351).
The middleware will drop fragments if the max fragmented samples limit has
been reached. For best-effort communication, the middleware will accept a
fragment for a new sample, but drop the oldest fragmented sample from the
same remote writer. For reliable communication, the middleware will drop
fragments for any new samples until all fragments for at least one older sample
from that writer have been received.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
550
Class Documentation
The
initial
number
of
samples
for
which
com.rti.dds.subscription.DataReader (p. 487) may store fragments.
Determines whether the com.rti.dds.subscription.DataReader (p. 487) preallocates storage for storing fragmented samples.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
551
By
default,
the
middleware
will
allocate
memory
upfront
for
storing
fragments
for
up
to
com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy.initial fragmented samples (p. 550) samples. This memory may grow up to
com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy.max fragmented samples (p. 549) if needed.
If
dynamically allocate fragmented samples
is
set
to
com.rti.dds.infrastructure.true, the middleware does not allocate memory
upfront, but instead allocates memory from the heap upon receiving the first
fragment of a new sample. The amount of memory allocated equals the amount
of memory needed to store all fragments in the sample. Once all fragments of a
sample have been received, the sample is deserialized and stored in the regular
receive queue. At that time, the dynamically allocated memory is freed again.
This QoS setting may be useful for large, but variable-sized data types where
upfront memory allocation for multiple samples based on the maximum possible
sample size may be expensive. The main disadvantage of not pre-allocating
memory is that one can no longer guarantee the middleware will have sufficient
resources at run-time.
Only applies if com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy.disable fragmentation support (p. 549) is com.rti.dds.infrastructure.false.
[default] com.rti.dds.infrastructure.false
8.44.2.17
552
Class Documentation
When a new instance is received, RTI Connext will check the resource limit com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max instances (p. 1352). If the limit is exceeded, RTI Connext will drop the sample
and report it as lost and rejected. If the limit is not exceeded, RTI Connext
will check max total instances. If max total instances is exceeded, RTI Connext
will replace an existing instance without DataWriters and samples with the new
one. The application could receive duplicate samples for the replaced instance
if it becomes alive again.
[default] com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy.AUTO MAX TOTAL INSTANCES (p. 48)
553
[range] [1, 1 million] or com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106), <= max remote virtual writers
8.44.2.20
The maximum number of virtual remote writers that can be associated with an
instance.
[default] com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
[range] [1, 1024] or com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106), >= initial remote virtual writers per instance
For unkeyed types, this value is ignored.
The features of Durable Reader State and MultiChannel DataWriters, and RTI
Persistence Service require RTI Connext to keep some internal state per virtual
writer and instance that is used to filter duplicate samples. These duplicate
samples could be coming from different DataWriter channels or from multiple
executions of RTI Persistence Service.
Once an association between a remote virtual writer and an instance is established, it is permanent it will not disappear even if the physical writer
incarnating the virtual writer is destroyed.
If max remote virtual writers per instance is exceeded for an instance, RTI
Connext will not associate this instance with new virtual writers. Duplicates
samples from these virtual writers will not be filtered on the reader.
If you are not using Durable Reader State, MultiChannel DataWriters or RTI
Persistence Service in your system, you can set this property to 1 to optimize
resources.
8.44.2.21
8.44.2.22
The maximum number of remote writers allowed to write the same sample.
One scenario in which two DataWriters may write the same sample is Persistence
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
554
Class Documentation
Service. The DataReader may receive the same sample coming from the original
DataWriter and from a Persistence Service DataWriter. [default] 3
[range] [1, 1024]
8.44.2.23
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.45
555
8.45.1
Detailed Description
8.45.2
8.45.2.1
Exceptions:
NullPointerException if the given collection is null
8.45.3
8.45.3.1
int getMaximum ()
Get the current maximum number of elements that can be stored in this sequence.
The maximum of the sequence represents the maximum number of elements that
the underlying buffer can hold. It does not represent the current number of
elements.
The maximum is a non-negative number. It is initialized when the sequence is
first created.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
556
Class Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.46
557
void set qos with profile (String library name, String profile name)
<<eXtension>> (p. 278) Change the QoS of this writer using the input
XML QoS profile.
558
Class Documentation
Accesses the com.rti.dds.infrastructure.StatusKind.StatusKind.PUBLICATION MATCHED STATUS communication status.
void
get matched subscription datawriter protocol status
(DataWriterProtocolStatus status, InstanceHandle t subscription handle)
<<eXtension>> (p. 278) Get the datawriter protocol status for this writer,
per matched subscription ( p. 353) identified by the subscription handle.
void get matched subscription datawriter protocol status by locator (DataWriterProtocolStatus status, Locator t locator)
<<eXtension>> (p. 278) Get the datawriter protocol status for this writer,
per matched subscription ( p. 353) identified by the locator.
associated
with
this
void get matched subscription data (SubscriptionBuiltinTopicData subscription data, InstanceHandle t subscription handle)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
559
liveliness
of
this
void flush ()
<<eXtension>> (p. 278) Flushes the batch in progress in the context of the
calling thread.
InstanceHandle t register instance w timestamp untyped (Object instance data, Time t source timestamp)
Register a new instance with this writer using the given time instead of the
current time.
void unregister instance w timestamp untyped (Object instance data, InstanceHandle t handle, Time t source timestamp)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
560
Class Documentation
Unregister a new instance from this writer using the given time instead of
the current time.
void write w timestamp untyped (Object instance data, InstanceHandle t handle, Time t source timestamp)
Publish a data sample using the given time instead of the current time.
void dispose w timestamp untyped (Object instance data, InstanceHandle t handle, Time t source timestamp)
Dispose a data sample using the given time instead of the current time.
8.46.1
Detailed Description
561
562
Class Documentation
com.rti.dds.publication.DataWriter.get (p. 566)
offered incompatible qos status
com.rti.dds.publication.DataWriter.get publication matched com.rti.dds.publication.DataWriter.get status
(p. 566)
reliable writer cache changed status
(p. 566)
com.rti.dds.publication.DataWriter.get reliable reader activity changed status (p. 567)
Several com.rti.dds.publication.DataWriter (p. 557) may operate in different threads. If they share the same com.rti.dds.publication.Publisher
(p. 1262), the middleware guarantees that its operations are thread-safe.
See also:
com.rti.ndds.example.FooDataWriter (p. 1012)
Operations Allowed in Listener Callbacks (p. 1132)
8.46.2
8.46.2.1
(p. 614),
(p. 613),
(p. 613),
(p. 614),
(p. 614),
and
(p. 614)
Parameters:
qos <<in>> ( p. 279) The com.rti.dds.publication.DataWriterQos
(p. 610) to be set to.
Policies must be consistent.
Immutable policies cannot be changed after
com.rti.dds.publication.DataWriter (p. 557) is enabled. The special value com.rti.dds.publication.Publisher.DATAWRITER QOS DEFAULT (p. 182) can be used to indicate that
the
QoS
of
the
com.rti.dds.publication.DataWriter
(p. 557) should be changed to match the current default
com.rti.dds.publication.DataWriterQos (p. 610) set in the
com.rti.dds.publication.Publisher (p. 1262). Cannot be NULL.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
563
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE IMMUTABLE POLICY (p. 1358) or com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
See also:
com.rti.dds.publication.DataWriterQos (p. 610) for rules on consistency among QoS
set qos (abstract) (p. 932)
Operations Allowed in Listener Callbacks (p. 1132)
8.46.2.2
<<eXtension>> ( p. 278) Change the QoS of this writer using the input XML
QoS profile.
This operation modifies the QoS of the com.rti.dds.publication.DataWriter
(p. 557).
The
com.rti.dds.publication.DataWriterQos.user data
com.rti.dds.publication.DataWriterQos.deadline
com.rti.dds.publication.DataWriterQos.latency budget
com.rti.dds.publication.DataWriterQos.ownership strength
com.rti.dds.publication.DataWriterQos.transport priority
com.rti.dds.publication.DataWriterQos.lifespan
(p. 614)
com.rti.dds.publication.DataWriterQos.writer data lifecycle
can be changed. The other policies are immutable.
(p. 614),
(p. 613),
(p. 613),
(p. 614),
(p. 614),
and
(p. 614)
Parameters:
library name <<in>> ( p. 279) Library name containing the XML
QoS profile.
If library name is null RTI Connext will use
the default library (see com.rti.dds.publication.Publisher.set default library (p. 1277)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see com.rti.dds.publication.Publisher.set default profile
(p. 1278)).
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE IMMUTABLE Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
564
Class Documentation
POLICY (p. 1358) or com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
See also:
com.rti.dds.publication.DataWriterQos (p. 610) for rules on consistency among QoS
Operations Allowed in Listener Callbacks (p. 1132)
8.46.2.3
8.46.2.4
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
565
(p. 586)
of
the
See also:
get listener (abstract) (p. 934)
8.46.2.6
8.46.2.7
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
566
Class Documentation
8.46.2.8
8.46.2.9
8.46.2.10
<<eXtension>> ( p. 278) Get the reliable cache status for this writer.
Parameters:
status <<inout>> ( p. 279) com.rti.dds.publication.ReliableWriterCacheChangedStatus
(p. 1336) to be filled in. Cannot be NULL.
Exceptions:
One of the Standard Return Codes (p. 108)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
567
<<eXtension>> ( p. 278) Get the reliable reader activity changed status for
this writer.
Parameters:
status <<inout>> ( p. 279) com.rti.dds.publication.ReliableReaderActivityChangedStatus
(p. 1333) to be filled in. Cannot be NULL.
Exceptions:
One of the Standard Return Codes (p. 108)
8.46.2.12
<<eXtension>> ( p. 278) Get the datawriter cache status for this writer.
Parameters:
status <<inout>> ( p. 279) com.rti.dds.publication.DataWriterCacheStatus
(p. 585) to be filled in. Cannot be NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
8.46.2.13
or
<<eXtension>> ( p. 278) Get the datawriter protocol status for this writer.
Parameters:
status <<inout>> ( p. 279) com.rti.dds.publication.DataWriterProtocolStatus
(p. 598) to be filled in. Cannot be NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
or
568
Class Documentation
8.46.2.14
<<eXtension>> ( p. 278) Get the datawriter protocol status for this writer,
per matched subscription (p. 353) identified by the subscription handle.
Note: Status for a remote entity is only kept while the entity is alive. Once a
remote entity is no longer alive, its status is deleted.
Parameters:
status <<inout>> ( p. 279) com.rti.dds.publication.DataWriterProtocolStatus
(p. 598) to be filled in. Cannot be NULL.
subscription handle <<in>>
( p. 279)
Handle
to
a
specific
subscription
(p. 353)
associated
with
the
com.rti.dds.subscription.DataReader (p. 487).
Cannot be
NULL.Must correspond to a subscription (p. 353) currently
associated with the com.rti.dds.publication.DataWriter (p. 557).
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
8.46.2.15
or
void get matched subscription datawriter protocol status by locator (DataWriterProtocolStatus status,
Locator t locator)
<<eXtension>> ( p. 278) Get the datawriter protocol status for this writer,
per matched subscription (p. 353) identified by the locator.
Note: Status for a remote entity is only kept while the entity is alive. Once a
remote entity is no longer alive, its status is deleted.
Parameters:
status <<inout>> ( p. 279) com.rti.dds.publication.DataWriterProtocolStatus
(p. 598) to be filled in Cannot be NULL.
locator <<in>> ( p. 279) Locator to a specific locator associated with
the com.rti.dds.subscription.DataReader (p. 487). Cannot be
NULL.Must correspond to a locator of one or more subscriptions
currently associated with the com.rti.dds.publication.DataWriter
(p. 557).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
569
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
8.46.2.16
or
<<eXtension>> ( p. 278) Retrieve the list of locators for subscriptions currently associated with this com.rti.dds.publication.DataWriter (p. 557).
Matched subscription (p. 353) locators include locators for all those
subscriptions in the same domain (p. 328) that have a matching com.rti.dds.topic.Topic (p. 1545), compatible QoS and common partition
that
the
com.rti.dds.domain.DomainParticipant
(p. 654) has not indicated should be ignored by means of the
com.rti.dds.domain.DomainParticipant.ignore subscription
(p. 717)
operation.
The locators returned in the locators list are the ones that are used by
the DDS implementation to communicate with the corresponding matched
com.rti.dds.subscription.DataReader (p. 487) entities.
Parameters:
locators <<inout>> ( p. 279). Handles of all the matched subscription
(p. 353) locators.
The sequence will be grown if the sequence has ownership and the system has the corresponding resources. Use a sequence without ownership
to avoid dynamic memory allocation.
If the sequence is too small to
store all the matches and the system can not resize the sequence, this
method will fail with com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362). Cannot be NULL..
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362) if the sequence is too small and the system
can not resize it, or com.rti.dds.infrastructure.RETCODE NOT ENABLED (p. 1361)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
570
Class Documentation
8.46.2.17
associated
with
this
Matched subscriptions include all those in the same domain (p. 328) that
have a matching com.rti.dds.topic.Topic (p. 1545), compatible QoS and
common partition that the com.rti.dds.domain.DomainParticipant
(p. 654) has not indicated should be ignored by means of the
com.rti.dds.domain.DomainParticipant.ignore subscription
(p. 717)
operation.
The handles returned in the subscription handles list are the
ones that are used by the DDS implementation to locally identify
the
corresponding
matched
com.rti.dds.subscription.DataReader
(p. 487) entities.
These handles match the ones that appear in the
com.rti.dds.subscription.SampleInfo.instance handle (p. 1404) field
of the com.rti.dds.subscription.SampleInfo (p. 1398) when reading the
builtin.SubscriptionBuiltinTopicDataTypeSupport.SUBSCRIPTION TOPIC NAME builtin (p. 352) topic (p. 359).
Parameters:
subscription handles <<inout>> ( p. 279). Handles of all the matched
subscriptions.
The sequence will be grown if the sequence has ownership and the system has the corresponding resources. Use a sequence without ownership
to avoid dynamic memory allocation.
If the sequence is too small to
store all the matches and the system can not resize the sequence, this
method will fail with com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362).
The maximum number of matches possible is configured with
com.rti.dds.infrastructure.DomainParticipantResourceLimitsQosPolicy
(p. 778). You can use a zero-maximum sequence without ownership to quickly
check whether there are any matches without allocating any memory. Cannot
be NULL..
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362) if the sequence is too small and the system
can not resize it, or com.rti.dds.infrastructure.RETCODE NOT ENABLED (p. 1361)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
571
This operation retrieves the information on a subscription (p. 353) that is currently associated with the com.rti.dds.publication.DataWriter (p. 557).
The subscription handle must correspond to a subscription (p. 353)
currently associated with the com.rti.dds.publication.DataWriter
Otherwise,
the operation will fail and fail with
(p. 557).
com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355).
Use
com.rti.dds.publication.DataWriter.get matched subscriptions
(p. 570) to find the subscriptions that are currently matched with the
com.rti.dds.publication.DataWriter (p. 557).
Note: This operation does not retrieve the following information in
builtin.SubscriptionBuiltinTopicData:
builtin.SubscriptionBuiltinTopicData.type code
builtin.SubscriptionBuiltinTopicData.property
builtin.SubscriptionBuiltinTopicData.content filter property
The
above
information
is
available
com.rti.dds.subscription.DataReaderListener.on data available() (p. 520) (if a reader listener is installed
builtin.SubscriptionBuiltinTopicDataDataReader).
through
on
the
Parameters:
subscription data <<inout>> ( p. 279). The information to be filled in
on the associated subscription (p. 353). Cannot be NULL.
subscription handle <<in>>
( p. 279).
Handle
to
a
specific
subscription
(p. 353)
associated
with
the
com.rti.dds.subscription.DataReader (p. 487).
Cannot be
NULL.. Must correspond to a subscription (p. 353) currently
associated with the com.rti.dds.publication.DataWriter (p. 557).
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
or
572
Class Documentation
8.46.2.19
8.46.2.20
8.46.2.21
which
the
This operation blocks the calling thread until either all data written by the reliable com.rti.dds.publication.DataWriter (p. 557) entity is acknowledged by
(a) all reliable com.rti.dds.subscription.DataReader (p. 487) entities that
are matched and alive and (b) by all required subscriptions, or until the duration specified by the max wait parameter elapses, whichever happens first. A
successful completion indicates that all the samples written have been acknowledged by all reliable matched data readers and by all required subscriptions; a
return value of TIMEOUT indicates that max wait elapsed before all the data
was acknowledged.
Note that if a thread is blocked in the call to wait for acknowledgments on a
DataWriter (p. 557) and a different thread writes new samples on the same
DataWriter (p. 557), the new samples must be acknowledged before unblocking
the thread waiting on wait for acknowledgments.
If the com.rti.dds.publication.DataWriter (p. 557) does not have
com.rti.dds.infrastructure.ReliabilityQosPolicy (p. 1324) kind set to RELIABLE, this operation will complete immediately with RETCODE OK.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
573
Parameters:
max wait <<in>> ( p. 279) Specifies maximum time to wait for acknowledgements com.rti.dds.infrastructure.Duration t (p. 813) .
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361), com.rti.dds.infrastructure.RETCODE TIMEOUT
(p. 1364)
8.46.2.22
<<eXtension>> ( p. 278) Blocks the calling thread until asynchronous sending is complete.
This operation blocks the calling thread (up to max wait) until all data
written by the asynchronous com.rti.dds.publication.DataWriter
(p. 557) is sent and acknowledged (if reliable) by all matched
com.rti.dds.subscription.DataReader (p. 487) entities.
A successful
completion indicates that all the samples written have been sent and acknowledged where applicable; a time out indicates that max wait elapsed before all
the data was sent and/or acknowledged.
In other words,
this guarantees that sending to best effort
com.rti.dds.subscription.DataReader (p. 487) is complete in addition to
what com.rti.dds.publication.DataWriter.wait for acknowledgments
(p. 572) provides.
If the com.rti.dds.publication.DataWriter (p. 557) does not have
com.rti.dds.infrastructure.PublishModeQosPolicy (p. 1295) kind set to
com.rti.dds.infrastructure.PublishModeQosPolicyKind.PublishModeQosPolicyKind.ASYNCHRONOUS PUBLISH MODE QOS the operation will complete immediately with
com.rti.dds.infrastructure.RETCODE OK.
Parameters:
max wait <<in>> ( p. 279) Specifies maximum time to wait for acknowledgements com.rti.dds.infrastructure.Duration t (p. 813) .
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361), com.rti.dds.infrastructure.RETCODE TIMEOUT
(p. 1364)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
574
Class Documentation
8.46.2.23
This
operation
manually
asserts
the
com.rti.dds.publication.DataWriter (p. 557).
liveliness
of
this
This is used in combination with the LIVELINESS (p. 82) policy to indicate to
RTI Connext that the com.rti.dds.publication.DataWriter (p. 557) remains
active.
You only need to use this operation if the LIVELINESS (p. 82) setting is either
com.rti.dds.infrastructure.LivelinessQosPolicyKind.LivelinessQosPolicyKind.MANUAL BY PARTICIPANT LIVELINESS QOS or com.rti.dds.infrastructure.LivelinessQosPolicyKind.Liveliness
BY TOPIC LIVELINESS QOS. Otherwise, it has no effect.
Note: writing data via the com.rti.ndds.example.FooDataWriter.write
(p. 1021)
or
com.rti.ndds.example.FooDataWriter.write w timestamp
(p. 1024)
operation
asserts
liveliness
on
the
com.rti.dds.publication.DataWriter
(p. 557)
itself,
and
its
Consequently the
com.rti.dds.domain.DomainParticipant (p. 654).
use of assert liveliness() (p. 574) is only needed if the application is not
writing data regularly.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361)
or
See also:
com.rti.dds.infrastructure.LivelinessQosPolicy (p. 1140)
8.46.2.24
void flush ()
575
com.rti.dds.infrastructure.PublishModeQosPolicyKind.PublishModeQosPolicyKind.ASYNCHRONOUS PUBLISH MODE QOS, the batch will be sent in the context of the asynchronous publishing thread.
This
operation
may
block
in
the
same
com.rti.ndds.example.FooDataWriter.write (p. 1021).
conditions
as
If this operation does block, the RELIABILITY max blocking time configures
the maximum time the write operation may block (waiting for space to become
available). If max blocking time elapses before the DDS DataWriter is able to
store the modification without exceeding the limits, the operation will fail with
DDS RETCODE TIMEOUT.
MT Safety:
flush()
(p. 574)
is
only
thread-safe
with
batching
com.rti.dds.infrastructure.BatchQosPolicy.thread safe write
(p. 415) is TRUE.
if
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE TIMEOUT
com.rti.dds.infrastructure.RETCODE (p. 1364),
OUT OF RESOURCES
(p. 1362)
or
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
8.46.2.25
576
Class Documentation
8.46.2.26
Register a new instance with this writer using the given time instead of the
current time.
This method allows type-independent code to work with a variety of concrete
com.rti.ndds.example.FooDataWriter (p. 1012) classes in a consistent way.
Statically
type-safe
code
should
use
the
appropriate
com.rti.ndds.example.FooDataWriter.register instance w timestamp
(p. 1015) method instead of this one. See that method for detailed documentation.
See also:
com.rti.dds.publication.DataWriter.unregister instance w timestamp untyped (p. 576)
com.rti.ndds.example.FooDataWriter.register instance (p. 1014)
8.46.2.27
Unregister a new instance from this writer using the given time instead of the
current time.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
577
8.46.2.29
8.46.2.30
Publish a data sample using the given time instead of the current time.
This method allows type-independent code to work with a variety of concrete
com.rti.ndds.example.FooDataWriter (p. 1012) classes in a consistent way.
Statically
type-safe
code
should
use
the
appropriate
com.rti.ndds.example.FooDataWriter.write w timestamp
(p. 1024)
method instead of this one. See that method for detailed documentation.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
578
Class Documentation
See also:
com.rti.dds.publication.DataWriter.write untyped (p. 577)
com.rti.ndds.example.FooDataWriter.write w timestamp (p. 1024)
8.46.2.31
8.46.2.32
Dispose a data sample using the given time instead of the current time.
This method allows type-independent code to work with a variety of concrete
com.rti.ndds.example.FooDataWriter (p. 1012) classes in a consistent way.
Statically
type-safe
code
should
use
the
appropriate
com.rti.ndds.example.FooDataWriter.dispose w timestamp (p. 1029)
method instead of this one. See that method for detailed documentation.
See also:
com.rti.dds.publication.DataWriter.dispose untyped (p. 578)
com.rti.ndds.example.FooDataWriter.dispose w timestamp
(p. 1029)
Implemented in DynamicDataWriter (p. 925).
8.46.2.33
579
8.46.2.34
Given a sample with the given key field values, return the handle corresponding
to its instance.
This method allows type-independent code to work with a variety of concrete
com.rti.ndds.example.FooDataWriter (p. 1012) classes in a consistent way.
Statically
type-safe
code
should
use
the
appropriate
com.rti.ndds.example.FooDataWriter.lookup instance (p. 1032) method
instead of this one. See that method for detailed documentation.
See also:
com.rti.ndds.example.FooDataWriter.lookup instance (p. 1032)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
580
Class Documentation
8.47
581
8.47.1
Detailed Description
8.47.2
8.47.2.1
582
Class Documentation
583
Locally
(p. 557)
that
created
triggers
<<eXtension>> ( p. 278) A change has occurred in the writers cache of unacknowledged samples.
Parameters:
writer <<out>>
( p. 279)
com.rti.dds.publication.DataWriter
the listener callback
Locally
(p. 557)
that
created
triggers
Locally
(p. 557)
that
created
triggers
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
584
Class Documentation
status <<out>> ( p. 279) Current reliable reader activity changed status
of locally created com.rti.dds.publication.DataWriter (p. 557)
Locally
(p. 557)
that
created
triggers
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.48
585
Public Attributes
long sample count peak
Highest number of samples in the writers queue over the lifetime of the
writer.
8.48.1
Detailed Description
8.48.2
8.48.2.1
Highest number of samples in the writers queue over the lifetime of the writer.
8.48.2.2
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
586
Class Documentation
8.49
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.49.1
587
Detailed Description
8.49.2
8.49.2.1
588
Class Documentation
Locally
(p. 557)
that
created
triggers
status <<out>> ( p. 279) Current deadline missed status of locally created com.rti.dds.publication.DataWriter (p. 557)
Implemented in DomainParticipantAdapter (p. 738), and DataWriterAdapter (p. 581).
8.49.2.2
Locally
(p. 557)
that
created
triggers
status <<out>> ( p. 279) Current incompatible qos status of locally created com.rti.dds.publication.DataWriter (p. 557)
Implemented in DomainParticipantAdapter (p. 738), and DataWriterAdapter (p. 581).
8.49.2.3
589
This
callback
is
called
when
the
liveliness
that
the
com.rti.dds.publication.DataWriter (p. 557) has committed through
its LIVELINESS (p. 82) qos policy was not respected;
this
entities
will
concom.rti.dds.subscription.DataReader
(p. 487)
sider the com.rti.dds.publication.DataWriter (p. 557) as no longer
alive/active. This callback will not be called when an already not alive
com.rti.dds.publication.DataWriter (p. 557) simply renames not alive for
another liveliness period.
Parameters:
writer <<out>>
( p. 279)
com.rti.dds.publication.DataWriter
the listener callback
Locally
(p. 557)
that
created
triggers
8.49.2.4
Locally
(p. 557)
that
created
triggers
590
Class Documentation
8.49.2.5
<<eXtension>> ( p. 278) A change has occurred in the writers cache of unacknowledged samples.
Parameters:
writer <<out>>
( p. 279)
com.rti.dds.publication.DataWriter
the listener callback
Locally
(p. 557)
that
created
triggers
8.49.2.6
Locally
(p. 557)
that
created
triggers
8.49.2.7
591
Parameters:
writer <<out>>
( p. 279)
com.rti.dds.publication.DataWriter
the listener callback
Locally
(p. 557)
that
created
triggers
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
592
Class Documentation
8.50
Public Attributes
GUID t virtual guid
The virtual GUID (Global Unique Identifier).
8.50.1
Detailed Description
593
DDS has a standard protocol for packet (user and meta data) exchange between applications using DDS for communications. This QoS policy and
com.rti.dds.infrastructure.DataWriterProtocolQosPolicy (p. 592) give
you control over configurable portions of the protocol, including the configuration of the reliable data delivery mechanism of the protocol on a per DataWriter
or DataReader basis.
These configuration parameters control timing, timeouts, and give you the ability to tradeoff between speed of data loss detection and repair versus network
and CPU bandwidth used to maintain reliability.
It
is
important
to
tune
the
reliability
protocol
(on
a
and
per
com.rti.dds.publication.DataWriter
(p. 557)
com.rti.dds.subscription.DataReader (p. 487) basis) to meet the requirements of the end-user application so that data can be sent between
DataWriters and DataReaders in an efficient and optimal manner in the
presence of data loss.
You can also use this QoS policy to control how RTI Connext responds
to slow reliable DataReaders or ones that disconnect or are otherwise lost. See com.rti.dds.infrastructure.ReliabilityQosPolicy (p. 1324)
for more information on the per-DataReader/DataWriter reliability configuration. com.rti.dds.infrastructure.HistoryQosPolicy (p. 1046) and
com.rti.dds.infrastructure.ResourceLimitsQosPolicy (p. 1348) also play
an important role in the DDS reliable protocol.
This QoS policy is an extension to the DDS standard.
Entity:
com.rti.dds.publication.DataWriter (p. 557)
Properties:
RxO (p. 101) = N/A
Changeable (p. 102) = NO (p. 102)
8.50.2
8.50.2.1
594
Class Documentation
The RTI Connext Persistence Service uses the virtual GUID to send samples
on behalf of the original com.rti.dds.publication.DataWriter (p. 557).
[default] com.rti.dds.infrastructure.GUID t.AUTO
8.50.2.2
595
Controls whether or not a keyhash is propagated on the wire with each sample.
This field only applies to keyed writers.
With each key, RTI Connext associates an internal 16-byte representation, called
a keyhash.
When this field is com.rti.dds.infrastructure.false, the keyhash is sent on the
wire with every data instance.
When this field is com.rti.dds.infrastructure.true, the keyhash is not sent on the
wire and the readers must compute the value using the received data.
If the reader is CPU bound, sending the keyhash on the wire may increase
performance, because the reader does not have to get the keyhash from the
data.
If the writer is CPU bound, sending the keyhash on the wire may decrease
performance, because it requires more bandwidth (16 more bytes per sample).
Note: Setting disable inline keyhash to com.rti.dds.infrastructure.true is not
compatible with using RTI Real-Time Connect or RTI Recorder.
[default] com.rti.dds.infrastructure.false
8.50.2.6
Controls whether or not the serialized key is propagated on the wire with dispose
samples.
This field only applies to keyed writers.
We recommend setting this field to com.rti.dds.infrastructure.true if there are
DataReaders where com.rti.dds.infrastructure.DataReaderProtocolQosPolicy.propagate dispose of unregistered instances
(p. 524)
is
also
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
596
Class Documentation
com.rti.dds.infrastructure.true.
Important:
When this field is com.rti.dds.infrastructure.true, batching
will not be compatible with RTI Connext 4.3e, 4.4b, or 4.4c.
The
com.rti.dds.subscription.DataReader (p. 487) entities will receive incorrect
data and/or encounter deserialization errors.
[default] com.rti.dds.infrastructure.false
8.50.2.7
Initial value:
new RtpsReliableWriterProtocol_t()
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
597
598
Class Documentation
8.51
DataWriterProtocolStatus
ence
Class
Refer-
Public Attributes
long pushed sample count
The number of user samples pushed on write from a local DataWriter
( p. 557) to a matching remote DataReader.
599
600
Class Documentation
The incremental change in the number of ACKs from a remote DataReader
received by a local DataWriter ( p. 557) since the last time the status was
read.
601
The incremental change in the number of bytes of GAPs sent from local
DataWriter ( p. 557) to matching remote DataReaders since the last time
the status was read.
SequenceNumber t
number
SequenceNumber t
number
The virtual sequence number of the first available sample currently queued in
the local DataWriter ( p. 557).
SequenceNumber t
number
The virtual sequence number of the last available sample currently queued in
the local DataWriter ( p. 557).
SequenceNumber t
sequence number
InstanceHandle t
handle
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
602
Class Documentation
The handle of a remote DataReader that has not acknowledged the first unacknowledged sample of the local DataWriter ( p. 557).
SequenceNumber t
sequence number
The sequence number of the first sample whose keep duration has not yet
elapsed.
8.51.1
Detailed Description
8.51.2
8.51.2.1
The number of user samples pushed on write from a local DataWriter (p. 557)
to a matching remote DataReader.
Counts protocol (RTPS) messages pushed by a DataWriter (p. 557) when writing, unregistering, and disposing. The count is the number of sends done internally, and it may be greater than the number of user writes.
For large data, counts whole samples, not fragments.
8.51.2.2
The incremental change in the number of user samples pushed on write from
a local DataWriter (p. 557) to a matching remote DataReader since the last
time the status was read.
Counts protocol (RTPS) messages pushed by a DataWriter (p. 557) when writing, unregistering, and disposing.
For large data, counts whole samples, not fragments.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
603
The number of bytes of user samples pushed on write from a local DataWriter
(p. 557) to a matching remote DataReader.
Counts bytes of protocol (RTPS) messages pushed by a DataWriter (p. 557)
when writing, unregistering, and disposing. The count of bytes corresponds to
the number of sends done internally, and it may be greater than the number of
user writes.
For large data, counts bytes of whole samples, not fragments.
8.51.2.4
The incremental change in the number of bytes of user samples pushed on write
from a local DataWriter (p. 557) to a matching remote DataReader since the
last time the status was read.
Counts bytes of protocol (RTPS) messages pushed by a DataWriter (p. 557)
when writing, unregistering, and disposing.
For large data, counts bytes of whole samples, not fragments.
8.51.2.5
604
Class Documentation
8.51.2.9
The number of Heartbeats sent between a local DataWriter (p. 557) and
matching remote DataReader.
Because periodic and piggyback heartbeats are sent to remote readers and their
locators differently in different situations, when a reader has more than one locator, this count may be larger than expected, to reflect the sending of Heartbeats
to the multiple locators.
8.51.2.10
8.51.2.11
The number of bytes of Heartbeats sent between a local DataWriter (p. 557)
and matching remote DataReader.
Because periodic and piggyback heartbeats are sent to remote readers and their
locators differently in different situations, when a reader has more than one locator, this count may be larger than expected, to reflect the sending of Heartbeats
to the multiple locators.
8.51.2.12
8.51.2.13
The number of user samples pulled from local DataWriter (p. 557) by matching
DataReaders.
Pulled samples are samples sent for repairs, for late joiners,
and all samples sent by the local DataWriter (p. 557) when
com.rti.dds.infrastructure.DataWriterProtocolQosPolicy.push on write (p. 594) is com.rti.dds.infrastructure.false.
For large data, counts whole samples, not fragments.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
605
The incremental change in the number of user samples pulled from local
DataWriter (p. 557) by matching DataReaders since the last time the status
was read.
Pulled samples are samples sent for repairs, for late joiners,
and all samples sent by the local DataWriter (p. 557) when
com.rti.dds.infrastructure.DataWriterProtocolQosPolicy.push on write (p. 594) is com.rti.dds.infrastructure.false.
For large data, counts whole samples, not fragments.
8.51.2.15
The number of bytes of user samples pulled from local DataWriter (p. 557) by
matching DataReaders.
Pulled samples are samples sent for repairs, for late joiners,
and all samples sent by the local DataWriter (p. 557) when
com.rti.dds.infrastructure.DataWriterProtocolQosPolicy.push on write (p. 594) is com.rti.dds.infrastructure.false.
For large data, counts bytes of whole samples, not fragments.
8.51.2.16
The incremental change in the number of bytes of user samples pulled from local
DataWriter (p. 557) by matching DataReaders since the last time the status
was read.
Pulled samples are samples sent for repairs, for late joiners,
and all samples sent by the local DataWriter (p. 557) when
com.rti.dds.infrastructure.DataWriterProtocolQosPolicy.push on write (p. 594) is com.rti.dds.infrastructure.false.
For large data, counts bytes of whole samples, not fragments.
8.51.2.17
606
Class Documentation
8.51.2.18
8.51.2.19
8.51.2.20
8.51.2.21
8.51.2.22
8.51.2.23
8.51.2.24
607
The number of GAPs sent from local DataWriter (p. 557) to matching remote
DataReaders.
8.51.2.26
The incremental change in the number of GAPs sent from local DataWriter
(p. 557) to matching remote DataReaders since the last time the status was
read.
8.51.2.27
The number of bytes of GAPs sent from local DataWriter (p. 557) to matching
remote DataReaders.
8.51.2.28
The incremental change in the number of bytes of GAPs sent from local
DataWriter (p. 557) to matching remote DataReaders since the last time the
status was read.
8.51.2.29
The number of times a sample is rejected due to exceptions in the send path.
8.51.2.30
8.51.2.31
608
Class Documentation
8.51.2.32
The sequence number of the first available sample currently queued in the local
DataWriter (p. 557).
Applies only for local DataWriter (p. 557) status.
8.51.2.33
The sequence number of the last available sample currently queued in the local
DataWriter (p. 557).
Applies only for local DataWriter (p. 557) status.
8.51.2.34
The virtual sequence number of the first available sample currently queued in
the local DataWriter (p. 557).
Applies only for local DataWriter (p. 557) status.
8.51.2.36
The virtual sequence number of the last available sample currently queued in
the local DataWriter (p. 557).
Applies only for local DataWriter (p. 557) status.
8.51.2.37
609
The handle of a remote DataReader that has not acknowledged the first unacknowledged sample of the local DataWriter (p. 557).
Applies only for local DataWriter (p. 557) status.
8.51.2.39
The sequence number of the first sample whose keep duration has not yet
elapsed.
Applicable only when com.rti.dds.infrastructure.DataWriterProtocolQosPolicy.disable positive acks (p. 594) is set.
Sequence
number
of
the
first
sample
kept
in
the
DataWriters
queue
whose
keep duration
(applied
when
com.rti.dds.infrastructure.DataWriterProtocolQosPolicy.disable positive acks (p. 594) is set) has not yet elapsed.
Applies only for local DataWriter (p. 557) status.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
610
Class Documentation
8.52
Public Attributes
final DurabilityQosPolicy durability
Durability policy, DURABILITY ( p. 68).
611
final
DataWriterResourceLimitsQosPolicy
limits
<<eXtension>> (p. 278) Writer resource
WRITER RESOURCE LIMITS ( p. 51).
writer resource -
limits
policy,
DATA -
PUBLISH MODE
612
Class Documentation
8.52.1
Detailed Description
<=
8.52.2
8.52.2.1
613
614
Class Documentation
8.52.2.10
final DataWriterResourceLimitsQosPolicy
writer resource limits
<<eXtension>> ( p. 278) Writer resource limits policy, DATA WRITER RESOURCE LIMITS (p. 51).
8.52.2.17
<<eXtension>> ( p. 278) Transport plugin selection policy, TRANSPORT SELECTION (p. 127).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.52.2.19
615
use
by
the
TRANSPORT -
Specifies the unicast transport interfaces and ports on which messages can be
received.
The
unicast
interfaces
are
used
to
receive
messages
from
com.rti.dds.subscription.DataReader (p. 487) entities in the domain
(p. 328).
8.52.2.20
8.52.2.21
8.52.2.22
8.52.2.23
8.52.2.24
8.52.2.25
616
Class Documentation
8.52.2.26
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.53
DataWriterResourceLimitsInstanceReplacementKind
Class Reference
Sets the kinds of instances that can be replaced when instance resource limits
are reached.
Inheritance diagram for DataWriterResourceLimitsInstanceReplacementKind::
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
618
Class Documentation
8.53.1
Detailed Description
Sets the kinds of instances that can be replaced when instance resource limits
are reached.
When
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max instances (p. 1352) is reached, a com.rti.dds.publication.DataWriter
(p. 557) will try to make room for a new instance by attempting to reclaim an existing instance based on the instance replacement kind specified by
com.rti.dds.infrastructure.DataWriterResourceLimitsQosPolicy.instance replacement (p. 624).
Only instances whose states match the specified kinds are eligible to be replaced.
In addition, an instance must have had all of its samples fully acknowledged for
it to be considered replaceable.
For all kinds, a com.rti.dds.publication.DataWriter (p. 557) will replace the oldest instance satisfying that kind. For example, when the kind is
com.rti.dds.infrastructure.DataWriterResourceLimitsInstanceReplacementKind.DataWriterResourceLim
INSTANCE REPLACEMENT, a com.rti.dds.publication.DataWriter
(p. 557) will remove the oldest fully acknowledged unregistered instance, if such
an instance exists.
If no replaceable instance exists, the invoked function will either return
with an appropriate out-of-resources return code, or in the case of a
write, it may first block to wait for an instance to be acknowledged.
Otherwise, the com.rti.dds.publication.DataWriter (p. 557) will replace
the old instance with the new instance, and invoke, if available, the
com.rti.dds.publication.DataWriterListener InstanceReplacedCallback to notify
the user about an instance being replaced.
A com.rti.dds.publication.DataWriter (p. 557) checks for replaceable instances in the following order, stopping once a replaceable instance is found:
8.53.2
8.53.2.1
final DataWriterResourceLimitsInstanceReplacementKind
UNREGISTERED INSTANCE REPLACEMENT
[static]
final DataWriterResourceLimitsInstanceReplacementKind
ALIVE INSTANCE REPLACEMENT [static]
final DataWriterResourceLimitsInstanceReplacementKind
DISPOSED INSTANCE REPLACEMENT [static]
620
Class Documentation
8.53.2.4
final DataWriterResourceLimitsInstanceReplacementKind
ALIVE THEN DISPOSED INSTANCE REPLACEMENT [static]
final DataWriterResourceLimitsInstanceReplacementKind
DISPOSED THEN ALIVE INSTANCE REPLACEMENT [static]
Allows a com.rti.dds.publication.DataWriter (p. 557) first to reclaim a disposed acknowledged instance, and then if necessary an alive acknowledged instance.
When an unregistered acknowledged instance is not available to reclaim, this
kind allows a com.rti.dds.publication.DataWriter (p. 557) first try reclaiming a disposed acknowledged instance. If no instance is reclaimable, then it trys
reclaiming an alive acknowledged instance. The least recently used (i.e. disposed, registered, or written) instance will be reclaimed.
8.53.2.6
final DataWriterResourceLimitsInstanceReplacementKind
ALIVE OR DISPOSED INSTANCE REPLACEMENT
[static]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.54
621
DataWriterResourceLimitsQosPolicy
Class Reference
Public Attributes
int initial concurrent blocking threads
The initial number of threads that are allowed to concurrently block on write
call on the same com.rti.dds.publication.DataWriter ( p. 557).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
622
Class Documentation
int initial virtual writers
The
initial
number
of
virtual
writers
com.rti.dds.publication.DataWriter ( p. 557).
supported
by
supported
by
supported
by
8.54.1
Detailed Description
8.54.2
8.54.2.1
623
The initial number of threads that are allowed to concurrently block on write
call on the same com.rti.dds.publication.DataWriter (p. 557).
This value only applies if com.rti.dds.infrastructure.HistoryQosPolicy
(p. 1046) has its kind set to com.rti.dds.infrastructure.HistoryQosPolicyKind.HistoryQosPolicyKind.KEEP ALL HISTORY QOS and com.rti.dds.infrastructure.ReliabilityQosPolicy.max blocking time (p. 1327) is > 0.
[default] 1
[range] [1, 10000], <= max concurrent blocking threads
8.54.2.2
8.54.2.3
624
Class Documentation
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106): The DataWriter will filter for up to (2 31)-2
DataReaders. However, in this case, the DataWriter will not store the filtering
result per sample per DataReader. Thus, if a sample is resent (such as due to
a loss of reliable communication), the sample will be filtered again.
8.54.2.4
Represents
the
maximum
number
of
batches
com.rti.dds.publication.DataWriter (p. 557) will manage.
8.54.2.5
Represents
the
initial
number
of
batches
com.rti.dds.publication.DataWriter (p. 557) will manage.
[default] 8
[range] [1,100 million]
See also:
com.rti.dds.infrastructure.BatchQosPolicy (p. 412)
8.54.2.6
DataWriterResourceLimitsInstanceReplacementKind
instance replacement
Sets the kinds of instances allowed to be replaced when instance resource limits
are reached.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
625
When
a
com.rti.dds.publication.DataWriter
number
of
active
instances
is
greater
than
(p. 557)s
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max instances
(p. 1352), it will try to make room by replacing an existing instance. This field
specifies the kinds of instances allowed to be replaced.
If a replaceable instance is not available, either an out-of-resources exception
will be returned, or the writer may block if the instance reclamation was done
when writing.
[default] com.rti.dds.infrastructure.DataWriterResourceLimitsInstanceReplacementKind.DataWriterResourceLimits
INSTANCE REPLACEMENT
See also:
com.rti.dds.infrastructure.DataWriterResourceLimitsInstanceReplacementKind
(p. 617)
8.54.2.7
8.54.2.8
626
Class Documentation
8.54.2.9
The
initial
number
of
virtual
writers
com.rti.dds.publication.DataWriter (p. 557).
supported
by
[default] 1
[range] [1, 1000000], or com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
8.54.2.10
The
maximum
number
of
virtual
writers
com.rti.dds.publication.DataWriter (p. 557).
supported
by
The
maximum
number
of
remote
readers
com.rti.dds.publication.DataWriter (p. 557).
supported
by
627
The maximum number of application-level acknowledging remote readers supported by a com.rti.dds.publication.DataWriter (p. 557).
[default] com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
[range] [1, 1000000], or com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
628
Class Documentation
8.55
Expresses the maximum duration (deadline) within which an instance is expected to be updated.
Inheritance diagram for DeadlineQosPolicy::
Public Attributes
final Duration t period
Duration of the deadline period.
8.55.1
Detailed Description
Expresses the maximum duration (deadline) within which an instance is expected to be updated.
A com.rti.dds.subscription.DataReader (p. 487) expects a new sample updating the value of each instance at least once every period. That is, period
specifies the maximum expected elapsed time between arriving data samples.
indicates
that
A
com.rti.dds.publication.DataWriter
(p. 557)
the application commits to write a new value (using the
com.rti.dds.publication.DataWriter (p. 557)) for each instance managed by the com.rti.dds.publication.DataWriter (p. 557) at least once
every period.
This QoS can be used during system integration to ensure that applications
have been coded to meet design specifications.
It can also be used during run time to detect when systems are performing
outside of design specifications. Receiving applications can take appropriate
actions to prevent total system failure when data is not received in time. For
topics on which data is not expected to be periodic, period should be set to an
infinite value.
Entity:
com.rti.dds.topic.Topic (p. 1545), com.rti.dds.subscription.DataReader
(p. 487), com.rti.dds.publication.DataWriter (p. 557)
Status:
com.rti.dds.infrastructure.StatusKind.StatusKind.OFFERED DEADLINE MISSED STATUS, com.rti.dds.infrastructure.StatusKind.StatusKind.REQUESTED Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
629
DEADLINE MISSED STATUS, com.rti.dds.infrastructure.StatusKind.StatusKind.OFFERED INCOMPATIBLE QOS STATUS, com.rti.dds.infrastructure.StatusKind.StatusKind.REQUESTED INCOMPATIBLE QOS STATUS
Properties:
RxO (p. 101) = YES
Changeable (p. 102) = YES (p. 102)
8.55.2
Usage
8.55.3
Compatibility
The value offered is considered compatible with the value requested if and only
if the inequality offered period <= requested period holds.
8.55.4
Consistency
The setting of the DEADLINE (p. 52) policy must be set consistently with
that of the TIME BASED FILTER (p. 117).
For these two policies to be consistent the settings must be such that deadline
period >= minimum separation.
An attempt to set these policies in an inconsistent manner will result in com.rti.dds.infrastructure.RETCODE INCONSISTENT Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
630
Class Documentation
POLICY
(p. 1359)
in
set qos
(abstract)
(p. 932),
com.rti.dds.infrastructure.Entity (p. 931) will not be created.
or
the
8.55.5
8.55.5.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.56
631
Controls how the middleware will deal with data sent by multiple
com.rti.dds.publication.DataWriter (p. 557) entities for the same instance
of data (i.e., same com.rti.dds.topic.Topic (p. 1545) and key).
Inheritance diagram for DestinationOrderQosPolicy::
Public Attributes
DestinationOrderQosPolicyKind kind
Specifies the desired kind of destination order.
8.56.1
Detailed Description
Controls how the middleware will deal with data sent by multiple
com.rti.dds.publication.DataWriter (p. 557) entities for the same instance
of data (i.e., same com.rti.dds.topic.Topic (p. 1545) and key).
Entity:
com.rti.dds.topic.Topic (p. 1545), com.rti.dds.subscription.DataReader
(p. 487), com.rti.dds.publication.DataWriter (p. 557)
Status:
com.rti.dds.infrastructure.StatusKind.StatusKind.OFFERED INCOMPATIBLE QOS STATUS, com.rti.dds.infrastructure.StatusKind.StatusKind.REQUESTED INCOMPATIBLE QOS STATUS
Properties:
RxO (p. 101) = YES
Changeable (p. 102) = UNTIL ENABLE (p. 102)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
632
Class Documentation
8.56.2
Usage
When multiple DataWriters send data for the same topic (p. 359), the order
in which data from different DataWriters are received by the applications of
different DataReaders may be different. So different DataReaders may not
receive the same last value when DataWriters stop sending data.
This QoS policy controls how each subscriber resolves the final value of a data instance that is written by multiple
com.rti.dds.publication.DataWriter (p. 557) entities (which may be
associated with different com.rti.dds.publication.Publisher (p. 1262)
entities) running on different nodes.
8.56.3
633
Compatibility
8.56.4
8.56.4.1
DestinationOrderQosPolicyKind kind
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
634
Class Documentation
8.57
DestinationOrderQosPolicyKind
Reference
Class
BY SOURCE -
Indicates that data is ordered based on a time-stamp placed at the source (by
RTI Connext or by the application).
8.57.1
Detailed Description
8.57.2
8.57.2.1
[default] Indicates that data is ordered based on the reception time at each
com.rti.dds.subscription.Subscriber (p. 1476).
Since each subscriber may receive the data at different times there is no guaranteed that the changes will be seen in the same order. Consequently, it is possible
for each subscriber to end up with a different final value for the data.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
635
Indicates that data is ordered based on a time-stamp placed at the source (by
RTI Connext or by the application).
In any case this guarantees a consistent final value for the data in all subscribers.
See also:
Special Instructions if Using Timestamp APIs and BY SOURCE TIMESTAMP Destination Ordering: (p. 1273)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
636
Class Documentation
8.58
Inherits Struct.
Public Attributes
boolean disable fragmentation support = false
int max fragmented samples = 1024
int initial fragmented samples = 4
int max fragmented samples per remote writer = 256
int max fragments per sample = 512
boolean dynamically allocate fragmented samples = false
8.58.1
Detailed Description
8.58.2
8.58.2.1
DiscoveryBuiltinReaderFragmentationResourceLimits t ()
DiscoveryBuiltinReaderFragmentationResourceLimits t
(boolean disable fragmentation support, int
max fragmented samples, int initial fragmented samples,
int max fragmented samples per remote writer,
int max fragments per sample, boolean
dynamically allocate fragmented samples)
8.58.3
8.58.3.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
638
Class Documentation
8.59
DiscoveryConfigBuiltinPluginKind
Reference
Class
8.59.1
Detailed Description
8.59.2
8.59.2.1
DiscoveryConfigBuiltinPluginKindMask.MASK DEFAULT
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.60
639
Public Attributes
final Duration t participant liveliness lease duration
The liveliness lease duration for the participant.
640
Class Documentation
final WriterDataLifecycleQosPolicy
lifecycle
final
RtpsReliableReaderProtocol t
reader
participant message -
8.60.1
641
Detailed Description
8.60.2
8.60.2.1
642
Class Documentation
8.60.2.2
The maximum amount of time between when a remote entity stops maintaining
its liveliness and when the matched local entity realizes that fact.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
643
Notification of the loss of liveliness of a remote entity may come more quickly
that this duration, depending on the liveliness contract between the local and
remote entities and the capabilities of the discovery mechanism in use. For
example, a com.rti.dds.subscription.DataReader (p. 487) will learn of the
loss of liveliness of a matched com.rti.dds.publication.DataWriter (p. 557)
within the readers offered liveliness lease duration.
Shortening this duration will increase the responsiveness of entities to communication failures. However, it will also increase the CPU usage of the application,
as the liveliness of remote entities will be examined more frequently.
[default] 60 seconds
[range] [0, 1 year]
8.60.2.5
8.60.2.6
644
Class Documentation
8.60.2.7
8.60.2.8
final BuiltinTopicReaderResourceLimits t
participant reader resource limits
Resource limits.
Resource limit of the built-in topic (p. 359) participant reader. For details,
see
com.rti.dds.infrastructure.BuiltinTopicReaderResourceLimits t
(p. 426).
8.60.2.9
final BuiltinTopicReaderResourceLimits t
publication reader resource limits
Resource limits.
Resource
limit
of
the
built-in
topic
(p. 359)
publication
(p. 349)
reader.
For
details,
see
com.rti.dds.infrastructure.BuiltinTopicReaderResourceLimits t
(p. 426).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
645
final BuiltinTopicReaderResourceLimits t
subscription reader resource limits
Resource limits.
Resource
limit
of
the
built-in
topic
(p. 359)
subscription
(p. 353)
reader.
For
details,
see
com.rti.dds.infrastructure.BuiltinTopicReaderResourceLimits t
(p. 426).
8.60.2.11
8.60.2.12
final WriterDataLifecycleQosPolicy
publication writer data lifecycle
Writer data lifecycle settings for a built-in publication (p. 349) writer.
For details, refer to the com.rti.dds.infrastructure.WriterDataLifecycleQosPolicy
(p. 1738). com.rti.dds.infrastructure.WriterDataLifecycleQosPolicy.autodispose unregistered instances
(p. 1739)
will
always
be
forced
to
com.rti.dds.infrastructure.true.
8.60.2.13
8.60.2.14
final WriterDataLifecycleQosPolicy
subscription writer data lifecycle
Writer data lifecycle settings for a built-in subscription (p. 353) writer.
For details, refer to the com.rti.dds.infrastructure.WriterDataLifecycleQosPolicy
(p. 1738). com.rti.dds.infrastructure.WriterDataLifecycleQosPolicy.autodispose unregistered instances
(p. 1739)
will
always
be
forced
to
com.rti.dds.infrastructure.true.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
646
Class Documentation
8.60.2.15
8.60.2.16
8.60.2.17
Initial value:
DiscoveryConfigBuiltinPluginKind.MASK_DEFAULT
[default] com.rti.dds.infrastructure.DiscoveryConfigBuiltinPluginKind.DiscoveryConfigBuiltinPluginKin
8.60.2.18
final RtpsReliableReaderProtocol t
participant message reader
8.60.2.19
final RtpsReliableWriterProtocol t
participant message writer
647
Initial value:
new PublishModeQosPolicy()
8.60.2.21
Initial value:
new PublishModeQosPolicy()
8.60.2.22
final AsynchronousPublisherQosPolicy
asynchronous publisher
Initial value:
new AsynchronousPublisherQosPolicy()
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
648
Class Documentation
8.61
DiscoveryPluginPromiscuityKind
Reference
Class
<<eXtension>> ( p. 278) Type used to indicate promiscuity mode of the discovery plugin.
Inheritance diagram for DiscoveryPluginPromiscuityKind::
8.61.1
Detailed Description
<<eXtension>> ( p. 278) Type used to indicate promiscuity mode of the discovery plugin.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.62
649
Public Attributes
final StringSeq enabled transports
The transports available for use by the Discovery mechanism.
8.62.1
Detailed Description
650
Class Documentation
8.62.2
Usage
This QoS policy identifies where on the network this application can potentially
discover other applications with which to communicate.
The middleware will periodically send network packets to these locations, announcing itself to any remote applications that may be present, and will listen
for announcements from those applications.
This QoS policy is an extension to the DDS standard.
See also:
NDDS DISCOVERY PEERS (p. 57)
com.rti.dds.infrastructure.DiscoveryConfigQosPolicy (p. 639)
8.62.3
8.62.3.1
mech(builtand
Also determines the unicast addresses on which the Discovery mechanism will
listen for meta-traffic. These along with the domain id and participant id
determine the unicast locators on which the Discovery mechanism can receive
meta-data.
Alias names for the builtin transports are defined in TRANSPORT BUILTIN (p. 119).
[default] Empty sequence. All the transports available to the DomainParticipant are available for use by the Discovery mechanism.
[range] Sequence of non-null,non-empty strings.
8.62.3.2
Initial value:
new StringSeq()
651
The multicast group addresses on which the Discovery mechanism will listen for
meta-traffic.
Each element of this list must be a valid multicast address (IPv4 or IPv6) in
the proper format (see Address Format (p. 59)).
The domain id determines the multicast port on which the Discovery mechanism can receive meta-data.
If
NDDS DISCOVERY PEERS
does
not
contain
a
multicast
address,
then
the
string
sequence
com.rti.dds.infrastructure.DiscoveryQosPolicy.multicast receive addresses (p. 650) is cleared and the RTI discovery process will not listen for
discovery messages via multicast.
contains
one
or
more
If
NDDS DISCOVERY PEERS
multicast
addresses,
the
addresses
will
be
stored
in
com.rti.dds.infrastructure.DiscoveryQosPolicy.multicast receive addresses (p. 650), starting at element 0. They will be stored in the order
they appear NDDS DISCOVERY PEERS.
Note:
Currently,
RTI Connext will only listen for discovery
traffic
on
the
first
multicast
address
(element
0)
in
com.rti.dds.infrastructure.DiscoveryQosPolicy.multicast receive addresses (p. 650).
[default] See NDDS DISCOVERY PEERS (p. 57)
[range] Sequence of length [0,1], whose elements are multicast addresses. Currently only the first multicast address (if any) is used. The rest are ignored.
See also:
Address Format (p. 59)
8.62.3.3
Determines the initial list of peers that will be contacted by the Discovery
mechanism to send announcements about the presence of this participant.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
652
Class Documentation
8.62.3.5
Whether to accept a new participant that is not in the initial peers list.
If com.rti.dds.infrastructure.false, the participant will only communicate with those in the initial peers list and those added via
com.rti.dds.domain.DomainParticipant.add peer() (p. 720).
If com.rti.dds.infrastructure.true, the participant will also communicate with all
discovered remote participants.
Note: If accept unknown peers is com.rti.dds.infrastructure.false and shared
memory is disabled, applications on the same node will not communicate if
only localhost is specified in the peers list. If shared memory is disabled or
shmem:// is not specified in the peers list, to communicate with other applications on the same node through the loopback interface, you must put the actual
node address or hostname in NDDS DISCOVERY PEERS (p. 57).
[default] com.rti.dds.infrastructure.true
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.63
653
<<interface>> ( p. 279) Abstract base class for all DDS entities except for
the com.rti.dds.domain.DomainParticipant (p. 654).
Inheritance diagram for DomainEntity::
8.63.1
Detailed Description
<<interface>> ( p. 279) Abstract base class for all DDS entities except for
the com.rti.dds.domain.DomainParticipant (p. 654).
Its
sole
purpose
is
to
conceptually
express
that
com.rti.dds.domain.DomainParticipant (p. 654) is a special kind of
com.rti.dds.infrastructure.Entity (p. 931) that acts as a container of all
other com.rti.dds.infrastructure.Entity (p. 931) but itself cannot contain
other com.rti.dds.domain.DomainParticipant (p. 654).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
654
Class Documentation
8.64
<<interface>>
( p. 279)
Container
for
com.rti.dds.infrastructure.DomainEntity (p. 653) objects.
all
(FlowControllerProp-
<<eXtension>>
(p. 278)
Set
com.rti.dds.publication.FlowControllerProperty t
for this domain ( p. 328) participant.
the
( p. 968)
default
values
void set default topic qos with profile (String library name, String
profile name)
<<eXtension>> (p. 278) Set the default com.rti.dds.topic.TopicQos
( p. 1566) values for this domain ( p. 328) participant based on the input
XML QoS profile.
655
void set default publisher qos with profile (String library name,
String profile name)
<<eXtension>>
(p. 278)
Set
the
default
com.rti.dds.publication.PublisherQos ( p. 1290) values for this DomainParticipant ( p. 654) based on the input XML QoS profile.
void set default datawriter qos with profile (String library name,
String profile name)
<<eXtension>>
(p. 278)
Set
the
default
com.rti.dds.publication.DataWriterQos ( p. 610) values for this
domain ( p. 328) participant based on the input XML QoS profile.
void set default subscriber qos with profile (String library name,
String profile name)
<<eXtension>>
(p. 278)
Set
the
default
com.rti.dds.subscription.SubscriberQos ( p. 1505) values for this
DomainParticipant ( p. 654) based on the input XML QoS profile.
656
Class Documentation
<<eXtension>>
(p. 278)
Set
the
com.rti.dds.subscription.DataReaderQos ( p. 536) values
domain ( p. 328) participant.
default
for this
void set default datareader qos with profile (String library name,
String profile name)
<<eXtension>>
(p. 278)
Set
the
default
com.rti.dds.subscription.DataReaderQos ( p. 536) values for this
DomainParticipant ( p. 654) based on the input XML QoS profile.
FlowCon-
an
existing
Creates
( p. 1476)
a
object
using
new
the
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
657
DataWriter create datawriter with profile (Topic topic, String library name, String profile name, DataWriterListener listener, int
mask)
<<eXtension>> (p. 278) Creates a com.rti.dds.publication.DataWriter
( p. 557) using a XML QoS profile that will be attached and belong to the
implicit com.rti.dds.publication.Publisher ( p. 1262).
DataReader
create datareader
(TopicDescription
topic,
DataReaderQos qos, DataReaderListener listener, int mask)
<<eXtension>> (p. 278) Creates a com.rti.dds.subscription.DataReader
( p. 487) that will be attached and belong to the implicit
com.rti.dds.subscription.Subscriber ( p. 1476).
Topic create topic (String topic name, String type name, TopicQos
qos, TopicListener listener, int mask)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
658
Class Documentation
Creates a com.rti.dds.topic.Topic ( p. 1545) with the desired QoS policies
and attaches to it the specified com.rti.dds.topic.TopicListener ( p. 1564).
Topic create topic with profile (String topic name, String type name,
String library name, String profile name, TopicListener listener, int
mask)
<<eXtension>> (p. 278) Creates a new com.rti.dds.topic.Topic
( p. 1545) object using the com.rti.dds.publication.PublisherQos
( p. 1290) associated with the input XML QoS profile.
ContentFilteredTopic
create contentfilteredtopic with filter
(String name, Topic related topic, String filter expression, StringSeq
expression parameters, String filter name)
<<eXtension>> (p. 278) Creates a com.rti.dds.topic.ContentFilteredTopic
( p. 471) using the specified filter to do content-based subscriptions.
void
delete contentfilteredtopic
contentfilteredtopic)
(ContentFilteredTopic
a-
void set qos with profile (String library name, String profile name)
<<eXtension>> (p. 278) Change the QoS of this domain ( p. 328) participant using the input XML QoS profile.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
659
library
for
void set default profile (String library name, String profile name)
<<eXtension>> (p. 278) Sets the default XML
com.rti.dds.domain.DomainParticipant ( p. 654).
profile
for
660
Class Documentation
remote
of
this
661
of
discovered
com.rti.dds.domain.DomainParticipant
void get discovered participant data (ParticipantBuiltinTopicData participant data, InstanceHandle t participant handle)
Returns builtin.ParticipantBuiltinTopicData ( p. 1211) for the specified
com.rti.dds.domain.DomainParticipant ( p. 654) .
for
the
specified
662
Class Documentation
<<eXtension>> (p. 278) Unregister a content filter previously registered
with
com.rti.dds.domain.DomainParticipant.register contentfilter
( p. 728).
the
implicit
If an implicit Sub-
abstract DataWriter
datawriter full name)
(String
abstract DataReader
datareder full name)
(String
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
663
8.64.1
Detailed Description
<<interface>>
( p. 279)
Container
for
com.rti.dds.infrastructure.DomainEntity (p. 653) objects.
all
664
Class Documentation
665
Listener:
com.rti.dds.domain.DomainParticipantListener (p. 771)
See also:
Operations Allowed in Listener Callbacks (p. 1132)
8.64.2
8.64.2.1
Copies
the
default
<<eXtension>>
( p. 278)
com.rti.dds.publication.FlowControllerProperty t
(p. 968)
values for this domain (p. 328) participant into the given
com.rti.dds.publication.FlowControllerProperty t (p. 968) instance.
The retrieved property will match the set of values specified on the last
successful call to com.rti.dds.domain.DomainParticipant.set default flowcontroller property (p. 666), or else, if the call was never made, the default values listed in com.rti.dds.publication.FlowControllerProperty t
(p. 968).
MT Safety:
UNSAFE. It is not safe to retrieve the default flow controller properties
from a DomainParticipant (p. 654) while another thread may be simultaneously calling com.rti.dds.domain.DomainParticipant.set default flowcontroller property (p. 666)
Parameters:
prop <<in>> ( p. 279) Default property to be retrieved.
NULL.
Cannot be
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.domain.DomainParticipant.FLOW CONTROLLER PROPERTY DEFAULT (p. 154)
com.rti.dds.domain.DomainParticipant.create flowcontroller
(p. 681)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
666
Class Documentation
8.64.2.2
<<eXtension>>
( p. 278)
Set
the
(p. 968)
com.rti.dds.publication.FlowControllerProperty t
for this domain (p. 328) participant.
default
values
This
default
value
will
be
used
for
newly
created
com.rti.dds.publication.FlowController
(p. 964)
if
com.rti.dds.domain.DomainParticipant.FLOW CONTROLLER PROPERTY DEFAULT (p. 154) is specified as the property parameter
when
com.rti.dds.domain.DomainParticipant.create flowcontroller
(p. 681) is called.
Precondition:
The specified property values must be consistent, or else the operation will
have no effect and fail with com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
MT Safety:
UNSAFE. It is not safe to set the default flow controller properties for
a DomainParticipant (p. 654) while another thread may be simultaneously
calling
com.rti.dds.domain.DomainParticipant.set default flowcontroller property
(p. 666)
,
com.rti.dds.domain.DomainParticipant.get default flowcontroller property
(p. 665)
or
calling
com.rti.dds.domain.DomainParticipant.create flowcontroller
(p. 681)
with
com.rti.dds.domain.DomainParticipant.FLOW CONTROLLER PROPERTY DEFAULT (p. 154) as the qos
parameter.
Parameters:
prop <<in>> ( p. 279) Default property to be set.
The special
value
com.rti.dds.domain.DomainParticipant.FLOW CONTROLLER PROPERTY DEFAULT
(p. 154)
may
be passed as property to indicate that the default property
should be reset to the default values the factory would use
if
com.rti.dds.domain.DomainParticipant.set default flowcontroller property (p. 666) had never been called. Cannot be
NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
667
See also:
com.rti.dds.domain.DomainParticipant.FLOW CONTROLLER PROPERTY DEFAULT (p. 154)
com.rti.dds.domain.DomainParticipant.create flowcontroller
(p. 681)
8.64.2.3
8.64.2.4
Set the default com.rti.dds.topic.TopicQos (p. 1566) values for this domain
(p. 328) participant.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
668
Class Documentation
8.64.2.5
669
(p. 1566) values for this domain (p. 328) participant based on the input XML
QoS profile.
This default value will be used for newly created com.rti.dds.topic.Topic
if
com.rti.dds.domain.DomainParticipant.TOPIC (p. 1545)
QOS DEFAULT (p. 152) is specified as the qos parameter when
com.rti.dds.domain.DomainParticipant.create topic (p. 697) is called.
Precondition:
The com.rti.dds.topic.TopicQos (p. 1566) contained in the specified XML QoS profile must be consistent, or else the operation will
have no effect and fail with com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
MT Safety:
UNSAFE. It is not safe to set the default topic (p. 359) QoS for a DomainParticipant (p. 654) while another thread may be simultaneously
calling com.rti.dds.domain.DomainParticipant.set default topic qos (p. 667), com.rti.dds.domain.DomainParticipant.get default topic qos (p. 667) or calling com.rti.dds.domain.DomainParticipant.create topic (p. 697) with com.rti.dds.domain.DomainParticipant.TOPIC QOS DEFAULT (p. 152) as the qos parameter.
Parameters:
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default library (see com.rti.dds.domain.DomainParticipant.set default library (p. 707)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see com.rti.dds.domain.DomainParticipant.set default profile (p. 708)).
If the input profile cannot be found the method
com.rti.dds.infrastructure.RETCODE ERROR (p. 1356).
fails
with
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
See also:
com.rti.dds.domain.DomainParticipant.TOPIC QOS DEFAULT
(p. 152)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
670
Class Documentation
com.rti.dds.domain.DomainParticipant.create topic with profile
(p. 699)
8.64.2.6
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
671
672
Class Documentation
com.rti.dds.domain.DomainParticipant.create publisher (p. 683)
8.64.2.8
<<eXtension>>
( p. 278)
Set
the
default
com.rti.dds.publication.PublisherQos (p. 1290) values for this DomainParticipant (p. 654) based on the input XML QoS profile.
This
set
of
default
values
will
be
used
for
a
newly
created
com.rti.dds.publication.Publisher
(p. 1262)
if
com.rti.dds.domain.DomainParticipant.PUBLISHER QOS DEFAULT (p. 153) is specified as the qos parameter when
com.rti.dds.domain.DomainParticipant.create publisher (p. 683) is
called.
Precondition:
The com.rti.dds.publication.PublisherQos (p. 1290) contained in the
specified XML QoS profile must be consistent, or else the operation will
have no effect and fail with com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
MT Safety:
UNSAFE. It is not safe to set the default publisher QoS for a DomainParticipant (p. 654) while another thread may be simultaneously calling
com.rti.dds.domain.DomainParticipant.set default publisher qos
(p. 671),
com.rti.dds.domain.DomainParticipant.get default publisher qos
(p. 670)
or
calling
com.rti.dds.domain.DomainParticipant.create publisher (p. 683)
with com.rti.dds.domain.DomainParticipant.PUBLISHER QOS DEFAULT (p. 153) as the qos parameter.
Parameters:
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default library (see com.rti.dds.domain.DomainParticipant.set default library (p. 707)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see com.rti.dds.domain.DomainParticipant.set default profile (p. 708)).
If the input profile cannot be found, the method
com.rti.dds.infrastructure.RETCODE ERROR (p. 1356).
fails
with
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
673
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
See also:
com.rti.dds.domain.DomainParticipant.PUBLISHER QOS DEFAULT (p. 153)
com.rti.dds.domain.DomainParticipant.create publisher with profile (p. 684)
8.64.2.9
Copy
the
default
<<eXtension>>
( p. 278)
com.rti.dds.publication.DataWriterQos (p. 610) values into the provided com.rti.dds.publication.DataWriterQos (p. 610) instance.
The retrieved qos will match the set of values specified on the last successful
call to com.rti.dds.domain.DomainParticipant.set default datawriter qos (p. 673), or com.rti.dds.domain.DomainParticipant.set default datawriter qos with profile (p. 674), or else, if the call was never made, the
default values listed in com.rti.dds.publication.DataWriterQos (p. 610).
This method may potentially allocate memory depending on the sequences contained in some QoS policies.
MT Safety:
UNSAFE. It is not safe to retrieve the default DataWriter QoS
from a DomainPartipant while another thread may be simultaneously calling com.rti.dds.domain.DomainParticipant.set default datawriter qos (p. 673).
Parameters:
qos <<inout>> ( p. 279) Qos to be filled up. Cannot be NULL.
Exceptions:
One of the Standard Return Codes (p. 108)
8.64.2.10
<<eXtension>> ( p. 278) Set the default DataWriterQos values for this DomainParticipant (p. 654).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
674
Class Documentation
8.64.2.11
<<eXtension>>
( p. 278)
Set
the
default
com.rti.dds.publication.DataWriterQos (p. 610) values for this domain
(p. 328) participant based on the input XML QoS profile.
This set of default values will be inherited for a newly created
com.rti.dds.publication.Publisher (p. 1262).
Precondition:
The com.rti.dds.publication.DataWriterQos (p. 610) contained in the
specified XML QoS profile must be consistent, or else the operation will
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
675
have no effect and fail with com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
MT Safety:
UNSAFE. It is not safe to set the default DataWriter QoS for a DomainParticipant (p. 654) while another thread may be simultaneously calling
com.rti.dds.domain.DomainParticipant.set default datawriter or
com.rti.dds.domain.DomainParticipant.get qos
(p. 673)
default datawriter qos (p. 673)
Parameters:
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default library (see com.rti.dds.domain.DomainParticipant.set default library (p. 707)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see com.rti.dds.domain.DomainParticipant.set default profile (p. 708)).
If the input profile cannot be found, the method
com.rti.dds.infrastructure.RETCODE ERROR (p. 1356).
fails
with
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
8.64.2.12
<<eXtension>>
( p. 278)
Copy
the
default
com.rti.dds.subscription.DataReaderQos (p. 536) values into the provided
com.rti.dds.subscription.DataReaderQos (p. 536) instance.
The retrieved qos will match the set of values specified on the last successful call
to
com.rti.dds.domain.DomainParticipant.set default datareader qos (p. 679), or com.rti.dds.domain.DomainParticipant.set default datareader qos with profile (p. 680), or else, if the call was never made, the
default values listed in com.rti.dds.subscription.DataReaderQos (p. 536).
This method may potentially allocate memory depending on the sequences contained in some QoS policies.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
676
Class Documentation
MT Safety:
UNSAFE. It is not safe to retrieve the default DataReader QoS from
a DomainParticipant (p. 654) while another thread may be simultaneously calling com.rti.dds.domain.DomainParticipant.set default datareader qos (p. 679).
Parameters:
qos <<inout>> ( p. 279) Qos to be filled up. Cannot be NULL.
Exceptions:
One of the Standard Return Codes (p. 108)
8.64.2.13
677
the default QoS should be reset back to the initial values the factory
would used if com.rti.dds.domain.DomainParticipant.set default subscriber qos (p. 676) had never been called. Cannot be
NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
8.64.2.14
Set
the
default
<<eXtension>>
( p. 278)
com.rti.dds.subscription.SubscriberQos (p. 1505) values for this DomainParticipant (p. 654) based on the input XML QoS profile.
This set of default values will be used for a newly created
com.rti.dds.subscription.Subscriber
(p. 1476)
if
com.rti.dds.domain.DomainParticipant.SUBSCRIBER QOS DEFAULT (p. 153) is specified as the qos parameter when
com.rti.dds.domain.DomainParticipant.create subscriber
(p. 686)
is called.
Precondition:
The com.rti.dds.subscription.SubscriberQos (p. 1505) contained in
the specified XML QoS profile must be consistent, or else the operation will
have no effect and fail with com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
MT Safety:
UNSAFE. It is not safe to set the default Subscriber QoS for a DomainParticipant (p. 654) while another thread may be simultaneously calling
com.rti.dds.domain.DomainParticipant.set default subscriber com.rti.dds.domain.DomainParticipant.get qos
(p. 676),
default subscriber qos
(p. 678)
or
calling
com.rti.dds.domain.DomainParticipant.create subscriber (p. 686)
with
com.rti.dds.domain.DomainParticipant.SUBSCRIBER QOS DEFAULT (p. 153) as the qos parameter.
Parameters:
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the deGenerated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
678
Class Documentation
fault library (see com.rti.dds.domain.DomainParticipant.set default library (p. 707)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see com.rti.dds.domain.DomainParticipant.set default profile (p. 708)).
fails
with
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
See also:
com.rti.dds.domain.DomainParticipant.SUBSCRIBER QOS DEFAULT (p. 153)
com.rti.dds.domain.DomainParticipant.create subscriber with profile (p. 687)
8.64.2.15
Copy the default com.rti.dds.subscription.SubscriberQos (p. 1505) values into the provided com.rti.dds.subscription.SubscriberQos (p. 1505) instance.
The retrieved qos will match the set of values specified on the last successful
call to com.rti.dds.domain.DomainParticipant.set default subscriber qos (p. 676), or com.rti.dds.domain.DomainParticipant.set default subscriber qos with profile (p. 677), or else, if the call was never made, the
default values listed in com.rti.dds.subscription.SubscriberQos (p. 1505).
This method may potentially allocate memory depending on the sequences contained in some QoS policies.
If
com.rti.dds.domain.DomainParticipant.SUBSCRIBER QOS DEFAULT (p. 153) is specified as the qos parameter when
com.rti.dds.domain.DomainParticipant.create subscriber
(p. 686)
is called, the default value of the QoS set in the factory, equivalent to the
value obtained by calling com.rti.dds.domain.DomainParticipant.get default subscriber qos (p. 678),
will be used to create the
com.rti.dds.subscription.Subscriber (p. 1476).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
679
MT Safety:
UNSAFE. It is not safe to retrieve the default Subscriber QoS from
a DomainParticipant (p. 654) while another thread may be simultaneously calling com.rti.dds.domain.DomainParticipant.set default subscriber qos (p. 676).
Parameters:
qos <<inout>> ( p. 279) Qos to be filled up. Cannot be NULL.
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.domain.DomainParticipant.SUBSCRIBER QOS DEFAULT (p. 153)
com.rti.dds.domain.DomainParticipant.create subscriber (p. 686)
8.64.2.16
Set
the
default
<<eXtension>>
( p. 278)
com.rti.dds.subscription.DataReaderQos (p. 536) values for this domain (p. 328) participant.
This set of default values will be inherited for a newly created
com.rti.dds.subscription.Subscriber (p. 1476).
Precondition:
The specified QoS policies must be consistent, or else the operation will
have no effect and fail with com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
MT Safety:
UNSAFE. It is not safe to set the default DataReader QoS for a DomainParticipant (p. 654) while another thread may be simultaneously calling
com.rti.dds.domain.DomainParticipant.set default datareader qos
(p. 679)
or
com.rti.dds.domain.DomainParticipant.get default datareader qos (p. 675).
Parameters:
qos <<in>> ( p. 279) Default qos to be set.
The special value
com.rti.dds.subscription.Subscriber.DATAREADER QOS DEFAULT (p. 196) may be passed as qos to indicate that the
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
680
Class Documentation
default QoS should be reset back to the initial values the factory
would used if com.rti.dds.domain.DomainParticipant.set default datareader qos (p. 679) had never been called. Cannot be
NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
8.64.2.17
<<eXtension>>
( p. 278)
Set
the
default
com.rti.dds.subscription.DataReaderQos (p. 536) values for this DomainParticipant (p. 654) based on the input XML QoS profile.
This set of default values will be inherited for a newly created
com.rti.dds.subscription.Subscriber (p. 1476).
Precondition:
The com.rti.dds.subscription.DataReaderQos (p. 536) contained in
the specified XML QoS profile must be consistent, or else the operation will
have no effect and fail with com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
MT Safety:
UNSAFE. It is not safe to set the default DataReader QoS for a DomainParticipant (p. 654) while another thread may be simultaneously calling
com.rti.dds.domain.DomainParticipant.set default datareader qos
(p. 679)
or
com.rti.dds.domain.DomainParticipant.get default datareader qos (p. 675).
Parameters:
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default library (see com.rti.dds.domain.DomainParticipant.set default library (p. 707)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see com.rti.dds.domain.DomainParticipant.set default profile (p. 708)).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
681
fails
with
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
8.64.2.18
682
Class Documentation
a com.rti.dds.publication.FlowController (p. 964) by name.
Limited to 255 characters.
prop <<in>> ( p. 279) property to be used for creating the new
com.rti.dds.publication.FlowController (p. 964).
The special value com.rti.dds.domain.DomainParticipant.FLOW CONTROLLER PROPERTY DEFAULT (p. 154) can be used
to indicate that the com.rti.dds.publication.FlowController
should
be
created
with
the
default
(p. 964)
com.rti.dds.publication.FlowControllerProperty t
(p. 968)
set in the com.rti.dds.domain.DomainParticipant (p. 654).
Cannot be NULL.
Returns:
Newly created flow controller object or NULL on failure.
See also:
com.rti.dds.publication.FlowControllerProperty t (p. 968) for rules
on consistency among property
com.rti.dds.domain.DomainParticipant.FLOW CONTROLLER PROPERTY DEFAULT (p. 154)
com.rti.dds.domain.DomainParticipant.get default flowcontroller property (p. 665)
8.64.2.19
Deletes
<<eXtension>>
( p. 278)
com.rti.dds.publication.FlowController (p. 964).
an
existing
Precondition:
The com.rti.dds.publication.FlowController (p. 964) must not have
any attached com.rti.dds.publication.DataWriter (p. 557) objects. If
there are any attached com.rti.dds.publication.DataWriter (p. 557)
objects, it will fail with com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
The com.rti.dds.publication.FlowController (p. 964) must have been
created by this com.rti.dds.domain.DomainParticipant (p. 654),
or else it will fail with com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
Postcondition:
The com.rti.dds.publication.FlowController (p. 964) is deleted if this
method completes successfully.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
683
Parameters:
fc <<in>> ( p. 279) The com.rti.dds.publication.FlowController
(p. 964) to be deleted.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
8.64.2.20
Creates
a
com.rti.dds.publication.Publisher
(p. 1262)
with
the desired QoS policies and attaches to it the specified
com.rti.dds.publication.PublisherListener (p. 1289).
Precondition:
The specified QoS policies must be consistent, or the operation will fail and
no com.rti.dds.publication.Publisher (p. 1262) will be created.
MT Safety:
UNSAFE. If com.rti.dds.domain.DomainParticipant.PUBLISHER QOS DEFAULT (p. 153) is used for qos, it is not safe to create
the publisher while another thread may be simultaneously calling
com.rti.dds.domain.DomainParticipant.set default publisher qos
(p. 671).
Parameters:
qos <<in>> ( p. 279) QoS to be used for creating the new
com.rti.dds.publication.Publisher (p. 1262). The special value
com.rti.dds.domain.DomainParticipant.PUBLISHER QOS DEFAULT (p. 153) can be used to indicate that the
com.rti.dds.publication.Publisher (p. 1262) should be created
with the default com.rti.dds.publication.PublisherQos (p. 1290)
set in the com.rti.dds.domain.DomainParticipant (p. 654).
Cannot be NULL.
listener <<in>> ( p. 279). Listener to be attached to the newly created
com.rti.dds.publication.Publisher (p. 1262).
mask <<in>> ( p. 279). Changes of communication status to be invoked
on the listener. See com.rti.dds.infrastructure.StatusMask.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
684
Class Documentation
Returns:
newly created publisher object or NULL on failure.
See also:
Specifying QoS on entities (p. 100) for information on setting QoS before
entity creation
com.rti.dds.publication.PublisherQos (p. 1290) for rules on consistency among QoS
com.rti.dds.domain.DomainParticipant.PUBLISHER QOS DEFAULT (p. 153)
com.rti.dds.domain.DomainParticipant.create publisher with profile (p. 684)
com.rti.dds.domain.DomainParticipant.get default publisher qos
(p. 670)
com.rti.dds.publication.Publisher.set listener (p. 1279)
8.64.2.21
685
Returns:
newly created publisher object or NULL on failure.
See also:
Specifying QoS on entities (p. 100) for information on setting QoS before
entity creation
com.rti.dds.publication.PublisherQos (p. 1290) for rules on consistency among QoS
com.rti.dds.domain.DomainParticipant.create publisher (p. 683)
com.rti.dds.domain.DomainParticipant.get default publisher qos
(p. 670)
com.rti.dds.publication.Publisher.set listener (p. 1279)
8.64.2.22
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
686
Class Documentation
8.64.2.23
Creates
a
com.rti.dds.subscription.Subscriber
(p. 1476)
with
the desired QoS policies and attaches to it the specified
com.rti.dds.subscription.SubscriberListener (p. 1503).
Precondition:
The specified QoS policies must be consistent, or the operation will fail and
no com.rti.dds.subscription.Subscriber (p. 1476) will be created.
MT Safety:
UNSAFE. If com.rti.dds.domain.DomainParticipant.SUBSCRIBER QOS DEFAULT (p. 153) is used for qos, it is not safe to create
the subscriber while another thread may be simultaneously calling
com.rti.dds.domain.DomainParticipant.set default subscriber qos (p. 676).
Parameters:
qos <<in>> ( p. 279) QoS to be used for creating the new
com.rti.dds.subscription.Subscriber (p. 1476). The special value
com.rti.dds.domain.DomainParticipant.SUBSCRIBER QOS DEFAULT (p. 153) can be used to indicate that the
com.rti.dds.subscription.Subscriber (p. 1476) should be created with the default com.rti.dds.subscription.SubscriberQos
(p. 1505) set in the com.rti.dds.domain.DomainParticipant
(p. 654). Cannot be NULL.
listener <<in>> ( p. 279). Listener to be attached to the newly created
com.rti.dds.subscription.Subscriber (p. 1476).
mask <<in>> ( p. 279). Changes of communication status to be invoked
on the listener. See com.rti.dds.infrastructure.StatusMask.
Returns:
newly created subscriber object or NULL on failure.
See also:
Specifying QoS on entities (p. 100) for information on setting QoS before
entity creation
com.rti.dds.subscription.SubscriberQos (p. 1505) for rules on consistency among QoS
com.rti.dds.domain.DomainParticipant.SUBSCRIBER QOS DEFAULT (p. 153)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
687
8.64.2.24
688
Class Documentation
com.rti.dds.domain.DomainParticipant.create subscriber (p. 686)
com.rti.dds.domain.DomainParticipant.get default subscriber qos (p. 678)
com.rti.dds.subscription.Subscriber.set listener (p. 1496)
8.64.2.25
8.64.2.26
689
Precondition:
The given com.rti.dds.topic.Topic (p. 1545) must have been created from
the same DomainParticipant (p. 654) as the implicit Publisher. If it was
created from a different DomainParticipant (p. 654), this method will
fail.
created
usThe
com.rti.dds.publication.DataWriter
(p. 557)
ing this method will be associated with the implicit Publisher.
This Publisher is automatically created (if it does not exist) using
com.rti.dds.domain.DomainParticipant.PUBLISHER QOS DEFAULT (p. 153) when the following methods are called:
(p. 688),
com.rti.dds.domain.DomainParticipant.create datawriter
com.rti.dds.domain.DomainParticipant.create datawriter with profile (p. 690),
or com.rti.dds.domain.DomainParticipant.get implicit publisher (p. 730).
MT Safety:
UNSAFE. If com.rti.dds.publication.Publisher.DATAWRITER QOS DEFAULT (p. 182) is used for the qos parameter, it is not
safe to create the DataWriter while another thread may be simultaneously calling com.rti.dds.domain.DomainParticipant.set default datawriter qos (p. 673).
Parameters:
topic ( p. 359) <<in>> ( p. 279)
The com.rti.dds.topic.Topic
(p. 1545) that the com.rti.dds.publication.DataWriter (p. 557)
will be associated with. Cannot be NULL.
qos <<in>> ( p. 279) QoS to be used for creating the new
com.rti.dds.publication.DataWriter (p. 557).
The special
value
com.rti.dds.publication.Publisher.DATAWRITER QOS DEFAULT
(p. 182)
can
be
used
to
indicate
that
the
com.rti.dds.publication.DataWriter
(p. 557)
should
be
created
with
the
default
com.rti.dds.publication.DataWriterQos (p. 610) set in the
implicit com.rti.dds.publication.Publisher (p. 1262). The special
value
com.rti.dds.publication.Publisher.DATAWRITER QOS USE TOPIC QOS (p. 183) can be used to indicate
that
the
com.rti.dds.publication.DataWriter
(p. 557) should be created with the combination of the default
com.rti.dds.publication.DataWriterQos
(p. 610)
set
on
the
com.rti.dds.publication.Publisher
(p. 1262)
and
the
com.rti.dds.topic.TopicQos
(p. 1566)
of
the
com.rti.dds.topic.Topic (p. 1545). Cannot be NULL.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
690
Class Documentation
listener <<in>>
( p. 279)
The
listener
com.rti.dds.publication.DataWriter (p. 557).
of
the
8.64.2.27
691
The
com.rti.dds.publication.DataWriter
(p. 557)
created
using this method will be associated with the implicit Publisher.
This Publisher is automatically created (if it does not exist) using
com.rti.dds.domain.DomainParticipant.PUBLISHER QOS DEFAULT (p. 153) when the following methods are called:
(p. 688),
com.rti.dds.domain.DomainParticipant.create datawriter
com.rti.dds.domain.DomainParticipant.create datawriter with or com.rti.dds.domain.DomainParticipant.get profile (p. 690),
implicit publisher (p. 730)
Parameters:
topic ( p. 359) <<in>> ( p. 279)
The com.rti.dds.topic.Topic
(p. 1545) that the com.rti.dds.publication.DataWriter (p. 557)
will be associated with. Cannot be NULL.
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default library (see com.rti.dds.domain.DomainParticipant.set default library (p. 707)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see com.rti.dds.domain.DomainParticipant.set default profile (p. 708)).
listener <<in>>
( p. 279)
The
listener
com.rti.dds.publication.DataWriter (p. 557).
of
the
692
Class Documentation
com.rti.dds.topic.Topic.set qos (p. 1547)
com.rti.dds.publication.DataWriter.set listener (p. 564)
8.64.2.28
8.64.3
693
Postcondition:
Listener installed on the com.rti.dds.publication.DataWriter (p. 557)
will not be called after this method completes successfully.
Parameters:
a datawriter <<in>> ( p. 279) The com.rti.dds.publication.DataWriter
(p. 557) to be deleted.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
or
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
See also:
com.rti.dds.domain.DomainParticipant.get implicit publisher
(p. 730)
8.64.3.1
694
Class Documentation
MT Safety:
UNSAFE. If com.rti.dds.subscription.Subscriber.DATAREADER QOS DEFAULT (p. 196) is used for the qos parameter, it is not safe to
create the datareader while another thread may be simultaneously calling
com.rti.dds.domain.DomainParticipant.set default datareader qos (p. 679).
Parameters:
topic ( p. 359) <<in>> ( p. 279) The com.rti.dds.topic.TopicDescription
(p. 1561) that the com.rti.dds.subscription.DataReader (p. 487)
will be associated with. Cannot be NULL.
qos <<in>>
( p. 279)
The
qos
of
the
com.rti.dds.subscription.DataReader (p. 487).
The special
value com.rti.dds.subscription.Subscriber.DATAREADER QOS DEFAULT (p. 196) can be used to indicate that the
com.rti.dds.subscription.DataReader (p. 487) should be created
with the default com.rti.dds.subscription.DataReaderQos
(p. 536) set in the implicit com.rti.dds.subscription.Subscriber
(p. 1476).
If
com.rti.dds.topic.TopicDescription
(p. 1561) is of type com.rti.dds.topic.Topic (p. 1545) or
com.rti.dds.topic.ContentFilteredTopic (p. 471), the special
value com.rti.dds.subscription.Subscriber.DATAREADER QOS USE TOPIC QOS (p. 197) can be used to indicate
that
the
com.rti.dds.subscription.DataReader
(p. 487) should be created with the combination of the default
com.rti.dds.subscription.DataReaderQos
(p. 536)
set on the implicit com.rti.dds.subscription.Subscriber
(p. 1476) and the com.rti.dds.topic.TopicQos (p. 1566) (in
the
case
of
a
com.rti.dds.topic.ContentFilteredTopic
(p. 471),
the
com.rti.dds.topic.TopicQos
(p. 1566)
of
the
related
com.rti.dds.topic.Topic
(p. 1545)).
if
com.rti.dds.subscription.Subscriber.DATAREADER QOS USE TOPIC QOS (p. 197) is used, topic (p. 359) cannot be a
com.rti.dds.topic.MultiTopic (p. 1190). Cannot be NULL.
listener <<in>>
( p. 279)
The
listener
com.rti.dds.subscription.DataReader (p. 487).
of
the
695
See also:
com.rti.ndds.example.FooDataReader (p. 979)
Specifying QoS on entities (p. 100) for information on setting QoS before
entity creation
com.rti.dds.subscription.DataReaderQos (p. 536) for rules on consistency among QoS
com.rti.dds.domain.DomainParticipant.create datareader with profile (p. 695)
com.rti.dds.domain.DomainParticipant.get default datareader qos (p. 675)
com.rti.dds.domain.DomainParticipant.get implicit subscriber
(p. 731)
com.rti.dds.topic.Topic.set qos (p. 1547)
com.rti.dds.subscription.DataReader.set listener (p. 497)
8.64.3.2
696
Class Documentation
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default library (see com.rti.dds.domain.DomainParticipant.set default library (p. 707)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see com.rti.dds.domain.DomainParticipant.set default profile (p. 708)).
listener <<in>>
( p. 279)
The
listener
com.rti.dds.subscription.DataReader (p. 487).
of
the
8.64.3.3
697
(p. 1313) or com.rti.dds.subscription.QueryCondition (p. 1311) objects that are attached to the com.rti.dds.subscription.DataReader
(p. 487), or if there are outstanding loans on samples (as a result of
a call to read(), take(), or one of the variants thereof), the operation fails with the error com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
Postcondition:
Listener installed on the com.rti.dds.subscription.DataReader (p. 487)
will not be called after this method completes successfully.
Parameters:
a datareader <<in>> ( p. 279) The com.rti.dds.subscription.DataReader
(p. 487) to be deleted.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
or
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
See also:
com.rti.dds.domain.DomainParticipant.get implicit subscriber
(p. 731)
8.64.3.4
Creates a com.rti.dds.topic.Topic (p. 1545) with the desired QoS policies and
attaches to it the specified com.rti.dds.topic.TopicListener (p. 1564).
Precondition:
The application is not allowed to create two com.rti.dds.topic.Topic
(p. 1545) objects with the same topic name attached to the same
com.rti.dds.domain.DomainParticipant (p. 654). If the application attempts this, this method will fail and return a NULL topic (p. 359).
The specified QoS policies must be consistent, or the operation will fail and
no com.rti.dds.topic.Topic (p. 1545) will be created.
Prior to creating a com.rti.dds.topic.Topic (p. 1545), the type must
have been registered with RTI Connext.
This is done using the
com.rti.ndds.example.FooTypeSupport.register type (p. 1037) operation on a derived class of the com.rti.dds.topic.TypeSupport
(p. 1665) interface.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
698
Class Documentation
MT Safety:
UNSAFE. It is not safe to create a topic (p. 359) while another
thread is trying to lookup that topic (p. 359) description with
com.rti.dds.domain.DomainParticipant.lookup topicdescription
(p. 713).
MT Safety:
UNSAFE.
If
com.rti.dds.domain.DomainParticipant.TOPIC QOS DEFAULT (p. 152) is used for qos, it is not safe to create
the topic (p. 359) while another thread may be simultaneously calling com.rti.dds.domain.DomainParticipant.set default topic qos
(p. 667).
Parameters:
topic name <<in>> ( p. 279) Name for the new topic (p. 359), must not
exceed 255 characters. Cannot be NULL.
type name <<in>> ( p. 279) The type to which the new
com.rti.dds.topic.Topic (p. 1545) will be bound.
Cannot be
NULL.
qos <<in>> ( p. 279) QoS to be used for creating the new
com.rti.dds.topic.Topic (p. 1545).
The special value
com.rti.dds.domain.DomainParticipant.TOPIC QOS DEFAULT (p. 152) can be used to indicate that the
com.rti.dds.topic.Topic (p. 1545) should be created with
the default com.rti.dds.topic.TopicQos (p. 1566) set in the
com.rti.dds.domain.DomainParticipant (p. 654).
Cannot be
NULL.
listener <<in>> ( p. 279). Listener to be attached to the newly created
com.rti.dds.topic.Topic (p. 1545).
mask <<in>> ( p. 279). Changes of communication status to be invoked
on the listener. See com.rti.dds.infrastructure.StatusMask.
Returns:
newly created topic (p. 359), or NULL on failure
See also:
Specifying QoS on entities (p. 100) for information on setting QoS before
entity creation
com.rti.dds.topic.TopicQos (p. 1566) for rules on consistency among
QoS
com.rti.dds.domain.DomainParticipant.TOPIC QOS DEFAULT
(p. 152)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
699
8.64.3.5
700
Class Documentation
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default library (see com.rti.dds.domain.DomainParticipant.set default library (p. 707)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see com.rti.dds.domain.DomainParticipant.set default profile (p. 708)).
listener <<in>> ( p. 279). Listener to be attached to the newly created
com.rti.dds.topic.Topic (p. 1545).
mask <<in>> ( p. 279). Changes of communication status to be invoked
on the listener. See com.rti.dds.infrastructure.StatusMask.
Returns:
newly created topic (p. 359), or NULL on failure
See also:
Specifying QoS on entities (p. 100) for information on setting QoS before
entity creation
com.rti.dds.topic.TopicQos (p. 1566) for rules on consistency among
QoS
com.rti.dds.domain.DomainParticipant.create topic (p. 697)
com.rti.dds.domain.DomainParticipant.get default topic qos
(p. 667)
com.rti.dds.topic.Topic.set listener (p. 1549)
8.64.3.6
701
8.64.3.7
702
Class Documentation
This function will create a content filter using the builtin (p. 330) SQL filter
which implements a superset of the DDS specification. This filter requires
that all IDL types have been compiled with typecodes. If this precondition
is not met, this operation returns NULL. Do not use rtiddsgens -notypecode
option if you want to use the builtin (p. 330) SQL filter.
Parameters:
name <<in>> ( p. 279) Name for the new content filtered topic (p. 359),
must not exceed 255 characters. Cannot be NULL.
related topic <<in>> ( p. 279) com.rti.dds.topic.Topic (p. 1545) to
be filtered. Cannot be NULL.
filter expression <<in>> ( p. 279) Cannot be NULL
expression parameters <<in>> ( p. 279) Cannot be NULL.An empty
sequence must be used if the filter expression does not contain any
parameters. Length of sequence cannot be greater than 100.
Returns:
newly created com.rti.dds.topic.ContentFilteredTopic (p. 471), or
NULL on failure
8.64.3.8
ContentFilteredTopic create contentfilteredtopic with filter (String name, Topic related topic, String
filter expression, StringSeq expression parameters,
String filter name)
703
Builtin filter names are com.rti.dds.domain.DomainParticipant.SQLFILTER NAME (p. 155) and com.rti.dds.domain.DomainParticipant.STRINGMATCHFILTER NAME (p. 155)
Returns:
newly created com.rti.dds.topic.ContentFilteredTopic (p. 471), or
NULL on failure
8.64.3.9
8.64.3.10
[Not supported (optional)] Creates a MultiTopic that can be used to subscribe to multiple topics and combine/filter the received data into a resulting
type.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
704
Class Documentation
The resulting type is specified by the type name argument. The list of topics
and the logic used to combine, filter, and rearrange the information from each
com.rti.dds.topic.Topic (p. 1545) are specified using the subscription expression and expression parameters arguments.
Queries and Filters Syntax (p. 286) describes the syntax of subscription expression and expression parameters.
Precondition:
The
application
is
not
allowed
to
create
two
com.rti.dds.topic.TopicDescription (p. 1561) objects with the same
name attached to the same com.rti.dds.domain.DomainParticipant
(p. 654). If the application attempts this, this method will fail and return
NULL.
Prior to creating a com.rti.dds.topic.MultiTopic (p. 1190), the type
must have been registered with RTI Connext. This is done using
the com.rti.ndds.example.FooTypeSupport.register type (p. 1037)
operation on a derived class of the com.rti.dds.topic.TypeSupport
(p. 1665) interface. Otherwise, this method will return NULL.
Parameters:
name <<in>>
( p. 279)
Name
of
the
newly
create
com.rti.dds.topic.MultiTopic (p. 1190). Cannot be NULL.
type name <<in>> ( p. 279) Cannot be NULL.
subscription expression <<in>> ( p. 279) Cannot be NULL.
expression parameters <<in>> ( p. 279) Cannot be NULL.
Returns:
NULL
8.64.3.11
705
8.64.3.12
706
Class Documentation
See also:
com.rti.dds.domain.DomainParticipantQos (p. 773) for rules on consistency among QoS
set qos (abstract) (p. 932)
8.64.3.13
<<eXtension>> ( p. 278) Change the QoS of this domain (p. 328) participant
using the input XML QoS profile.
The com.rti.dds.domain.DomainParticipantQos.user data (p. 775) and
com.rti.dds.domain.DomainParticipantQos.entity factory (p. 775) can
be changed. The other policies are immutable.
Parameters:
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default library (see com.rti.dds.domain.DomainParticipantFactory.set default library (p. 756)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see com.rti.dds.domain.DomainParticipantFactory.set default profile (p. 757)).
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE IMMUTABLE POLICY (p. 1358) if immutable policy is changed, or
com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359) if policies are inconsistent
See also:
com.rti.dds.domain.DomainParticipantQos (p. 773) for rules on consistency among QoS
8.64.3.14
707
Parameters:
qos <<inout>> ( p. 279) QoS to be filled up. Cannot be NULL.
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
get qos (abstract) (p. 933)
8.64.3.15
8.64.3.16
library
for
This method specifies the library that will be used as the default the next time
a default library is needed during a call to one of this DomainParticipants
operations.
Any API requiring a library name as a parameter can use null to refer to the
default library.
If the default library is not set, the com.rti.dds.domain.DomainParticipant
(p. 654) inherits the default from the com.rti.dds.domain.DomainParticipantFactory
(p. 742)
(see
com.rti.dds.domain.DomainParticipantFactory.set default library (p. 756)).
Parameters:
library name <<in>> ( p. 279) Library name. If library name is null
any previous default is unset.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
708
Class Documentation
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.domain.DomainParticipant.get default library
(p. 707)
8.64.3.17
8.64.3.18
profile
for
This method specifies the profile that will be used as the default the
next time a default DomainParticipant (p. 654) profile is needed during a call to one of this DomainParticipants operations. When calling a
com.rti.dds.domain.DomainParticipant (p. 654) method that requires a
profile name parameter, you can use NULL to refer to the default profile.
(This same information applies to setting a default library.)
If the default profile is not set, the com.rti.dds.domain.DomainParticipant
(p. 654) inherits the default from the com.rti.dds.domain.DomainParticipantFactory
(p. 742)
(see
com.rti.dds.domain.DomainParticipantFactory.set default profile (p. 757)).
This method does not set the default QoS for entities created by the
com.rti.dds.domain.DomainParticipant (p. 654); for this functionality, use
the methods set default <entity> qos with profile (you may pass in NULL after
having called set default profile() (p. 708)).
This
method
does
not
set
created
DomainParticipants;
the
for
default
QoS
for
this
functionality,
newly
use
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
709
8.64.3.19
<<eXtension>> ( p. 278) Gets the library where the default XML QoS profile
is contained for a com.rti.dds.domain.DomainParticipant (p. 654).
The
default
profile
library
is
automatically
set
when
(p. 708)
com.rti.dds.domain.DomainParticipant.set default profile
is called.
This library can be different than the com.rti.dds.domain.DomainParticipant
(p. 654) default library (see com.rti.dds.domain.DomainParticipant.get default library (p. 707)).
Returns:
The default profile library or null if the default profile was not set.
See also:
com.rti.dds.domain.DomainParticipant.set default profile (p. 708)
8.64.3.20
710
Class Documentation
mask <<in>> ( p. 279) Changes of communication status to be invoked
on the listener. See com.rti.dds.infrastructure.StatusMask.
MT Safety:
Unsafe. This method is not synchronized with the listener callbacks, so it
is possible to set a new listener on a participant when the old listener is in
a callback.
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
set listener (abstract) (p. 934)
8.64.3.21
8.64.3.22
711
Returns:
One
of
the
Standard
Return
Codes
(p. 108)
or
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES
(p. 1362)
8.64.3.23
8.64.3.24
712
Class Documentation
Returns:
The built-in com.rti.dds.subscription.Subscriber (p. 1476) singleton.
See also:
builtin.SubscriptionBuiltinTopicData
builtin.PublicationBuiltinTopicData
builtin.ParticipantBuiltinTopicData (p. 1211)
builtin.TopicBuiltinTopicData
8.64.3.25
8.64.3.26
713
find topic() (p. 712) is useful when multiple threads are concurrently
creating and looking up topics.
In that case, one thread can
call find topic() (p. 712) and, if another thread has not yet created the topic (p. 359) being looked up, it can wait for some period of time for it to do so.
In almost all other cases, it is more
straightforward to call com.rti.dds.domain.DomainParticipant.lookup topicdescription (p. 713).
The com.rti.dds.domain.DomainParticipant (p. 654) must already be enabled.
obtained
by
Note:
Each
com.rti.dds.topic.Topic
(p. 1545)
com.rti.dds.domain.DomainParticipant.find topic (p. 712) must also be
deleted by means of com.rti.dds.domain.DomainParticipant.delete topic (p. 700). If com.rti.dds.topic.Topic (p. 1545) is obtained multiple
times by means of com.rti.dds.domain.DomainParticipant.find topic (p. 712) or com.rti.dds.domain.DomainParticipant.create topic (p. 697), it must also be deleted that same number of times using
com.rti.dds.domain.DomainParticipant.delete topic (p. 700).
Parameters:
topic name <<in>> ( p. 279) Name of the com.rti.dds.topic.Topic
(p. 1545) to search for. Cannot be NULL.
timeout <<in>>
( p. 279)
The
time
to
wait
if
the
com.rti.dds.topic.Topic (p. 1545) does not exist already. Cannot
be NULL.
Returns:
the topic (p. 359), if it exists, or NULL
8.64.3.27
714
Class Documentation
8.64.3.28
Instructs
RTI
Connext
to
locally
ignore
com.rti.dds.domain.DomainParticipant (p. 654).
remote
From the time of this call onwards, RTI Connext will locally behave as if
the remote participant did not exist. This means it will ignore any topic
(p. 359), publication (p. 349), or subscription (p. 353) that originates on that
com.rti.dds.domain.DomainParticipant (p. 654).
There is no way to reverse this operation.
This operation can be used in conjunction with the discovery of remote
participants offered by means of the builtin.ParticipantBuiltinTopicData
(p. 1211) to provide access control.
Application
data
can
be
associated
with
a
com.rti.dds.domain.DomainParticipant (p. 654) by means of the USER DATA (p. 132) policy. This application data is propagated as a field in the
built-in topic (p. 359) and can be used by an application to implement its own
access control policy.
The
com.rti.dds.domain.DomainParticipant
(p. 654)
to
ignore is identified by the handle argument.
This handle is the
one
that
appears
in
the
com.rti.dds.subscription.SampleInfo
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
715
(p. 1398) retrieved when reading the data-samples available for the
to
the
built-in
com.rti.dds.subscription.DataReader
(p. 487)
com.rti.dds.domain.DomainParticipant (p. 654) topic (p. 359).
The
built-in com.rti.dds.subscription.DataReader (p. 487) is read with
the same com.rti.ndds.example.FooDataReader.read (p. 981) and
com.rti.ndds.example.FooDataReader.take (p. 983) operations used for
any com.rti.dds.subscription.DataReader (p. 487).
Parameters:
handle <<in>> ( p. 279) com.rti.dds.infrastructure.InstanceHandle t (p. 1055) of the com.rti.dds.domain.DomainParticipant
(p. 654) to be ignored. Cannot be NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362), com.rti.dds.infrastructure.RETCODE NOT ENABLED (p. 1361)
See also:
builtin.ParticipantBuiltinTopicData (p. 1211)
builtin.ParticipantBuiltinTopicDataTypeSupport.PARTICIPANT TOPIC NAME (p. 1216)
com.rti.dds.domain.DomainParticipant.get builtin subscriber
(p. 711)
8.64.3.29
716
Class Documentation
Parameters:
handle <<in>> ( p. 279) Handle of the com.rti.dds.topic.Topic
(p. 1545) to be ignored. Cannot be NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES
(p. 1362)
or
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361)
See also:
builtin.TopicBuiltinTopicData
builtin.TopicBuiltinTopicDataTypeSupport.TOPIC TOPIC NAME
com.rti.dds.domain.DomainParticipant.get builtin subscriber
(p. 711)
8.64.3.30
717
Parameters:
handle <<in>>
( p. 279)
Handle
of
the
com.rti.dds.publication.DataWriter (p. 557) to be ignored.
Cannot be NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES
(p. 1362)
or
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361)
See also:
builtin.PublicationBuiltinTopicData
builtin.PublicationBuiltinTopicDataTypeSupport.PUBLICATION TOPIC NAME
com.rti.dds.domain.DomainParticipant.get builtin subscriber
(p. 711)
8.64.3.31
718
Class Documentation
Parameters:
handle <<in>>
( p. 279)
Handle
of
the
com.rti.dds.subscription.DataReader (p. 487) to be ignored.
Cannot be NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES
(p. 1362)
or
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361)
See also:
builtin.SubscriptionBuiltinTopicData
builtin.SubscriptionBuiltinTopicDataTypeSupport.SUBSCRIPTION TOPIC NAME
com.rti.dds.domain.DomainParticipant.get builtin subscriber
(p. 711)
8.64.3.32
8.64.3.33
719
or
See also:
com.rti.dds.infrastructure.LivelinessQosPolicy (p. 1140)
8.64.3.34
Delete all the entities that were created by means of the create operations on
the com.rti.dds.domain.DomainParticipant (p. 654).
This operation deletes all contained com.rti.dds.publication.Publisher
(including
an
implicit
Publisher,
if
one
ex(p. 1262)
ists),
com.rti.dds.subscription.Subscriber
(p. 1476)
(including
implicit
subscriber),
com.rti.dds.topic.Topic
(p. 1545),
com.rti.dds.topic.ContentFilteredTopic
(p. 471),
and
com.rti.dds.topic.MultiTopic (p. 1190) objects.
Prior to deleting each contained entity, this operation will recursively call the corresponding delete contained entities operation
on each contained entity (if applicable).
This pattern is applied
recursively.
In this manner the operation delete contained entities() (p. 719) on the com.rti.dds.domain.DomainParticipant
(p. 654) will end up deleting all the entities recursively contained
in
the
com.rti.dds.domain.DomainParticipant
(p. 654),
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
720
Class Documentation
that
is
also
the
com.rti.dds.publication.DataWriter
(p. 557),
as
well
as
com.rti.dds.subscription.DataReader
(p. 487),
the
com.rti.dds.subscription.QueryCondition
(p. 1311)
and
com.rti.dds.subscription.ReadCondition (p. 1313) objects belonging
to the contained com.rti.dds.subscription.DataReader (p. 487).
The operation will fail with com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363) if any of the contained entities is
in a state where it cannot be deleted.
If delete contained entities() (p. 719) completes successfully, the application
may delete the com.rti.dds.domain.DomainParticipant (p. 654) knowing
that it has no contained entities.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
8.64.3.35
721
If remote participants described by the given peer description are discovered, the distributed application is configured with asymmetric peer
lists, and com.rti.dds.infrastructure.DiscoveryQosPolicy.accept unknown peers (p. 652) is set to com.rti.dds.infrastructure.true. Thus,
this com.rti.dds.domain.DomainParticipant (p. 654) may actually
discover more peers than are described in the given peer description.
To be informed of the exact remote participants that are discovered, regardless of which peers this com.rti.dds.domain.DomainParticipant
(p. 654) attempts to discover, use the built-in participant topic (p. 359):
builtin.ParticipantBuiltinTopicDataTypeSupport.PARTICIPANT TOPIC NAME (p. 1216).
To
remove
specific
peer
locators,
you
may
use
com.rti.dds.domain.DomainParticipant.remove peer (p. 722).
If a
peer is removed, the add peer operation will add it back to the list of peers.
To stop communicating with a peer com.rti.dds.domain.DomainParticipant
(p. 654) that has been discovered, use com.rti.dds.domain.DomainParticipant.ignore participant (p. 714).
Adding a peer description with this method has no effect on
the
com.rti.dds.infrastructure.DiscoveryQosPolicy.initial peers
(p. 651)
that
may
be
subsequently
retrieved
with
com.rti.dds.domain.DomainParticipant.get qos()
(p. 706)
(because
com.rti.dds.infrastructure.DiscoveryQosPolicy (p. 649) is immutable).
Parameters:
peer desc string <<in>> ( p. 279) New peer descriptor to be added.
The format is specified in Peer Descriptor Format (p. 58). Cannot
be NULL.
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
Peer Descriptor Format (p. 58)
com.rti.dds.infrastructure.DiscoveryQosPolicy.initial peers
(p. 651)
builtin.ParticipantBuiltinTopicDataTypeSupport.PARTICIPANT TOPIC NAME (p. 1216)
com.rti.dds.domain.DomainParticipant.get builtin subscriber
(p. 711)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
722
Class Documentation
8.64.3.36
<<eXtension>> ( p. 278) Remove one or more peer participants from the list
of peers with which this com.rti.dds.domain.DomainParticipant (p. 654)
will try to communicate.
This
method
may
be
called
any
time
after
com.rti.dds.domain.DomainParticipant (p. 654) has been enabled
this
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
723
8.64.3.38
( p. 279)
discovered
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361)
8.64.3.39
or
724
Class Documentation
This
operation
retrieves
information
on
a
com.rti.dds.domain.DomainParticipant (p. 654) that has been discovered
on the network. The participant must be in the same domain (p. 328) as the
participant on which this operation is invoked and must not have been ignored by means of the com.rti.dds.domain.DomainParticipant.ignore participant (p. 714) operation.
The participant handle must correspond to such a DomainParticipant
(p. 654). Otherwise, the operation will fail with PRECONDITION NOT MET.
Use
the
operation
com.rti.dds.domain.DomainParticipant.get discovered participants
(p. 723)
to
find
the
com.rti.dds.domain.DomainParticipant (p. 654) s that are currently
discovered.
Note:
This
operation
does
not
retrieve
the
builtin.ParticipantBuiltinTopicData.property
(p. 1212).
This
information
is
available
through
com.rti.dds.subscription.DataReaderListener.on data available() (p. 520) (if a reader listener is installed on the
builtin.ParticipantBuiltinTopicDataDataReader (p. 1214)).
Parameters:
participant data <<inout>> ( p. 279) builtin.ParticipantBuiltinTopicData
(p. 1211)
to
be
filled
with
the
specified
com.rti.dds.domain.DomainParticipant (p. 654) s data.
participant handle <<in>> ( p. 279) com.rti.dds.infrastructure.InstanceHandle t (p. 1055) of com.rti.dds.domain.DomainParticipant (p. 654).
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET
(p. 1363)
or
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361)
See also:
builtin.ParticipantBuiltinTopicData (p. 1211)
com.rti.dds.domain.DomainParticipant.get discovered participants (p. 723)
8.64.3.40
725
8.64.3.41
or
Returns
builtin.TopicBuiltinTopicData
com.rti.dds.topic.Topic (p. 1545).
for
the
specified
726
Class Documentation
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET
(p. 1363)
or
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361)
See also:
builtin.TopicBuiltinTopicData
com.rti.dds.domain.DomainParticipant.get discovered topics
(p. 724)
8.64.3.42
Completes successfully with com.rti.dds.infrastructure.true if the referenced com.rti.dds.infrastructure.Entity (p. 931) is contained by the
com.rti.dds.domain.DomainParticipant (p. 654).
This operation checks whether or not the given a handle represents
an
com.rti.dds.infrastructure.Entity
(p. 931)
that
was
created
from
the
com.rti.dds.domain.DomainParticipant
(p. 654).
The containment applies recursively.
That is, it applies
both
to
entities
(com.rti.dds.topic.TopicDescription
(p. 1561),
com.rti.dds.publication.Publisher
(p. 1262),
or
com.rti.dds.subscription.Subscriber (p. 1476)) created directly using
the com.rti.dds.domain.DomainParticipant (p. 654) as well as entities
created using a contained com.rti.dds.publication.Publisher (p. 1262), or
com.rti.dds.subscription.Subscriber (p. 1476) as the factory, and so forth.
The instance handle for an com.rti.dds.infrastructure.Entity (p. 931)
may be obtained from built-in topic (p. 359) data, from various statuses,
or from the operation com.rti.dds.infrastructure.Entity.get instance handle (p. 937).
Parameters:
a handle <<in>> ( p. 279) com.rti.dds.infrastructure.InstanceHandle t (p. 1055) of the com.rti.dds.infrastructure.Entity (p. 931) to be
checked.
Returns:
com.rti.dds.infrastructure.true if com.rti.dds.infrastructure.Entity
(p. 931) is contained by the com.rti.dds.domain.DomainParticipant
(p. 654), or com.rti.dds.infrastructure.false otherwise.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
727
8.64.3.44
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
728
Class Documentation
8.64.3.45
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
729
8.64.3.47
730
Class Documentation
Parameters:
filter name <<in>> ( p. 279) Name of the filter. Cannot be NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
or
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363)
See also:
com.rti.dds.domain.DomainParticipant.register contentfilter
(p. 728)
8.64.3.48
Returns
the
implicit
<<eXtension>>
( p. 278)
com.rti.dds.publication.Publisher (p. 1262).
If an implicit Publisher
does not already exist, this creates one.
There can only be one implicit Publisher per DomainParticipant (p. 654).
The implicit Publisher is created with com.rti.dds.domain.DomainParticipant.PUBLISHER QOS DEFAULT (p. 153) and no Listener.
This
implicit
Publisher
will
be
deleted
automatically
when
the
following
methods
are
called:
com.rti.dds.domain.DomainParticipant.delete contained entities
(p. 719), or com.rti.dds.domain.DomainParticipant.delete publisher
(p. 685) with the implicit publisher as a parameter. Additionally, when a
DomainParticipant (p. 654) is deleted, if there are no attached DataWriters
that belong to the implicit Publisher, the implicit Publisher will be implicitly
deleted.
MT Safety:
UNSAFE.
It
is
not
safe
to
create
an
implicit
Publisher while another thread may be simultaneously calling
com.rti.dds.domain.DomainParticipant.set default publisher qos
(p. 671).
Returns:
The implicit publisher
See also:
com.rti.dds.domain.DomainParticipant.PUBLISHER QOS DEFAULT (p. 153)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
731
8.64.3.49
<<eXtension>>
( p. 278)
Returns
the
implicit
com.rti.dds.subscription.Subscriber (p. 1476). If an implicit Subscriber
does not already exist, this creates one.
There can only be one implicit Subscriber per DomainParticipant (p. 654).
The implicit Subscriber is created with com.rti.dds.domain.DomainParticipant.SUBSCRIBER QOS DEFAULT (p. 153) and no Listener.
This
implicit
Subscriber
will
be
deleted
automatically
when
the
following
methods
are
called:
com.rti.dds.domain.DomainParticipant.delete contained entities
(p. 719), or com.rti.dds.domain.DomainParticipant.delete subscriber
(p. 688) with the subscriber as a parameter. Additionally, when a DomainParticipant (p. 654) is deleted, if there are no attached DataReaders that
belong to the implicit Subscriber, the implicit Subscriber will be implicitly
deleted.
MT Safety:
UNSAFE.
it
is
not
safe
to
create
the
implicit
subscriber while another thread may be simultaneously calling
com.rti.dds.domain.DomainParticipant.set default subscriber qos (p. 676).
Returns:
The implicit subscriber
See also:
com.rti.dds.domain.DomainParticipant.PUBLISHER QOS DEFAULT (p. 153)
com.rti.dds.domain.DomainParticipant.create subscriber (p. 686)
8.64.3.50
732
Class Documentation
Every com.rti.dds.publication.Publisher (p. 1262) in the system has an entity name which is configured and stored in the GROUP DATA policy. The use
of the GROUP DATA to store the entity name is a temporary situation while
the feature is in experimental state.
This operation retrieves a com.rti.dds.publication.Publisher (p. 1262)
within the com.rti.dds.domain.DomainParticipant (p. 654) given the entitys name. If there are several com.rti.dds.publication.Publisher (p. 1262)
with the same name within the com.rti.dds.domain.DomainParticipant
(p. 654), this function returns the first matching occurrence.
Parameters:
publisher name <<in>>
( p. 279)
Entity
name
com.rti.dds.publication.Publisher (p. 1262).
of
the
Returns:
The first com.rti.dds.publication.Publisher (p. 1262) found with the
specified name or NULL if it is not found.
See also:
com.rti.dds.domain.DomainParticipant.lookup datawriter by name exp (p. 733)
8.64.3.51
of
the
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
733
Returns:
The first com.rti.dds.subscription.Subscriber (p. 1476) found with the
specified name or NULL if it is not found.
See also:
com.rti.dds.domain.DomainParticipant.lookup datareader by name exp (p. 734)
8.64.3.52
734
Class Documentation
8.64.3.53
735
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
736
Class Documentation
8.65
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
737
8.65.1
Detailed Description
8.65.2
8.65.2.1
( p. 279)
(p. 1545) that
Locally
triggers
the
created
listener
738
Class Documentation
8.65.2.2
Locally
(p. 557)
that
created
triggers
status <<out>> ( p. 279) Current deadline missed status of locally created com.rti.dds.publication.DataWriter (p. 557)
Implements DataWriterListener (p. 587).
8.65.2.3
Locally
(p. 557)
that
created
triggers
status <<out>> ( p. 279) Current incompatible qos status of locally created com.rti.dds.publication.DataWriter (p. 557)
Implements DataWriterListener (p. 588).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
739
Locally
(p. 557)
that
created
triggers
Locally
(p. 557)
that
created
triggers
740
Class Documentation
8.65.2.6
<<eXtension>> ( p. 278) A change has occurred in the writers cache of unacknowledged samples.
Parameters:
writer <<out>>
( p. 279)
Locally
created
com.rti.dds.publication.DataWriter (p. 557) that triggers
the listener callback
status <<out>> ( p. 279) Current reliable writer cache changed status of
locally created com.rti.dds.publication.DataWriter (p. 557)
Implements DataWriterListener (p. 590).
8.65.2.8
Locally
(p. 557)
that
created
triggers
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
741
742
Class Documentation
8.66
DomainParticipantFactory
ence
Class
Refer-
<<singleton>> ( p. 279) <<interface>> ( p. 279) Allows creation and destruction of com.rti.dds.domain.DomainParticipant (p. 654) objects.
abstract
void
participant)
delete participant
(DomainParticipant
a-
abstract void set default participant qos with profile (String library name, String profile name)
<<eXtension>>
(p. 278)
Sets
the
default
com.rti.dds.domain.DomainParticipantQos
( p. 773)
values
for
this domain ( p. 328) participant factory based on the input XML QoS
profile.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
743
for
abstract void set default profile (String library name, String profile name)
<<eXtension>> (p. 278) Sets the default XML profile
com.rti.dds.domain.DomainParticipantFactory ( p. 742).
for
abstract void get participant qos from profile (DomainParticipantQos qos, String library name, String profile name)
<<eXtension>> (p. 278) Gets the com.rti.dds.domain.DomainParticipantQos
( p. 773) values associated with the input XML QoS profile.
744
Class Documentation
<<eXtension>> (p. 278) Gets the com.rti.dds.subscription.SubscriberQos
( p. 1505) values associated with the input XML QoS profile.
abstract
void
get datawriter qos from profile w topic name
(DataWriterQos qos, String library name, String profile name, String
topic name)
<<eXtension>> (p. 278) Gets the com.rti.dds.publication.DataWriterQos
( p. 610) values associated with the input XML QoS profile while applying
topic ( p. 359) filters to the input topic ( p. 359) name.
abstract
void
get datareader qos from profile w topic name
(DataReaderQos qos, String library name, String profile name, String
topic name)
<<eXtension>> (p. 278) Gets the com.rti.dds.subscription.DataReaderQos
( p. 536) values associated with the input XML QoS profile while applying
topic ( p. 359) filters to the input topic ( p. 359) name.
abstract void get topic qos from profile (TopicQos qos, String library name, String profile name)
<<eXtension>> (p. 278) Gets the com.rti.dds.topic.TopicQos
( p. 1566) values associated with the input XML QoS profile.
abstract void get topic qos from profile w topic name (TopicQos
qos, String library name, String profile name, String topic name)
<<eXtension>> (p. 278) Gets the com.rti.dds.topic.TopicQos
( p. 1566) values associated with the input XML QoS profile while applying
topic ( p. 359) filters to the input topic ( p. 359) name.
abstract void get qos profiles (StringSeq profile names, String library name)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
745
<<eXtension>> (p. 278) Gets the names of all XML QoS profiles associated with the input XML QoS profile library.
(TypeSupport
type -
<<experimental>>
(p. 278)
<<eXtension>>
(p. 278)
Registers
a
com.rti.dds.topic.TypeSupport
( p. 1665)
with
the
com.rti.dds.domain.DomainParticipantFactory ( p. 742) to enable
automatic registration if the corresponding type, should it be needed by a
com.rti.dds.domain.DomainParticipant ( p. 654).
DomainParticipantQos
PARTICIPANT QOS -
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
746
Class Documentation
Special value for creating a DomainParticipant ( p. 654) with default QoS.
8.66.1
Detailed Description
<<singleton>> ( p. 279) <<interface>> ( p. 279) Allows creation and destruction of com.rti.dds.domain.DomainParticipant (p. 654) objects.
The sole purpose of this class is to allow the creation and destruction of
com.rti.dds.domain.DomainParticipant (p. 654) objects. This class itself
is a <<singleton>> ( p. 279), and accessed via the get instance() (p. 747)
method, and destroyed with finalize instance() (p. 747) method.
A single application can participate in multiple domains by instantiating multiple com.rti.dds.domain.DomainParticipant (p. 654) objects.
An application may even instantiate multiple participants in the same domain
(p. 328). Participants in the same domain (p. 328) exchange data in the same
way regardless of whether they are in the same application or different applications or on the same node or different nodes; their location is transparent.
There are two important caveats:
When there are multiple participants on the same node (in the same
application or different applications) in the same domain (p. 328),
the application(s) must make sure that the participants do not try
to bind to the same port numbers. You must disambiguate between
the participants by setting a participant ID for each participant
(com.rti.dds.infrastructure.WireProtocolQosPolicy.participant id (p. 1728)). The port numbers used by a participant are calculated
based on both the participant index and the domain (p. 328) ID, so if
all participants on the same node have different participant indexes, they
can coexist in the same domain (p. 328).
You cannot mix entities from different participants. For example, you
cannot delete a topic (p. 359) on a different participant than you created
it from, and you cannot ask a subscriber to create a reader for a topic
(p. 359) created from a participant different than the subscribers own participant. (Note that it is permissable for an application built on top of
RTI Connext to know about entities from different participants. For example, an application could keep references to a reader from one domain
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
747
(p. 328) and a writer from another and then bridge the domains by writing
the data received in the reader callback.)
See also:
com.rti.dds.domain.DomainParticipant (p. 654)
8.66.2
8.66.2.1
com.rti.dds.domain.DomainParticipantFactory
See also:
com.rti.dds.domain.DomainParticipantFactory.TheParticipantFactory
(p. 148)
8.66.2.2
748
Class Documentation
Precondition:
All participants created from the factory have been deleted.
Postcondition:
All resources belonging to the factory have been reclaimed. Another
call to com.rti.dds.domain.DomainParticipantFactory.get instance
(p. 747) will return a new lifecycle of the singleton.
MT Safety:
On
non-Linux
systems:
UNSAFE
for
multiple
threads
to
simultaneously
make
the
FIRST
call
to
either
com.rti.dds.domain.DomainParticipantFactory.get instance()
(p. 747) or com.rti.dds.domain.DomainParticipantFactory.finalize instance() (p. 747). Subsequent calls are thread safe. (On Linux systems,
these calls are thread safe.)
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363)
8.66.2.3
749
Parameters:
domainId <<in>> ( p. 279) ID of the domain (p. 328) that the application intends to join. [range] [>=0], and does not violate guidelines
stated in com.rti.dds.infrastructure.RtpsWellKnownPorts t
(p. 1390).
qos <<in>> ( p. 279) the DomainParticipants QoS. The special value
com.rti.dds.domain.DomainParticipantFactory.PARTICIPANT QOS DEFAULT
(p. 149)
can
be
used
to
indicate
that
the
com.rti.dds.domain.DomainParticipant
should
be
created
with
the
default
(p. 654)
com.rti.dds.domain.DomainParticipantQos (p. 773) set in
the com.rti.dds.domain.DomainParticipantFactory (p. 742).
Cannot be NULL.
listener <<in>> ( p. 279) the domain (p. 328) participants listener.
mask <<in>> ( p. 279). Changes of communication status to be invoked
on the listener. See com.rti.dds.infrastructure.StatusMask.
Returns:
domain (p. 328) participant or NULL on failure
See also:
Specifying QoS on entities (p. 100) for information on setting QoS before
entity creation
com.rti.dds.domain.DomainParticipantQos (p. 773) for rules on consistency among QoS
com.rti.dds.domain.DomainParticipantFactory.PARTICIPANT QOS DEFAULT (p. 149)
NDDS DISCOVERY PEERS (p. 57)
com.rti.dds.domain.DomainParticipantFactory.create participant with profile() (p. 764)
com.rti.dds.domain.DomainParticipantFactory.get default participant qos() (p. 750)
com.rti.dds.domain.DomainParticipant.set listener() (p. 709)
8.66.2.4
750
Class Documentation
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
Postcondition:
Listener installed on the com.rti.dds.domain.DomainParticipant
(p. 654) will not be called after this method returns successfully.
Parameters:
a participant <<in>> ( p. 279) com.rti.dds.domain.DomainParticipant
(p. 654) to be deleted.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
8.66.2.5
751
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.domain.DomainParticipantFactory.PARTICIPANT QOS DEFAULT (p. 149)
com.rti.dds.domain.DomainParticipantFactory.create participant (p. 748)
8.66.2.6
Sets the default com.rti.dds.domain.DomainParticipantQos (p. 773) values for this domain (p. 328) participant factory.
This method may potentially allocate memory depending on the sequences contained in some QoS policies.
MT Safety:
UNSAFE. It is not safe to retrieve the default QoS value from a domain (p. 328) participant factory while another thread may be simultaneously calling com.rti.dds.domain.DomainParticipantFactory.set default participant qos (p. 751)
Parameters:
qos <<inout>> ( p. 279) Qos to be filled up.
The special value
com.rti.dds.domain.DomainParticipantFactory.PARTICIPANT QOS DEFAULT (p. 149) may be passed as qos to indicate that the
default QoS should be reset back to the initial values the factory would
used if com.rti.dds.domain.DomainParticipantFactory.set default participant qos (p. 751) had never been called. Cannot be
NULL.
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.domain.DomainParticipantFactory.PARTICIPANT QOS DEFAULT (p. 149)
com.rti.dds.domain.DomainParticipantFactory.create participant (p. 748)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
752
Class Documentation
8.66.2.7
Sets
the
default
<<eXtension>>
( p. 278)
com.rti.dds.domain.DomainParticipantQos (p. 773) values for this
domain (p. 328) participant factory based on the input XML QoS profile.
This method may potentially allocate memory depending on the sequences contained in some QoS policies.
This
default
value
will
be
used
for
newly
created
com.rti.dds.domain.DomainParticipant
(p. 654)
if
com.rti.dds.domain.DomainParticipantFactory.PARTICIPANT QOS DEFAULT (p. 149) is specified as the qos parameter when
com.rti.dds.domain.DomainParticipantFactory.create participant
(p. 748) is called.
Precondition:
The com.rti.dds.domain.DomainParticipantQos (p. 773) contained in
the specified XML QoS profile must be consistent, or else the operation will
have no effect and fail with com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
MT Safety:
UNSAFE. It is not safe to retrieve the default QoS value from a domain (p. 328) participant factory while another thread may be simultaneously calling com.rti.dds.domain.DomainParticipantFactory.set default participant qos (p. 751)
Parameters:
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default library (see com.rti.dds.domain.DomainParticipantFactory.set default library (p. 756)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see com.rti.dds.domain.DomainParticipantFactory.set default profile (p. 757)).
If the input profile cannot be found the method
com.rti.dds.infrastructure.RETCODE ERROR (p. 1356).
fails
with
(p. 108),
or
Exceptions:
One of
the
Standard
Return
Codes
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
753
8.66.2.8
8.66.2.9
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
754
Class Documentation
8.66.2.10
8.66.2.11
755
See also:
com.rti.dds.infrastructure.ProfileQosPolicy (p. 1231)
8.66.2.12
8.66.2.13
8.66.2.14
756
Class Documentation
See also:
com.rti.dds.domain.DomainParticipantFactory.set default library (p. 756)
8.66.2.15
for
Any API requiring a library name as a parameter can use null to refer to the
default library.
See also:
com.rti.dds.domain.DomainParticipantFactory.set default profile
(p. 757) for more information.
Parameters:
library name <<in>> ( p. 279) Library name. If library name is null
any previous default is unset.
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.domain.DomainParticipantFactory.get default library (p. 755)
8.66.2.16
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
757
for
This method specifies the profile that will be used as the default the next
time a default DomainParticipantFactory (p. 742) profile is needed during a call to a DomainParticipantFactory (p. 742) method. When calling a
com.rti.dds.domain.DomainParticipantFactory (p. 742) method that requires a profile name parameter, you can use NULL to refer to the default
profile. (This same information applies to setting a default library.)
This
method
does
not
set
the
default
QoS
for
newly
created
DomainParticipants;
for
this
functionality,
use
com.rti.dds.domain.DomainParticipantFactory.set default participant qos with profile (p. 752) (you may pass in NULL after
having called set default profile() (p. 757)).
Parameters:
library name <<in>> ( p. 279) The library name containing the profile.
profile name <<in>> ( p. 279) The profile name. If profile name is null
any previous default is unset.
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.domain.DomainParticipantFactory.get default profile (p. 756)
com.rti.dds.domain.DomainParticipantFactory.get default profile library (p. 757)
8.66.2.18
<<eXtension>> ( p. 278) Gets the library where the default XML profile is
contained for a com.rti.dds.domain.DomainParticipantFactory (p. 742).
The
default
profile
library
is
automatically
set
when
com.rti.dds.domain.DomainParticipantFactory.set default profile
(p. 757) is called.
This library can be different than the com.rti.dds.domain.DomainParticipantFactory
(p. 742) default library (see com.rti.dds.domain.DomainParticipantFactory.get default library (p. 755)).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
758
Class Documentation
Returns:
The default profile library or null if the default profile was not set.
See also:
com.rti.dds.domain.DomainParticipantFactory.set default profile
(p. 757)
8.66.2.19
fails
with
Exceptions:
One of the Standard Return Codes (p. 108)
8.66.2.20
759
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default library (see com.rti.dds.domain.DomainParticipantFactory.set default library (p. 756)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see com.rti.dds.domain.DomainParticipantFactory.set default profile (p. 757)).
If the input profile cannot be found, the method
com.rti.dds.infrastructure.RETCODE ERROR (p. 1356).
fails
with
Exceptions:
One of the Standard Return Codes (p. 108)
8.66.2.21
fails
Exceptions:
One of the Standard Return Codes (p. 108)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
with
760
Class Documentation
8.66.2.22
fails
with
Exceptions:
One of the Standard Return Codes (p. 108)
8.66.2.23
abstract void get datawriter qos from profile w topic name (DataWriterQos qos, String library name, String
profile name, String topic name) [pure virtual]
761
topic name <<in>> ( p. 279) Topic name that will be evaluated against
the topic filter attribute in the XML QoS profile. If topic name is
null, RTI Connext will match only QoSs without explicit topic filter
expressions.
If the input profile cannot be found, the method
com.rti.dds.infrastructure.RETCODE ERROR (p. 1356).
fails
with
Exceptions:
One of the Standard Return Codes (p. 108)
8.66.2.24
fails
with
Exceptions:
One of the Standard Return Codes (p. 108)
8.66.2.25
abstract void get datareader qos from profile w topic name (DataReaderQos qos, String library name, String
profile name, String topic name) [pure virtual]
762
Class Documentation
Parameters:
qos <<out>> ( p. 279) Qos to be filled up. Cannot be NULL.
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default library (see com.rti.dds.domain.DomainParticipantFactory.set default library (p. 756)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see com.rti.dds.domain.DomainParticipantFactory.set default profile (p. 757)).
topic name <<in>> ( p. 279) Topic name that will be evaluated against
the topic filter attribute in the XML QoS profile. If topic name is
null, RTI Connext will match only QoSs without explicit topic filter
expressions.
If the input profile cannot be found, the method
com.rti.dds.infrastructure.RETCODE ERROR (p. 1356).
fails
with
Exceptions:
One of the Standard Return Codes (p. 108)
8.66.2.26
fails
with
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
763
Exceptions:
One of the Standard Return Codes (p. 108)
8.66.2.27
fails
with
Exceptions:
One of the Standard Return Codes (p. 108)
8.66.2.28
<<eXtension>> ( p. 278) Gets the names of all XML QoS profile libraries associated with the com.rti.dds.domain.DomainParticipantFactory (p. 742)
Parameters:
library names <<out>> ( p. 279) com.rti.dds.infrastructure.StringSeq
(p. 1467) to be filled with names of XML QoS profile libraries. Cannot
be NULL.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
764
Class Documentation
8.66.2.29
<<eXtension>> ( p. 278) Gets the names of all XML QoS profiles associated
with the input XML QoS profile library.
Parameters:
profile names <<out>> ( p. 279) com.rti.dds.infrastructure.StringSeq
(p. 1467) to be filled with names of XML QoS profiles. Cannot be
NULL.
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default library (see com.rti.dds.domain.DomainParticipantFactory.set default library (p. 756)).
8.66.2.30
abstract DomainParticipant create participant with profile (int domainId, String library name, String
profile name, DomainParticipantListener listener, int
mask) [pure virtual]
765
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default library (see com.rti.dds.domain.DomainParticipantFactory.set default library (p. 756)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see com.rti.dds.domain.DomainParticipantFactory.set default profile (p. 757)).
listener <<in>> ( p. 279) the DomainParticipants listener.
mask <<in>> ( p. 279). Changes of communication status to be invoked
on the listener. See com.rti.dds.infrastructure.StatusMask.
Returns:
domain (p. 328) participant or NULL on failure
See also:
Specifying QoS on entities (p. 100) for information on setting QoS before
entity creation
com.rti.dds.domain.DomainParticipantQos (p. 773) for rules on consistency among QoS
com.rti.dds.domain.DomainParticipantFactory.PARTICIPANT QOS DEFAULT (p. 149)
NDDS DISCOVERY PEERS (p. 57)
com.rti.dds.domain.DomainParticipantFactory.create participant() (p. 748)
com.rti.dds.domain.DomainParticipantFactory.get default participant qos() (p. 750)
com.rti.dds.domain.DomainParticipant.set listener() (p. 709)
8.66.2.31
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
766
Class Documentation
8.66.2.32
abstract DomainParticipant create participant from config exp (String configuration name, String
participant name) [pure virtual]
abstract DomainParticipant lookup participant by name exp (String participant name) [pure
virtual]
of
the
Returns:
The first com.rti.dds.domain.DomainParticipant (p. 654) found with
the specified name or NULL if it is not found.
8.66.2.34
<<experimental>>
( p. 278)
<<eXtension>>
( p. 278)
Registers
a
com.rti.dds.topic.TypeSupport
(p. 1665)
with
the
com.rti.dds.domain.DomainParticipantFactory (p. 742) to enable
automatic registration if the corresponding type, should it be needed by a
com.rti.dds.domain.DomainParticipant (p. 654).
Types refered by the com.rti.dds.topic.Topic (p. 1545) entities within a
com.rti.dds.domain.DomainParticipant (p. 654) must be registered with
the com.rti.dds.domain.DomainParticipant (p. 654).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
767
Parameters:
type support <<in>> ( p. 279) com.rti.dds.topic.TypeSupport
(p. 1665) object to be used for registering the type with a
com.rti.dds.domain.DomainParticipant (p. 654).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
768
Class Documentation
Parameters:
type name <<in>> ( p. 279) Name the type is registered with.
Exceptions:
One of the Standard Return Codes (p. 108)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.67
769
Public Attributes
final EntityFactoryQosPolicy entity factory
Entity factory policy, ENTITY FACTORY ( p. 73).
resource
limits,
SYSTEM -
8.67.1
Detailed Description
8.67.2
8.67.2.1
770
Class Documentation
8.67.2.2
<<eXtension>> ( p. 278)
System
RESOURCE LIMITS (p. 115).
8.67.2.3
resource
limits,
SYSTEM -
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.68
771
8.68.1
Detailed Description
772
Class Documentation
Note: Due to a thread-safety issue, the destruction of a DomainParticipantListener (p. 771) from an enabled DomainParticipant (p. 654) should
be avoided even if the DomainParticipantListener (p. 771) has been removed from the DomainParticipant (p. 654). (This limitation does not affect
the Java API.)
See also:
com.rti.dds.infrastructure.Listener (p. 1130)
com.rti.dds.domain.DomainParticipant.set listener (p. 709)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.69
773
Public Attributes
final UserDataQosPolicy user data
User data policy, USER DATA ( p. 132).
final DomainParticipantResourceLimitsQosPolicy
limits
resource -
<<eXtension>> (p. 278) Domain participant resource limits policy, DOMAIN PARTICIPANT RESOURCE LIMITS ( p. 66).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
774
Class Documentation
final DatabaseQosPolicy database
<<eXtension>> (p. 278) Database policy, DATABASE ( p. 46).
DISCOVERY -
ENTITY NAME
8.69.1
Detailed Description
775
8.69.2
8.69.2.1
8.69.2.2
8.69.2.3
8.69.2.4
TRANSPORT -
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
776
Class Documentation
8.69.2.5
<<eXtension>> ( p. 278) Default Unicast Transport policy, TRANSPORT UNICAST (p. 128).
8.69.2.6
final DomainParticipantResourceLimitsQosPolicy
resource limits
<<eXtension>> ( p. 278) Domain participant resource limits policy, DOMAIN PARTICIPANT RESOURCE LIMITS (p. 66).
8.69.2.8
RECEIVER POOL
777
final TransportMulticastMappingQosPolicy
multicast mapping
<<eXtension>> ( p. 278) The multicast mapping policy. TRANSPORT MULTICAST MAPPING (p. 122)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
778
Class Documentation
8.70
DomainParticipantResourceLimitsQosPolicy
Class Reference
Public Attributes
final AllocationSettings t local writer allocation
Allocation settings applied to local DataWriters.
final
AllocationSettings t
allocation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
final AllocationSettings t
allocation
780
Class Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
in
int
int
int
int
int
in
for
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
782
Class Documentation
int participant property list max length
Maximum
number
of
properties
associated
com.rti.dds.domain.DomainParticipant ( p. 654).
with
the
with
the
with
associated
with
with
associated
with
8.70.1
in
a
Detailed Description
8.70.2
8.70.2.1
784
Class Documentation
[default]
initial count
=
16;
max count
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106); incremental count = -1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
786
Class Documentation
[default]
initial count
=
32;
max count
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106); incremental count = -1
8.70.2.10
8.70.2.11
8.70.2.12
8.70.2.13
8.70.2.14
8.70.2.15
8.70.2.16
8.70.2.17
788
Class Documentation
[default]
initial count
=
4;
max count
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106), incremental count = -1
8.70.2.18
8.70.2.19
8.70.2.20
8.70.2.21
8.70.2.22
8.70.2.24
8.70.2.25
8.70.2.26
Number of hash buckets for matching local writer and remote/local reader pairs.
[default] 32
[range] [1, 10000]
8.70.2.27
Number of hash buckets for matching local reader and remote/local writer pairs.
[default] 32
[range] [1, 10000]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
790
Class Documentation
8.70.2.28
792
Class Documentation
[range] [0,0x7fffffff]
8.70.2.39
in
This setting is made on a per DomainParticipant basis; it cannot be set individually on a per Publisher/Subscriber basis. However, the limit is enforced and
applies per Publisher/Subscriber.
This value cannot exceed 64.
[default] 64
[range] [0,64]
8.70.2.40
8.70.2.41
8.70.2.43
8.70.2.44
8.70.2.45
8.70.2.46
This field is the maximum length of all data related to a Content-filtered topic
(p. 359).
This is the sum of the length of the content filter name, the length of the
related topic (p. 359) name, the length of the filter expression, the length of
the filter parameters, and the length of the filter name. The maximum number
of combined characters should account for a terminating NULL (\0) character
for each string.
[default] 256
[range] [0,0xffff]
8.70.2.47
Maximum
number
of
channels
that
can
be
specified
in
com.rti.dds.infrastructure.MultiChannelQosPolicy (p. 1187) for MultiChannel DataWriters.
[default] 32
[range] [0,0xffff]
8.70.2.48
Maximum length of a channel com.rti.dds.infrastructure.ChannelSettings t.filter expression (p. 455) in a MultiChannel DataWriter.
The length should account for a terminating NULL (\0) character.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
794
Class Documentation
[default] 256
[range] [0,0xffff]
8.70.2.49
Maximum
number
of
properties
associated
com.rti.dds.domain.DomainParticipant (p. 654).
with
the
[default] 32
[range] [0,0xffff]
8.70.2.50
with
the
The string length is defined as the cumulative length in bytes, including the
null terminating characters, of all the pair (name,value) associated with the
com.rti.dds.domain.DomainParticipant (p. 654) properties.
[default] 1024
[range] [0,0xffff]
8.70.2.51
Maximum
number
of
properties
com.rti.dds.publication.DataWriter (p. 557).
associated
with
[range] [0,0xffff]
[default] 32
8.70.2.52
associated
with
The string length is defined as the cumulative length in bytes, including the
null terminating characters, of all the pair (name,value) associated with the
com.rti.dds.publication.DataWriter (p. 557) properties.
[default] 1024
[range] [0,0xffff]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
Maximum
number
of
properties
associated
com.rti.dds.subscription.DataReader (p. 487).
with
[default] 32
[range] [0,0xffff]
8.70.2.54
associated
with
The string length is defined as the cumulative length in bytes, including the
null terminating characters, of all the pair (name,value) associated with a
com.rti.dds.subscription.DataReader (p. 487) properties.
[default] 1024
[range] [0,0xffff]
8.70.2.55
in
a
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
796
Class Documentation
8.71
final void setDouble (int dstIndex, double[ ] elements, int srcIndex, int
length)
Copy a portion of the given array into this sequence.
797
8.71.1
Detailed Description
8.71.2
8.71.2.1
DoubleSeq ()
798
Class Documentation
Parameters:
doubles the initial contents of this sequence
Exceptions:
NullPointerException if the input array is null
8.71.3
8.71.3.1
Append length elements from the given array to this sequence, starting at index
offset in that array.
Exceptions:
NullPointerException if the given array is null.
8.71.3.2
Exceptions:
NullPointerException if the given array is null
8.71.3.3
Shift all elements in the sequence starting from the given index and add the
element to the given index.
8.71.3.5
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
799
Set the new double at the given index and return the old double.
Exceptions:
IndexOutOfBoundsException if the index is out of bounds.
8.71.3.7
8.71.3.8
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
800
Class Documentation
8.71.3.9
Get the current maximum number of elements that can be stored in this sequence.
The maximum of the sequence represents the maximum number of elements that
the underlying buffer can hold. It does not represent the current number of
elements.
The maximum is a non-negative number. It is initialized when the sequence is
first created.
The maximum can be changed implicitly by adding an element
or explicitly by calling
to the sequence with add() (p. 801),
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.setMaximum.
Returns:
the current maximum of the sequence.
See also:
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.size()
Implements Sequence (p. 1429).
8.71.3.10
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
801
802
Class Documentation
8.72
Public Attributes
DurabilityQosPolicyKind kind
The kind of durability.
8.72.1
Detailed Description
803
See also:
DURABILITY SERVICE (p. 69)
8.72.2
Usage
a
late-joining
obtain previously
By helping to ensure that DataReaders get all data that was sent by DataWriters, regardless of when it was sent, using this QoS policy can increase system
tolerance to failure conditions.
Note that although related, this does not strictly control what data RTI
Connext will maintain internally. That is, RTI Connext may choose to
maintain some data for its own purposes (e.g., flow control) and yet not make it
available to late-joining readers if the DURABILITY (p. 68) policy is set to
com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.VOLATILE DURABILITY QOS.
8.72.2.1
For the purpose of implementing the DURABILITY QoS kind TRANSIENT or PERSISTENT, RTI Connext behaves as if for each Topic
that has com.rti.dds.infrastructure.DurabilityQosPolicy.kind (p. 805) of
com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.TRANSIENT DURABILITY QOS or com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.PERSISTENT
DURABILITY QOS
there
is
a
corresponding
builtin
com.rti.dds.subscription.DataReader
(p. 487)
and
com.rti.dds.publication.DataWriter (p. 557) configured with the same
DURABILITY kind. In other words, it is as if somewhere in the system,
independent of the original com.rti.dds.publication.DataWriter (p. 557),
there is a built-in durable com.rti.dds.subscription.DataReader (p. 487)
subscribing to that Topic and a built-in durable DataWriter re-publishing it
as needed for the new subscribers that join the system. This functionality is
provided by the RTI Persistence Service.
The Persistence Service can configure itself based on the QoS of
your applications com.rti.dds.publication.DataWriter (p. 557) and
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
804
Class Documentation
com.rti.dds.subscription.DataReader (p. 487) entities. For each transient or persistent com.rti.dds.topic.Topic (p. 1545), the built-in fictitious
Persistence Service com.rti.dds.subscription.DataReader (p. 487) and
com.rti.dds.publication.DataWriter (p. 557) have their QoS configured
from the QoS of your applications com.rti.dds.publication.DataWriter
(p. 557) and com.rti.dds.subscription.DataReader (p. 487) entities that
communicate on that com.rti.dds.topic.Topic (p. 1545).
For a given com.rti.dds.topic.Topic (p. 1545),
the usual request/offered
semantics
apply
to
the
matching
between
any
in
the
domain
com.rti.dds.publication.DataWriter
(p. 557)
(p. 328) that writes the com.rti.dds.topic.Topic (p. 1545) and the
built-in
transient/persistent
com.rti.dds.subscription.DataReader
(p. 487) for that com.rti.dds.topic.Topic (p. 1545); similarly for the
built-in
transient/persistent
com.rti.dds.publication.DataWriter
(p. 557)
for
a
com.rti.dds.topic.Topic
(p. 1545)
and
any
com.rti.dds.subscription.DataReader
(p. 487)
for
the
com.rti.dds.topic.Topic
(p. 1545).
As
a
consequence,
a
com.rti.dds.publication.DataWriter (p. 557) that has an incompatible QoS will not send its data to the RTI Persistence Service, and a
com.rti.dds.subscription.DataReader (p. 487) that has an incompatible
QoS will not get data from it.
Incompatibilities between local com.rti.dds.subscription.DataReader
(p. 487) and com.rti.dds.publication.DataWriter (p. 557) entities and
the corresponding fictitious built-in transient/persistent entities cause
the
com.rti.dds.infrastructure.StatusKind.StatusKind.REQUESTED INCOMPATIBLE QOS STATUS and com.rti.dds.infrastructure.StatusKind.StatusKind.OFFERED INCOMPATIBLE QOS STATUS
to
change
and
the
corresponding
Listener
(p. 1130)
invocations
and/or
signaling
of
com.rti.dds.infrastructure.Condition (p. 464) objects as they would
with your applications own entities.
The value of com.rti.dds.infrastructure.DurabilityServiceQosPolicy.service cleanup delay (p. 811) controls when RTI Persistence Service is able to remove
all information regarding a data instances.
Information on a data instance is maintained until the following conditions are
met:
1. The instance has been explicitly disposed (instance state = NOT ALIVE DISPOSED),
and
2. While in the NOT ALIVE DISPOSED state, the system detects that there
are no more live com.rti.dds.publication.DataWriter (p. 557) entities writing the instance. That is, all existing writers either unregister the instance (call
unregister) or lose their liveliness,
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
805
and
3. A time interval longer that com.rti.dds.infrastructure.DurabilityServiceQosPolicy.service cleanup delay (p. 811) has elapsed since the moment RTI Connext detected
that the previous two conditions were met.
The utility of com.rti.dds.infrastructure.DurabilityServiceQosPolicy.service cleanup delay (p. 811) is apparent in the situation where an application disposes an instance and it crashes before it has a chance to complete additional
tasks related to the disposition. Upon restart, the application may ask for initial
data to regain its state and the delay introduced by the service cleanup delay
will allow the restarted application to receive the information on the disposed
instance and complete the interrupted tasks.
8.72.3
Compatibility
The value offered is considered compatible with the value requested if and only if the inequality offered kind >= requested
kind evaluates to TRUE. For the purposes of this inequality, the
values of DURABILITY kind are considered ordered such that
com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.VOLATILE DURABILITY QOS < com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.TRANSIENT LOCAL DURABILITY QOS < com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.TRAN
DURABILITY QOS < com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.PERSISTENT
DURABILITY QOS.
8.72.4
8.72.4.1
DurabilityQosPolicyKind kind
8.72.4.2
806
Class Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.73
807
Kinds of durability.
Inheritance diagram for DurabilityQosPolicyKind::
VOLATILE -
[default] RTI Connext does not need to keep any samples of data instances
on behalf of any com.rti.dds.subscription.DataReader ( p. 487) that is
unknown by the com.rti.dds.publication.DataWriter ( p. 557) at the time
the instance is written.
static
final
DurabilityQosPolicyKind
DURABILITY QOS
TRANSIENT -
RTI Connext will attempt to keep some samples so that they can be delivered to any potential late-joining com.rti.dds.subscription.DataReader
( p. 487).
static
final
DurabilityQosPolicyKind
DURABILITY QOS
PERSISTENT -
Data is kept on permanent storage, so that they can outlive a system session.
8.73.1
Detailed Description
Kinds of durability.
QoS:
com.rti.dds.infrastructure.DurabilityQosPolicy (p. 802)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
808
Class Documentation
8.73.2
8.73.2.1
[default] RTI Connext does not need to keep any samples of data instances
on behalf of any com.rti.dds.subscription.DataReader (p. 487) that is unknown by the com.rti.dds.publication.DataWriter (p. 557) at the time the
instance is written.
In other words, RTI Connext will only attempt to provide the data to existing
subscribers.
This option does not require RTI Persistence Service.
8.73.2.2
RTI Connext will attempt to keep some samples so that they can be delivered to
any potential late-joining com.rti.dds.subscription.DataReader (p. 487).
Which particular samples are kept depends on other QoS such
and
as
com.rti.dds.infrastructure.HistoryQosPolicy
(p. 1046)
com.rti.dds.infrastructure.ResourceLimitsQosPolicy
(p. 1348).
RTI Connext is only required to keep the data in memory of the
com.rti.dds.publication.DataWriter (p. 557) that wrote the data.
Data is not required to survive the com.rti.dds.publication.DataWriter
(p. 557).
For this setting to be effective,
you must also set the
com.rti.dds.infrastructure.ReliabilityQosPolicy.kind
(p. 1327)
to
com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQosPolicyKind.RELIABLE RELIABILITY QOS.
This option does not require RTI Persistence Service.
8.73.2.3
RTI Connext will attempt to keep some samples so that they can be delivered to
any potential late-joining com.rti.dds.subscription.DataReader (p. 487).
Which particular samples are kept depends on other QoS such
as
com.rti.dds.infrastructure.HistoryQosPolicy
(p. 1046)
and
com.rti.dds.infrastructure.ResourceLimitsQosPolicy (p. 1348).
RTI
Connext is only required to keep the data in memory and not in permanent
storage.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
809
Data is kept on permanent storage, so that they can outlive a system session.
This option requires RTI Persistence Service.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
810
Class Documentation
8.74
Various
settings
to
configure
the
external
RTI
Persistence Service used by RTI Connext for DataWriters with a
com.rti.dds.infrastructure.DurabilityQosPolicy (p. 802) setting of
com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.PERSISTENT DURABILITY QOS or com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.TR
DURABILITY QOS.
Inheritance diagram for DurabilityServiceQosPolicy::
Public Attributes
final Duration t service cleanup delay
[Not supported (optional)] Controls when the service is able to remove
all information regarding a data instances.
8.74.1
Detailed Description
Various
settings
to
configure
the
external
RTI
Persistence Service used by RTI Connext for DataWriters with a
com.rti.dds.infrastructure.DurabilityQosPolicy (p. 802) setting of
com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.PERSISTENT DURABILITY QOS or com.rti.dds.infrastructure.DurabilityQosPolicyKind.DurabilityQosPolicyKind.TR
DURABILITY QOS.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
811
Entity:
com.rti.dds.topic.Topic (p. 1545), com.rti.dds.publication.DataWriter
(p. 557)
Properties:
RxO (p. 101) = NO
Changeable (p. 102) = UNTIL ENABLE (p. 102)
See also:
DURABILITY (p. 68)
HISTORY (p. 79)
RESOURCE LIMITS (p. 106)
8.74.2
Usage
8.74.3
8.74.3.1
Initial value:
new Duration_t(
Duration_t.DURATION_INFINITE_SEC, Duration_t.DURATION_INFINITE_NSEC)
[Not supported (optional)] Controls when the service is able to remove all
information regarding a data instances.
[default] 0
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
812
Class Documentation
8.74.3.2
Part of resource limits QoS policy to apply when feeding a late joiner.
[default] com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
8.74.3.5
Part of resource limits QoS policy to apply when feeding a late joiner.
[default] com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
8.74.3.6
Part of resource limits QoS policy to apply when feeding a late joiner.
[default] com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.75
Duration
boolean is
boolean is
boolean is
Duration
Duration
Public Attributes
int sec
seconds
int nanosec
nanoseconds
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
813
814
Class Documentation
static final int DURATION INFINITE NSEC
An infinite nano-second period of time.
8.75.1
Detailed Description
8.75.2
8.75.2.1
Copy constructor.
Parameters:
duration The duration instance to copy. It must not be null.
8.75.2.2
Parameters:
sec must be >=0
nanosec must be >=0
Exceptions:
RETCODE BAD PARAMETER ( p. 1355) if either value is negative
8.75.3
8.75.3.1
815
boolean is zero ()
Returns:
com.rti.dds.infrastructure.true if the given duration is of zero length.
8.75.3.3
boolean is infinite ()
Returns:
com.rti.dds.infrastructure.true if the given duration is of infinite length.
8.75.3.4
boolean is auto ()
Returns:
com.rti.dds.infrastructure.true if the given duration has auto value.
8.75.3.5
8.75.4
8.75.4.1
816
Class Documentation
8.75.4.3
int sec
seconds
8.75.4.8
int nanosec
nanoseconds
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.76
817
A sample of any complex data type, which can be inspected and manipulated
reflectively.
Inheritance diagram for DynamicData::
of
sample
another
are the
about
this
818
Class Documentation
If this com.rti.dds.dynamicdata.DynamicData ( p. 817) object is not
yet associated with a data type, set that type now to the given
com.rti.dds.typecode.TypeCode ( p. 1611).
void bind complex member (DynamicData value out, String member name, int member id)
Use
another
com.rti.dds.dynamicdata.DynamicData
( p. 817) object to provide access to a complex field of this
com.rti.dds.dynamicdata.DynamicData ( p. 817) object.
boolean member exists in type (String member name, int member id)
Indicates whether a member of a particular name/ID exists in this data samples type.
void get member info (DynamicDataMemberInfo info, String member name, int member id)
Fill in the given descriptor with information about the identified member of
this com.rti.dds.dynamicdata.DynamicData ( p. 817) sample.
819
Fill in the given descriptor with information about the identified member of
this com.rti.dds.dynamicdata.DynamicData ( p. 817) sample.
TypeCode get member type (String member name, int member id)
Get the type of the given member of this sample.
int get int array (int[ ] array, String member name, int member id)
Get a copy of the given array member.
void get int seq (IntSeq seq, String member name, int member id)
Get a copy of the given sequence member.
int get short array (short[ ] array, String member name, int member id)
Get a copy of the given array member.
void get short seq (ShortSeq seq, String member name, int member id)
Get a copy of the given sequence member.
int get float array (float[ ] array, String member name, int member id)
Get a copy of the given array member.
void get float seq (FloatSeq seq, String member name, int member id)
Get a copy of the given sequence member.
820
Class Documentation
Get the value of the given field, which is of type double or another type
implicitly convertible to it (float).
int get double array (double[ ] array, String member name, int member id)
Get a copy of the given array member.
void get double seq (DoubleSeq seq, String member name, int member id)
Get a copy of the given sequence member.
int get boolean array (boolean[ ] array, String member name, int member id)
Get a copy of the given array member.
void get boolean seq (BooleanSeq seq, String member name, int member id)
Get a copy of the given sequence member.
int get char array (char[ ] array, String member name, int member id)
Get a copy of the given array member.
void get char seq (CharSeq seq, String member name, int member id)
Get a copy of the given sequence member.
int get byte array (byte[ ] array, String member name, int member id)
Get a copy of the given array member.
void get byte seq (ByteSeq seq, String member name, int member id)
Get a copy of the given sequence member.
821
Get the value of the given field, which is of type long or another type implicitly convertible to it (byte, char, short, com.rti.dds.infrastructure.short,
com.rti.dds.infrastructure.int,
com.rti.dds.infrastructure.long,
or
com.rti.dds.util.Enum ( p. 944)).
int get long array (long[ ] array, String member name, int member id)
Get a copy of the given array member.
void get long seq (LongSeq seq, String member name, int member id)
Get a copy of the given sequence member.
field,
which
is
of
type
void get complex member (DynamicData value out, String member name, int member id)
Get a copy of the value of the given field, which is of some composed type.
void set int (String member name, int member id, int value)
Set the value of the given field, which is of type com.rti.dds.infrastructure.int.
void set int array (String member name, int member id, int[ ] array)
Set the contents of the given array member.
void set int seq (String member name, int member id, IntSeq value)
Set the contents of the given sequence member.
void set short (String member name, int member id, short value)
Set the value of the given field, which is of type short.
void set short array (String member name, int member id, short[ ] array)
Set the contents of the given array member.
void set short seq (String member name, int member id, ShortSeq
value)
Set the contents of the given sequence member.
void set float (String member name, int member id, float value)
Set the value of the given field, which is of type float.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
822
Class Documentation
void set float array (String member name, int member id, float[ ] array)
Set the contents of the given array member.
void set float seq (String member name, int member id, FloatSeq
value)
Set the contents of the given sequence member.
void set double (String member name, int member id, double value)
Set the value of the given field, which is of type double.
void set double array (String member name, int member id, double[ ]
array)
Set the contents of the given array member.
void set double seq (String member name, int member id, DoubleSeq
value)
Set the contents of the given sequence member.
void set boolean (String member name, int member id, boolean value)
Set the value of the given field, which is of type boolean.
void set boolean array (String member name, int member id, boolean[ ]
array)
Set the contents of the given array member.
(String
member name,
int
member id,
void set char (String member name, int member id, char value)
Set the value of the given field, which is of type char.
void set char array (String member name, int member id, char[ ] array)
Set the contents of the given array member.
void set char seq (String member name, int member id, CharSeq
value)
Set the contents of the given sequence member.
void set byte (String member name, int member id, byte value)
Set the value of the given field, which is of type byte.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
823
void set byte array (String member name, int member id, byte[ ] array)
Set the contents of the given array member.
void set byte seq (String member name, int member id, ByteSeq
value)
Set the contents of the given sequence member.
void set long (String member name, int member id, long value)
Set the value of the given field, which is of type long.
void set long array (String member name, int member id, long[ ] array)
Set the contents of the given array member.
void set long seq (String member name, int member id, LongSeq
value)
Set the contents of the given sequence member.
void set string (String member name, int member id, String value)
Set the value of the given field of type com.rti.dds.infrastructure.String.
void set complex member (String member name, int member id, DynamicData value)
Copy the state of the given com.rti.dds.dynamicdata.DynamicData
( p. 817) object into a member of this object.
for
new
com.rti.dds.dynamicdata.DynamicData
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
for
824
Class Documentation
8.76.1
Detailed Description
A sample of any complex data type, which can be inspected and manipulated
reflectively.
Objects of type com.rti.dds.dynamicdata.DynamicData (p. 817)
represent corresponding objects of the type identified by their
Because the definition of
com.rti.dds.typecode.TypeCode (p. 1611).
these types may not have existed at compile time on the system on which the
application is running, you will interact with the data using an API of reflective
getters and setters.
For example, if you had access to your data types at compile time, you could
do this:
theValue = theObject.theField;
objects
com.rti.dds.dynamicdata.DynamicData
(p. 817)
can
represent
any
complex
data
type,
including
those
of
type
kinds
com.rti.dds.typecode.TCKind.TK ARRAY
(p. 1528),
com.rti.dds.typecode.TCKind.TK SEQUENCE
(p. 1528),
com.rti.dds.typecode.TCKind.TK STRUCT
(p. 1528),
com.rti.dds.typecode.TCKind.TK UNION
(p. 1528),
com.rti.dds.typecode.TCKind.TK VALUE
(p. 1529),
and
com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529).
They cannot
represent objects of basic types (e.g. integers and strings). Since those type
definitions always exist on every system, you can examine their objects directly.
8.76.2
The members of a data type can be identified in one of two ways: by their name
or by their numeric ID. The former is often more transparent to human users;
the latter is typically faster.
You define the name and ID of a type member when you add that member
to that type. When you define a sparse type, you will typically choose both
explicitly. If you define your type in IDL or XML, the name will be the field
name that appears in the type definition; the ID will be the one-based index of
the field in declaration order. For example, in the following IDL structure, the
ID of theLong is 2.
struct MyType {
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
825
short theShort;
long theLong;
};
8.76.3
The members of array and sequence types, unlike those of structure and
union types, dont have names or explicit member IDs. However, they may
nevertheless be accessed by ID: the ID is one more than the index. (The first
element has ID 1, the second 2, etc.)
Multi-dimensional arrays are effectively flattened by this pattern. For example,
for an array theArray[4][5], accessing ID 7 is equivalent to index 6, or the second
element of the second group of 5.
To determine the length of a collection-typed member of a structure or union,
you have two choices:
1. Get the length along with the data: call the appropriate array accessor
(see Getters and Setters (p. 826)) and check the resulting length.
2. Get
the
length
without
getting
the
data
itself:
call
com.rti.dds.dynamicdata.DynamicData.get member info
(p. 840)
and
check
the
resulting
com.rti.dds.dynamicdata.DynamicDataMemberInfo.element count (p. 889).
8.76.4
Available Functionality
The Dynamic Data API is large when measured by the number of methods it
contains. But each method falls into one of a very small number of categories.
You will find it easier to navigate this documentation if you understand these
categories.
8.76.4.1
826
Class Documentation
2. In certain advanced cases, such as when youre navigating a nested structure, you will want to have a com.rti.dds.dynamicdata.DynamicData
(p. 817) object that is not bound up front to any particular type, or you
will want to initialize the object in a custom way. In that case, you can
call the constructor directly.
com.rti.dds.dynamicdata.DynamicDataTypeSupport
com.rti.dds.dynamicdata.DynamicData
(p. 901)
(p. 817)
com.rti.dds.dynamicdata.DynamicDataTypeSupport.create
com.rti.dds.dynamicdata.DynamicData.DynamicData.Dynamic
data
(p. 905)
Table 8.1: Lifecycle
You can also copy com.rti.dds.dynamicdata.DynamicData (p. 817) objects:
com.rti.dds.dynamicdata.DynamicData.copy
You can test them for equality:
com.rti.dds.dynamicdata.DynamicData.DynamicData.equals
And you can print their contents:
com.rti.dds.dynamicdata.DynamicData.print (p. 833)
com.rti.dds.dynamicdata.DynamicDataTypeSupport.print data
(p. 905)
8.76.4.2
Most methods get or set the value of some field. These methods are named
according to the type of the field they access.
The names of integer types vary across languages. The programming API for
each language reflects that programming language. However, if your chosen language does not use the same names as the language that you used to define your
types (e.g., IDL), or if you need to interoperate among programming languages,
you will need to understand these differences. They are explained the following
table.
When working with a com.rti.dds.dynamicdata.DynamicData (p. 817)
object representing an array or sequence, calling one of the get
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
827
IDL
short
C, C++
DDS Short
C#
short
Java
short
long
DDS Long
int
int
long long
DDS LongLong
long
long
Not all components of your application will have static knowledge of all of the
fields of your type. Sometimes, you will want to query meta-data about the
fields that appear in a given data sample.
com.rti.dds.dynamicdata.DynamicData.get type (p. 838)
com.rti.dds.dynamicdata.DynamicData.get type kind (p. 838)
com.rti.dds.dynamicdata.DynamicData.get member type
(p. 842)
com.rti.dds.dynamicdata.DynamicData.get member info (p. 840)
com.rti.dds.dynamicdata.DynamicData.get member count
(p. 838)
com.rti.dds.dynamicdata.DynamicData.get member info by index (p. 841)
com.rti.dds.dynamicdata.DynamicData.member exists (p. 839)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
828
Class Documentation
com.rti.dds.dynamicdata.DynamicData.member exists in type
(p. 840)
com.rti.dds.dynamicdata.DynamicData.is member key (p. 843)
8.76.4.4
Type/Object Association
Sometimes, you may want to change the association between a data object and its type.
This is not something you can do with a typical object, but with com.rti.dds.dynamicdata.DynamicData (p. 817)
objects, it is a powerful capability.
It allows you to, for example,
examine nested structures without copying them by using a bound
com.rti.dds.dynamicdata.DynamicData (p. 817) object as a view into an
enclosing com.rti.dds.dynamicdata.DynamicData (p. 817) object.
com.rti.dds.dynamicdata.DynamicData.bind type (p. 834)
com.rti.dds.dynamicdata.DynamicData.unbind type (p. 835)
com.rti.dds.dynamicdata.DynamicData.bind complex member
(p. 835)
com.rti.dds.dynamicdata.DynamicData.unbind complex member (p. 837)
8.76.4.5
Keys
Keys can be specified in dynamically defined types just as they can in types defined in generated code. However, there are some minor restrictions when sparse
value types are involved (see com.rti.dds.typecode.TCKind.TK SPARSE
(p. 1529)).
If a type has a member that is of a sparse value type, that member cannot
be a key for the enclosing type.
Sparse value types themselves may have at most a single key field. That
field may itself be of any type.
8.76.5
Performance
829
struct MyType {
float my_float;
sequence<octet> my_bytes;
short my_short;
};
The richness of the type system makes it difficult to fully characterize the performance differences between all access patterns. Nevertheless, the following are
generally true:
It will be most performant to set the value of my float, then my bytes,
and finally my short.
The order of modification has a greater impact for types of
kind com.rti.dds.typecode.TCKind.TK STRUCT (p. 1528) and
com.rti.dds.typecode.TCKind.TK VALUE (p. 1529) than it does for
types of kind com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529).
Modifications to variable-sized types (i.e. those containing strings, sequences, unions, or optional members) are more expensive than modifications to fixed-size types.
MT Safety:
UNSAFE. In general, using a single com.rti.dds.dynamicdata.DynamicData
(p. 817) object concurrently from multiple threads is unsafe.
8.76.6
8.76.6.1
830
Class Documentation
Keep a reference to the com.rti.dds.typecode.TypeCode
object
yourself,
and
delete
it
with
(p. 1611)
com.rti.dds.typecode.TypeCodeFactory.delete tc (p. 1660) after youve deleted all of the objects that use it.
Do not keep a reference to the com.rti.dds.typecode.TypeCode
(p. 1611). The garbage collector will delete it when its eligible for collection.
beuse
See also:
com.rti.dds.dynamicdata.DynamicDataTypeSupport.create data
(p. 905)
8.76.7
8.76.7.1
void delete ()
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
831
Indicate
whether
the
contents
of
another
com.rti.dds.dynamicdata.DynamicData (p. 817) sample are the same
as those of this one.
This operation compares the data and type of existing members. The types of
non-instantiated members may differ in sparse types.
MT Safety:
UNSAFE.
See also:
http://java.sun.com/javase/6/docs/api/java/lang/Object.html#equals(java.lang.Object)
com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529)
8.76.7.3
or
Clear the contents of all data members of this object, including key members.
MT Safety:
UNSAFE.
Exceptions:
One of the Standard Return Codes (p. 108)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
832
Class Documentation
See also:
com.rti.dds.dynamicdata.DynamicData.clear nonkey members
(p. 832)
com.rti.dds.dynamicdata.DynamicData.clear member (p. 832)
8.76.7.5
Clear the contents of all data members of this object, not including key members.
This method is only applicable to sparse value types.
MT Safety:
UNSAFE.
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529)
com.rti.dds.dynamicdata.DynamicData.clear all members (p. 831)
com.rti.dds.dynamicdata.DynamicData.clear member (p. 832)
8.76.7.6
833
See also:
com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529)
com.rti.dds.dynamicdata.DynamicData.clear all members (p. 831)
com.rti.dds.dynamicdata.DynamicData.clear nonkey members
(p. 832)
8.76.7.7
Output a textual representation of this object and its contents to the given file.
This method is equivalent to com.rti.dds.dynamicdata.DynamicDataTypeSupport.print data (p. 905).
Warning: This operation may not display any data for members at the end
of a data structure that have not been explicitly set before the data sample is
serialized. This will not be a problem on a received data sample, which should
always correctly display all members.
MT Safety:
UNSAFE.
Parameters:
fp <<in>> ( p. 279) The file to which the object should be printed.
indent <<in>> ( p. 279) The output of this method will be prettyprinted. This argument indicates the amount of initial indentation
of the output.
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.dynamicdata.DynamicDataTypeSupport.print data
(p. 905)
8.76.7.8
Fill
in
the
given
descriptor
with
information
com.rti.dds.dynamicdata.DynamicData (p. 817).
about
MT Safety:
UNSAFE.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
this
834
Class Documentation
Parameters:
info out <<out>> ( p. 279) The descriptor object whose contents will be
overwritten by this operation.
8.76.7.9
this
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
835
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.dynamicdata.DynamicData.unbind type (p. 835)
8.76.7.10
8.76.7.11
Use
another
com.rti.dds.dynamicdata.DynamicData
(p. 817) object to provide access to a complex field of this
com.rti.dds.dynamicdata.DynamicData (p. 817) object.
For example, consider the following data types:
struct MyFieldType {
float theFloat;
};
struct MyOuterType {
MyFieldType complexMember;
};
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
836
Class Documentation
Suppose you have an instance of MyOuterType, and you would like to examine
the contents of its member complexMember. To do this, you must bind another com.rti.dds.dynamicdata.DynamicData (p. 817) object to that member. This operation will bind the type code of the member to the provided
com.rti.dds.dynamicdata.DynamicData (p. 817) object and perform additional initialization.
The following example demonstrates the usage pattern. Note that error handling
has been omitted for brevity.
DynamicData outer = ...;
DynamicData toBeBound = new DynamicData(null, myProperties);
outer.bind_complex_member(
toBeBound,
"complexMember",
DynamicData.MEMBER_ID_UNSPECIFIED);
try {
float theFloatValue = toBeBound.get_float(
"theFloat"
DynamicData.MEMBER_ID_UNSPECIFIED);
} finally {
outer.unbind_complex_member(toBeBound);
}
toBeBound.delete();
837
8.76.7.12
Tear
down
the
association
created
by
com.rti.dds.dynamicdata.DynamicData.bind complex member
(p. 835) operation, committing any changes to the outer object since then.
Some changes to the outer object will not be observable until after you have
performed this operation.
If you have called com.rti.dds.dynamicdata.DynamicData.bind complex member (p. 835) on a data sample, you must unbind before writing
or deleting the sample.
MT Safety:
UNSAFE.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
838
Class Documentation
Parameters:
value <<in>> ( p. 279) The same object you passed to
com.rti.dds.dynamicdata.DynamicData.bind complex member (p. 835). This argument is used for error checking purposes.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
See also:
com.rti.dds.dynamicdata.DynamicData.bind complex member
(p. 835)
8.76.7.13
8.76.7.14
8.76.7.15
839
8.76.7.16
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
840
Class Documentation
8.76.7.17
8.76.7.18
Fill in the given descriptor with information about the identified member of this
com.rti.dds.dynamicdata.DynamicData (p. 817) sample.
This operation is valid for objects of com.rti.dds.typecode.TCKind
(p. 1525)
com.rti.dds.typecode.TCKind.TK ARRAY
(p. 1528),
com.rti.dds.typecode.TCKind.TK SEQUENCE
(p. 1528),
com.rti.dds.typecode.TCKind.TK STRUCT
(p. 1528),
com.rti.dds.typecode.TCKind.TK VALUE
(p. 1529),
and
com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529).
MT Safety:
UNSAFE.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
841
Parameters:
info <<out>> ( p. 279) The descriptor object whose contents will be overwritten by this operations.
member name <<in>> ( p. 279) The name of the member for which to
get the info or null to look up the member by its ID. Only one of the
name and the ID may be unspecified.
member id <<in>> ( p. 279) The ID of the member for which to get the
info, or com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.dynamicdata.DynamicData.get member info by index (p. 841)
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880)
8.76.7.19
Fill in the given descriptor with information about the identified member of this
com.rti.dds.dynamicdata.DynamicData (p. 817) sample.
This operation is valid for objects of com.rti.dds.typecode.TCKind
(p. 1525)
com.rti.dds.typecode.TCKind.TK ARRAY
(p. 1528),
com.rti.dds.typecode.TCKind.TK SEQUENCE
(p. 1528),
com.rti.dds.typecode.TCKind.TK STRUCT
(p. 1528),
com.rti.dds.typecode.TCKind.TK VALUE
(p. 1529),
and
com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529).
MT Safety:
UNSAFE.
Parameters:
info <<out>> ( p. 279) The descriptor object whose contents will be overwritten by this operations.
index <<in>> ( p. 279) The zero-based of the member for which to get
the info.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
842
Class Documentation
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.dynamicdata.DynamicData.get member info (p. 840)
com.rti.dds.dynamicdata.DynamicData.get member count
(p. 838)
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880)
8.76.7.20
843
See also:
com.rti.dds.dynamicdata.DynamicData.get member info (p. 840)
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880)
8.76.7.21
Indicates whether a given member forms part of the key of this samples data
type.
This operation is only valid
com.rti.dds.typecode.TCKind.TK
com.rti.dds.typecode.TCKind.TK
com.rti.dds.typecode.TCKind.TK
of kind
(p. 1528),
or
Note to users of sparse types: A key member may only have a single representation and is required to exist in every sample.
MT Safety:
UNSAFE.
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
Exceptions:
One of the Standard Return Codes (p. 108)
8.76.7.22
844
Class Documentation
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.dynamicdata.DynamicData.DynamicData.set int
8.76.7.23
int get int array (int[ ] array, String member name, int
member id)
conversion
from
If the destination array is insufficiently long to store the data, this operation
will fail without copying anything.
MT Safety:
UNSAFE.
Parameters:
array <<out>> ( p. 279) An already-allocated array, into which the elements will be copied.
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
Exceptions:
One of the Standard Return Codes (p. 108)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
845
See also:
com.rti.dds.dynamicdata.DynamicData.DynamicData.set int array
com.rti.dds.dynamicdata.DynamicData.DynamicData.get int seq
8.76.7.24
void get int seq (IntSeq seq, String member name, int
member id)
or
See also:
com.rti.dds.dynamicdata.DynamicData.DynamicData.set int seq
com.rti.dds.dynamicdata.DynamicData.DynamicData.get int array
8.76.7.25
Get the value of the given field, which is of type short or another type implicitly
convertible to it (byte or char).
The member may be specified by name or by ID.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
846
Class Documentation
MT Safety:
UNSAFE.
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.dynamicdata.DynamicData.set short (p. 863)
8.76.7.26
conversion
from
If the destination array is insufficiently long to store the data, this operation
will fail without copying anything.
MT Safety:
UNSAFE.
Parameters:
array <<out>> ( p. 279) An already-allocated array, into which the elements will be copied.
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
847
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.dynamicdata.DynamicData.set short array (p. 864)
com.rti.dds.dynamicdata.DynamicData.get short seq (p. 847)
8.76.7.27
8.76.7.28
or
848
Class Documentation
MT Safety:
UNSAFE.
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.dynamicdata.DynamicData.set float (p. 865)
8.76.7.29
conversion
from
If the destination array is insufficiently long to store the data, this operation
will fail without copying anything.
MT Safety:
UNSAFE.
Parameters:
array <<out>> ( p. 279) An already-allocated array, into which the elements will be copied.
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
849
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.dynamicdata.DynamicData.set float array (p. 866)
com.rti.dds.dynamicdata.DynamicData.get float seq (p. 849)
8.76.7.30
or
See also:
com.rti.dds.dynamicdata.DynamicData.set float seq (p. 867)
com.rti.dds.dynamicdata.DynamicData.get float array (p. 848)
8.76.7.31
Get the value of the given field, which is of type double or another type implicitly
convertible to it (float).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
850
Class Documentation
8.76.7.32
conversion
from
If the destination array is insufficiently long to store the data, this operation
will fail without copying anything.
MT Safety:
UNSAFE.
Parameters:
array <<out>> ( p. 279) An already-allocated array, into which the elements will be copied.
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
851
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.dynamicdata.DynamicData.set double array (p. 868)
com.rti.dds.dynamicdata.DynamicData.get double seq (p. 851)
8.76.7.33
or
See also:
com.rti.dds.dynamicdata.DynamicData.set double seq (p. 869)
com.rti.dds.dynamicdata.DynamicData.get double array (p. 850)
8.76.7.34
852
Class Documentation
8.76.7.35
conversion
from
If the destination array is insufficiently long to store the data, this operation
will fail without copying anything.
MT Safety:
UNSAFE.
Parameters:
array <<out>> ( p. 279) An already-allocated array, into which the elements will be copied.
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
853
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.dynamicdata.DynamicData.set boolean array (p. 870)
com.rti.dds.dynamicdata.DynamicData.get boolean seq (p. 853)
8.76.7.36
or
See also:
com.rti.dds.dynamicdata.DynamicData.set boolean seq (p. 871)
com.rti.dds.dynamicdata.DynamicData.get boolean array (p. 852)
8.76.7.37
854
Class Documentation
MT Safety:
UNSAFE.
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.dynamicdata.DynamicData.set char (p. 872)
8.76.7.38
conversion
from
If the destination array is insufficiently long to store the data, this operation
will fail without copying anything.
MT Safety:
UNSAFE.
Parameters:
array <<out>> ( p. 279) An already-allocated array, into which the elements will be copied.
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
855
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.dynamicdata.DynamicData.set char array (p. 872)
com.rti.dds.dynamicdata.DynamicData.get char seq (p. 855)
8.76.7.39
8.76.7.40
or
856
Class Documentation
MT Safety:
UNSAFE.
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.dynamicdata.DynamicData.DynamicData.set byte
8.76.7.41
conversion
from
If the destination array is insufficiently long to store the data, this operation
will fail without copying anything.
MT Safety:
UNSAFE.
Parameters:
array <<out>> ( p. 279) An already-allocated array, into which the elements will be copied.
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
857
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.dynamicdata.DynamicData.DynamicData.set byte array
com.rti.dds.dynamicdata.DynamicData.DynamicData.get byte seq
8.76.7.42
or
See also:
com.rti.dds.dynamicdata.DynamicData.DynamicData.set byte seq
com.rti.dds.dynamicdata.DynamicData.DynamicData.get byte array
8.76.7.43
Get the value of the given field, which is of type long or another type implicitly convertible to it (byte, char, short, com.rti.dds.infrastructure.short,
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
858
Class Documentation
com.rti.dds.infrastructure.int,
com.rti.dds.util.Enum (p. 944)).
com.rti.dds.infrastructure.long,
or
8.76.7.44
conversion
from
If the destination array is insufficiently long to store the data, this operation
will fail without copying anything.
MT Safety:
UNSAFE.
Parameters:
array <<out>> ( p. 279) An already-allocated array, into which the elements will be copied.
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
859
8.76.7.45
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
or
860
Class Documentation
8.76.7.46
Get
the
value
of
the
com.rti.dds.infrastructure.String.
given
field,
which
is
of
type
or
See also:
com.rti.dds.dynamicdata.DynamicData.set string (p. 878)
8.76.7.47
Get a copy of the value of the given field, which is of some composed type.
The member may be of type kind com.rti.dds.typecode.TCKind.TK ARRAY
(p. 1528),
com.rti.dds.typecode.TCKind.TK com.rti.dds.typecode.TCKind.TK SEQUENCE
(p. 1528),
STRUCT
(p. 1528),
com.rti.dds.typecode.TCKind.TK VALUE
(p. 1529), com.rti.dds.typecode.TCKind.TK UNION (p. 1528), or
com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529).
It may be
specified by name or by ID.
This method is logically related to com.rti.dds.dynamicdata.DynamicData.bind complex member (p. 835) in that both allow you to examine the state of
nested objects. They are different in an important way: this method provides
a copy of the data; changes to it will not be reflected in the source object.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
861
MT Safety:
UNSAFE.
Parameters:
value out <<out>> ( p. 279) The com.rti.dds.dynamicdata.DynamicData
(p. 817) sample whose contents will be overwritten by this operation.
This object must not be a bound member of another
com.rti.dds.dynamicdata.DynamicData (p. 817) sample.
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
See also:
com.rti.dds.dynamicdata.DynamicData.set complex member
(p. 879)
com.rti.dds.dynamicdata.DynamicData.bind complex member
(p. 835)
8.76.7.48
void set int (String member name, int member id, int
value)
862
Class Documentation
value <<in>> ( p. 279) The value to which to set the member.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
See also:
com.rti.dds.dynamicdata.DynamicData.DynamicData.get int
8.76.7.49
void set int array (String member name, int member id,
int[ ] array)
conversion
to
If the destination array is insufficiently long to store the data, this operation
will fail without copying anything.
MT Safety:
UNSAFE.
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
array <<in>> ( p. 279) The elements to copy.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
See also:
com.rti.dds.dynamicdata.DynamicData.DynamicData.get int array
com.rti.dds.dynamicdata.DynamicData.DynamicData.set int seq
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
863
void set int seq (String member name, int member id,
IntSeq value)
or
See also:
com.rti.dds.dynamicdata.DynamicData.DynamicData.get int seq
com.rti.dds.dynamicdata.DynamicData.DynamicData.set int array
8.76.7.51
864
Class Documentation
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
value <<in>> ( p. 279) The value to which to set the member.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
See also:
com.rti.dds.dynamicdata.DynamicData.get short (p. 845)
8.76.7.52
conversion
to
If the destination array is insufficiently long to store the data, this operation
will fail without copying anything.
MT Safety:
UNSAFE.
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
array <<in>> ( p. 279) The elements to copy.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
865
See also:
com.rti.dds.dynamicdata.DynamicData.get short array (p. 846)
com.rti.dds.dynamicdata.DynamicData.set short seq (p. 865)
8.76.7.53
void set short seq (String member name, int member id,
ShortSeq value)
8.76.7.54
or
866
Class Documentation
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
value <<in>> ( p. 279) The value to which to set the member.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
See also:
com.rti.dds.dynamicdata.DynamicData.get float (p. 847)
8.76.7.55
conversion
to
If the destination array is insufficiently long to store the data, this operation
will fail without copying anything.
MT Safety:
UNSAFE.
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
array <<in>> ( p. 279) The elements to copy.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
867
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
See also:
com.rti.dds.dynamicdata.DynamicData.get float array (p. 848)
com.rti.dds.dynamicdata.DynamicData.set float seq (p. 867)
8.76.7.56
void set float seq (String member name, int member id,
FloatSeq value)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
or
868
Class Documentation
8.76.7.57
or
See also:
com.rti.dds.dynamicdata.DynamicData.get double (p. 849)
8.76.7.58
conversion
to
If the destination array is insufficiently long to store the data, this operation
will fail without copying anything.
MT Safety:
UNSAFE.
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
869
or
See also:
com.rti.dds.dynamicdata.DynamicData.get double array (p. 850)
com.rti.dds.dynamicdata.DynamicData.set double seq (p. 869)
8.76.7.59
or
870
Class Documentation
See also:
com.rti.dds.dynamicdata.DynamicData.get double seq (p. 851)
com.rti.dds.dynamicdata.DynamicData.set double array (p. 868)
8.76.7.60
or
See also:
com.rti.dds.dynamicdata.DynamicData.get boolean (p. 851)
8.76.7.61
conversion
to
If the destination array is insufficiently long to store the data, this operation
will fail without copying anything.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
871
MT Safety:
UNSAFE.
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
array <<in>> ( p. 279) The elements to copy.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
See also:
com.rti.dds.dynamicdata.DynamicData.get boolean array (p. 852)
com.rti.dds.dynamicdata.DynamicData.set boolean seq (p. 871)
8.76.7.62
872
Class Documentation
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
See also:
com.rti.dds.dynamicdata.DynamicData.get boolean seq (p. 853)
com.rti.dds.dynamicdata.DynamicData.set boolean array (p. 870)
8.76.7.63
or
See also:
com.rti.dds.dynamicdata.DynamicData.get char (p. 853)
8.76.7.64
873
conversion
to
If the destination array is insufficiently long to store the data, this operation
will fail without copying anything.
MT Safety:
UNSAFE.
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
array <<in>> ( p. 279) The elements to copy.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
See also:
com.rti.dds.dynamicdata.DynamicData.get char array (p. 854)
com.rti.dds.dynamicdata.DynamicData.set char seq (p. 873)
8.76.7.65
void set char seq (String member name, int member id,
CharSeq value)
874
Class Documentation
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
value <<out>> ( p. 279) A sequence, from which the elements will be
copied.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
See also:
com.rti.dds.dynamicdata.DynamicData.get char seq (p. 855)
com.rti.dds.dynamicdata.DynamicData.set char array (p. 872)
8.76.7.66
or
See also:
com.rti.dds.dynamicdata.DynamicData.DynamicData.get byte
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
875
conversion
to
If the destination array is insufficiently long to store the data, this operation
will fail without copying anything.
MT Safety:
UNSAFE.
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
array <<in>> ( p. 279) The elements to copy.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
See also:
com.rti.dds.dynamicdata.DynamicData.DynamicData.get byte array
com.rti.dds.dynamicdata.DynamicData.DynamicData.set byte seq
8.76.7.68
void set byte seq (String member name, int member id,
ByteSeq value)
876
Class Documentation
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
value <<out>> ( p. 279) A sequence, from which the elements will be
copied.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
See also:
com.rti.dds.dynamicdata.DynamicData.DynamicData.get byte seq
com.rti.dds.dynamicdata.DynamicData.DynamicData.set byte array
8.76.7.69
void set long (String member name, int member id, long
value)
or
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
877
See also:
com.rti.dds.dynamicdata.DynamicData.DynamicData.get long
8.76.7.70
conversion
to
If the destination array is insufficiently long to store the data, this operation
will fail without copying anything.
MT Safety:
UNSAFE.
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
array <<in>> ( p. 279) The elements to copy.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
See also:
com.rti.dds.dynamicdata.DynamicData.DynamicData.get long array
com.rti.dds.dynamicdata.DynamicData.DynamicData.set long seq
8.76.7.71
void set long seq (String member name, int member id,
LongSeq value)
878
Class Documentation
MT Safety:
UNSAFE.
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
value <<out>> ( p. 279) A sequence, from which the elements will be
copied.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
See also:
com.rti.dds.dynamicdata.DynamicData.DynamicData.get long seq
com.rti.dds.dynamicdata.DynamicData.DynamicData.set long array
8.76.7.72
879
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
See also:
com.rti.dds.dynamicdata.DynamicData.get string (p. 860)
8.76.7.73
Support we have two instances of Foo: foo dst and foo src. We want to
replace the contents of foo dst.theBar with the contents of foo src.theBar.
Error handling has been omitted for the sake of brevity.
DynamicData foo_dst = ...;
DynamicData foo_src = ...;
DynamicData bar = new DynamicData(null, myProperties);
// Point to the source of the copy:
foo_src.bind_complex_member(
"theBar",
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
880
Class Documentation
DynamicData.MEMBER_ID_UNSPECIFIED,
bar);
try {
// Just one copy:
foo_dst.set_complex_member(
"theBar",
DynamicData.MEMBER_ID_UNSPECIFIED,
bar);
} finally {
// Tear down:
foo_src.unbind_complex_member(bar);
}
bar.delete();
MT Safety:
UNSAFE.
Parameters:
member name <<in>> ( p. 279) The name of the member or null to
look up the member by its ID.
member id <<in>> ( p. 279) The ID of the member or
com.rti.dds.dynamicdata.DynamicData.MEMBER ID UNSPECIFIED (p. 880) to look up by name. See Member
Names and IDs (p. 824).
value <<in>> ( p. 279) The source com.rti.dds.dynamicdata.DynamicData
(p. 817) object whose contents will be copied.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362)
or
See also:
com.rti.dds.dynamicdata.DynamicData.get complex member
(p. 860)
com.rti.dds.dynamicdata.DynamicData.bind complex member
(p. 835)
8.76.8
8.76.8.1
881
Most commonly, this constant will be used in get operations to indicate that
a lookup should be performed based on a name, not on an ID.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
882
Class Documentation
Get
Set
com.rti.dds.dynamicdata.DynamicData.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.DynamicData.set
int
int
com.rti.dds.dynamicdata.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.set
short
short
(p. 845)
(p. 863)
com.rti.dds.dynamicdata.DynamicData.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.DynamicData.set
long
long
com.rti.dds.dynamicdata.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.set
float
float
(p. 847)
(p. 865)
com.rti.dds.dynamicdata.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.set
double
double
(p. 849)
(p. 868)
com.rti.dds.dynamicdata.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.set
boolean
boolean
(p. 851)
(p. 870)
com.rti.dds.dynamicdata.DynamicData.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.DynamicData.set
byte
byte
com.rti.dds.dynamicdata.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.set
char
char
(p. 853)
(p. 872)
com.rti.dds.dynamicdata.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.set
string
string
(p. 860)
(p. 878)
Table 8.3: Basic Types
Get
Set
com.rti.dds.dynamicdata.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.set
complex member
complex member
(p. 860)
(p. 879)
Table 8.4: Structures, Arrays, and Other Complex Types
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
Get
883
Set
com.rti.dds.dynamicdata.DynamicData.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.DynamicData.set
int array
int array
com.rti.dds.dynamicdata.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.set
short array
short array
(p. 846)
(p. 864)
com.rti.dds.dynamicdata.DynamicData.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.DynamicData.set
long array
long array
com.rti.dds.dynamicdata.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.set
float array
float array
(p. 848)
(p. 866)
com.rti.dds.dynamicdata.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.set
double array
double array
(p. 850)
(p. 868)
com.rti.dds.dynamicdata.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.set
boolean array
boolean
(p. 852)
(p. 870)
com.rti.dds.dynamicdata.DynamicData.DynamicData.set
com.rti.dds.dynamicdata.DynamicData.DynamicData.get
byte array
byte array
com.rti.dds.dynamicdata.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.set
char array
char array
(p. 854)
(p. 872)
Table 8.5: Arrays of Basic Types
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
884
Class Documentation
Get
Set
com.rti.dds.dynamicdata.DynamicData.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.DynamicData.set
int seq
int seq
com.rti.dds.dynamicdata.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.set
short seq
short seq
(p. 847)
(p. 865)
com.rti.dds.dynamicdata.DynamicData.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.DynamicData.set
long seq
long seq
com.rti.dds.dynamicdata.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.set
float seq
float seq
(p. 849)
(p. 867)
com.rti.dds.dynamicdata.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.set
double seq
double seq
(p. 851)
(p. 869)
com.rti.dds.dynamicdata.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.set
boolean seq
boolean seq
(p. 853)
(p. 871)
com.rti.dds.dynamicdata.DynamicData.DynamicData.set
com.rti.dds.dynamicdata.DynamicData.DynamicData.get
byte seq
byte seq
com.rti.dds.dynamicdata.DynamicData.get
com.rti.dds.dynamicdata.DynamicData.set
char seq
char seq
(p. 855)
(p. 873)
Table 8.6: Sequences of Basic Types
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.77
885
DynamicDataInfo (int member count, int stored size, boolean is optimized storage)
A descriptor for a com.rti.dds.dynamicdata.DynamicData ( p. 817) object.
Public Attributes
int member count
The
number
of
data
members
in
com.rti.dds.dynamicdata.DynamicData ( p. 817) sample.
this
8.77.1
of
this
Detailed Description
8.77.2
8.77.2.1
886
Class Documentation
8.77.2.2
data
of
this
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.78
887
A descriptor for a single member (i.e. field) of dynamically defined data type.
Inherits Struct.
Public Attributes
int member id
An integer that uniquely identifies the data member within
com.rti.dds.dynamicdata.DynamicData ( p. 817) samples type.
this
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
888
Class Documentation
8.78.1
Detailed Description
A descriptor for a single member (i.e. field) of dynamically defined data type.
See also:
com.rti.dds.dynamicdata.DynamicData.get member info (p. 840)
8.78.2
8.78.2.1
int member id
this
For sparse data types, this value will be assigned by the type designer. For
types defined in IDL, it will be assigned automatically by the middleware based
on the members declaration order within the type.
See also:
com.rti.dds.typecode.TCKind (p. 1525)
8.78.2.2
8.78.2.3
Indicates whether the corresponding member of the data type actually exists in
this sample.
For
non-sparse
data
types,
com.rti.dds.infrastructure.true.
this
value
will
always
be
See also:
com.rti.dds.typecode.TCKind (p. 1525)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
889
The kind of type of this data member (e.g. integer, structure, etc.).
This is a convenience field; it is equivalent to looking up the member in the com.rti.dds.typecode.TypeCode (p. 1611) and getting the
com.rti.dds.typecode.TCKind (p. 1525) from there.
8.78.2.5
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
890
Class Documentation
8.79
A
collection
of
attributes
used
to
com.rti.dds.dynamicdata.DynamicData (p. 817) objects.
configure
DynamicDataProperty t (int buffer initial size, int buffer max size, int buffer max size increment)
The constructor.
Public Attributes
int buffer initial size = 0
The
initial
amount
of
memory
used
by
com.rti.dds.dynamicdata.DynamicData ( p. 817) object, in bytes.
this
8.79.1
memory
that
( p. 817) object may
this
use,
Detailed Description
A
collection
of
attributes
used
to
com.rti.dds.dynamicdata.DynamicData (p. 817) objects.
8.79.2
8.79.2.1
DynamicDataProperty t ()
configure
The constructor.
8.79.2.2
The constructor.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.79.3
8.79.3.1
The
initial
amount
of
memory
used
by
com.rti.dds.dynamicdata.DynamicData (p. 817) object, in bytes.
891
this
See also:
com.rti.dds.dynamicdata.DynamicDataProperty t.buffer max size (p. 891)
8.79.3.2
The
maximum
amount
of
memory
that
this
com.rti.dds.dynamicdata.DynamicData (p. 817) object may use, in
bytes.
It will grow to this size from the initial size as needed.
See also:
com.rti.dds.dynamicdata.DynamicDataProperty t.buffer initial size (p. 891)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
892
Class Documentation
8.80
8.80.1
from
the
Detailed Description
<
See also:
com.rti.dds.subscription.DataReader (p. 487)
com.rti.ndds.example.FooDataReader (p. 979)
com.rti.dds.dynamicdata.DynamicData (p. 817)
8.80.2
8.80.2.1
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
This
operation
offers
the
same
functionality
and
API
as
com.rti.ndds.example.FooDataReader.take (p. 983) except that the
samples returned remain in the com.rti.dds.subscription.DataReader
(p. 487) such that they can be retrieved again by means of a read or take
operation.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
893
894
Class Documentation
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET
(p. 1363),
(p. 1360)
com.rti.dds.infrastructure.RETCODE NO DATA
or com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
See also:
com.rti.ndds.example.FooDataReader.read w condition
(p. 990),
com.rti.ndds.example.FooDataReader.take
(p. 983),
com.rti.ndds.example.FooDataReader.take w condition (p. 991)
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.81
895
8.81.1
Detailed Description
8.81.2
8.81.2.1
DynamicDataSeq ()
896
Class Documentation
8.81.2.2
8.81.2.3
Construct a new com.rti.dds.dynamicdata.DynamicDataSeq (p. 895) containing the same elements as the given collection.
See also:
http://java.sun.com/javase/6/docs/api/java/util/Collection.html
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.82
897
A
collection
of
attributes
used
to
com.rti.dds.dynamicdata.DynamicData (p. 817) objects.
configure
Public Attributes
final DynamicDataProperty t data
These
properties
will
be
provided
to
every
new
com.rti.dds.dynamicdata.DynamicData ( p. 817) sample created from
the com.rti.dds.dynamicdata.DynamicDataTypeSupport ( p. 901).
8.82.1
Detailed Description
A
collection
of
attributes
used
to
com.rti.dds.dynamicdata.DynamicData (p. 817) objects.
8.82.2
8.82.2.1
DynamicDataTypeProperty t ()
configure
The constructor.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
898
Class Documentation
8.82.2.2
DynamicDataTypeProperty t (DynamicDataProperty t
data, DynamicDataTypeSerializationProperty t
serialization)
The constructor.
8.82.3
8.82.3.1
Initial value:
new DynamicDataProperty_t()
These
properties
will
be
provided
to
every
new
com.rti.dds.dynamicdata.DynamicData (p. 817) sample created from
the com.rti.dds.dynamicdata.DynamicDataTypeSupport (p. 901).
8.82.3.2
final DynamicDataTypeSerializationProperty t
serialization
Initial value:
new DynamicDataTypeSerializationProperty_t()
Properties that govern how the data of this type will be serialized on the network.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.83
DynamicDataTypeSerializationProperty t
Class Reference
Properties that govern how data of a certain type will be serialized on the
network.
DynamicDataTypeSerializationProperty t (boolean
compatible alignment, int max size serialized)
use 42e -
The constructor.
Public Attributes
boolean use 42e compatible alignment = false
Use RTI Connext 4.2e-compatible alignment for large primitive types.
8.83.1
Detailed Description
Properties that govern how data of a certain type will be serialized on the
network.
8.83.2
8.83.2.1
DynamicDataTypeSerializationProperty t ()
The constructor.
8.83.2.2
DynamicDataTypeSerializationProperty t (boolean
use 42e compatible alignment, int max size serialized)
The constructor.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
900
Class Documentation
8.83.3
8.83.3.1
The maximum number of bytes that objects of a given type could consume when
serialized on the network.
This value is used to set the sizes of certain internal middleware buffers.
The effective value of the maximum serialized size will be the
value of this field or the size automatically inferred from the types
com.rti.dds.typecode.TypeCode (p. 1611), whichever is smaller.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.84
901
and
creating
from
the
902
Class Documentation
Deeply copy the given data samples.
void delete ()
Delete a com.rti.dds.dynamicdata.DynamicDataTypeSupport ( p. 901)
object.
for
8.84.1
Detailed Description
and
creating
903
8.84.2
8.84.2.1
904
Class Documentation
8.84.3
8.84.3.1
8.84.3.2
Remove
the
definition
of
this
type
com.rti.dds.domain.DomainParticipant (p. 654).
from
the
8.84.3.3
905
This operation is useful when registering a type, because in most cases it is not
necessary for the physical and logical names of the type to be different.
myTypeSupport.register_type(myParticipant, myTypeSupport.get_type_name());
See also:
com.rti.ndds.example.FooTypeSupport.get type name (p. 1036)
8.84.3.4
Create a new com.rti.dds.dynamicdata.DynamicData (p. 817) sample initialized with the com.rti.dds.typecode.TypeCode (p. 1611) and properties
of this com.rti.dds.dynamicdata.DynamicDataTypeSupport (p. 901).
See also:
com.rti.ndds.example.FooTypeSupport.create data
com.rti.dds.dynamicdata.DynamicData.DynamicData.DynamicData
com.rti.dds.dynamicdata.DynamicDataTypeProperty t.data
(p. 898)
8.84.3.6
the
com.rti.dds.dynamicdata.DynamicData
See also:
com.rti.ndds.example.FooTypeSupport.delete data
com.rti.dds.dynamicdata.DynamicDataTypeSupport.create data
(p. 905)
8.84.3.7
906
Class Documentation
See also:
com.rti.dds.dynamicdata.DynamicData.print (p. 833)
8.84.3.8
void delete ()
8.84.4
8.84.4.1
Cached exception to be thrown in the event that we cant create native type
support.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.85
907
register instance
(DynamicData
instance -
Informs RTI Connext that the application will be modifying a particular instance.
void unregister instance w timestamp (DynamicData instance data, InstanceHandle t handle, Time t source timestamp)
Performs the same function as com.rti.ndds.example.FooDataWriter.unregister instance ( p. 1016) except that it also provides the value for the source timestamp.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
908
Class Documentation
void write untyped (Object instance data, InstanceHandle t handle)
Publish a data sample.
void write w timestamp (DynamicData instance data, InstanceHandle t handle, Time t source timestamp)
Performs the same function as com.rti.ndds.example.FooDataWriter.write
( p. 1021) except that it also provides the value for the source timestamp.
void dispose w timestamp (DynamicData instance data, InstanceHandle t instance handle, Time t source timestamp)
Performs the same functions as dispose except that the application provides the value for the source timestamp that is made
available to com.rti.dds.subscription.DataReader ( p. 487) objects by means of the source timestamp attribute inside the
com.rti.dds.subscription.SampleInfo ( p. 1398).
void dispose w timestamp untyped (Object instance data, InstanceHandle t instance handle, Time t source timestamp)
Dispose a data sample using the given time instead of the current time.
8.85.1
Detailed Description
<
See also:
com.rti.dds.publication.DataWriter (p. 557)
com.rti.ndds.example.FooDataWriter (p. 1012)
com.rti.dds.dynamicdata.DynamicData (p. 817)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.85.2
8.85.2.1
909
Informs RTI Connext that the application will be modifying a particular instance.
This operation is only useful for keyed data types. Using it for non-keyed
types causes no effect and returns com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL. The operation takes as a parameter an instance (of which only the key value is examined) and returns a handle that can
be used in successive write() (p. 916) or dispose() (p. 921) operations.
The operation gives RTI Connext an opportunity to pre-configure itself to improve performance.
The use of this operation by an application is optional even for keyed types. If
an instance has not been pre-registered, the application can use the special value
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL as
the com.rti.dds.infrastructure.InstanceHandle t (p. 1055) paramater to
the write or dispose operation and RTI Connext will auto-register the instance.
For best performance,
the operation should be invoked prior
to
calling
any
operation
that
modifies
the
instance,
such
as
com.rti.ndds.example.FooDataWriter.write
(p. 1021),
(p. 1024),
com.rti.ndds.example.FooDataWriter.write w timestamp
com.rti.ndds.example.FooDataWriter.dispose
(p. 1027)
and
com.rti.ndds.example.FooDataWriter.dispose w timestamp (p. 1029)
and the handle used in conjunction with the data for those calls.
When this operation is used, RTI Connext will automatically supply the value
of the source timestamp that is used.
This operation may fail and return com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL if com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max instances (p. 1352) limit has been exceeded.
The operation is idempotent. If it is called for an already registered instance,
it just returns the already allocated handle. This may be used to lookup and
retrieve the handle allocated to a given instance.
This operation can only be called after com.rti.dds.publication.DataWriter
(p. 557) has been enabled. Otherwise, com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL will be returned.
Parameters:
instance data <<in>> ( p. 279) The instance that should be registered.
Of this instance, only the fields that represent the key are examined
by the function. Cannot be NULL..
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
910
Class Documentation
Returns:
For keyed data type, a handle that can be used in the calls
that
take
a
com.rti.dds.infrastructure.InstanceHandle t (p. 1055), such as write, dispose, unregister instance, or return
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL on failure. If the instance data is of a data type that has no keys,
this function always return com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL.
See also:
com.rti.ndds.example.FooDataWriter.unregister instance
(p. 1016),
com.rti.ndds.example.FooDataWriter.get key value
(p. 1031), RELATIONSHIP BETWEEN REGISTRATION,
LIVELINESS and OWNERSHIP (p. 1202)
8.85.2.2
8.85.2.3
Performs the same functions as register instance except that the application
provides the value for the source timestamp.
The provided source timestamp potentially affects the relative order in which
readers observe events from multiple writers. Refer to DESTINATION ORDER (p. 53) QoS policy for details.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
911
This operation may fail and return com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL if com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max instances (p. 1352) limit has been exceeded.
This operation can only be called after com.rti.dds.publication.DataWriter
(p. 557) has been enabled. Otherwise, com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL will be returned.
Parameters:
instance data <<in>> ( p. 279) The instance that should be registered.
Of this instance, only the fields that represent the key are examined
by the function. Cannot be NULL.
source timestamp <<in>> ( p. 279) The timestamp value must be
greater than or equal to the timestamp value used in the last writer
operation (used in a register , unregister , dispose, or write, with either the automatically supplied timestamp or the application provided
timestamp). This timestamp may potentially affect the order in which
readers observe events from multiple writers. Cannot be NULL.
Returns:
For keyed data type, return a handle that can be used in the
calls that take a com.rti.dds.infrastructure.InstanceHandle t (p. 1055), such as write, dispose, unregister instance, or return
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL on failure. If the instance data is of a data type that has no keys,
this function always return com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL.
See also:
com.rti.ndds.example.FooDataWriter.unregister instance
(p. 1016),
com.rti.ndds.example.FooDataWriter.get key value
(p. 1031)
8.85.2.4
912
Class Documentation
913
com.rti.dds.subscription.InstanceStateKind.InstanceStateKind.NOT ALIVE NO WRITERS INSTANCE STATE for the instance, unless there are other
com.rti.dds.publication.DataWriter (p. 557) objects writing that same
instance.
This operation can affect the ownership of the data instance (see OWNERSHIP (p. 87)). If the com.rti.dds.publication.DataWriter (p. 557) was the
exclusive owner of the instance, then calling unregister instance() (p. 911)
will relinquish that ownership.
If com.rti.dds.infrastructure.ReliabilityQosPolicy.kind (p. 1327) is set to
com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQosPolicyKind.RELIABLE RELIABILITY QOS and the unregistration would overflow the resource
limits of this writer or of a reader, this operation may block for up to
com.rti.dds.infrastructure.ReliabilityQosPolicy.max blocking time
(p. 1327); if this writer is still unable to unregister after that period, this
method will fail with com.rti.dds.infrastructure.RETCODE TIMEOUT
(p. 1364).
Parameters:
instance data <<in>> ( p. 279) The instance that should be unregistered. If com.rti.ndds.example.Foo (p. 977) has a key and
instance handle
is
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL, only the fields that represent
the key are examined by the function. Otherwise, instance data is not used. If instance data is used, it must represent
an instance that has been registerd.
Otherwise, this method
may fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) .
If com.rti.ndds.example.Foo
(p. 977) has a key, instance data can be NULL only if handle is
not
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle this method will fail with
t.HANDLE NIL. Otherwise,
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355).
handle <<in>> ( p. 279) represents the instance to be unregistered.
If com.rti.ndds.example.Foo (p. 977) has a key and handle
is
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL, handle is not used and instance is deduced
If com.rti.ndds.example.Foo (p. 977)
from instance data.
has no key, handle is not used. If handle is used, it must
represent an instance that has been registered. Otherwise, this
method may fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355).
This
method
will
fail
with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) if handle is NULL. If
com.rti.ndds.example.Foo (p. 977) has a key, handle cannot
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
914
Class Documentation
be
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL if instance data is NULL. Otherwise, this method
will report the error com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355).
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE TIMEOUT
(p. 1364)
or com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361)
See also:
com.rti.ndds.example.FooDataWriter.register instance (p. 1014)
com.rti.ndds.example.FooDataWriter.FooDataWriter.unregister instance w timestamp
com.rti.ndds.example.FooDataWriter.get key value (p. 1031)
RELATIONSHIP BETWEEN REGISTRATION, LIVELINESS
and OWNERSHIP (p. 1202)
8.85.2.5
915
Performs the same function as com.rti.ndds.example.FooDataWriter.unregister instance (p. 1016) except that it also provides the value for the source timestamp.
The provided source timestamp potentially affects the relative order in which
readers observe events from multiple writers. Refer to DESTINATION ORDER (p. 53) QoS policy for details.
The constraints on the values of the handle parameter and
the corresponding error behavior are the same specified for the
com.rti.ndds.example.FooDataWriter.unregister instance
(p. 1016)
operation.
This
operation
may
block
and
may
time
(com.rti.dds.infrastructure.RETCODE TIMEOUT (p. 1364))
the same circumtances described for the unregister instance operation.
out
under
Parameters:
instance data <<in>> ( p. 279) The instance that should be unregistered. If com.rti.ndds.example.Foo (p. 977) has a key and
instance handle
is
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL, only the fields that represent
the key are examined by the function. Otherwise, instance data is not used. If instance data is used, it must represent
an instance that has been registerd.
Otherwise, this method
may fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355). If com.rti.ndds.example.Foo (p. 977)
has a key, instance data can be NULL only if handle is
not
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL. Otherwise,
this method will fail with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355).
handle <<in>> ( p. 279) represents the instance to be unregistered.
If com.rti.ndds.example.Foo (p. 977) has a key and handle
is
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL, handle is not used and instance is deduced
from instance data.
If com.rti.ndds.example.Foo (p. 977)
has no key, handle is not used. If handle is used, it must
represent an instance that has been registered. Otherwise, this
method may fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355).
This
method
will
fail
with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) if handle is NULL. If
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
916
Class Documentation
com.rti.ndds.example.Foo (p. 977) has a key, handle cannot
be
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL if instance data is NULL. Otherwise, this method
will fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355).
source timestamp <<in>> ( p. 279) The timestamp value must be
greater than or equal to the timestamp value used in the last writer
operation (used in a register , unregister , dispose, or write, with either the automatically supplied timestamp or the application provided
timestamp). This timestamp may potentially affect the order in which
readers observe events from multiple writers. Cannot be NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE TIMEOUT
(p. 1364)
or com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
See also:
com.rti.ndds.example.FooDataWriter.register instance (p. 1014)
com.rti.ndds.example.FooDataWriter.unregister instance
(p. 1016)
com.rti.ndds.example.FooDataWriter.get key value (p. 1031)
8.85.2.7
917
indicates the identity of the instance should be automatically deduced from the
instance data (by means of the key).
If handle is any value other than com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL, then it must correspond to an instance that
has been registered. If there is no correspondence, the operation will fail with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355).
RTI Connext will not detect the error when the handle is any value other
than com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL, corresponds to an instance that has been registered, but does not correspond to the instance deduced from the instance data (by means of the
key). RTI Connext will treat as if the write() (p. 916) operation is for the
instance as indicated by the handle.
This operation may block if the RELIABILITY (p. 105) kind is set to
com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQosPolicyKind.RELIABLE RELIABILITY QOS and the modification would cause data to be lost or else
cause one of the limits specified in the RESOURCE LIMITS (p. 106) to be
exceeded.
Specifically,
this operation may block in the following situations (note that the list may not be exhaustive), even if its
com.rti.dds.infrastructure.HistoryQosPolicyKind
(p. 1050)
is
com.rti.dds.infrastructure.HistoryQosPolicyKind.HistoryQosPolicyKind.KEEP LAST HISTORY QOS:
If
(com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max samples (p. 1351) < com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max instances (p. 1352) com.rti.dds.infrastructure.HistoryQosPolicy.depth
(p. 1049)), then in the situation where the max samples resource limit
is exhausted, RTI Connext is allowed to discard samples of some other
instance, as long as at least one sample remains for such an instance. If
it is still not possible to make space available to store the modification,
the writer is allowed to block.
If
(com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max samples (p. 1351) < com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max instances (p. 1352)), then the com.rti.dds.publication.DataWriter
(p. 557)
may
block
regardless
of
the
com.rti.dds.infrastructure.HistoryQosPolicy.depth (p. 1049).
If
(com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.min send window size (p. 1383) < com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max samples (p. 1351)), then it is possible for the send window size limit to
be reached before RTI Connext is allowed to discard samples, in which
case the com.rti.dds.publication.DataWriter (p. 557) will block.
This
operation
may
also
block
when
using
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
918
Class Documentation
919
8.85.2.8
8.85.2.9
920
Class Documentation
Explicitly
provides
the
timestamp
that
will
be
available
obto
the
com.rti.dds.subscription.DataReader
(p. 487)
jects by means of the source timestamp attribute inside the
(Refer
to
com.rti.dds.subscription.SampleInfo
(p. 1398).
com.rti.dds.subscription.SampleInfo (p. 1398) and DESTINATION ORDER (p. 53) QoS policy for details)
The constraints on the values of the handle parameter and
the corresponding error behavior are the same specified for the
com.rti.ndds.example.FooDataWriter.write (p. 1021) operation.
This
operation
may
block
and
(com.rti.dds.infrastructure.RETCODE TIMEOUT
(p. 1364))
under
the
same
circumtances
com.rti.ndds.example.FooDataWriter.write (p. 1021).
time
out
described
for
If there are no instance resources left, this operation may fail with
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES
(p. 1362).
Calling com.rti.ndds.example.FooDataWriter.unregister instance (p. 1016) may help free up some resources.
This operation may fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) under the same circumstances described for
the write operation.
Parameters:
instance data <<in>> ( p. 279) The data to write. This method
will fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) if instance data is NULL.
handle <<in>> ( p. 279) Either the handle returned by a previous call to com.rti.ndds.example.FooDataWriter.register instance
(p. 1014),
or
else
the
special
value
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL. If com.rti.ndds.example.Foo (p. 977) has a
key and handle is not com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL,
handle
must
represent
a registered instance of type com.rti.ndds.example.Foo
Otherwise,
this
method
may
fail
with
(p. 977).
com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355).
This method will fail with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355) if handle is NULL.
921
8.85.2.10
922
Class Documentation
out
for
If there are no instance resources left, this operation may fail with
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES
(p. 1362).
Calling com.rti.ndds.example.FooDataWriter.unregister instance (p. 1016) may help freeing up some resources.
Parameters:
instance data <<in>> ( p. 279) The data to dispose.
If
com.rti.ndds.example.Foo (p. 977) has a key and instance handle
is
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL, only the fields that represent the key are
examined by the function.
Otherwise, instance data is not
used.
If com.rti.ndds.example.Foo (p. 977) has a key,
instance data can be NULL only if instance handle is
not
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL. Otherwise,
this method will fail with
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
923
8.85.2.11
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
924
Class Documentation
available
to
com.rti.dds.subscription.DataReader
(p. 487)
jects by means of the source timestamp attribute inside
com.rti.dds.subscription.SampleInfo (p. 1398).
obthe
time
out
described
for
If there are no instance resources left, this operation may fail with
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES
(p. 1362).
Calling com.rti.ndds.example.FooDataWriter.unregister instance (p. 1016) may help freeing up some resources.
Parameters:
instance data <<in>> ( p. 279) The data to dispose.
If
com.rti.ndds.example.Foo (p. 977) has a key and instance handle
is
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL, only the fields that represent the key are
examined by the function.
Otherwise, instance data is not
used.
If com.rti.ndds.example.Foo (p. 977) has a key,
instance data can be NULL only if instance handle is
not
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL. Otherwise,
this method will fail with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355).
instance handle <<in>> ( p. 279) Either the handle returned by a
previous call to com.rti.ndds.example.FooDataWriter.register instance
(p. 1014),
or
else
the
special
value
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL. If com.rti.ndds.example.Foo (p. 977) has a key
and instance handle is com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL,
instance handle
is
not
used and instance is deduced from instance data.
If
com.rti.ndds.example.Foo (p. 977) has no key, instance handle
is not used. If handle is used, it must represent a registered instance
of type com.rti.ndds.example.Foo (p. 977).
Otherwise, this
method may fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) This method will fail with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355) if handle is NULL. If com.rti.ndds.example.Foo
(p. 977)
has
a
key,
instance handle
cannot
be
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
925
8.85.2.12
Dispose a data sample using the given time instead of the current time.
This method allows type-independent code to work with a variety of concrete
com.rti.ndds.example.FooDataWriter (p. 1012) classes in a consistent way.
Statically
type-safe
code
should
use
the
appropriate
com.rti.ndds.example.FooDataWriter.dispose w timestamp (p. 1029)
method instead of this one. See that method for detailed documentation.
See also:
com.rti.dds.publication.DataWriter.dispose untyped (p. 578)
com.rti.ndds.example.FooDataWriter.dispose w timestamp
(p. 1029)
Implements DataWriter (p. 578).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
926
Class Documentation
8.85.2.13
or
See also:
com.rti.ndds.example.FooDataReader.get key value (p. 1009)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
927
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
928
Class Documentation
8.86
Public Attributes
String role name = null
Defines the role name of the endpoint group.
8.86.1
Detailed Description
8.86.2
8.86.2.1
EndpointGroup t ()
Constructor.
8.86.2.2
Copy constructor.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
929
8.86.3
8.86.3.1
Defines the minimum number of members that satisfies the endpoint group.
If used in the com.rti.dds.infrastructure.AvailabilityQosPolicy (p. 402)
on a com.rti.dds.publication.DataWriter (p. 557), it specifies the number
of DataReaders that must acknowledge a sample before the sample is considered
to be acknowledged by the Durable Subscription.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
930
Class Documentation
8.87
8.87.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.88
931
<<interface>> ( p. 279) Abstract base class for all the DDS objects that support QoS policies, a listener, and a status condition.
Inheritance diagram for Entity::
in
the
8.88.1
Detailed Description
<<interface>> ( p. 279) Abstract base class for all the DDS objects that support QoS policies, a listener, and a status condition.
All
operations
except
for
set qos(),
get qos(),
set listener(),
get listener()
and
enable()
(p. 935),
may
return
the
value
com.rti.dds.infrastructure.RETCODE NOT ENABLED (p. 1361).
QoS:
QoS Policies (p. 94)
Status:
Status Kinds (p. 110)
Listener:
com.rti.dds.infrastructure.Listener (p. 1130)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
932
Class Documentation
8.88.2
Abstract operations
Each derived entity provides the following operations specific to its role in RTI
Connext.
8.88.2.1
This
operation
sets
the
QoS
com.rti.dds.infrastructure.Entity (p. 931).
policies
of
the
This
operation
must
be
provided
by
each
of
the
derived
com.rti.dds.infrastructure.Entity
(p. 931)
classes
(com.rti.dds.domain.DomainParticipant
(p. 654),
com.rti.dds.topic.Topic (p. 1545), com.rti.dds.publication.Publisher
(p. 1262),
com.rti.dds.publication.DataWriter
(p. 557),
com.rti.dds.subscription.Subscriber
(p. 1476),
and
com.rti.dds.subscription.DataReader (p. 487)) so that the policies
that are meaningful to each com.rti.dds.infrastructure.Entity (p. 931) can
be set.
Precondition:
Certain policies are immutable (see QoS Policies (p. 94)): they can
only be set at com.rti.dds.infrastructure.Entity (p. 931) creation time
or before the entity is enabled. If set qos() is invoked after the
com.rti.dds.infrastructure.Entity (p. 931) is enabled and it attempts
to change the value of an immutable policy, the operation will fail
and return com.rti.dds.infrastructure.RETCODE IMMUTABLE POLICY (p. 1358).
Certain values of QoS policies can be incompatible with the settings
of the other policies. The set qos() operation will also fail if it
specifies a set of values that, once combined with the existing values,
would result in an inconsistent set of policies. In this case, the operation will fail and return com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359).
If the application supplies a non-default value for a QoS policy that
is not supported by the implementation of the service, the set qos operation will fail and return com.rti.dds.infrastructure.RETCODE UNSUPPORTED (p. 1365).
Postcondition:
The existing set of policies is only changed if the set qos()
operation succeeds.
This is indicated by a return code of
com.rti.dds.infrastructure.RETCODE OK. In all other cases, none of the
policies are modified.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
933
Each
derived
com.rti.dds.infrastructure.Entity
(p. 931)
class
(com.rti.dds.domain.DomainParticipant
(p. 654),
com.rti.dds.topic.Topic (p. 1545), com.rti.dds.publication.Publisher
com.rti.dds.publication.DataWriter
(p. 1262),
(p. 557),
com.rti.dds.subscription.Subscriber
(p. 1476),
com.rti.dds.subscription.DataReader
(p. 487))
has
a
corresponding
special
value
of
the
QoS
(com.rti.dds.domain.DomainParticipantFactory.PARTICIPANT QOS DEFAULT (p. 149), com.rti.dds.domain.DomainParticipant.PUBLISHER QOS DEFAULT (p. 153), com.rti.dds.domain.DomainParticipant.SUBSCRIBER QOS DEFAULT (p. 153), com.rti.dds.domain.DomainParticipant.TOPIC QOS DEFAULT (p. 152), com.rti.dds.publication.Publisher.DATAWRITER QOS DEFAULT (p. 182), com.rti.dds.subscription.Subscriber.DATAREADER QOS DEFAULT (p. 196)).
This special value may be used as a
parameter to the set qos operation to indicate that the QoS of the
com.rti.dds.infrastructure.Entity (p. 931) should be changed to match
the current default QoS set in the com.rti.dds.infrastructure.Entity
(p. 931)s factory. The operation set qos cannot modify the immutable QoS,
so a successful return of the operation indicates that the mutable QoS for
the Entity (p. 931) has been modified to match the current default for the
com.rti.dds.infrastructure.Entity (p. 931)s factory.
The set of policies specified in the qos parameter are applied on top of the
existing QoS, replacing the values of any policies previously set.
Possible error codes returned in addition to Standard Return Codes
com.rti.dds.infrastructure.RETCODE IMMUTABLE (p. 108) :
POLICY
(p. 1358),
or
com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359).
8.88.2.2
This operation allows access to the existing set of QoS policies for the
com.rti.dds.infrastructure.Entity (p. 931).
This operation must be
provided by each of the derived com.rti.dds.infrastructure.Entity
(p. 931)
classes
(com.rti.dds.domain.DomainParticipant
(p. 654),
com.rti.dds.topic.Topic (p. 1545), com.rti.dds.publication.Publisher
(p. 1262),
com.rti.dds.publication.DataWriter
(p. 557),
com.rti.dds.subscription.Subscriber
(p. 1476),
and
com.rti.dds.subscription.DataReader (p. 487)), so that the policies
that are meaningful to each com.rti.dds.infrastructure.Entity (p. 931) can
be retrieved.
Possible error codes are Standard Return Codes (p. 108).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
934
Class Documentation
8.88.2.3
8.88.2.4
This
operation
allows
access
to
the
com.rti.dds.infrastructure.Listener
(p. 1130)
attached
com.rti.dds.infrastructure.Entity (p. 931).
existing
to
the
This
operation
must
be
provided
by
each
of
the
derived
com.rti.dds.infrastructure.Entity
(p. 931)
classes
(com.rti.dds.domain.DomainParticipant
(p. 654),
com.rti.dds.topic.Topic (p. 1545), com.rti.dds.publication.Publisher
(p. 1262),
com.rti.dds.publication.DataWriter
(p. 557),
com.rti.dds.subscription.Subscriber
(p. 1476),
and
com.rti.dds.subscription.DataReader (p. 487)) so that the listener is of the
concrete type suitable to the particular com.rti.dds.infrastructure.Entity
(p. 931).
If no listener is installed on the com.rti.dds.infrastructure.Entity (p. 931),
this operation will return null.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.88.3
8.88.3.1
void enable ()
935
936
Class Documentation
Listeners associated with an entity are not called until the entity is enabled.
Conditions associated with a disabled entity are inactive, that is, they have a
trigger value == FALSE.
Exceptions:
One of the Standard Return Codes (p. 108), Standard Return Codes (p. 108) or com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
8.88.3.2
added
to
that
the
that affect
a
apthe
Returns:
the status condition associated with this entity.
8.88.3.3
Retrieves
the
list
of
communication
statuses
com.rti.dds.infrastructure.Entity (p. 931) that are triggered.
in
the
That is, the list of statuses whose value has changed since the last time the
application read the status using the get status() method.
When the entity is first created or if the entity is not enabled, all communication
statuses are in the untriggered state so the list returned by the get status changes operation will be empty.
The list of statuses returned by the get status changes operation refers to the
status that are triggered on the Entity (p. 931) itself and does not include
statuses that apply to contained entities.
Returns:
list of communication statuses in the com.rti.dds.infrastructure.Entity
(p. 931) that are triggered.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
937
See also:
Status Kinds (p. 110)
8.88.3.4
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
938
Class Documentation
8.89
Public Attributes
boolean autoenable created entities
Specifies whether the entity acting as a factory automatically enables the
instances it creates.
8.89.1
Detailed Description
8.89.2
Usage
939
8.89.3
8.89.3.1
Specifies whether the entity acting as a factory automatically enables the instances it creates.
The
setting
of
autoenable created entities
to
com.rti.dds.infrastructure.true
indicates
that
the
factory
create <entity >
operation(s)
will
automatically
invoke
the
com.rti.dds.infrastructure.Entity.enable (p. 935) operation each time
a new com.rti.dds.infrastructure.Entity (p. 931) is created. Therefore,
the com.rti.dds.infrastructure.Entity (p. 931) returned by create <entity > will already be enabled. A setting of com.rti.dds.infrastructure.false
indicates that the com.rti.dds.infrastructure.Entity (p. 931) will
not be automatically enabled.
Your application will need to call
com.rti.dds.infrastructure.Entity.enable (p. 935) itself.
The
default
setting
of
autoenable created entities
=
com.rti.dds.infrastructure.true means that, by default, it is not necessary
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
940
Class Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.90
8.90.1
941
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
942
Class Documentation
8.91
Assigns
a
name
and
a
role
name
to
a
com.rti.dds.domain.DomainParticipant
(p. 654),
com.rti.dds.publication.DataWriter
(p. 557)
or
com.rti.dds.subscription.DataReader (p. 487).
These names will be
visible during the discovery process and in RTI tools to help you visualize and
debug your system.
Inheritance diagram for EntityNameQosPolicy::
Public Attributes
String name
The name of the entity.
8.91.1
Detailed Description
Assigns
a
name
and
a
role
name
to
a
com.rti.dds.domain.DomainParticipant
(p. 654),
com.rti.dds.publication.DataWriter
(p. 557)
or
com.rti.dds.subscription.DataReader (p. 487).
These names will be
visible during the discovery process and in RTI tools to help you visualize and
debug your system.
Entity:
com.rti.dds.domain.DomainParticipant
com.rti.dds.subscription.DataReader
com.rti.dds.publication.DataWriter (p. 557)
(p. 654),
(p. 487),
Properties:
RxO (p. 101) = NO;
Changeable (p. 102) = UNTIL ENABLE (p. 102)
8.91.2
Usage
The name and role name can only be 255 characters in length.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.91.3
8.91.3.1
String name
943
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
944
Class Documentation
8.92
8.92.1
Detailed Description
8.92.2
8.92.2.1
The constructor.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
945
Parameters:
ordinal The value of the ordinal field of the new enumerated constant.
name The value of the name field of the new enumerated constant.
See also:
com.rti.dds.util.Enum.ordinal (p. 945)
com.rti.dds.util.Enum.name (p. 946)
8.92.3
8.92.3.1
8.92.3.2
This is the implementation of the Copyable interface. While this implementation is not strictly a copy it can have the same effect. In order to use
it properly, assign the result of the operation to the member that is the
target of the copy. So, for example: myEnumField = myEnumField.copy from(anotherInstanceOfEnum); Since Enum (p. 944)s are immutable there cannot be a true copy made but this method will return a reference to the same
enumerate as anotherInstanceOfEnum.
Returns:
returns src
See also:
com.rti.dds.infrastructure.Copyable.copy from
(p. 480)(java.lang.Object)
Implements Copyable (p. 480).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
946
Class Documentation
8.92.3.3
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.93
947
Public Attributes
String name
The name of the enumeration member.
int ordinal
The value associated the the enumeration member.
8.93.1
Detailed Description
8.93.2
8.93.2.1
Constructs an EnumMember (p. 947) object initialized with the given values.
8.93.3
8.93.3.1
String name
948
Class Documentation
8.93.3.2
int ordinal
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.94
949
Public Attributes
final ThreadSettings t thread
Event thread QoS.
8.94.1
Detailed Description
950
Class Documentation
Properties:
RxO (p. 101) = N/A
Changeable (p. 102) = NO (p. 102)
8.94.2
8.94.2.1
951
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
952
Class Documentation
8.95
Public Attributes
boolean use shared exclusive area
Whether the com.rti.dds.infrastructure.Entity ( p. 931) is protected by its
own exclusive area or the shared exclusive area.
8.95.1
Detailed Description
(p. 1262),
Properties:
RxO (p. 101) = N/A
Changeable (p. 102) = NO (p. 102)
See also:
com.rti.dds.infrastructure.Listener (p. 1130)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.95.2
953
Usage
8.95.3
8.95.3.1
954
Class Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.96
Inherits Struct.
Public Attributes
boolean key only filter = false
boolean writer side filter optimization = false
8.96.1
Detailed Description
8.96.2
8.96.2.1
8.96.2.2
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
955
956
Class Documentation
8.97
8.97.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.98
957
Inherits Struct.
Public Attributes
SampleIdentity t related sample identity = new SampleIdentity t()
int priority = PRIORITY UNDEFINED
8.98.1
Detailed Description
8.98.2
8.98.2.1
8.98.2.2
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
958
Class Documentation
8.99
void setFloat (int dstIndex, float[ ] elements, int srcIndex, int length)
Copy a portion of the given array into this sequence.
959
int getMaximum ()
Get the current maximum number of elements that can be stored in this
sequence.
8.99.1
Detailed Description
8.99.2
8.99.2.1
FloatSeq ()
960
Class Documentation
Parameters:
floats the initial contents of this sequence
Exceptions:
NullPointerException if the input array is null
8.99.3
8.99.3.1
Append length elements from the given array to this sequence, starting at index
offset in that array.
Exceptions:
NullPointerException if the given array is null.
8.99.3.2
Exceptions:
NullPointerException if the given array is null
8.99.3.3
Shift all elements in the sequence starting from the given index and add the
element to the given index.
8.99.3.5
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
961
Set the new float at the given index and return the old float.
Exceptions:
IndexOutOfBoundsException if the index is out of bounds.
8.99.3.7
8.99.3.8
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
962
Class Documentation
8.99.3.9
int getMaximum ()
Get the current maximum number of elements that can be stored in this sequence.
The maximum of the sequence represents the maximum number of elements that
the underlying buffer can hold. It does not represent the current number of
elements.
The maximum is a non-negative number. It is initialized when the sequence is
first created.
The maximum can be changed implicitly by adding an element
or explicitly by calling
to the sequence with add() (p. 963),
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.setMaximum.
Returns:
the current maximum of the sequence.
See also:
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.size()
Implements Sequence (p. 1429).
8.99.3.10
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
963
964
Class Documentation
8.100
name
of
the
com.rti.dds.publication.FlowController
static
final
NAME
String
Special value of com.rti.dds.infrastructure.PublishModeQosPolicy.flow controller name ( p. 1297) that refers to the built-in fixed-rate flow
controller.
static final
NAME
String
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
965
Special value of com.rti.dds.infrastructure.PublishModeQosPolicy.flow controller name ( p. 1297) that refers to the built-in on-demand flow
controller.
8.100.1
Detailed Description
8.100.2
8.100.2.1
8.100.2.2
8.100.2.3
of
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
the
966
Class Documentation
Once a com.rti.dds.publication.FlowController (p. 964) has been instantiated, only the com.rti.dds.publication.FlowControllerProperty t.token bucket
(p. 969)
can
be
changed.
The
com.rti.dds.publication.FlowControllerProperty t.scheduling policy
(p. 969) is immutable.
A new com.rti.dds.publication.FlowControllerTokenBucketProperty t.period (p. 975) only takes effect at the next scheduled token distribution time
(as determined by its previous value).
Parameters:
prop <<in>> ( p. 279) The new com.rti.dds.publication.FlowControllerProperty t (p. 968). Property must be consistent. Immutable fields cannot
be changed after com.rti.dds.publication.FlowController
(p. 964)
has
been
created.
The
special
value
com.rti.dds.domain.DomainParticipant.FLOW CONTROLLER PROPERTY DEFAULT
(p. 154)
can be used to indicate that the property of the
com.rti.dds.publication.FlowController
(p. 964)
should
be
changed
to
match
the
current
default
com.rti.dds.publication.FlowControllerProperty t
(p. 968)
set in the com.rti.dds.domain.DomainParticipant (p. 654).
Cannot be NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE IMMUTABLE POLICY (p. 1358), or com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359).
See also:
com.rti.dds.publication.FlowControllerProperty t (p. 968) for rules
on consistency among property values.
8.100.2.4
967
Exceptions:
One of the Standard Return Codes (p. 108)
8.100.2.5
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
968
Class Documentation
8.101
FlowControllerProperty t
ence
Class
Determines
the
flow
control
characteristics
com.rti.dds.publication.FlowController (p. 964).
Referof
the
of
the
Inherits Struct.
Public Attributes
FlowControllerSchedulingPolicy scheduling policy
Scheduling policy.
8.101.1
Detailed Description
Determines
the
flow
control
characteristics
com.rti.dds.publication.FlowController (p. 964).
The flow control characteristics shape the network traffic by determining how often and in what order associated asynchronous
com.rti.dds.publication.DataWriter (p. 557) instances are serviced
and how much data they are allowed to send.
Note
that
these
settings
apply
directly
to
the
com.rti.dds.publication.FlowController (p. 964), and do not depend
on the number of com.rti.dds.publication.DataWriter (p. 557) instances the com.rti.dds.publication.FlowController (p. 964) is servicing.
For instance, the specified flow rate does not double simply because two
com.rti.dds.publication.DataWriter (p. 557) instances are waiting to
write.
Entity:
com.rti.dds.publication.FlowController (p. 964)
Properties:
RxO (p. 101) = N/A
Changeable (p. 102) = NO (p. 102) for com.rti.dds.publication.FlowControllerProperty t.scheduling policy
(p. 969),
YES
(p. 102)
for
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
969
8.101.2
8.101.2.1
Scheduling policy.
Determines
the
scheduling
policy
for
servicing
the
com.rti.dds.publication.DataWriter (p. 557) instances associated with
the com.rti.dds.publication.FlowController (p. 964).
[default]
idref FlowControllerSchedulingPolicy EDF FLOW CONTROLLER SCHED POLICY
8.101.2.2
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
970
Class Documentation
8.102
FlowControllerSchedulingPolicy
Reference
Class
RR FLOW -
static
final
FlowControllerSchedulingPolicy
CONTROLLER SCHED POLICY
EDF FLOW -
8.102.1
Detailed Description
971
QoS:
com.rti.dds.publication.FlowControllerProperty t (p. 968)
8.102.2
8.102.2.1
final FlowControllerSchedulingPolicy
RR FLOW CONTROLLER SCHED POLICY [static]
8.102.2.2
final FlowControllerSchedulingPolicy
EDF FLOW CONTROLLER SCHED POLICY
[static]
972
Class Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.103
973
FlowControllerTokenBucketProperty t
Class Reference
Public Attributes
int max tokens
Maximum number of tokens than can accumulate in the token bucket.
Duration t period
Period for adding tokens to and removing tokens from the bucket.
8.103.1
Detailed Description
974
Class Documentation
Note that if the same sample must be sent to multiple destinations, separate
tokens are required for each destination. Only when multiple samples are destined to the same destination will they be co-alesced and sent using the same
token(s). In other words, each token can only contribute to a single network
packet.
Entity:
com.rti.dds.publication.FlowController (p. 964)
Properties:
RxO (p. 101) = N/A
Changeable (p. 102) = YES (p. 102).
However,
the special
value
of
com.rti.dds.infrastructure.Duration t.INFINITE
as
com.rti.dds.publication.FlowControllerTokenBucketProperty t.period
(p. 975)
is
strictly
used
to
create
an
on-demand
The token period
com.rti.dds.publication.FlowController (p. 964).
cannot toggle from an infinite to finite value (or vice versa). It can, however,
change from one finite value to another.
8.103.2
8.103.2.1
The number of tokens added to the token bucket per specified period.
com.rti.dds.publication.FlowController (p. 964) transmits data only when
tokens are available. Tokens are periodically replenished. This field determines
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
975
the number of tokens added to the token bucket with each periodic replenishment.
Available
tokens
are
distributed
to
associated
com.rti.dds.publication.DataWriter (p. 557) instances based on the
com.rti.dds.publication.FlowControllerProperty t.scheduling policy
(p. 969).
Use com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106) to add the maximum number of tokens allowed
by
com.rti.dds.publication.FlowControllerTokenBucketProperty t.max tokens (p. 974).
[default] com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
8.103.2.3
The number of tokens removed from the token bucket per specified period.
com.rti.dds.publication.FlowController (p. 964) transmits data only when
tokens are available. When tokens are replenished and there are sufficient tokens
to send all samples in the queue, this property determines whether any or all of
the leftover tokens remain in the bucket.
Use com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106) to remove all excess tokens from the token bucket once
all samples have been sent. In other words, no token accumulation is allowed.
When new samples are written after tokens were purged, the earliest point in
time at which they can be sent is at the next periodic replenishment.
[default] 0
8.103.2.4
Duration t period
Period for adding tokens to and removing tokens from the bucket.
com.rti.dds.publication.FlowController (p. 964) transmits data only when
tokens are available. This field determines the period by which tokens are added
or removed from the token bucket.
The special value com.rti.dds.infrastructure.Duration t.INFINITE can be
used to create an on-demand com.rti.dds.publication.FlowController
(p. 964),
for
which
tokens
are
no
longer
replenished
periodically.
Instead,
tokens must be added explicitly by
calling
com.rti.dds.publication.FlowController.trigger flow
(p. 967).
This
external
trigger
adds
com.rti.dds.publication.FlowControllerTokenBucketProperty t.tokens added per period (p. 974) tokens each time it is called (subject to
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
976
Class Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.104
977
8.104.1
Detailed Description
8.104.2
8.104.2.1
This is the implementation of the Copyable interface. This method will perform a deep copy of src. This method could be placed into FooTypeSupport
(p. 1036).
rather than here by using the -noCopyable option to rtiddsgen.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
978
Class Documentation
Parameters:
src The Object which contains the data to be copied.
Returns:
Returns this
Exceptions:
NullPointerException If src is null.
ClassCastException If src is not the same type as this.
See also:
com.rti.dds.infrastructure.Copyable.copy from
(p. 480)(java.lang.Object)
Implements Copyable (p. 480).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.105
979
from
the
void take (FooSeq received data, SampleInfoSeq info seq, int max samples, int sample states, int view states, int instance states)
Access
a
collection
of
data-samples
com.rti.dds.subscription.DataReader ( p. 487).
from
the
void read w condition (FooSeq received data, SampleInfoSeq info seq, int max samples, ReadCondition condition)
Accesses
via
com.rti.ndds.example.FooDataReader.read
( p. 981) the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition ( p. 1313).
void take w condition (FooSeq received data, SampleInfoSeq info seq, int max samples, ReadCondition condition)
Analogous
to
com.rti.ndds.example.FooDataReader.read w condition
( p. 990)
except
it
accesses
samples
via
the
com.rti.ndds.example.FooDataReader.take ( p. 983) operation.
void read next sample (Foo received data, SampleInfo sample info)
Copies the next not-previously-accessed data
com.rti.dds.subscription.DataReader ( p. 487).
value
from
the
void take next sample (Foo received data, SampleInfo sample info)
Copies the next not-previously-accessed data
com.rti.dds.subscription.DataReader ( p. 487).
value
from
the
980
Class Documentation
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader ( p. 487).
from
the
from
the
from
the
from
the
void read next instance w condition (FooSeq received data, SampleInfoSeq info seq, int max samples, InstanceHandle t previous handle, ReadCondition condition)
Accesses
via
com.rti.ndds.example.FooDataReader.read next instance ( p. 999) the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition ( p. 1313).
void take next instance w condition (FooSeq received data, SampleInfoSeq info seq, int max samples, InstanceHandle t previous handle, ReadCondition condition)
Accesses
via
com.rti.ndds.example.FooDataReader.take next instance ( p. 1002) the samples that match the criteria specified in
the com.rti.dds.subscription.ReadCondition ( p. 1313).
981
8.105.1
Detailed Description
8.105.2
8.105.2.1
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
This
operation
offers
the
same
functionality
and
API
as
com.rti.ndds.example.FooDataReader.take (p. 983) except that the
samples returned remain in the com.rti.dds.subscription.DataReader
(p. 487) such that they can be retrieved again by means of a read or take
operation.
Please refer to the documentation of com.rti.ndds.example.FooDataReader.take()
(p. 983) for details on the number of samples returned within the received data
and info seq as well as the order in which the samples appear in these sequences.
The act of reading a sample changes its sample state to
com.rti.dds.subscription.SampleStateKind.SampleStateKind.READ SAMPLE STATE. If the sample belongs to the most recent generation
of the instance, it will also set the view state of the instance to be
com.rti.dds.subscription.ViewStateKind.ViewStateKind.NOT NEW VIEW STATE. It will not affect the instance state of the instance.
Important: If the samples returned by this method are loaned from RTI
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
982
Class Documentation
983
(p. 990),
com.rti.ndds.example.FooDataReader.take
(p. 983),
com.rti.ndds.example.FooDataReader.take w condition (p. 991)
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
8.105.2.2
Access
a
collection
of
data-samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
984
Class Documentation
If com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy.max infos (p. 547) is limited, the number of samples returned may also be
limited if insufficient com.rti.dds.subscription.SampleInfo (p. 1398)
resources are available.
If the read or take succeeds and the number of samples returned has been
limited (by means of a maximum limit, as listed above, or insufficient
com.rti.dds.subscription.SampleInfo (p. 1398) resources), the call will complete successfully and provide those samples the reader is able to return. The
user may need to make additional calls, or return outstanding loaned buffers in
the case of insuffificient resources, in order to access remaining samples.
Note that in the case where the com.rti.dds.topic.Topic (p. 1545) associated
with the com.rti.dds.subscription.DataReader (p. 487) is bound to a datatype that has no key definition, then there will be at most one instance in the
com.rti.dds.subscription.DataReader (p. 487). So the per-sample limits
will apply.
The act of taking a sample removes it from RTI Connext so it cannot
be read or taken again. If the sample belongs to the most recent generation of the instance, it will also set the view state of the samples instance to com.rti.dds.subscription.ViewStateKind.ViewStateKind.NOT NEW VIEW STATE. It will not affect the instance state of the samples instance.
After com.rti.ndds.example.FooDataReader.take (p. 983) completes,
received data and info seq will be of the same length and contain the received data.
If the sequences are empty (maximum size equals 0) when the
com.rti.ndds.example.FooDataReader.take (p. 983) is called, the
samples returned in the received data and the corresponding info seq are loaned to the application from buffers provided by the
com.rti.dds.subscription.DataReader (p. 487).
The application can
use them as desired and has guaranteed exclusive access to them.
Once the application completes its use of the samples it must return the
loan to the com.rti.dds.subscription.DataReader (p. 487) by calling the
com.rti.ndds.example.FooDataReader.return loan (p. 1008) operation.
Important:
When you loan data from the middleware, you must
not keep any pointers to any part of the data samples or the
com.rti.dds.subscription.SampleInfo (p. 1398) objects after the call to
com.rti.ndds.example.FooDataReader.return loan (p. 1008). Returning
the loan places the objects back into a pool, allowing the middleware to overwrite them with new data.
Note: While you must call com.rti.ndds.example.FooDataReader.return loan (p. 1008) at some point, you do not have to do so before
the
next
com.rti.ndds.example.FooDataReader.take
(p. 983)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
985
call.
However, failure to return the loan will eventually deplete the com.rti.dds.subscription.DataReader (p. 487) of the
buffers it needs to receive new samples and eventually samples will
start to be lost.
The total number of buffers available to the
com.rti.dds.subscription.DataReader (p. 487) is specified by the
and
com.rti.dds.infrastructure.ResourceLimitsQosPolicy
(p. 1348)
the com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy
(p. 542).
If the sequences are not empty (maximum size not equal to 0 and length not
equal to 0) when com.rti.ndds.example.FooDataReader.take (p. 983) is
called, samples are copied to received data and info seq. The application will not
need to call com.rti.ndds.example.FooDataReader.return loan (p. 1008).
The order of the samples returned to the caller depends on the
com.rti.dds.infrastructure.PresentationQosPolicy (p. 1221).
If com.rti.dds.infrastructure.PresentationQosPolicy.access scope
(p. 1225) is com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPolicyAccessSco
PRESENTATION QOS, the returned collection is a list where samples
belonging to the same data instance are consecutive.
If com.rti.dds.infrastructure.PresentationQosPolicy.access scope
(p. 1225) is com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPolicyAccessSco
PRESENTATION QOS and com.rti.dds.infrastructure.PresentationQosPolicy.ordered access (p. 1225) is set to com.rti.dds.infrastructure.false, then returned
collection is a list where samples belonging to the same data instance are
consecutive.
If com.rti.dds.infrastructure.PresentationQosPolicy.access scope
(p. 1225) is com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPolicyAccessSco
PRESENTATION QOS and com.rti.dds.infrastructure.PresentationQosPolicy.ordered access (p. 1225) is set to com.rti.dds.infrastructure.true, then the returned
collection is a list were the relative order of samples is preserved also
accross different instances. Note that samples belonging to the same
instance may or may not be consecutive. This is because to preserve
order it may be necessary to mix samples from different instances.
If com.rti.dds.infrastructure.PresentationQosPolicy.access scope
(p. 1225) is com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPolicyAccessSco
PRESENTATION QOS and com.rti.dds.infrastructure.PresentationQosPolicy.ordered access (p. 1225) is set to com.rti.dds.infrastructure.false, then returned
collection is a list where samples belonging to the same data instance are
consecutive. [Not supported (optional)]
If com.rti.dds.infrastructure.PresentationQosPolicy.access scope
(p. 1225) is com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPolicyAccessSco
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
986
Class Documentation
PRESENTATION QOS and com.rti.dds.infrastructure.PresentationQosPolicy.ordered access (p. 1225) is set to com.rti.dds.infrastructure.true, then the returned
collection contains at most one sample. The difference in this case is due
to the fact that is required that the application is able to read samples
belonging to different com.rti.dds.subscription.DataReader (p. 487)
objects in a specific order. [Not supported (optional)]
In any case, the relative order between the samples of one instance is consistent
with the DESTINATION ORDER (p. 53) policy:
If
com.rti.dds.infrastructure.DestinationOrderQosPolicy.kind
(p. 633) is com.rti.dds.infrastructure.DestinationOrderQosPolicyKind.DestinationOrderQosPolicyK
RECEPTION TIMESTAMP DESTINATIONORDER QOS,
samples
belonging to the same instances will appear in the relative order in which
there were received (FIFO, earlier samples ahead of the later samples).
If
com.rti.dds.infrastructure.DestinationOrderQosPolicy.kind
(p. 633) is com.rti.dds.infrastructure.DestinationOrderQosPolicyKind.DestinationOrderQosPolicyK
SOURCE TIMESTAMP DESTINATIONORDER QOS, samples belonging to the same instances will appear in the relative order implied by the
source timestamp (FIFO, smaller values of source timestamp ahead of
the larger values).
If
the
com.rti.dds.subscription.DataReader
(p. 487)
has
no
samples that meet the constraints, the method will fail with
com.rti.dds.infrastructure.RETCODE NO DATA (p. 1360).
In addition to the collection of samples, the read and take operations also use
a collection of com.rti.dds.subscription.SampleInfo (p. 1398) structures.
8.105.3
The initial (input) properties of the received data and info seq collections
will determine the precise behavior of the read or take operation. For the purposes of this description, the collections are modeled as having these properties:
the current-length (len, see com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.size())
987
1. The values of len and max len properties for the two collections must be identical.
Otherwise read/take will fail with
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
2. On successful output, the values of len and max len will be the same for
both collections.
3. If the initial max len==0, then the received data and info seq
collections will be filled with elements that are loaned by the
com.rti.dds.subscription.DataReader (p. 487). On output, len will
be set to the number of values returned, and max len will be set to
a value verifying max len >= len. The use of this variant allows for
zero-copy access to the data and the application will need to return
the loan to the com.rti.dds.publication.DataWriter (p. 557) using
com.rti.ndds.example.FooDataReader.return loan (p. 1008).
4. If the initial max len>0 then the read or take operation will fail
with com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363). This avoids the potential hard-to-detect memory
leaks caused by an application forgetting to return the loan.
5. If initial max len>0 then the read or take operation will copy
the received data values and com.rti.dds.subscription.SampleInfo
(p. 1398) values into the elements already inside the collections. On output, len will be set to the number of values copied and max len will
remain unchanged. The use of this variant forces a copy but the application can control where the copy is placed and the application will not
need to return the loan. The number of samples copied depends on the
relative values of max len and max samples:
If max samples == LENGTH UNLIMITED, then at most max len
values will be copied. The use of this variant lets the application
limit the number of samples returned to what the sequence can accommodate.
If max samples <= max len, then at most max samples values will be
copied. The use of this variant lets the application limit the number of
samples returned to fewer that what the sequence can accommodate.
If max samples > max len, then the read or take operation will fail with com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363). This avoids the potential confusion where the application expects to be able to access
up to max samples, but that number can never be returned, even if
they are available in the com.rti.dds.subscription.DataReader
(p. 487), because the output sequence cannot accommodate them.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
988
Class Documentation
As described above,
upon completion,
the received data and
collections
may
contain
elements
loaned
from
the
info seq
com.rti.dds.subscription.DataReader (p. 487). If this is the case, the application will need to use com.rti.ndds.example.FooDataReader.return loan (p. 1008) to return the loan once it is no longer using the received data
in the collection. When com.rti.ndds.example.FooDataReader.return loan (p. 1008) completes, the collection will have max len=0.
The application can determine whether it is necessary to return the loan or
not based on how the state of the collections when the read/take operation was called However, in many cases it may be simpler to always call
com.rti.ndds.example.FooDataReader.return loan (p. 1008), as this
operation is harmless (i.e., it leaves all elements unchanged) if the collection
does not have a loan.
On output, the collection of com.rti.ndds.example.Foo (p. 977) values
and the collection of com.rti.dds.subscription.SampleInfo (p. 1398) structures are of the same length and are in a one-to-one correspondence. Each
com.rti.dds.subscription.SampleInfo (p. 1398) provides information, such
as the source timestamp, the sample state, view state, and instance state, etc.,
about the corresponding sample.
Some elements in the returned collection may not have valid data. If the
instance state in the com.rti.dds.subscription.SampleInfo (p. 1398) is
com.rti.dds.subscription.InstanceStateKind.InstanceStateKind.NOT ALIVE DISPOSED INSTANCE STATE or com.rti.dds.subscription.InstanceStateKind.InstanceStateKind.NOT
ALIVE NO WRITERS INSTANCE STATE,
then
the
last
sample for that instance in the collection (that is, the one whose
com.rti.dds.subscription.SampleInfo (p. 1398) has sample rank==0)
does not contain valid data.
Samples that contain no data do not count towards the limits imposed by the com.rti.dds.infrastructure.ResourceLimitsQosPolicy
(p. 1348).
The act of reading/taking a sample sets its sample state
to
com.rti.dds.subscription.SampleStateKind.SampleStateKind.READ SAMPLE STATE.
If the sample belongs to the most recent generation of the
instance,
it will also set the view state of the instance to
com.rti.dds.subscription.ViewStateKind.ViewStateKind.NOT NEW VIEW STATE. It will not affect the instance state of the instance.
This
operation
must
be
provided
on
the
specialized
that is generated for the particular application data-type
If
is being read (com.rti.ndds.example.Foo (p. 977)).
com.rti.dds.subscription.DataReader
(p. 487)
has
no
ples
that
meet
the
constraints,
the
operations
fails
com.rti.dds.infrastructure.RETCODE NO DATA (p. 1360).
class
that
the
samwith
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
989
For an example (p. 375) on how take can be used, please refer to the receive
example (p. 254).
Parameters:
received data <<inout>>
( p. 279)
User
data
type-specific
com.rti.dds.infrastructure.com.rti.dds.util.Sequence object where
the received data samples will be returned. Must be a valid
non-NULL FooSeq (p. 1034).
The method will fail with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355) if it is NULL.
Parameters:
info seq <<inout>> ( p. 279) A com.rti.dds.subscription.SampleInfoSeq
(p. 1409)
object
where
the
received
sample
info
will
be
returned.
Must
be
a
valid
non-NULL
com.rti.dds.subscription.SampleInfoSeq (p. 1409). The method
will fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) if it is NULL.
max samples <<in>>
( p. 279)
The
maximum
number of samples to be returned.
If the special value
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106) is provided, as many samples will be returned
as are available, up to the limits described above.
sample states <<in>> ( p. 279) Data samples matching one of these
sample states are returned.
view states <<in>> ( p. 279) Data samples matching one of these
view state are returned.
instance states <<in>> ( p. 279) Data samples matching one of these
instance state are returned.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET
(p. 1363),
com.rti.dds.infrastructure.RETCODE NO DATA
(p. 1360)
or com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
See also:
com.rti.ndds.example.FooDataReader.read (p. 981)
com.rti.ndds.example.FooDataReader.read w condition (p. 990),
com.rti.ndds.example.FooDataReader.take w condition (p. 991)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
990
Class Documentation
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
8.105.3.1
Accesses
via
com.rti.ndds.example.FooDataReader.read
(p. 981) the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition (p. 1313).
This
operation
is
especially
useful
in
combination
with
com.rti.dds.subscription.QueryCondition (p. 1311) to filter data samples
based on the content.
The specified com.rti.dds.subscription.ReadCondition (p. 1313) must be
attached to the com.rti.dds.subscription.DataReader (p. 487); otherwise the operation will fail with com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
In case the com.rti.dds.subscription.ReadCondition (p. 1313) is a plain
com.rti.dds.subscription.ReadCondition (p. 1313) and not the specialized com.rti.dds.subscription.QueryCondition (p. 1311), the operation is
equivalent to calling com.rti.ndds.example.FooDataReader.read (p. 981)
and passing as sample states, view states and instance states the value of
the corresponding attributes in the read condition. Using this operation, the
application can avoid repeating the same parameters specified when creating
the com.rti.dds.subscription.ReadCondition (p. 1313).
The
samples
are
accessed
with
the
same
com.rti.ndds.example.FooDataReader.read (p. 981).
semantics
as
If
the
com.rti.dds.subscription.DataReader
(p. 487)
has
no
samples that meet the constraints, the operation will fail with
com.rti.dds.infrastructure.RETCODE NO DATA (p. 1360).
Parameters:
received data <<inout>>
( p. 279)
user
data
type-specific
com.rti.dds.infrastructure.com.rti.dds.util.Sequence object where
the received data samples will be returned. Must be a valid
The method will fail with
non-NULL FooSeq (p. 1034).
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355) if it is NULL.
info seq <<inout>> ( p. 279) a com.rti.dds.subscription.SampleInfoSeq
(p. 1409)
object
where
the
received
sample
info
will
be
returned.
Must
be
a
valid
non-NULL
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
991
8.105.3.2
Analogous
to
com.rti.ndds.example.FooDataReader.read (p. 990)
except
it
accesses
samples
via
the
w condition
com.rti.ndds.example.FooDataReader.take (p. 983) operation.
This operation is analogous to com.rti.ndds.example.FooDataReader.read w condition (p. 990) except that it accesses samples via the
com.rti.ndds.example.FooDataReader.take (p. 983) operation.
The specified com.rti.dds.subscription.ReadCondition (p. 1313) must be
attached to the com.rti.dds.subscription.DataReader (p. 487); otherwise the operation will fail with com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
992
Class Documentation
The
samples
are
accessed
with
the
same
com.rti.ndds.example.FooDataReader.take (p. 983).
semantics
as
This
operation
is
especially
useful
in
combination
with
com.rti.dds.subscription.QueryCondition (p. 1311) to filter data samples
based on the content.
If
the
com.rti.dds.subscription.DataReader
(p. 487)
has
no
samples that meet the constraints, the method will fail with
com.rti.dds.infrastructure.RETCODE NO DATA (p. 1360).
Parameters:
received data <<inout>>
( p. 279)
user
data
type-specific
com.rti.dds.infrastructure.com.rti.dds.util.Sequence object where
the received data samples will be returned. Must be a valid
non-NULL FooSeq (p. 1034).
The method will fail with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355) if it is NULL.
info seq <<inout>> ( p. 279) a com.rti.dds.subscription.SampleInfoSeq
(p. 1409)
object
where
the
received
sample
info
will
be
returned.
Must
be
a
valid
non-NULL
com.rti.dds.subscription.SampleInfoSeq (p. 1409). The method
will fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) if it is NULL.
max samples <<in>>
( p. 279)
The
maximum
number of samples to be returned.
If the special value
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106) is provided, as many samples will be returned
as are available, up to the limits described in the documentation for
com.rti.ndds.example.FooDataReader.take() (p. 983).
condition <<in>> ( p. 279) the com.rti.dds.subscription.ReadCondition
(p. 1313) to select samples of interest. Cannot be NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET
(p. 1363),
com.rti.dds.infrastructure.RETCODE NO DATA
(p. 1360)
or com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
See also:
com.rti.ndds.example.FooDataReader.read w condition
com.rti.ndds.example.FooDataReader.read (p. 981)
(p. 990),
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
993
8.105.3.3
Copies
the
next
not-previously-accessed data
com.rti.dds.subscription.DataReader (p. 487).
value
from
the
994
Class Documentation
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
(p. 1360)
com.rti.dds.infrastructure.RETCODE NO DATA
or com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
See also:
com.rti.ndds.example.FooDataReader.read (p. 981)
8.105.3.4
Copies
the
next not-previously-accessed data
com.rti.dds.subscription.DataReader (p. 487).
value
from
the
995
8.105.3.5
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
996
Class Documentation
997
not
the
8.105.3.6
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
998
Class Documentation
has
with
This operation may fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) if the com.rti.dds.infrastructure.InstanceHandle t (p. 1055) a handle does not correspond to an existing data-object known to
the com.rti.dds.subscription.DataReader (p. 487).
Parameters:
received data <<inout>>
( p. 279)
user
data
type-specific
com.rti.dds.infrastructure.com.rti.dds.util.Sequence object where
the received data samples will be returned. Must be a valid
non-NULL FooSeq (p. 1034).
The method will fail with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355) if it is NULL.
info seq <<inout>> ( p. 279) a com.rti.dds.subscription.SampleInfoSeq
(p. 1409)
object
where
the
received
sample
info
will
be
returned.
Must
be
a
valid
non-NULL
com.rti.dds.subscription.SampleInfoSeq (p. 1409). The method
will fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) if it is NULL.
max samples <<in>>
( p. 279)
The
maximum
number of samples to be returned.
If the special value
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106) is provided, as many samples will be returned
as are available, up to the limits described in the documentation for
com.rti.ndds.example.FooDataReader.take() (p. 983).
a handle <<in>> ( p. 279)
The
specified
instance
to
return
samples
for.
Must
be
a
valid
non-NULL
com.rti.dds.infrastructure.InstanceHandle t (p. 1055).
The
method will fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) if it is NULL. The method
will
fail
with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) if the handle does not
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
999
to
the
8.105.3.7
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
1000
Class Documentation
state of the instance (e.g. whether it has data or not) and must be defined even
for instance handles that do not correspond to instances currently managed by
the com.rti.dds.subscription.DataReader (p. 487). For the purposes of the
ordering, it should be as if each instance handle was represented as unique
integer.
The behavior of com.rti.ndds.example.FooDataReader.read next instance (p. 999) is as if the com.rti.dds.subscription.DataReader
(p. 487) invoked com.rti.ndds.example.FooDataReader.read instance
(p. 995), passing the smallest instance handle among all the ones that: (a)
are greater than previous handle, and (b) have available samples (i.e. samples
that meet the constraints imposed by the specified states).
The special value com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL is guaranteed to be less than any valid instance handle.
So the use of the parameter value previous handle ==
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL
will return the samples for the instance which has the smallest instance handle
among all the instances that contain available samples.
The
operation
com.rti.ndds.example.FooDataReader.read next instance (p. 999) is intended to be used in an application-driven iteration, where the application starts by passing previous handle ==
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL, examines the samples returned, and then uses the instance handle
returned
in
the
com.rti.dds.subscription.SampleInfo
(p. 1398) as the value of the previous handle argument to
the
next
call
to
com.rti.ndds.example.FooDataReader.read next instance
(p. 999).
The
iteration
continues
until
(p. 999)
com.rti.ndds.example.FooDataReader.read next instance
fails with the value com.rti.dds.infrastructure.RETCODE NO DATA
(p. 1360).
Note that it is possible to call the com.rti.ndds.example.FooDataReader.read next instance (p. 999) operation with a previous handle that
does not correspond to an instance currently managed by the
This is because as
com.rti.dds.subscription.DataReader (p. 487).
stated earlier the greater-than relationship is defined even for handles not managed by the com.rti.dds.subscription.DataReader
(p. 487). One practical situation where this may occur is when an application is iterating though all the instances, takes all the samples of a
com.rti.dds.subscription.InstanceStateKind.InstanceStateKind.NOT ALIVE NO WRITERS INSTANCE STATE instance, returns the loan (at which point
the instance information may be removed, and thus the handle becomes
invalid), and tries to read the next instance.
The behavior
next instance
of the
(p. 999)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1001
1002
Class Documentation
8.105.3.8
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
1003
1004
Class Documentation
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET
(p. 1363),
(p. 1360)
com.rti.dds.infrastructure.RETCODE NO DATA
or com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
See also:
com.rti.ndds.example.FooDataReader.take (p. 983)
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
8.105.3.9
Accesses
via
com.rti.ndds.example.FooDataReader.read next instance (p. 999) the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition (p. 1313).
This operation accesses a collection of data values from the
com.rti.dds.subscription.DataReader (p. 487). The behavior is identical
to
com.rti.ndds.example.FooDataReader.read next instance
(p. 999), except that all returned samples satisfy the specified condition. In
other words, on success, all returned samples belong to the same instance, and
the instance is the instance with smallest instance handle among the ones
that verify: (a) instance handle >= previous handle, and (b) have samples
for which the specified com.rti.dds.subscription.ReadCondition (p. 1313)
evaluates to TRUE.
Similar to the operation com.rti.ndds.example.FooDataReader.read next instance
(p. 999),
it
is
possible
to
call
com.rti.ndds.example.FooDataReader.read next instance w condition (p. 1004) with a previous handle that does not correspond to an
instance currently managed by the com.rti.dds.subscription.DataReader
(p. 487).
The behavior of the com.rti.ndds.example.FooDataReader.read next instance w condition (p. 1004) operation follows the same rules as the
com.rti.ndds.example.FooDataReader.read (p. 981) operation regarding
the pre-conditions and post-conditions for the received data and sample info.
Similar to the com.rti.ndds.example.FooDataReader.read
(p. 981),
the
com.rti.ndds.example.FooDataReader.read next Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1005
Codes
(p. 108),
(p. 1363)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1006
Class Documentation
com.rti.dds.infrastructure.RETCODE NO DATA
(p. 1360)
or com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
See also:
com.rti.ndds.example.FooDataReader.read next instance (p. 999)
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
8.105.3.10
Accesses
via
com.rti.ndds.example.FooDataReader.take next instance (p. 1002) the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition (p. 1313).
This operation accesses a collection of data values from the
com.rti.dds.subscription.DataReader (p. 487) and removes them from
the com.rti.dds.subscription.DataReader (p. 487).
The
operation
has
the
same
behavior
as
com.rti.ndds.example.FooDataReader.read next instance w condition (p. 1004), except that the samples are taken from the
com.rti.dds.subscription.DataReader (p. 487) such that they are no
longer accessible via subsequent read or take operations.
Similar to the operation com.rti.ndds.example.FooDataReader.read next instance
(p. 999),
it
is
possible
to
call
com.rti.ndds.example.FooDataReader.take next instance w condition (p. 1006) with a previous handle that does not correspond to an
instance currently managed by the com.rti.dds.subscription.DataReader
(p. 487).
The behavior of the com.rti.ndds.example.FooDataReader.take next instance w condition (p. 1006) operation follows the same rules as the
com.rti.ndds.example.FooDataReader.read (p. 981) operation regarding the pre-conditions and post-conditions for the received data and
sample info.
Similar to com.rti.ndds.example.FooDataReader.read
(p. 981),
the
com.rti.ndds.example.FooDataReader.take next instance w condition (p. 1006) operation may loan elements to
the output collections, which must then be returned by means of
com.rti.ndds.example.FooDataReader.return loan (p. 1008).
Similar to the com.rti.ndds.example.FooDataReader.read (p. 981), this
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1007
operation must be provided on the specialized class that is generated for the
particular application data-type that is being taken.
has
no
If
the
com.rti.dds.subscription.DataReader
(p. 487)
samples that meet the constraints, the method will fail with
com.rti.dds.infrastructure.RETCODE NO DATA (p. 1360).
Parameters:
received data <<inout>>
( p. 279)
user
data
type-specific
com.rti.dds.infrastructure.com.rti.dds.util.Sequence object where
the received data samples will be returned. Must be a valid
The method will fail with
non-NULL FooSeq (p. 1034).
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355) if it is NULL.
info seq <<inout>> ( p. 279) a com.rti.dds.subscription.SampleInfoSeq
(p. 1409)
object
where
the
received
sample
info
will
be
returned.
Must
be
a
valid
non-NULL
com.rti.dds.subscription.SampleInfoSeq (p. 1409). The method
will fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) if it is NULL.
max samples <<in>>
( p. 279)
The
maximum
number of samples to be returned.
If the special value
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106) is provided, as many samples will be returned
as are available, up to the limits described in the documentation for
com.rti.ndds.example.FooDataReader.take() (p. 983).
previous handle <<in>> ( p. 279)
The
next
smallest
instance with a value greater than this value that has available samples will be returned.
Must be a valid non-NULL
com.rti.dds.infrastructure.InstanceHandle t (p. 1055).
The
method will fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) if it is NULL.
condition <<in>> ( p. 279) the com.rti.dds.subscription.ReadCondition
(p. 1313) to select samples of interest. Cannot be NULL.
Exceptions:
One of
the
Standard
Return
com.rti.dds.infrastructure.RETCODE
PRECONDITION NOT MET
com.rti.dds.infrastructure.RETCODE
com.rti.dds.infrastructure.RETCODE
(p. 1361).
Codes
(p. 108),
(p. 1363),
or
NO DATA
(p. 1360),
NOT ENABLED
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1008
Class Documentation
See also:
com.rti.ndds.example.FooDataReader.take next instance (p. 1002)
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
8.105.3.11
1009
8.105.3.12
( p. 279)
user
data
type
specific
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1010
Class Documentation
or
See also:
com.rti.ndds.example.FooDataWriter.get key value (p. 1031)
8.105.3.13
1011
Parameters:
key holder <<in>> ( p. 279) a user data type specific key holder.
Returns:
the instance handle associated with this instance.
If
com.rti.ndds.example.Foo (p. 977) has no key, this method has no effect
and returns com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1012
Class Documentation
8.106
InstanceHandle t register instance w timestamp (Foo instance data, Time t source timestamp)
Performs the same functions as register instance except that the application
provides the value for the source timestamp.
In-
Performs the same function as com.rti.ndds.example.FooDataWriter.unregister instance ( p. 1016) except that it also provides the value for the source timestamp.
void
unregister instance w params
WriteParams t params)
(Foo
instance data,
Performs the same function as com.rti.ndds.example.FooDataWriter.unregister instance ( p. 1016) and com.rti.ndds.example.FooDataWriter.FooDataWriter.unregister instance w timestamp except that it also provides the values contained in
params.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1013
void write w timestamp (Foo instance data, InstanceHandle t handle, Time t source timestamp)
Performs the same function as com.rti.ndds.example.FooDataWriter.write
( p. 1021) except that it also provides the value for the source timestamp.
void dispose w timestamp (Foo instance data, InstanceHandle t instance handle, Time t source timestamp)
Performs the same functions as dispose except that the application provides the value for the source timestamp that is made
available to com.rti.dds.subscription.DataReader ( p. 487) objects by means of the source timestamp attribute inside the
com.rti.dds.subscription.SampleInfo ( p. 1398).
(Foo
instance data,
WriteParams t
8.106.1
Detailed Description
1014
Class Documentation
Defines the user data type specific writer interface generated for each application
class.
The concrete user data type writer automatically generated by the implementation is an incarnation of this class.
See also:
com.rti.dds.publication.DataWriter (p. 557)
com.rti.ndds.example.Foo (p. 977)
com.rti.ndds.example.FooDataReader (p. 979)
rtiddsgen (p. 298)
8.106.2
8.106.2.1
Informs RTI Connext that the application will be modifying a particular instance.
This operation is only useful for keyed data types. Using it for non-keyed
types causes no effect and returns com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL. The operation takes as a parameter an instance (of which only the key value is examined) and returns a handle that can
be used in successive write() (p. 1021) or dispose() (p. 1027) operations.
The operation gives RTI Connext an opportunity to pre-configure itself to improve performance.
The use of this operation by an application is optional even for keyed types. If
an instance has not been pre-registered, the application can use the special value
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL as
the com.rti.dds.infrastructure.InstanceHandle t (p. 1055) paramater to
the write or dispose operation and RTI Connext will auto-register the instance.
For best performance,
the operation should be invoked prior
to
calling
any
operation
that
modifies
the
instance,
such
as
com.rti.ndds.example.FooDataWriter.write
(p. 1021),
(p. 1024),
com.rti.ndds.example.FooDataWriter.write w timestamp
com.rti.ndds.example.FooDataWriter.dispose
(p. 1027)
and
com.rti.ndds.example.FooDataWriter.dispose w timestamp (p. 1029)
and the handle used in conjunction with the data for those calls.
When this operation is used, RTI Connext will automatically supply the value
of the source timestamp that is used.
This operation may fail and return com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL if com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max instances (p. 1352) limit has been exceeded.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1015
8.106.2.2
Performs the same functions as register instance except that the application
provides the value for the source timestamp.
The provided source timestamp potentially affects the relative order in which
readers observe events from multiple writers. Refer to DESTINATION ORDER (p. 53) QoS policy for details.
This operation may fail and return com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL if com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max instances (p. 1352) limit has been exceeded.
This operation can only be called after com.rti.dds.publication.DataWriter
(p. 557) has been enabled. Otherwise, com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL will be returned.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1016
Class Documentation
Parameters:
instance data <<in>> ( p. 279) The instance that should be registered.
Of this instance, only the fields that represent the key are examined
by the function. Cannot be NULL.
source timestamp <<in>> ( p. 279) The timestamp value must be
greater than or equal to the timestamp value used in the last writer
operation (used in a register , unregister , dispose, or write, with either the automatically supplied timestamp or the application provided
timestamp). This timestamp may potentially affect the order in which
readers observe events from multiple writers. Cannot be NULL.
Returns:
For keyed data type, return a handle that can be used in the
calls that take a com.rti.dds.infrastructure.InstanceHandle t (p. 1055), such as write, dispose, unregister instance, or return
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL on failure. If the instance data is of a data type that has no keys,
this function always return com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL.
See also:
com.rti.ndds.example.FooDataWriter.unregister instance
(p. 1016),
com.rti.ndds.example.FooDataWriter.get key value
(p. 1031)
8.106.2.3
Performs the same function as com.rti.ndds.example.FooDataWriter.register instance (p. 1014) and com.rti.ndds.example.FooDataWriter.register instance w timestamp (p. 1015) except that it also provides the values
contained in params.
See also:
com.rti.ndds.example.FooDataWriter.write w params (p. 1026)
8.106.2.4
1017
This operation is useful only for keyed data types. Using it for non-keyed types
causes no effect and reports no error. The operation takes as a parameter an
instance (of which only the key value is examined) and a handle.
This operation should only be called on an instance that is currently registered.
This includes instances that have been autoregistered by calling operations such as write or dispose as described
in
com.rti.ndds.example.FooDataWriter.register instance (p. 1014).
Otherwise, this operation may fail with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355).
This only need be called just once per instance, regardless of how many times
register instance was called for that instance.
When this operation is used, RTI Connext will automatically supply the value
of the source timestamp that is used.
This
operation
informs
RTI
Connext
that
the
com.rti.dds.publication.DataWriter (p. 557) is no longer going to provide
any information about the instance. This operation also indicates that RTI
Connext can locally remove all information regarding that instance. The
application should not attempt to use the handle previously allocated to that
instance after calling com.rti.ndds.example.FooDataWriter.unregister instance() (p. 1016).
The special value com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL can be used for the parameter handle. This indicates that the
identity of the instance should be automatically deduced from the instance data (by means of the key).
If handle is any value other than com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL, then it must correspond to an instance that
has been registered. If there is no correspondence, the operation will fail with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355).
RTI Connext will not detect the error when the handle is any value other
than com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL, corresponds to an instance that has been registered, but does not correspond to the instance deduced from the instance data (by means of the key).
RTI Connext will treat as if the unregister instance() (p. 1016) operation is
for the instance as indicated by the handle.
If
after
a
com.rti.ndds.example.FooDataWriter.unregister instance
(p. 1016),
the
application
wants
to
modify
(com.rti.ndds.example.FooDataWriter.write
(p. 1021)
or
com.rti.ndds.example.FooDataWriter.dispose
(p. 1027))
an
instance, it has to register it again, or else use the special handle value
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL.
This operation does not indicate that the instance is deleted (that is the
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1018
Class Documentation
1019
8.106.2.5
Performs the same function as com.rti.ndds.example.FooDataWriter.unregister instance (p. 1016) except that it also provides the value for the source timestamp.
The provided source timestamp potentially affects the relative order in which
readers observe events from multiple writers. Refer to DESTINATION ORDER (p. 53) QoS policy for details.
The constraints on the values of the handle parameter and
the corresponding error behavior are the same specified for the
com.rti.ndds.example.FooDataWriter.unregister instance
(p. 1016)
operation.
This
operation
may
block
and
may
time
(com.rti.dds.infrastructure.RETCODE TIMEOUT (p. 1364))
the same circumtances described for the unregister instance operation.
out
under
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1020
Class Documentation
Parameters:
instance data <<in>> ( p. 279) The instance that should be unregistered. If com.rti.ndds.example.Foo (p. 977) has a key and
instance handle
is
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL, only the fields that represent
the key are examined by the function. Otherwise, instance data is not used. If instance data is used, it must represent
an instance that has been registerd.
Otherwise, this method
may fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355). If com.rti.ndds.example.Foo (p. 977)
has a key, instance data can be NULL only if handle is
not
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle this method will fail with
t.HANDLE NIL. Otherwise,
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355).
handle <<in>> ( p. 279) represents the instance to be unregistered.
If com.rti.ndds.example.Foo (p. 977) has a key and handle
is
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL, handle is not used and instance is deduced
from instance data.
If com.rti.ndds.example.Foo (p. 977)
has no key, handle is not used. If handle is used, it must
represent an instance that has been registered. Otherwise, this
method may fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355).
This
method
will
fail
with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) if handle is NULL. If
com.rti.ndds.example.Foo (p. 977) has a key, handle cannot
be
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL if instance data is NULL. Otherwise, this method
will fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355).
source timestamp <<in>> ( p. 279) The timestamp value must be
greater than or equal to the timestamp value used in the last writer
operation (used in a register , unregister , dispose, or write, with either the automatically supplied timestamp or the application provided
timestamp). This timestamp may potentially affect the order in which
readers observe events from multiple writers. Cannot be NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE TIMEOUT
(p. 1364)
or com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1021
See also:
com.rti.ndds.example.FooDataWriter.register instance (p. 1014)
com.rti.ndds.example.FooDataWriter.unregister instance
(p. 1016)
com.rti.ndds.example.FooDataWriter.get key value (p. 1031)
8.106.2.6
Performs the same function as com.rti.ndds.example.FooDataWriter.unregister instance (p. 1016) and com.rti.ndds.example.FooDataWriter.FooDataWriter.unregister instance w timestamp except that it also provides the values contained in
params.
See also:
com.rti.ndds.example.FooDataWriter.write w params (p. 1026)
com.rti.ndds.example.FooDataWriter.dispose w params (p. 1031)
8.106.2.7
1022
Class Documentation
RTI Connext will not detect the error when the handle is any value other
than com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL, corresponds to an instance that has been registered, but does not correspond to the instance deduced from the instance data (by means of the
key). RTI Connext will treat as if the write() (p. 1021) operation is for the
instance as indicated by the handle.
This operation may block if the RELIABILITY (p. 105) kind is set to
com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQosPolicyKind.RELIABLE RELIABILITY QOS and the modification would cause data to be lost or else
cause one of the limits specified in the RESOURCE LIMITS (p. 106) to be
exceeded.
Specifically,
this operation may block in the following situations (note that the list may not be exhaustive), even if its
com.rti.dds.infrastructure.HistoryQosPolicyKind
(p. 1050)
is
com.rti.dds.infrastructure.HistoryQosPolicyKind.HistoryQosPolicyKind.KEEP LAST HISTORY QOS:
If
(com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max samples (p. 1351) < com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max instances (p. 1352) com.rti.dds.infrastructure.HistoryQosPolicy.depth
(p. 1049)), then in the situation where the max samples resource limit
is exhausted, RTI Connext is allowed to discard samples of some other
instance, as long as at least one sample remains for such an instance. If
it is still not possible to make space available to store the modification,
the writer is allowed to block.
If
(com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max samples (p. 1351) < com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max instances (p. 1352)), then the com.rti.dds.publication.DataWriter
(p. 557)
may
block
regardless
of
the
com.rti.dds.infrastructure.HistoryQosPolicy.depth (p. 1049).
If
(com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.min send window size (p. 1383) < com.rti.dds.infrastructure.ResourceLimitsQosPolicy
samples (p. 1351)), then it is possible for the send window size limit to
be reached before RTI Connext is allowed to discard samples, in which
case the com.rti.dds.publication.DataWriter (p. 557) will block.
This
operation
may
also
block
when
using
com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQosPolicyKind.BEST EFFORT RELIABILITY QOS and com.rti.dds.infrastructure.PublishModeQosPolicyKind.PublishMode
PUBLISH MODE QOS. In this case, the com.rti.dds.publication.DataWriter
(p. 557) will queue samples until they are sent by the asynchronous publishing
thread. The number of samples that can be stored is determined by the
com.rti.dds.infrastructure.HistoryQosPolicy (p. 1046).
If the asynchronous thread does not send samples fast enough (e.g., when using a slow
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1023
(p. 108),
(p. 1364),
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1024
Class Documentation
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363), com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES
(p. 1362),
or
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
See also:
com.rti.dds.subscription.DataReader (p. 487)
com.rti.ndds.example.FooDataWriter.write w timestamp (p. 1024)
DESTINATION ORDER (p. 53)
8.106.2.8
time
out
described
for
If there are no instance resources left, this operation may fail with
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES
(p. 1362).
Calling com.rti.ndds.example.FooDataWriter.unregister instance (p. 1016) may help free up some resources.
This operation may fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) under the same circumstances described for
the write operation.
Parameters:
instance data <<in>> ( p. 279) The data to write. This method
will fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) if instance data is NULL.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1025
handle <<in>> ( p. 279) Either the handle returned by a previous call to com.rti.ndds.example.FooDataWriter.register instance
(p. 1014),
or
else
the
special
value
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL. If com.rti.ndds.example.Foo (p. 977) has a
key and handle is not com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL,
handle
must
represent
a registered instance of type com.rti.ndds.example.Foo
Otherwise,
this
method
may
fail
with
(p. 977).
com.rti.dds.infrastructure.RETCODE BAD This method will fail with
PARAMETER (p. 1355).
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355) if handle is NULL.
source timestamp <<in>>
( p. 279)
When
using
com.rti.dds.infrastructure.DestinationOrderQosPolicyKind.DestinationOrderQosPolicyKind.BY SOURCE TIMESTAMP DESTINATIONORDER QOS the timestamp value must be greater than or equal to the timestamp value
used in the last writer operation (register , unregister , dispose, or
write, with either the automatically supplied timestamp or the
application-provided timestamp) However, if it is less than the
timestamp of the previous operation but the difference is less than the
com.rti.dds.infrastructure.DestinationOrderQosPolicy.source timestamp tolerance (p. 633), the timestamp of the previous operation will be used as the source timestamp of
this sample.
Otherwise, if the difference is greater than
com.rti.dds.infrastructure.DestinationOrderQosPolicy.source timestamp tolerance (p. 633),
the function will return
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355).
Cannot be NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE TIMEOUT
(p. 1364),
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES
(p. 1362),
or
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
See also:
com.rti.ndds.example.FooDataWriter.write (p. 1021)
com.rti.dds.subscription.DataReader (p. 487)
DESTINATION ORDER (p. 53)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1026
8.106.2.9
Class Documentation
void write w params (Foo instance data, WriteParams t
params)
time
out
described
for
If there are no instance resources left, this operation may fail with
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES
(p. 1362).
Calling com.rti.ndds.example.FooDataWriter.unregister instance w params (p. 1021) may help free up some resources.
This operation may fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) under the same circumstances described for
the write operation.
Parameters:
instance data <<in>> ( p. 279) The data to write. This method
will fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) if instance data is NULL.
params <<in>> ( p. 279)
The
handle
is
either
returned
by
a
previous
call
to
com.rti.ndds.example.FooDataWriter.register instance (p. 1014), or else
the special value com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL. If com.rti.ndds.example.Foo (p. 977) has a key and
handle is not com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL, handle must represent a registered instance of type
com.rti.ndds.example.Foo (p. 977). Otherwise, this method may fail with
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1027
8.106.2.10
operation
value of
automatically
made avail-
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1028
Class Documentation
able
to
com.rti.dds.subscription.DataReader
(p. 487)
jects by means of the source timestamp attribute inside
com.rti.dds.subscription.SampleInfo (p. 1398).
obthe
out
for
If there are no instance resources left, this operation may fail with
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES
(p. 1362).
Calling com.rti.ndds.example.FooDataWriter.unregister instance (p. 1016) may help freeing up some resources.
Parameters:
instance data <<in>> ( p. 279) The data to dispose.
If
com.rti.ndds.example.Foo (p. 977) has a key and instance handle
is
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL, only the fields that represent the key are
examined by the function.
Otherwise, instance data is not
used.
If com.rti.ndds.example.Foo (p. 977) has a key,
instance data can be NULL only if instance handle is
not
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL. Otherwise,
this method will fail with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1029
8.106.2.11
Performs the same functions as dispose except that the application provides the value for the source timestamp that is made
available
to
com.rti.dds.subscription.DataReader
(p. 487)
objects by means of the source timestamp attribute inside the
com.rti.dds.subscription.SampleInfo (p. 1398).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1030
Class Documentation
time
out
described
for
If there are no instance resources left, this operation may fail with
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES
(p. 1362).
Calling com.rti.ndds.example.FooDataWriter.unregister instance (p. 1016) may help freeing up some resources.
Parameters:
instance data <<in>> ( p. 279) The data to dispose.
If
com.rti.ndds.example.Foo (p. 977) has a key and instance handle
is
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL, only the fields that represent the key are
examined by the function.
Otherwise, instance data is not
used.
If com.rti.ndds.example.Foo (p. 977) has a key,
instance data can be NULL only if instance handle is
not
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL. Otherwise,
this method will fail with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355).
instance handle <<in>> ( p. 279) Either the handle returned by a
previous call to com.rti.ndds.example.FooDataWriter.register instance
(p. 1014),
or
else
the
special
value
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL. If com.rti.ndds.example.Foo (p. 977) has a key
and instance handle is com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL,
instance handle
is
not
used and instance is deduced from instance data.
If
com.rti.ndds.example.Foo (p. 977) has no key, instance handle
is not used. If handle is used, it must represent a registered instance
of type com.rti.ndds.example.Foo (p. 977).
Otherwise, this
method may fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355) This method will fail with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355) if handle is NULL. If com.rti.ndds.example.Foo
(p. 977)
has
a
key,
instance handle
cannot
be
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL if instance data is NULL. Otherwise, this method
will fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1031
8.106.2.12
8.106.2.13
1032
Class Documentation
For
keyed
data
types,
this
operation
may
fail
with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355)
if the handle does not correspond to an existing data-object known to the
com.rti.dds.publication.DataWriter (p. 557).
Parameters:
key holder <<inout>> ( p. 279) a user data type specific
key holder, whose key fields are filled by this operation.
If com.rti.ndds.example.Foo (p. 977) has no key,
this method has no effect.
This method will fail with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355) if key holder is NULL.
handle <<in>> ( p. 279) the instance whose key is to be
retrieved.
If com.rti.ndds.example.Foo (p. 977) has a
key, handle must represent a registered instance of type
com.rti.ndds.example.Foo (p. 977).
Otherwise, this method
will fail with com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355). If com.rti.ndds.example.Foo (p. 977)
has a key and handle is com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL,
this
method
will
fail
with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER (p. 1355).
This method will fail with
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355) if handle is NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
or
See also:
com.rti.ndds.example.FooDataReader.get key value (p. 1009)
8.106.2.14
1033
the instance has not been previously registered, or if for any other reason RTI
Connext is unable to provide an instance handle, RTI Connext will return the
special value HANDLE NIL.
Parameters:
key holder <<in>> ( p. 279) a user data type specific key holder.
Returns:
the instance handle associated with this instance.
If
com.rti.ndds.example.Foo (p. 977) has no key, this method has no effect
and returns com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1034
Class Documentation
8.107
<<interface>> ( p. 279) <<generic>> ( p. 279) A type-safe, ordered collection of elements. The type of these elements is referred to in this documentation
as com.rti.ndds.example.Foo (p. 977).
Inheritance diagram for FooSeq::
Package Attributes
Sequence loanedInfoSequence = null
8.107.1
Detailed Description
<<interface>> ( p. 279) <<generic>> ( p. 279) A type-safe, ordered collection of elements. The type of these elements is referred to in this documentation
as com.rti.ndds.example.Foo (p. 977).
For users who define data types in OMG IDL, this type corresponds to the IDL
express sequence<Foo (p. 977)>.
For any user-data type Foo (p. 977) that an application defines for the purpose
of data-distribution with RTI Connext, a FooSeq (p. 1034) is generated. We
refer to an IDL sequence<Foo (p. 977)> as FooSeq (p. 1034).
A sequence is a type-safe List that makes a distinction between its allocated
size and its logical size (much like the ArrayList class). The Collection.size()
method returns the logical size.
A new sequence is created for elements of a particular Class, which does not
change throughout the lifetime of a sequence instance.
To add an element to a sequence, use the add() (p. 391) method inherited
from the standard interface java.util.List; this will implicitly increase the
sequences size. Or, to pre-allocate space for several elements at once, use
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.setMaximum.
An attempt to add an element to a sequence that is not of the correct element
type will result in a ClassCastException. (Note that null is considered to belong
to any type.)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1035
See also:
com.rti.ndds.example.FooDataWriter
(p. 1012),
com.rti.ndds.example.FooDataReader
(p. 979),
com.rti.ndds.example.FooTypeSupport (p. 1036), rtiddsgen (p. 298)
8.107.2
8.107.2.1
Copy data into this object from another. The result of this method is that
both this and src will be the same size and contain the same data.
Parameters:
src The Object which contains the data to be copied
Returns:
this
Exceptions:
NullPointerException If src is null.
ClassCastException If src is not a Sequence OR if one of the objects
contained in the Sequence is not of the expected type.
See also:
com.rti.dds.infrastructure.Copyable.copy from
(p. 480)(java.lang.Object)
Implements Copyable (p. 480).
8.107.3
8.107.3.1
When a memory loan has been taken out in the lower layers of NDDS, store a
pointer to the native sequence here. That way, when we call finish(), we can
give the memory back.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1036
Class Documentation
8.108
8.108.1
Detailed Description
8.108.2
8.108.2.1
1037
Returns:
default name for this type
See also:
com.rti.ndds.example.FooTypeSupport.register type (p. 1037)
com.rti.dds.domain.DomainParticipant.create topic (p. 697)
8.108.2.2
1038
Class Documentation
Exceptions:
One of
the
Standard
Return
Codes
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET
(p. 1363)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362).
(p. 108),
or
MT Safety:
UNSAFE on the FIRST call. It is not safe for two threads to simultaneously
make the first call to register a type. Subsequent calls are thread safe.
See also:
com.rti.dds.domain.DomainParticipant.create topic (p. 697)
8.108.2.3
This is a concrete implementation of this method inherited from the base class.
This method will perform a deep copy of source into destination.
Parameters:
source The Object which contains the data to be copied.
destination The object where data will be copied to.
Returns:
Returns destination.
Exceptions:
NullPointerException If destination or source is null.
ClassCastException If either destination or this is not a Foo (p. 977)
type.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.109
1039
Public Attributes
final ByteSeq value
a sequence of octets
8.109.1
Detailed Description
(p. 1262),
Properties:
RxO (p. 101) = NO
Changeable (p. 102) = YES (p. 102)
See also:
com.rti.dds.domain.DomainParticipant.get builtin subscriber
(p. 711)
8.109.2
Usage
The
additional
information
is
attached
to
a
or
com.rti.dds.publication.Publisher
(p. 1262)
com.rti.dds.subscription.Subscriber (p. 1476).
This extra data
is not used by RTI Connext itself.
When a remote application discovers the com.rti.dds.publication.Publisher (p. 1262) or
com.rti.dds.subscription.Subscriber (p. 1476), it can access that information and use it for its own purposes.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1040
Class Documentation
Use
cases
for
this
QoS
policy,
as
well
as
the
and
com.rti.dds.infrastructure.TopicDataQosPolicy
(p. 1559)
com.rti.dds.infrastructure.UserDataQosPolicy (p. 1694), are often
application-to-application identification, authentication, authorization, and
encryption purposes. For example, applications can use Group or User Data to
send security certificates to each other for RSA-type security.
In combination with com.rti.dds.subscription.DataReaderListener
com.rti.dds.publication.DataWriterListener (p. 586) and
(p. 518),
operations such as com.rti.dds.domain.DomainParticipant.ignore publication (p. 716) and com.rti.dds.domain.DomainParticipant.ignore subscription (p. 717), this QoS policy can help an application to
define and enforce its own security policies.
For example, an application can implement matching policies similar to those of the
com.rti.dds.infrastructure.PartitionQosPolicy (p. 1217), except the
decision can be made based on an application-defined policy.
The use of this QoS is not limited to security; it offers a simple, yet flexible
extensibility mechanism.
Important: RTI Connext stores the data placed in this policy in pre-allocated
pools. It is therefore necessary to configure RTI Connext with the maximum size
of the data that will be stored in policies of this type. This size is configured with
com.rti.dds.infrastructure.DomainParticipantResourceLimitsQosPolicy.publisher group data max length (p. 791) and com.rti.dds.infrastructure.DomainParticipantResourceLi
group data max length (p. 791).
8.109.3
8.109.3.1
a sequence of octets
[default] Empty (zero-sized)
[range] Octet sequence of length [0,max length]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.110
1041
void delete ()
Destructor.
8.110.1
Detailed Description
1042
Class Documentation
8.110.2
8.110.2.1
GuardCondition ()
No argument constructor.
Construct
a
new
guard
com.rti.dds.infrastructure.false.
condition
with
trigger
value
Exceptions:
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES ( p. 1362)
if a new com.rti.dds.infrastructure.GuardCondition (p. 1041)
could not be allocated.
Important:
The
com.rti.dds.infrastructure.GuardCondition
(p. 1041)
allocates
native
resources.
When
com.rti.dds.infrastructure.GuardCondition (p. 1041) is no longer being
used, user should call com.rti.dds.infrastructure.GuardCondition.delete
(p. 1042) explicitly to properly cleanup all native resources.
8.110.3
8.110.3.1
8.110.3.2
void delete ()
Destructor.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1043
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1044
Class Documentation
8.111
Public Attributes
byte[ ] value = {0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}
A 16 byte array containing the GUID value.
8.111.1
Detailed Description
8.111.2
8.111.2.1
Copy constructor.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1045
Parameters:
guid The GUID instance to copy. It must not be null.
8.111.2.2
Constructor.
Parameters:
value GUID value as a 16 byte array. It must not be null.
8.111.3
8.111.3.1
Unknown GUID.
8.111.3.2
Initial value:
new GUID_t(new byte[]{0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0})
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1046
Class Documentation
8.112
Specifies the behavior of RTI Connext in the case where the value of a sample
changes (one or more times) before it can be successfully communicated to one
or more existing subscribers.
Inheritance diagram for HistoryQosPolicy::
Public Attributes
HistoryQosPolicyKind kind
Specifies the kind of history to be kept.
int depth
Specifies the number of samples to be kept, when the kind is
com.rti.dds.infrastructure.HistoryQosPolicyKind.HistoryQosPolicyKind.KEEP LAST HISTORY QOS.
RefilterQosPolicyKind refilter
<<eXtension>> (p. 278) Specifies how a writer should handle previously
written samples to a new reader.
8.112.1
Detailed Description
Specifies the behavior of RTI Connext in the case where the value of a sample
changes (one or more times) before it can be successfully communicated to one
or more existing subscribers.
This QoS policy specifies how much data must to stored by RTI
Connext for a com.rti.dds.publication.DataWriter (p. 557) or
com.rti.dds.subscription.DataReader (p. 487).
It controls whether
RTI Connext should deliver only the most recent value, attempt to deliver all
intermediate values, or do something in between.
On the publishing side, this QoS policy controls the samples that should be
maintained by the com.rti.dds.publication.DataWriter (p. 557) on behalf
of existing com.rti.dds.subscription.DataReader (p. 487) entities. The behavior with regards to a com.rti.dds.subscription.DataReader (p. 487) entities discovered after a sample is written is controlled by the DURABILITY
(p. 68) policy.
On the subscribing side, this QoS policy controls the samples that should be
maintained until the application takes them from RTI Connext.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1047
Entity:
com.rti.dds.topic.Topic (p. 1545), com.rti.dds.subscription.DataReader
(p. 487), com.rti.dds.publication.DataWriter (p. 557)
Properties:
RxO (p. 101) = NO
Changeable (p. 102) = UNTIL ENABLE (p. 102)
See also:
com.rti.dds.infrastructure.ReliabilityQosPolicy (p. 1324)
com.rti.dds.infrastructure.HistoryQosPolicy (p. 1046)
8.112.2
Usage
1048
Class Documentation
The default (and most common setting) for depth is 1, indicating that only the
most recent value should be delivered.
If kind is com.rti.dds.infrastructure.HistoryQosPolicyKind.HistoryQosPolicyKind.KEEP ALL HISTORY QOS, then RTI Connext will attempt to maintain and deliver
all the values of the instance to existing subscribers. The resources that RTI
Connext can use to keep this history are limited by the settings of the RESOURCE LIMITS (p. 106). If the limit is reached, then the behavior of RTI
Connext will depend on the RELIABILITY (p. 105). If the Reliability kind is
com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQosPolicyKind.BEST EFFORT RELIABILITY QOS, then the old values will be discarded.
If Reliability kind is RELIABLE, then RTI Connext will block the
com.rti.dds.publication.DataWriter (p. 557) until it can deliver the
necessary old values to all subscribers.
If refilter is com.rti.dds.infrastructure.RefilterQosPolicyKind.NONE REFILTER QOS (p. 1322), then samples written before a DataReader is
matched to a DataWriter are not refiltered by the DataWriter.
If refilter is com.rti.dds.infrastructure.RefilterQosPolicyKind.ALL REFILTER QOS (p. 1323), then all samples written before a DataReader is
matched to a DataWriter are refiltered by the DataWriter when the DataReader
is matched.
If refilter is com.rti.dds.infrastructure.RefilterQosPolicyKind.ON DEMAND REFILTER QOS (p. 1323), then a DataWriter will only refilter
samples that a DataReader requests.
8.112.3
Consistency
This QoS policys depth must be consistent with the RESOURCE LIMITS
(p. 106) max samples per instance. For these two QoS to be consistent, they
must verify that depth <= max samples per instance.
See also:
com.rti.dds.infrastructure.ResourceLimitsQosPolicy (p. 1348)
8.112.4
8.112.4.1
HistoryQosPolicyKind kind
1049
int depth
RefilterQosPolicyKind refilter
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1050
Class Documentation
8.113
Kinds of history.
Inheritance diagram for HistoryQosPolicyKind::
final
HistoryQosPolicyKind
8.113.1
Detailed Description
Kinds of history.
QoS:
com.rti.dds.infrastructure.HistoryQosPolicy (p. 1046)
8.113.2
8.113.2.1
1051
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1052
Class Documentation
8.114
Public Attributes
int total count
Total cumulative count of the Topics discovered whose name matches
the com.rti.dds.topic.Topic ( p. 1545) to which this status is attached
and whose type is inconsistent with that of that com.rti.dds.topic.Topic
( p. 1545).
8.114.1
Detailed Description
8.114.2
8.114.2.1
Total cumulative count of the Topics discovered whose name matches the
com.rti.dds.topic.Topic (p. 1545) to which this status is attached and whose
type is inconsistent with that of that com.rti.dds.topic.Topic (p. 1545).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1053
The incremental number of inconsistent topics discovered since the last time
this status was read.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1054
Class Documentation
8.115
8.115.1
Detailed Description
8.115.2
8.115.2.1
InetAddressSeq ()
8.116
1055
8.116.1
Detailed Description
1056
Class Documentation
8.116.2
8.116.2.1
InstanceHandle t ()
8.116.2.2
8.116.3
8.116.3.1
boolean is nil ()
Compare
this
handle
to
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL.
Returns:
com.rti.dds.infrastructure.true if the given instance handle is equal to
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL or com.rti.dds.infrastructure.false otherwise.
See also:
com.rti.dds.infrastructure.InstanceHandle t.equals (p. 1057)
8.116.3.2
1057
Parameters:
src <<in>> ( p. 279) The Object which contains the data to be copied.
Returns:
Generally, return this but special cases (such as Enum) exist.
Exceptions:
NullPointerException If src is null.
ClassCastException If src is not the same type as this.
Implements Copyable (p. 480).
8.116.3.3
8.116.4
8.116.4.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1058
Class Documentation
8.117
for
for
8.117.1
Detailed Description
1059
See also:
com.rti.dds.infrastructure.InstanceHandle t (p. 1055)
com.rti.dds.infrastructure.com.rti.dds.util.Sequence
8.117.2
8.117.2.1
InstanceHandleSeq ()
8.117.2.2
8.117.2.3
Construct
a
new
sequence
containing
the
com.rti.dds.infrastructure.InstanceHandle t (p. 1055) elements.
given
The maximum of the sequence will be set to the size of the given collection.
Parameters:
elements <<in>> ( p. 279) Elements to construct a sequence with.
8.117.3
8.117.3.1
1060
Class Documentation
Parameters:
size <<in>> ( p. 279) Size of sequence to ensure.
Exceptions:
RETCODE BAD PARAMETER ( p. 1355) If size < 0
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.118
1061
8.118.1
Detailed Description
1062
Class Documentation
com.rti.dds.subscription.InstanceStateKind.InstanceStateKind.NOT ALIVE DISPOSED INSTANCE STATE indicates the instance was
explicitly disposed by a com.rti.dds.publication.DataWriter (p. 557)
by means of the dispose operation.
com.rti.dds.subscription.InstanceStateKind.InstanceStateKind.NOT indicates
ALIVE NO WRITERS INSTANCE STATE
the
instance
has
been
declared
as
not-alive
by
the
com.rti.dds.subscription.DataReader (p. 487) because it detected
that there are no live com.rti.dds.publication.DataWriter (p. 557)
entities writing that instance.
The precise behavior events that cause the instance state to change depends on
the setting of the OWNERSHIP QoS:
1063
8.118.2
8.118.2.1
Not alive disposed instance. The instance has been disposed by a DataWriter.
8.118.2.3
Not
alive
no
writers
for
instance.
None
of
the
com.rti.dds.publication.DataWriter (p. 557) objects are currently alive
(according to the LIVELINESS (p. 82)) are writing the instance.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1064
Class Documentation
8.119
void setInt (int dstIndex, int[ ] elements, int srcIndex, int length)
Copy a portion of the given array into this sequence.
1065
int getMaximum ()
Get the current maximum number of elements that can be stored in this
sequence.
8.119.1
Detailed Description
8.119.2
8.119.2.1
IntSeq ()
1066
Class Documentation
Parameters:
ints the initial contents of this sequence
Exceptions:
NullPointerException if the input array is null
8.119.3
8.119.3.1
Append length elements from the given array to this sequence, starting at index
offset in that array.
Exceptions:
NullPointerException if the given array is null.
8.119.3.2
Exceptions:
NullPointerException if the given array is null
8.119.3.3
Shift all elements in the sequence starting from the given index and add the
element to the given index.
8.119.3.5
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1067
Set the new integer at the given index and return the old integer.
Exceptions:
IndexOutOfBoundsException if the index is out of bounds.
8.119.3.7
8.119.3.8
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1068
8.119.3.9
Class Documentation
int getMaximum ()
Get the current maximum number of elements that can be stored in this sequence.
The maximum of the sequence represents the maximum number of elements that
the underlying buffer can hold. It does not represent the current number of
elements.
The maximum is a non-negative number. It is initialized when the sequence is
first created.
The maximum can be changed implicitly by adding an element
to the sequence with add() (p. 1069), or explicitly by calling
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.setMaximum.
Returns:
the current maximum of the sequence.
See also:
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.size()
Implements Sequence (p. 1429).
8.119.3.10
1069
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1070
Class Documentation
8.120
Public Attributes
String key
Instance key associated with the specified value.
int length
Number of bytes to serialize.
int offset
Offset from which to start serializing bytes .
byte[ ] value
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes array value.
8.120.1
Detailed Description
8.120.2
8.120.2.1
KeyedBytes ()
1071
Default Constructor.
The default constructor initializes the newly created object with empty key, null
value, zero length, and zero offset.
8.120.2.2
Copy constructor.
Parameters:
src <<in>> ( p. 279) Object to copy from.
Exceptions:
NullPointerException if src is null.
8.120.2.3
8.120.3
8.120.3.1
1072
Class Documentation
Parameters:
src <<in>> ( p. 279) Object to copy from.
Returns:
this if success. Otherwise, null.
Exceptions:
NullPointerException if src is null.
Implements Copyable (p. 480).
8.120.4
8.120.4.1
String key
int length
int offset
byte [ ] value
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.121
1073
<<interface>>
( p. 279)
Instantiates
DataReader
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes >.
<
from
the
from
the
void read w condition (KeyedBytesSeq received data, SampleInfoSeq info seq, int max samples, ReadCondition condition)
Accesses via com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataReader.read
the
samples
that
match
the
criteria
specified
in
the
com.rti.dds.subscription.ReadCondition ( p. 1313).
void take w condition (KeyedBytesSeq received data, SampleInfoSeq info seq, int max samples, ReadCondition condition)
Analogous to com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataReader.read w condition
except
it
accesses
samples
via
the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataReader.take
operation.
void read next sample (KeyedBytes received data, SampleInfo sample info)
Copies the next not-previously-accessed data
com.rti.dds.subscription.DataReader ( p. 487).
value
from
the
void take next sample (KeyedBytes received data, SampleInfo sample info)
Copies the next not-previously-accessed data
com.rti.dds.subscription.DataReader ( p. 487).
value
from
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
the
1074
Class Documentation
void read instance (KeyedBytesSeq received data, SampleInfoSeq
info seq, int max samples, InstanceHandle t a handle, int sample states, int view states, int instance states)
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader ( p. 487).
from
the
from
the
void read next instance (KeyedBytesSeq received data, SampleInfoSeq info seq, int max samples, InstanceHandle t a handle, int sample states, int view states, int instance states)
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader ( p. 487).
from
the
void take next instance (KeyedBytesSeq received data, SampleInfoSeq info seq, int max samples, InstanceHandle t a handle, int sample states, int view states, int instance states)
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader ( p. 487).
from
the
void read next instance w condition (KeyedBytesSeq received data, SampleInfoSeq info seq, int max samples, InstanceHandle t a handle, ReadCondition condition)
Accesses via com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataReader.read next instance the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition ( p. 1313).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1075
void take next instance w condition (KeyedBytesSeq received data, SampleInfoSeq info seq, int max samples, InstanceHandle t a handle, ReadCondition condition)
Accesses via com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataReader.take next instance the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition ( p. 1313).
8.121.1
Detailed Description
<<interface>>
( p. 279)
Instantiates
DataReader
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes >.
See also:
com.rti.ndds.example.FooDataReader (p. 979)
com.rti.dds.subscription.DataReader (p. 487)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
<
1076
Class Documentation
8.121.2
8.121.2.1
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
See also:
com.rti.ndds.example.FooDataReader.read (p. 981)
8.121.2.2
Access
a
collection
of
data-samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
See also:
com.rti.ndds.example.FooDataReader.take (p. 983)
8.121.2.3
8.121.2.4
1077
See also:
com.rti.ndds.example.FooDataReader.take w condition (p. 991)
8.121.2.5
Copies
the
next
not-previously-accessed data
com.rti.dds.subscription.DataReader (p. 487).
value
from
the
See also:
com.rti.ndds.example.FooDataReader.read next sample (p. 993)
8.121.2.6
Copies
the
next
not-previously-accessed data
com.rti.dds.subscription.DataReader (p. 487).
value
from
the
See also:
com.rti.ndds.example.FooDataReader.take next sample (p. 994)
8.121.2.7
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
See also:
com.rti.ndds.example.FooDataReader.read instance (p. 995)
8.121.2.8
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
the
1078
Class Documentation
See also:
com.rti.ndds.example.FooDataReader.take instance (p. 997)
8.121.2.9
Accesses via com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataReader.read instance the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition (p. 1313).
See also:
com.rti.ndds.example.FooDataReader.read instance w condition
8.121.2.10
Accesses via com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataReader.take instance the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition (p. 1313).
See also:
com.rti.ndds.example.FooDataReader.take instance w condition
8.121.2.11
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
See also:
com.rti.ndds.example.FooDataReader.read next instance (p. 999)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1079
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
See also:
com.rti.ndds.example.FooDataReader.take next instance (p. 1002)
8.121.2.13
Accesses via com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataReader.read next instance the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition (p. 1313).
See also:
com.rti.ndds.example.FooDataReader.read next instance w condition (p. 1004)
8.121.2.14
Accesses via com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataReader.take next instance the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition (p. 1313).
See also:
com.rti.ndds.example.FooDataReader.take next instance w condition (p. 1006)
8.121.2.15
1080
Class Documentation
8.121.2.16
8.121.2.17
8.121.2.18
8.121.2.19
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.122
1081
<<interface>>
( p. 279)
Instantiates
DataWriter
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes >.
<
(String
key,
<<eXtension>>
(p. 278)
Performs
the
same
functions
as
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataWriter.KeyedBytesDataWriter.register instance except that the application provides the value for the source timestamp.
1082
Class Documentation
void unregister instance w timestamp (String key, InstanceHandle t handle, Time t source timestamp)
<<eXtension>>
(p. 278)
Performs
the
same
function
as
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataWriter.KeyedBytesDataWriter.unregiste
instance except that it also provides the value for the source timestamp.
void write (String key, byte[ ] octets, int offset, int length, InstanceHandle t handle)
<<eXtension>>
(p. 278)
Modifies
the
value
of
a
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes data instance.
void write w timestamp (KeyedBytes instance data, InstanceHandle t handle, Time t source timestamp)
void write w timestamp (String key, byte[ ] octets, int offset, int length,
InstanceHandle t handle, Time t source timestamp)
void write w timestamp (String key, ByteSeq octets, InstanceHandle t handle, Time t source timestamp)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1083
void dispose w timestamp (KeyedBytes instance data, InstanceHandle t instance handle, Time t source timestamp)
Performs the same functions as com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataWriter.dispose
except that the application provides the value for the source timestamp
that is made available to com.rti.dds.subscription.DataReader
( p. 487) objects by means of the source timestamp attribute inside
the com.rti.dds.subscription.SampleInfo ( p. 1398).
void dispose w timestamp (String key, InstanceHandle t instance handle, Time t source timestamp)
<<eXtension>>
(p. 278)
Performs
the
same
functions
as
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataWriter.KeyedBytesDataWriter.dispose
except that the application provides the value for the source timestamp
that is made available to com.rti.dds.subscription.DataReader
( p. 487) objects by means of the source timestamp attribute inside
the com.rti.dds.subscription.SampleInfo ( p. 1398).
8.122.1
Detailed Description
<<interface>>
( p. 279)
Instantiates
DataWriter
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes >.
See also:
com.rti.ndds.example.FooDataWriter (p. 1012)
com.rti.dds.publication.DataWriter (p. 557)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
<
1084
Class Documentation
8.122.2
8.122.2.1
Informs RTI Connext that the application will be modifying a particular instance.
See also:
com.rti.ndds.example.FooDataWriter.register instance (p. 1014)
8.122.2.2
8.122.2.3
8.122.2.4
<<eXtension>>
( p. 278)
Performs
the
same
functions
as
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataWriter.KeyedBytesDataWriter.register
instance except that the application provides the value for the source timestamp.
See also:
com.rti.ndds.example.FooDataWriter.register instance w timestamp (p. 1015)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1085
8.122.2.6
Reverses
the
action
of
<<eXtension>>
( p. 278)
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataWriter.KeyedBytesDataWriter.register instance.
See also:
com.rti.ndds.example.FooDataWriter.unregister instance
(p. 1016)
8.122.2.7
Performs the same function as com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataWriter.unregister instance except that it also provides the value for the source timestamp.
See also:
com.rti.ndds.example.FooDataWriter.FooDataWriter.unregister instance w timestamp
8.122.2.8
<<eXtension>>
( p. 278)
Performs
the
same
function
as
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataWriter.KeyedBytesDataWriter.unregister instance except that it also provides the value for the source timestamp.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1086
Class Documentation
See also:
com.rti.ndds.example.FooDataWriter.FooDataWriter.unregister instance w timestamp
8.122.2.9
8.122.2.10
<<eXtension>>
( p. 278)
Modifies
the
value
of
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes data instance.
Parameters:
key <<in>> ( p. 279) Instance key.
octets <<in>> ( p. 279) Array of bytes to be published.
offset <<in>> ( p. 279) Offset from which to start publishing.
length <<in>> ( p. 279) Number of bytes to be published.
handle <<in>> ( p. 279) Either the handle returned by a previous call to
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataWriter.register instance,
or
else
the
special
value
com.rti.dds.infrastructure.InstanceHandle See
t.InstanceHandle t.HANDLE NIL.
com.rti.ndds.example.FooDataWriter.write (p. 1021).
See also:
com.rti.ndds.example.FooDataWriter.write (p. 1021)
8.122.2.11
<<eXtension>>
( p. 278)
Modifies
the
value
of
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes data instance.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1087
Parameters:
key <<in>> ( p. 279) Instance key.
octets <<in>> ( p. 279) Sequence of bytes to be published.
handle <<in>> ( p. 279) Either the handle returned by a previous call to
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataWriter.register instance,
or
else
the
special
value
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL.
See
com.rti.ndds.example.FooDataWriter.write (p. 1021).
See also:
com.rti.ndds.example.FooDataWriter.write (p. 1021)
8.122.2.12
8.122.2.13
1088
Class Documentation
8.122.2.14
8.122.2.15
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1089
8.122.2.17
8.122.2.18
<<eXtension>>
( p. 278)
Performs
the
same
functions
as
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesDataWriter.KeyedBytesDataWriter.dispose
except that the application provides the value for the source timestamp
that is made available to com.rti.dds.subscription.DataReader
(p. 487) objects by means of the source timestamp attribute inside the
com.rti.dds.subscription.SampleInfo (p. 1398).
See also:
com.rti.ndds.example.FooDataWriter.dispose w timestamp
(p. 1029)
8.122.2.19
1090
Class Documentation
See also:
com.rti.ndds.example.FooDataWriter.get key value (p. 1031)
8.122.2.20
8.122.2.21
8.122.2.22
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.123
1091
given
Package Attributes
transient Sequence loanedInfoSequence = null
8.123.1
Detailed Description
1092
Class Documentation
8.123.2
8.123.2.1
KeyedBytesSeq ()
Constructs
a
new
sequence
containing
the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes objects.
given
Parameters:
elements the initial contents of this sequence.
Exceptions:
NullPointerException if the input collection is null
8.123.3
8.123.3.1
Copy data into this object from another. The result of this method is that
both this and src will be the same size and contain the same data.
Parameters:
src The Object which contains the data to be copied
Returns:
this
Exceptions:
NullPointerException If src is null.
ClassCastException If src is not a Sequence OR if one of the objects
contained in the Sequence is not of the expected type.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1093
See also:
com.rti.dds.infrastructure.Copyable.copy from
(p. 480)(java.lang.Object)
Implements Copyable (p. 480).
8.123.4
8.123.4.1
When a memory loan has been taken out in the lower layers of NDDS, store a
pointer to the native sequence here. That way, when we call finish(), we can
give the memory back.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1094
Class Documentation
8.124
8.124.1
Detailed Description
8.124.2
8.124.2.1
1095
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesTypeSupport.get type name. Therefore, the usage of this function is optional and it is only
required when the automatic built-in type registration is disabled using the
participant property dds.builtin type.auto register.
This
method
can
also
be
used
to
register
the
same
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytesTypeSupport
with a com.rti.dds.domain.DomainParticipant (p. 654) using different
values for the type name.
is
called
multiple
times
with
the
same
If
register type
com.rti.dds.domain.DomainParticipant (p. 654) and type name, the
second (and subsequent) registrations are ignored by the operation.
Parameters:
participant <<in>> ( p. 279) the com.rti.dds.domain.DomainParticipant
to
register
the
data
type
(p. 654)
com.rti.dds.type.builtin.com.rti.dds.type.builtin.Bytes with. Cannot
be null.
type name <<in>> ( p. 279) the type name under with the data
type
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedBytes
is registered with the participant; this type name is used
when creating a new com.rti.dds.topic.Topic (p. 1545). (See
com.rti.dds.domain.DomainParticipant.create topic (p. 697).)
The name may not be null or longer than 255 characters.
Exceptions:
One of
the
Standard
Return
Codes
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET
(p. 1363)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362).
(p. 108),
or
MT Safety:
UNSAFE on the FIRST call. It is not safe for two threads to simultaneously
make the first call to register a type. Subsequent calls are thread safe.
See also:
com.rti.dds.domain.DomainParticipant.create topic (p. 697)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1096
8.124.2.2
Class Documentation
static void unregister type (DomainParticipant
participant, String type name) [static]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1097
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1098
Class Documentation
8.125
Public Attributes
String key
Instance key associated with the specified value.
String value
String value.
8.125.1
Detailed Description
8.125.2
8.125.2.1
KeyedString ()
Default Constructor.
The default constructor initializes the newly created object with empty key and
value.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1099
Copy constructor.
Parameters:
src <<in>> ( p. 279) Object to copy from.
Exceptions:
NullPointerException if src is null.
8.125.3
8.125.3.1
8.125.4
8.125.4.1
String key
1100
8.125.4.2
Class Documentation
String value
String value.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.126
1101
<<interface>>
( p. 279)
Instantiates
DataReader
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString >.
<
from
the
from
the
void read w condition (KeyedStringSeq received data, SampleInfoSeq info seq, int max samples, ReadCondition condition)
Accesses via com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataReader.read
the
samples
that
match
the
criteria
specified
in
the
com.rti.dds.subscription.ReadCondition ( p. 1313).
void take w condition (KeyedStringSeq received data, SampleInfoSeq info seq, int max samples, ReadCondition condition)
Analogous to com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataReader.read w condition
except
it
accesses
samples
via
the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataReader.take
operation.
value
from
the
value
from
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
the
1102
Class Documentation
void read instance (KeyedStringSeq received data, SampleInfoSeq
info seq, int max samples, InstanceHandle t a handle, int sample states, int view states, int instance states)
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader ( p. 487).
from
the
from
the
void read next instance (KeyedStringSeq received data, SampleInfoSeq info seq, int max samples, InstanceHandle t a handle, int sample states, int view states, int instance states)
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader ( p. 487).
from
the
void take next instance (KeyedStringSeq received data, SampleInfoSeq info seq, int max samples, InstanceHandle t a handle, int sample states, int view states, int instance states)
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader ( p. 487).
from
the
void read next instance w condition (KeyedStringSeq received data, SampleInfoSeq info seq, int max samples, InstanceHandle t a handle, ReadCondition condition)
Accesses via com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataReader.read next instance the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition ( p. 1313).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1103
void take next instance w condition (KeyedStringSeq received data, SampleInfoSeq info seq, int max samples, InstanceHandle t a handle, ReadCondition condition)
Accesses via com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataReader.take next instance the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition ( p. 1313).
8.126.1
Detailed Description
<<interface>>
( p. 279)
Instantiates
DataReader
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString >.
See also:
com.rti.ndds.example.FooDataReader (p. 979)
com.rti.dds.subscription.DataReader (p. 487)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
<
1104
Class Documentation
8.126.2
8.126.2.1
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
See also:
com.rti.ndds.example.FooDataReader.read (p. 981)
8.126.2.2
Access
a
collection
of
data-samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
See also:
com.rti.ndds.example.FooDataReader.take (p. 983)
8.126.2.3
8.126.2.4
1105
See also:
com.rti.ndds.example.FooDataReader.take w condition (p. 991)
8.126.2.5
Copies
the
next
not-previously-accessed data
com.rti.dds.subscription.DataReader (p. 487).
value
from
the
See also:
com.rti.ndds.example.FooDataReader.read next sample (p. 993)
8.126.2.6
Copies
the
next
not-previously-accessed data
com.rti.dds.subscription.DataReader (p. 487).
value
from
the
See also:
com.rti.ndds.example.FooDataReader.take next sample (p. 994)
8.126.2.7
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
See also:
com.rti.ndds.example.FooDataReader.read instance (p. 995)
8.126.2.8
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
the
1106
Class Documentation
See also:
com.rti.ndds.example.FooDataReader.take instance (p. 997)
8.126.2.9
Accesses via com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataReader.read instance the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition (p. 1313).
See also:
com.rti.ndds.example.FooDataReader.read instance w condition
8.126.2.10
Accesses via com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataReader.take instance the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition (p. 1313).
See also:
com.rti.ndds.example.FooDataReader.take instance w condition
8.126.2.11
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
See also:
com.rti.ndds.example.FooDataReader.read next instance (p. 999)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1107
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
See also:
com.rti.ndds.example.FooDataReader.take next instance (p. 1002)
8.126.2.13
Accesses via com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataReader.read next instance the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition (p. 1313).
See also:
com.rti.ndds.example.FooDataReader.read next instance w condition (p. 1004)
8.126.2.14
Accesses via com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataReader.take next instance the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition (p. 1313).
See also:
com.rti.ndds.example.FooDataReader.take next instance w condition (p. 1006)
8.126.2.15
1108
Class Documentation
8.126.2.16
8.126.2.17
8.126.2.18
8.126.2.19
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.127
1109
<<interface>>
( p. 279)
Instantiates
DataWriter
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString >.
<
(String
key,
<<eXtension>>
(p. 278)
Performs
the
same
functions
as
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataWriter.KeyedStringDataWriter.register instance except that the application provides the value for the source timestamp.
1110
Class Documentation
void unregister instance w timestamp (String key, InstanceHandle t handle, Time t source timestamp)
<<eXtension>>
(p. 278)
Performs
the
same
function
as
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataWriter.KeyedStringDataWriter.unregis
instance except that it also provides the value for the source timestamp.
void write w timestamp (KeyedString instance data, InstanceHandle t handle, Time t source timestamp)
void dispose w timestamp (KeyedString instance data, InstanceHandle t instance handle, Time t source timestamp)
void dispose w timestamp (String key, InstanceHandle t instance handle, Time t source timestamp)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1111
<<eXtension>>
(p. 278)
Performs
the
same
functions
as
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataWriter.KeyedStringDataWriter.dispose
except that the application provides the value for the source timestamp
that is made available to com.rti.dds.subscription.DataReader
( p. 487) objects by means of the source timestamp attribute inside
the com.rti.dds.subscription.SampleInfo ( p. 1398).
8.127.1
Detailed Description
<<interface>>
( p. 279)
Instantiates
DataWriter
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString >.
<
See also:
com.rti.ndds.example.FooDataWriter (p. 1012)
com.rti.dds.publication.DataWriter (p. 557)
8.127.2
8.127.2.1
Informs RTI Connext that the application will be modifying a particular instance.
See also:
com.rti.ndds.example.FooDataWriter.register instance (p. 1014)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1112
8.127.2.2
Class Documentation
InstanceHandle t register instance (String key)
8.127.2.3
8.127.2.4
<<eXtension>>
( p. 278)
Performs
the
same
functions
as
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataWriter.KeyedStringDataWriter.register
instance except that the application provides the value for the source timestamp.
See also:
com.rti.ndds.example.FooDataWriter.register instance w timestamp (p. 1015)
8.127.2.5
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1113
<<eXtension>>
( p. 278)
Reverses
the
action
of
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataWriter.KeyedStringDataWriter.register instance.
See also:
com.rti.ndds.example.FooDataWriter.unregister instance
(p. 1016)
8.127.2.7
Performs the same function as com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataWriter.unregister instance except that it also provides the value for the source timestamp.
See also:
com.rti.ndds.example.FooDataWriter.FooDataWriter.unregister instance w timestamp
8.127.2.8
<<eXtension>>
( p. 278)
Performs
the
same
function
as
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataWriter.KeyedStringDataWriter.unregister instance except that it also provides the value for the source timestamp.
See also:
com.rti.ndds.example.FooDataWriter.FooDataWriter.unregister instance w timestamp
8.127.2.9
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1114
8.127.2.10
Class Documentation
void write (String key, String str, InstanceHandle t
handle)
<<eXtension>>
( p. 278)
Modifies
the
value
of
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString data instance.
See also:
com.rti.ndds.example.FooDataWriter.write (p. 1021)
8.127.2.11
8.127.2.12
<<eXtension>>
( p. 278)
Performs
the
same
function
as
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataWriter.KeyedStringDataWriter.write
except that it also provides the value for the source timestamp.
See also:
com.rti.ndds.example.FooDataWriter.write w timestamp (p. 1024)
8.127.2.13
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1115
8.127.2.15
8.127.2.16
<<eXtension>>
( p. 278)
Performs
the
same
functions
as
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringDataWriter.KeyedStringDataWriter.dispose
except that the application provides the value for the source timestamp
that is made available to com.rti.dds.subscription.DataReader
(p. 487) objects by means of the source timestamp attribute inside the
com.rti.dds.subscription.SampleInfo (p. 1398).
See also:
com.rti.ndds.example.FooDataWriter.dispose w timestamp
(p. 1029)
8.127.2.17
1116
Class Documentation
See also:
com.rti.ndds.example.FooDataWriter.get key value (p. 1031)
8.127.2.18
8.127.2.19
8.127.2.20
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.128
1117
given
Package Attributes
transient Sequence loanedInfoSequence = null
8.128.1
Detailed Description
1118
Class Documentation
8.128.2
8.128.2.1
KeyedStringSeq ()
Constructs
a
new
sequence
containing
the
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString objects.
given
Parameters:
elements the initial contents of this sequence.
Exceptions:
NullPointerException if the input collection is null
8.128.3
8.128.3.1
Copy data into this object from another. The result of this method is that
both this and src will be the same size and contain the same data.
Parameters:
src The Object which contains the data to be copied
Returns:
this
Exceptions:
NullPointerException If src is null.
ClassCastException If src is not a Sequence OR if one of the objects
contained in the Sequence is not of the expected type.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1119
See also:
com.rti.dds.infrastructure.Copyable.copy from
(p. 480)(java.lang.Object)
Implements Copyable (p. 480).
8.128.4
8.128.4.1
When a memory loan has been taken out in the lower layers of NDDS, store a
pointer to the native sequence here. That way, when we call finish(), we can
give the memory back.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1120
Class Documentation
8.129
KeyedStringTypeSupport
ence
Class
Refer-
8.129.1
Detailed Description
8.129.2
8.129.2.1
1121
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringTypeSupport.get type name. Therefore, the usage of this function is optional and it is only
required when the automatic built-in type registration is disabled using the
participant property dds.builtin type.auto register.
This
method
can
also
be
used
to
register
the
same
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedStringTypeSupport
with a com.rti.dds.domain.DomainParticipant (p. 654) using different
values for the type name.
is
called
multiple
times
with
the
same
If
register type
com.rti.dds.domain.DomainParticipant (p. 654) and type name, the
second (and subsequent) registrations are ignored by the operation.
Parameters:
participant <<in>> ( p. 279) the com.rti.dds.domain.DomainParticipant
to
register
the
data
type
(p. 654)
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString
with.
Cannot be null.
type name <<in>> ( p. 279) the type name under with the data
type
com.rti.dds.type.builtin.com.rti.dds.type.builtin.KeyedString
is registered with the participant; this type name is used
when creating a new com.rti.dds.topic.Topic (p. 1545). (See
com.rti.dds.domain.DomainParticipant.create topic (p. 697).)
The name may not be null or longer than 255 characters.
Exceptions:
One of
the
Standard
Return
Codes
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET
(p. 1363)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362).
(p. 108),
or
MT Safety:
UNSAFE on the FIRST call. It is not safe for two threads to simultaneously
make the first call to register a type. Subsequent calls are thread safe.
See also:
com.rti.dds.domain.DomainParticipant.create topic (p. 697)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1122
8.129.2.2
Class Documentation
static void unregister type (DomainParticipant
participant, String type name) [static]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1123
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1124
Class Documentation
8.130
Provides a hint as to the maximum acceptable delay from the time the data is
written to the time it is received by the subscribing applications.
Inheritance diagram for LatencyBudgetQosPolicy::
Public Attributes
final Duration t duration
Duration of the maximum acceptable delay.
8.130.1
Detailed Description
Provides a hint as to the maximum acceptable delay from the time the data is
written to the time it is received by the subscribing applications.
This policy is a hint to a DDS implementation; it can be used to change how it
processes and sends data that has low latency requirements. The DDS specification does not mandate whether or how this policy is used.
Entity:
com.rti.dds.topic.Topic (p. 1545), com.rti.dds.subscription.DataReader
(p. 487), com.rti.dds.publication.DataWriter (p. 557)
Status:
com.rti.dds.infrastructure.StatusKind.StatusKind.OFFERED INCOMPATIBLE QOS STATUS, com.rti.dds.infrastructure.StatusKind.StatusKind.REQUESTED
INCOMPATIBLE QOS STATUS
Properties:
RxO (p. 101) = YES
Changeable (p. 102) = YES (p. 102)
See also:
com.rti.dds.infrastructure.PublishModeQosPolicy (p. 1295)
com.rti.dds.publication.FlowController (p. 964)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.130.2
1125
Usage
This policy provides a means for the application to indicate to the middleware
the urgency of the data communication. By having a non-zero duration, RTI
Connext can optimize its internal operation.
RTI
Connext
uses
it
in
conjunction
with
com.rti.dds.infrastructure.PublishModeQosPolicyKind.PublishModeQosPolicyKind.ASYNCHRONOUS PUBLISH MODE QOS com.rti.dds.publication.DataWriter (p. 557) instances associated with a com.rti.dds.publication.FlowControllerSchedulingPolicy.FlowControllerSchedulingPolicy.ED
FLOW CONTROLLER SCHED POLICY com.rti.dds.publication.FlowController
only.
Together
with
the
time
of
write,
(p. 964)
com.rti.dds.infrastructure.LatencyBudgetQosPolicy.duration (p. 1125)
determines the deadline of each individual sample. RTI Connext uses this
information to prioritize the sending of asynchronously published data; see
com.rti.dds.infrastructure.AsynchronousPublisherQosPolicy (p. 397).
8.130.3
Compatibility
The value offered is considered compatible with the value requested if and only
if the inequality offered duration <= requested duration evaluates to TRUE.
8.130.4
8.130.4.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1126
Class Documentation
8.131
Public Attributes
final int major
The major version of a single RTI Connext library.
8.131.1
Detailed Description
8.131.2
8.131.2.1
1127
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1128
Class Documentation
8.132
Specifies
how
long
the
data
written
by
com.rti.dds.publication.DataWriter (p. 557) is considered valid.
the
Public Attributes
final Duration t duration
Maximum duration for the datas validity.
8.132.1
Detailed Description
Specifies
how
long
the
data
written
by
com.rti.dds.publication.DataWriter (p. 557) is considered valid.
the
8.132.2
1129
Usage
The Lifespan QoS policy can be used to control how much data is stored by
RTI Connext. Even if it is configured to store all of the data sent or received
for a topic (p. 359) (see com.rti.dds.infrastructure.HistoryQosPolicy
(p. 1046)), the total amount of data it stores may be limited by this QoS policy.
You may also use this QoS policy to ensure that applications do not receive or
act on data, commands or messages that are too old and have expired.
To avoid inconsistencies, multiple writers of the same instance should have the
same lifespan.
See also:
com.rti.dds.subscription.SampleInfo.source timestamp (p. 1404)
com.rti.dds.subscription.SampleInfo.reception timestamp
(p. 1407)
8.132.3
8.132.3.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1130
8.133
Class Documentation
<<interface>> ( p. 279) Abstract base class for all Listener (p. 1130) interfaces.
Inheritance diagram for Listener::
8.133.1
Detailed Description
<<interface>> ( p. 279) Abstract base class for all Listener (p. 1130) interfaces.
Entity:
com.rti.dds.infrastructure.Entity (p. 931)
QoS:
QoS Policies (p. 94)
Status:
Status Kinds (p. 110)
All the supported kinds of concrete com.rti.dds.infrastructure.Listener
(p. 1130) interfaces (one per concrete com.rti.dds.infrastructure.Entity
(p. 931) type) derive from this root and add methods whose prototype depends
on the concrete Listener (p. 1130).
Listeners provide a way for RTI Connext to asynchronously alert the application
when there are relevant status changes.
Almost every application will have to implement listener interfaces.
Each dedicated listener presents a list of operations that correspond to the
relevant communication status changes to which an application may respond.
The same com.rti.dds.infrastructure.Listener (p. 1130) instance
may be shared among multiple entities if you so desire.
Consequently, the provided parameter contains a reference to the concerned
com.rti.dds.infrastructure.Entity (p. 931).
8.133.2
The general mapping between the plain communication statuses (see Status
Kinds (p. 110)) and the listeners operations is as follows:
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1131
8.133.3
The two statuses related to data arrival are treated slightly differently. Since
they constitute the core purpose of the Data Distribution Service, there is no
need to provide a default mechanism (as is done for the plain communication
statuses above).
The rule is as follows. Each time the read communication status changes:
First,
RTI
Connext
tries
to
trigger
com.rti.dds.subscription.SubscriberListener.on data (p. 1504)
with
a
parameter
of
the
on readers
com.rti.dds.subscription.Subscriber (p. 1476);
the
related
1132
Class Documentation
8.133.4
1133
Within a com.rti.dds.topic.Topic (p. 1545) listener callback, any operations on any subscribers, readers, publishers or writers
An attempt to call a disallowed method from within a callback will result
in
com.rti.dds.infrastructure.RETCODE ILLEGAL OPERATION
(p. 1357).
If
com.rti.dds.infrastructure.ExclusiveAreaQosPolicy.use shared exclusive area (p. 953) is set to com.rti.dds.infrastructure.false, the setting
which allows more concurrency among RTI Connext threads, the following are
not allowed:
Within any listener callback, creating any entity
Within any listener callback, deleting any entity
Within any listener callback, enabling any entity
Within any listener callback, setting the QoS of any entities
Within
a
com.rti.dds.subscription.DataReader
(p. 487)
lisor
com.rti.dds.subscription.Subscriber
(p. 1476)
tener
callback,
invoking
any
operation
on
any
other
com.rti.dds.subscription.Subscriber
(p. 1476)
or
on
any
com.rti.dds.subscription.DataReader (p. 487) belonging to another com.rti.dds.subscription.Subscriber (p. 1476).
Within a com.rti.dds.subscription.DataReader (p. 487) or
com.rti.dds.subscription.Subscriber (p. 1476) listener callback,
invoking any operation on any com.rti.dds.publication.Publisher
(p. 1262) (or on any com.rti.dds.publication.DataWriter (p. 557)
belonging to such a com.rti.dds.publication.Publisher (p. 1262))
that has com.rti.dds.infrastructure.ExclusiveAreaQosPolicy.use shared exclusive area (p. 953) set to com.rti.dds.infrastructure.true.
Within
a
com.rti.dds.publication.DataWriter
(p. 557)
of
com.rti.dds.publication.Publisher
(p. 1262)
listener
callback, invoking any operation on another Publisher or on a
com.rti.dds.publication.DataWriter (p. 557) belonging to another
com.rti.dds.publication.Publisher (p. 1262).
Within
a
com.rti.dds.publication.DataWriter
(p. 557)
of
com.rti.dds.publication.Publisher (p. 1262) listener callback, invoking any operation on any com.rti.dds.subscription.Subscriber
(p. 1476) or com.rti.dds.subscription.DataReader (p. 487).
An attempt to call a disallowed method from within a callback will result
in
com.rti.dds.infrastructure.RETCODE ILLEGAL OPERATION
(p. 1357).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1134
Class Documentation
The
above
limitations
can
be
lifted
by
setting
com.rti.dds.infrastructure.ExclusiveAreaQosPolicy.use shared exclusive area
(p. 953)
to
com.rti.dds.infrastructure.true
on
the
com.rti.dds.publication.Publisher
(p. 1262)
or
com.rti.dds.subscription.Subscriber
(p. 1476)
(or
on
the
com.rti.dds.publication.Publisher
com.rti.dds.subscription.Subscriber
(p. 1262)/
of
the
com.rti.dds.publication.DataWriter
(p. 1476)
(p. 557)/com.rti.dds.subscription.DataReader (p. 487)) to which the
listener is attached. However, the application will pay the cost of reduced
concurrency between the affected publishers and subscribers.
See also:
EXCLUSIVE AREA (p. 76)
Status Kinds (p. 110)
com.rti.dds.infrastructure.WaitSet
com.rti.dds.infrastructure.Condition (p. 464)
(p. 1709),
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.134
1135
Public Attributes
int alive count
The total count of currently alive com.rti.dds.publication.DataWriter
( p. 557) entities that write the com.rti.dds.topic.Topic ( p. 1545) the
com.rti.dds.subscription.DataReader ( p. 487) reads.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1136
Class Documentation
8.134.1
Detailed Description
8.134.2
8.134.2.1
LivelinessChangedStatus ()
A copy constructor.
Exceptions:
NullPointerException if the given status is null.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.134.3
8.134.3.1
1137
The change in the alive count since the last time the listener was called or the
status was read.
8.134.3.4
The change in the not alive count since the last time the listener was called or
the status was read.
8.134.3.5
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1138
Class Documentation
8.135
Public Attributes
int total count
Total
cumulative
number
of
times
that
a
previously-alive
com.rti.dds.publication.DataWriter ( p. 557) became not alive due
to a failure to to actively signal its liveliness within the offered liveliness
period.
8.135.1
Detailed Description
8.135.2
8.135.2.1
Total
cumulative
number
of
times
that
a
previously-alive
com.rti.dds.publication.DataWriter (p. 557) became not alive due to
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1139
a failure to to actively signal its liveliness within the offered liveliness period.
This
count
does
not
change
when
an
already
not
alive
com.rti.dds.publication.DataWriter (p. 557) simply remains not alive
for another liveliness period.
8.135.2.2
The incremental changees in total count since the last time the listener was
called or the status was read.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1140
Class Documentation
8.136
Specifies
and
configures
the
mechanism
that
allows
com.rti.dds.subscription.DataReader (p. 487) entities to detect when
com.rti.dds.publication.DataWriter (p. 557) entities become disconnected
or dead..
Inheritance diagram for LivelinessQosPolicy::
Public Attributes
LivelinessQosPolicyKind kind
The kind of liveliness desired.
8.136.1
Detailed Description
Specifies
and
configures
the
mechanism
that
allows
com.rti.dds.subscription.DataReader (p. 487) entities to detect when
com.rti.dds.publication.DataWriter (p. 557) entities become disconnected
or dead..
Liveliness must be asserted at least once every lease duration otherwise RTI
Connext will assume the corresponding com.rti.dds.infrastructure.Entity
(p. 931) or is no longer alive.
The liveliness status of a com.rti.dds.infrastructure.Entity (p. 931)
is used to maintain instance ownership in combination with the setThe application is also
ting of the OWNERSHIP (p. 87) policy.
informed via com.rti.dds.infrastructure.Listener (p. 1130) when an
com.rti.dds.infrastructure.Entity (p. 931) is no longer alive.
A com.rti.dds.subscription.DataReader (p. 487) requests that liveliness of
writers is maintained by the requested means and loss of liveliness is detected
with delay not to exceed the lease duration.
A com.rti.dds.publication.DataWriter (p. 557) commits to signalling its
liveliness using the stated means at intervals not to exceed the lease duration.
Listeners are used to notify a com.rti.dds.subscription.DataReader (p. 487)
of loss of liveliness and com.rti.dds.publication.DataWriter (p. 557) of viGenerated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1141
8.136.2
Usage
This policy controls the mechanism and parameters used by RTI Connext to
ensure that particular entities on the network are still alive. The liveliness
can also affect the ownership of a particular instance, as determined by the
OWNERSHIP (p. 87) policy.
This policy has several settings to support both data types that are updated
periodically as well as those that are changed sporadically. It also allows customisation for different application requirements in terms of the kinds of failures
that will be detected by the liveliness mechanism.
The com.rti.dds.infrastructure.LivelinessQosPolicyKind.LivelinessQosPolicyKind.AUTOMATIC LIVELINESS QOS liveliness setting is most appropriate for applications that
only need to detect failures at the process-level, but not application-logic
failures within a process. RTI Connext takes responsibility for renewing the
leases at the required rates and thus, as long as the local process where a
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1142
Class Documentation
8.136.3
Compatibility
The value offered is considered compatible with the value requested if and only
if the following conditions are met:
1143
8.136.4
8.136.4.1
LivelinessQosPolicyKind kind
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1144
Class Documentation
8.137
Kinds of liveliness.
Inheritance diagram for LivelinessQosPolicyKind::
AUTOMATIC -
static
final
LivelinessQosPolicyKind
PARTICIPANT LIVELINESS QOS
MANUAL BY -
MANUAL BY TOPIC -
RTI
Connext
will
only
assume
liveliness
of
the
com.rti.dds.publication.DataWriter ( p. 557) if the application has
asserted liveliness of that com.rti.dds.publication.DataWriter ( p. 557)
itself.
8.137.1
Detailed Description
Kinds of liveliness.
QoS:
com.rti.dds.infrastructure.LivelinessQosPolicy (p. 1140)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.137.2
8.137.2.1
1145
[default] The infrastructure (p. 334) will automatically signal liveliness for
the com.rti.dds.publication.DataWriter (p. 557) (s) at least as often as required by the lease duration.
A com.rti.dds.publication.DataWriter (p. 557) with this setting does not
need to take any specific action in order to be considered alive. The
com.rti.dds.publication.DataWriter (p. 557) is only not alive when the
participant to which it belongs terminates (gracefully or not), or when there is
a network problem that prevents the current participant from contacting that
remote participant.
8.137.2.2
RTI
Connext
will
only
assume
liveliness
of
the
com.rti.dds.publication.DataWriter (p. 557) if the application has asserted liveliness of that com.rti.dds.publication.DataWriter (p. 557)
itself.
The user application takes responsibility to signal liveliness to RTI Connext
using the com.rti.dds.publication.DataWriter.assert liveliness (p. 574)
method, or by writing some data.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1146
Class Documentation
8.138
A sequence capable of storing its elements directly or taking out a loan on them
from an internal middleware store.
Inheritance diagram for LoanableSequence::
int getMaximum ()
Get the current maximum number of elements that can be stored in this
sequence.
int size ()
Returns the length of the sequence.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.138.1
1147
Detailed Description
A sequence capable of storing its elements directly or taking out a loan on them
from an internal middleware store.
See also:
com.rti.dds.subscription.DataReader.read untyped
com.rti.dds.subscription.SampleInfoSeq
(p. 506)(java.util.List,
(p. 1409), int, int, int, int)
com.rti.dds.subscription.DataReader.take untyped
(p. 507)(java.util.List,
com.rti.dds.subscription.SampleInfoSeq
(p. 1409), int, int, int, int)
8.138.2
8.138.2.1
8.138.2.2
8.138.2.3
8.138.3
8.138.3.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1148
8.138.3.2
Class Documentation
int getMaximum ()
Get the current maximum number of elements that can be stored in this sequence.
The maximum of the sequence represents the maximum number of elements that
the underlying buffer can hold. It does not represent the current number of
elements.
The maximum is a non-negative number. It is initialized when the sequence is
first created.
The maximum can be changed implicitly by adding an element
or explicitly by calling
to the sequence with add() (p. 391),
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.setMaximum.
Returns:
the current maximum of the sequence.
See also:
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.size()
Implements Sequence (p. 1429).
8.138.3.3
1149
Replaces the element at the specified position in this sequence with the specified
element.
See also:
java.util.List.set(int, java.lang.Object)
8.138.3.5
8.138.3.6
int size ()
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1150
Class Documentation
8.139
Public Attributes
int kind
The kind of locator.
int port
the port number
1151
8.139.1
Detailed Description
8.139.2
8.139.2.1
Locator t ()
Constructor.
8.139.3
8.139.3.1
An invalid port.
8.139.3.3
Initial value:
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1152
Class Documentation
{0,0,0,0,
0,0,0,0,
0,0,0,0,
0,0,0,0}
An invalid address.
8.139.3.4
Initial value:
new Locator_t(
KIND_INVALID, PORT_INVALID, ADDRESS_INVALID)
An invalid locator.
8.139.3.5
int kind
1153
int port
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1154
Class Documentation
8.140
Public Attributes
LocatorSeq locators
Sequence
containing
from
one
to
four
com.rti.dds.infrastructure.Locator t ( p. 1150), used to specify the
multicast address locators of an individual channel within a MultiChannel
DataWriter.
8.140.1
Detailed Description
8.140.2
8.140.2.1
LocatorFilter t ()
1155
Constructor.
8.140.2.2
Constructor.
Parameters:
src <<in>> ( p. 279) Locator used to initialized the new locator.
8.140.2.3
Constructor.
Parameters:
locators <<in>> ( p. 279) Locators.
filter expression <<in>> ( p. 279) Filter expression.
8.140.3
8.140.3.1
LocatorSeq locators
Initial value:
new LocatorSeq()
A logical expression used to determine the data that will be published in the
channel.
If the expression evaluates to TRUE, a sample will be published on the channel.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1156
Class Documentation
of
See also:
Queries and Filters Syntax (p. 286)
[default] NULL (invalid value)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.141
1157
Public Attributes
final LocatorFilterSeq locator filters
A sequence of com.rti.dds.infrastructure.LocatorFilter t ( p. 1154).
Each com.rti.dds.infrastructure.LocatorFilter t ( p. 1154) reports the
configuration of a single channel of a MultiChannel DataWriter.
8.141.1
Detailed Description
8.141.2
8.141.2.1
1158
Class Documentation
Name of the filter class used to describe the filter expressions of a MultiChannel
DataWriter.
The
following
builtin
filters
are
supported:
com.rti.dds.domain.DomainParticipant.SQLFILTER NAME (p. 155)
and com.rti.dds.domain.DomainParticipant.STRINGMATCHFILTER NAME (p. 155).
[default] com.rti.dds.domain.DomainParticipant.STRINGMATCHFILTER NAME (p. 155)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.142
1159
Declares IDL
(p. 1154) >.
sequence<
com.rti.dds.infrastructure.LocatorFilter t
Inherits ArraySequence.
8.142.1
Detailed Description
Declares IDL
(p. 1154) >.
sequence<
com.rti.dds.infrastructure.LocatorFilter t
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1160
8.143
Class Documentation
8.143.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.144
1161
8.144.1
Detailed Description
1162
Class Documentation
8.144.2
8.144.2.1
Log messages pertaining to the underlying platform (hardware and OS) on which
RTI Connext is running are in this category.
8.144.2.2
Log messages pertaining to the internal database in which RTI Connext objects
are stored are in this category.
8.144.2.4
Log messages pertaining to local and remote entities and to the discovery process
are in this category.
8.144.2.5
Log messages pertaining to the API layer of RTI Connext (such as method
argument validation) are in this category.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.145
1163
LogVerbosity
gory)
(LogCategory
cate-
Get the verbosity at which RTI Connext is currently logging diagnostic information in the given category.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1164
Class Documentation
8.145.1
Detailed Description
8.145.2
8.145.2.1
Get the verbosity at which RTI Connext is currently logging diagnostic information.
The default verbosity if com.rti.ndds.config.Logger.set verbosity (p. 1164)
is never called is com.rti.ndds.config.LogVerbosity.NDDS CONFIG LOG VERBOSITY ERROR (p. 1178).
If com.rti.ndds.config.Logger.set verbosity by category (p. 1165) has
been used to set different verbosities for different categories of messages, this
method will return the maximum verbosity of all categories.
8.145.2.3
Get the verbosity at which RTI Connext is currently logging diagnostic information in the given category.
The default verbosity if com.rti.ndds.config.Logger.set verbosity (p. 1164)
and com.rti.ndds.config.Logger.set verbosity by category (p. 1165) are
never called is com.rti.ndds.config.LogVerbosity.NDDS CONFIG LOG VERBOSITY ERROR (p. 1178).
8.145.2.4
Set the verbosity at which RTI Connext will log diagnostic information.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1165
Note:
Logging at high verbosities will be detrimental to your applications performance.
Your default setting should typically remain at com.rti.ndds.config.LogVerbosity.NDDS CONFIG LOG VERBOSITY WARNING (p. 1178) or below. (The default verbosity if
you never set it is com.rti.ndds.config.LogVerbosity.NDDS CONFIG LOG VERBOSITY ERROR (p. 1178).)
8.145.2.5
Set the verbosity at which RTI Connext will log diagnostic information in the
given category.
8.145.2.6
8.145.2.9
1166
Class Documentation
There can be at most only one device registered with the logger at any given
time.
When a device is installed, the logger will stop sending the log messages to the
standard output and to the file set with com.rti.ndds.config.Logger.set output file (p. 1165).
To remove an existing device, use this method with NULL as the device parameter. After a device is removed the logger will continue sending log messages to
the standard output and to the output file.
To replace an existing device with a new device, use this method providing the
new device as the device parameter.
When a device is unregistered (by setting it to
com.rti.ndds.config.LoggerDevice
(p. 1167)
calls
the
com.rti.ndds.config.LoggerDevice.close (p. 1168).
NULL),
method
Parameters:
device <<in>> ( p. 279) Logging device.
8.145.2.10
Get the current message format that RTI Connext is using to log diagnostic
information.
If com.rti.ndds.config.Logger.set print format (p. 1166) is never called,
the default format is com.rti.ndds.config.LogPrintFormat.NDDS CONFIG LOG PRINT FORMAT DEFAULT (p. 1175).
8.145.2.11
Set the message format that RTI Connext will use to log diagnostic information.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.146
1167
Package Functions
void write (LogMessage message)
Write a log message to a specified logging device.
8.146.1
Detailed Description
8.146.2
8.146.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1168
8.146.2.2
Class Documentation
void close ()
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.147
1169
Public Attributes
LogVerbosity verbosity
The verbosities at which RTI Connext diagnostic information is logged.
LogCategory category
Categories of logged messages.
8.147.1
Detailed Description
8.147.2
8.147.2.1
LogVerbosity verbosity
1170
Class Documentation
[default]
com.rti.ndds.config.LogVerbosity.NDDS CONFIG LOG VERBOSITY ERROR (p. 1178)
8.147.2.2
LogCategory category
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.148
1171
static
final
WARNING
LogLevel
8.148.1
Detailed Description
8.148.2
8.148.2.1
1172
Class Documentation
The message contains info about the lifecycles of local RTI Connext objects will
be logged.
8.148.2.4
The message contains info about the lifecycles of remote RTI Connext objects
will be logged.
8.148.2.5
The message contains debug info that might be relevant to your application.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.149
1173
Log message.
Inherits Struct.
Public Attributes
String text
Message text.
LogLevel level
Message level.
8.149.1
Detailed Description
Log message.
8.149.2
8.149.2.1
String text
Message text.
8.149.2.2
LogLevel level
Message level.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1174
Class Documentation
8.150
Print message with all available context information (includes thread identifier, activity context).
static final LogPrintFormat NDDS CONFIG LOG PRINT FORMAT VERBOSE TIMESTAMPED
Print message with all available context information, and timestamp.
8.150.1
Detailed Description
8.150.2
8.150.2.1
1175
8.150.2.2
8.150.2.3
Print message with all available context information (includes thread identifier,
activity context).
8.150.2.4
8.150.2.5
8.150.2.6
1176
8.150.2.7
Class Documentation
final LogPrintFormat NDDS CONFIG LOG PRINT FORMAT MAXIMAL
[static]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.151
1177
8.151.1
Detailed Description
1178
Class Documentation
8.151.2
8.151.2.1
Errors, warnings, and verbose information about the lifecycles of local RTI
Connext objects will be logged.
8.151.2.5
Errors, warnings, and verbose information about the lifecycles of remote RTI
Connext objects will be logged.
8.151.2.6
Errors, warnings, verbose information about the lifecycles of local and remote
RTI Connext objects, and periodic information about RTI Connext threads will
be logged.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.152
1179
8.152.1
Detailed Description
8.152.2
8.152.2.1
LongDoubleSeq ()
1180
8.152.2.2
Class Documentation
LongDoubleSeq (int initialMaximum)
Constructs an empty sequence of long doubles with the given initial maximum.
8.152.2.3
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.153
1181
void setLong (int dstIndex, long[ ] elements, int srcIndex, int length)
Copy a portion of the given array into this sequence.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1182
Class Documentation
long[ ] toArrayLong (long[ ] array)
Return an array containing copy of the contents of this sequence.
int getMaximum ()
Get the current maximum number of elements that can be stored in this
sequence.
8.153.1
Detailed Description
8.153.2
8.153.2.1
LongSeq ()
8.153.2.2
Constructs an empty sequence of long integers with the given initial maximum.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1183
8.153.3
8.153.3.1
Append length elements from the given array to this sequence, starting at index
offset in that array.
Exceptions:
NullPointerException if the given array is null.
8.153.3.2
Exceptions:
NullPointerException if the given array is null
8.153.3.3
Shift all elements in the sequence starting from the given index and add the
element to the given index.
8.153.3.5
1184
Class Documentation
Exceptions:
IndexOutOfBoundsException if the index is out of bounds.
8.153.3.6
Set the new long at the given index and return the old long.
Exceptions:
IndexOutOfBoundsException if the index is out of bounds.
8.153.3.7
8.153.3.8
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1185
int getMaximum ()
Get the current maximum number of elements that can be stored in this sequence.
The maximum of the sequence represents the maximum number of elements that
the underlying buffer can hold. It does not represent the current number of
elements.
The maximum is a non-negative number. It is initialized when the sequence is
first created.
The maximum can be changed implicitly by adding an element
to the sequence with add() (p. 1186), or explicitly by calling
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.setMaximum.
Returns:
the current maximum of the sequence.
See also:
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.size()
Implements Sequence (p. 1429).
8.153.3.10
1186
8.153.3.12
Class Documentation
void add (int index, Object element) [virtual]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.154
1187
Public Attributes
final ChannelSettingsSeq channels
A sequence of com.rti.dds.infrastructure.ChannelSettings t ( p. 454)
used to configure the channels properties. If the length of the sequence is
zero, the QoS policy will be ignored.
8.154.1
Detailed Description
8.154.2
Usage
1188
Class Documentation
the values of the fields within the data. When your applications code calls
com.rti.ndds.example.FooDataWriter.write (p. 1021), data is sent to any
multicast address for which the data passes the filter.
Multi-channel DataWriters can be used to trade off network bandwidth with the
unnecessary processing of unwanted data for situations where there are multiple
DataReaders that are interested in different subsets of data that come from the
same data stream (Topic). For example, in Financial applications, the data
stream may be quotes for different stocks at an exchange. Applications usually
only want to receive data (quotes) for only a subset of the stocks being traded.
In tracking applications, a data stream may carry information on hundreds
or thousands of objects being tracked, but again, applications may only be
interested in a subset.
The problem is that the most efficient way to deliver data to multiple applications is to use multicast, so that a data value is only sent once on the network
for any number of subscribers to the data. However, using multicast, an application will receive all of the data sent and not just the data in which it is
interested, thus extra CPU time is wasted to throw away unwanted data. With
this QoS, you can analyze the data-usage patterns of your applications and optimize network vs. CPU usage by partitioning the data into multiple multicast
streams. While network bandwidth is still being conserved by sending data only
once using multicast, most applications will only need to listen to a subset of
the multicast addresses and receive a reduced amount of unwanted data.
Your system can gain more of the benefits of using multiple multicast groups if
your network uses Layer 2 Ethernet switches. Layer 2 switches can be configured
to only route multicast packets to those ports that have added membership
to specific multicast groups. Using those switches will ensure that only the
multicast packets used by applications on a node are routed to the node; all
others are filtered-out by the switch.
8.154.3
8.154.3.1
1189
Name of the filter class used to describe the filter expressions of a MultiChannel
DataWriter.
The
following
builtin
filters
are
supported:
com.rti.dds.domain.DomainParticipant.SQLFILTER NAME (p. 155)
and com.rti.dds.domain.DomainParticipant.STRINGMATCHFILTER NAME (p. 155).
[default] com.rti.dds.domain.DomainParticipant.STRINGMATCHFILTER NAME (p. 155)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1190
Class Documentation
8.155
8.155.1
Detailed Description
1191
1192
Class Documentation
Queries and Filters Syntax (p. 286) describes the syntax of subscription expression and expression parameters.
8.155.2
8.155.2.1
8.155.2.2
of
the
com.rti.dds.topic.MultiTopic
8.155.2.3
associated
with
the
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1193
Parameters:
parameters <<in>> ( p. 279) the filter expression parameters
Returns:
One of the Standard Return Codes (p. 108).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1194
Class Documentation
8.156
Public Attributes
Object value = null
Instance of Object embedded in ObjectHolder ( p. 1194).
8.156.1
Detailed Description
8.156.2
8.156.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.157
1195
Public Attributes
int total count
Total
cumulative
count
of
the
number
of
times
the
com.rti.dds.publication.DataWriter ( p. 557) failed to write within
its offered deadline.
8.157.1
Detailed Description
1196
Class Documentation
8.157.2
8.157.2.1
Total
cumulative
count
of
the
number
of
times
the
com.rti.dds.publication.DataWriter (p. 557) failed to write within its
offered deadline.
Missed deadlines accumulate; that is, each deadline period the total count will
be incremented by one.
8.157.2.2
The incremental changes in total count since the last time the listener was called
or the status was read.
8.157.2.3
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.158
1197
Public Attributes
int total count
Total
cumulative
number
of
times
the
concerned
com.rti.dds.publication.DataWriter
( p. 557)
discovered
a
for
the
same
com.rti.dds.subscription.DataReader
( p. 487)
com.rti.dds.topic.Topic
( p. 1545),
common
partition
with
a
requested QoS that is incompatible with that offered by the
com.rti.dds.publication.DataWriter ( p. 557).
8.158.1
Detailed Description
1198
Class Documentation
Listener:
com.rti.dds.publication.DataWriterListener (p. 586)
The qos policy value was incompatible with what was requested.
8.158.2
8.158.2.1
Total
cumulative
number
of
times
the
concerned
com.rti.dds.publication.DataWriter
(p. 557)
discovered
a
for
the
same
com.rti.dds.subscription.DataReader
(p. 487)
com.rti.dds.topic.Topic (p. 1545), common partition with a requested QoS that is incompatible with that offered by the
com.rti.dds.publication.DataWriter (p. 557).
8.158.2.2
The incremental changes in total count since the last time the listener was called
or the status was read.
8.158.2.3
The com.rti.dds.infrastructure.QosPolicyId t (p. 1305) of one of the policies that was found to be incompatible the last time an incompatibility was
detected.
8.158.2.4
A list containing for each policy the total number of times that
the
concerned
com.rti.dds.publication.DataWriter
(p. 557)
discovered a com.rti.dds.subscription.DataReader (p. 487) for the
same com.rti.dds.topic.Topic (p. 1545) and common partition with
a requested QoS that is incompatible with that offered by the
com.rti.dds.publication.DataWriter (p. 557).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.159
1199
Specifies
whether
it
is
allowed
for
multiple
com.rti.dds.publication.DataWriter (p. 557) (s) to write the same
instance of the data and if so, how these modifications should be arbitrated.
Inheritance diagram for OwnershipQosPolicy::
Public Attributes
OwnershipQosPolicyKind kind
The kind of ownership.
8.159.1
Detailed Description
Specifies
whether
it
is
allowed
for
multiple
com.rti.dds.publication.DataWriter (p. 557) (s) to write the same
instance of the data and if so, how these modifications should be arbitrated.
Entity:
com.rti.dds.topic.Topic (p. 1545), com.rti.dds.subscription.DataReader
(p. 487), com.rti.dds.publication.DataWriter (p. 557)
Status:
com.rti.dds.infrastructure.StatusKind.StatusKind.OFFERED INCOMPATIBLE QOS STATUS, com.rti.dds.infrastructure.StatusKind.StatusKind.REQUESTED INCOMPATIBLE QOS STATUS
Properties:
RxO (p. 101) = YES
Changeable (p. 102) = UNTIL ENABLE (p. 102)
See also:
OWNERSHIP STRENGTH (p. 88)
8.159.2
Usage
Along with the OWNERSHIP STRENGTH (p. 88), this QoS policy
specifies if com.rti.dds.subscription.DataReader (p. 487) entities can reGenerated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1200
Class Documentation
ceive updates to the same instance (identified by its key) from multiple
com.rti.dds.publication.DataWriter (p. 557) entities at the same time.
There are two kinds of ownership, selected by the setting of the kind: SHARED
and EXCLUSIVE.
8.159.2.1
SHARED ownership
com.rti.dds.infrastructure.OwnershipQosPolicyKind.OwnershipQosPolicyKind.SHARED OWNERSHIP QOS indicates that RTI Connext does not enforce unique ownership for each instance. In this case, multiple writers can update the same data
type instance. The subscriber to the com.rti.dds.topic.Topic (p. 1545) will be
able to access modifications from all com.rti.dds.publication.DataWriter
(p. 557) objects, subject to the settings of other QoS that may filter particular
samples (e.g. the TIME BASED FILTER (p. 117) or HISTORY (p. 79)
policy). In any case, there is no filtering of modifications made based on the
identity of the com.rti.dds.publication.DataWriter (p. 557) that causes
the modification.
8.159.2.2
EXCLUSIVE ownership
com.rti.dds.infrastructure.OwnershipQosPolicyKind.OwnershipQosPolicyKind.EXCLUSIVE OWNERSHIP QOS indicates that each instance of a data type can only be
modified by one com.rti.dds.publication.DataWriter (p. 557). In other
words, at any point in time, a single com.rti.dds.publication.DataWriter
(p. 557) owns each instance and is the only one whose modifications will be visible to the com.rti.dds.subscription.DataReader
(p. 487) objects.
The owner is determined by selecting the
com.rti.dds.publication.DataWriter (p. 557) with the highest value of
the
com.rti.dds.infrastructure.OwnershipStrengthQosPolicy.value
(p. 1210) that is currently alive, as defined by the LIVELINESS (p. 82) policy,
and has not violated its DEADLINE (p. 52) contract with regards to the data
instance.
Ownership can therefore change as a result of:
a com.rti.dds.publication.DataWriter (p. 557) in the system with a
higher value of the strength that modifies the instance,
a
change
in
the
strength
value
of
the
com.rti.dds.publication.DataWriter (p. 557) that owns the instance,
and
a change in the liveliness of the com.rti.dds.publication.DataWriter
(p. 557) that owns the instance.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1201
The behavior of the system is as if the determination was made independently by each com.rti.dds.subscription.DataReader (p. 487). Each
com.rti.dds.subscription.DataReader (p. 487) may detect the change of
ownership at a different time. It is not a requirement that at a particular
point in time all the com.rti.dds.subscription.DataReader (p. 487) objects
for that com.rti.dds.topic.Topic (p. 1545) have a consistent picture of who
owns each instance.
It is also not a requirement that the com.rti.dds.publication.DataWriter
(p. 557) objects are aware of whether they own a particular instance. There
is no error or notification given to a com.rti.dds.publication.DataWriter
(p. 557) that modifies an instance it does not currently own.
The requirements are chosen to (a) preserve the decoupling of publishers and
subscriber, and (b) allow the policy to be implemented efficiently.
It is possible that multiple com.rti.dds.publication.DataWriter (p. 557)
objects with the same strength modify the same instance. If this occurs
RTI Connext will pick one of the com.rti.dds.publication.DataWriter
(p. 557) objects as the owner. It is not specified how the owner is selected. However, the algorithm used to select the owner guarantees that all
com.rti.dds.subscription.DataReader (p. 487) objects will make the same
choice of the particular com.rti.dds.publication.DataWriter (p. 557) that is
the owner. It also guarantees that the owner remains the same until there is
a change in strength, liveliness, the owner misses a deadline on the instance,
or a new com.rti.dds.publication.DataWriter (p. 557) with higher same
strength, or a new com.rti.dds.publication.DataWriter (p. 557) with same
strength that should be deemed the owner according to the policy of the Service,
modifies the instance.
Exclusive ownership is on an instance-by-instance basis.
That
is, a subscriber can receive values written by a lower strength
com.rti.dds.publication.DataWriter (p. 557) as long as they affect instances whose values have not been set by the higher-strength
com.rti.dds.publication.DataWriter (p. 557).
8.159.3
Compatibility
1202
Class Documentation
8.159.4
The need for registering/unregistering instances stems from two use cases:
Ownership resolution on redundant systems
Detection of loss in topological connectivity
These two use cases also illustrate the semantic differences between the
com.rti.ndds.example.FooDataWriter.unregister instance (p. 1016) and
com.rti.ndds.example.FooDataWriter.dispose (p. 1027).
8.159.4.1
It is expected that users may use DDS to set up redundant systems where multiple com.rti.dds.publication.DataWriter (p. 557) entities are capable of writing the same instance. In this situation, the
com.rti.dds.publication.DataWriter (p. 557) entities are configured such
that:
Either both are writing the instance constantly
Or else they use some mechanism to classify each other as primary
and secondary, such that the primary is the only one writing, and the
secondary monitors the primary and only writes when it detects that the
primary writer is no longer writing.
1203
connectivity loss Connectivity to the writing application has been lost (e.g. network disconnection)
application fault The application logic that was writing the data is faulty and has stopped
calling com.rti.ndds.example.FooDataWriter.write (p. 1021).
Arbitrating from a com.rti.dds.publication.DataWriter (p. 557) to one of
a higher strength is simple and the decision can be taken autonomously by the
com.rti.dds.subscription.DataReader (p. 487). Switching ownership from
a higher strength com.rti.dds.publication.DataWriter (p. 557) to one of a
lower strength com.rti.dds.publication.DataWriter (p. 557) requires that
the com.rti.dds.subscription.DataReader (p. 487) can make a determination that the stronger com.rti.dds.publication.DataWriter (p. 557) is no
longer writing the instance.
Case where the data is periodically updated This determination is reasonably simple when the data is being written periodically
at some rate. The com.rti.dds.publication.DataWriter (p. 557) simply states its offered com.rti.dds.infrastructure.DeadlineQosPolicy
(p. 628)
(maximum
interval
between
updates)
and
the
com.rti.dds.subscription.DataReader
(p. 487)
automatically
monitors
that
the
com.rti.dds.publication.DataWriter
(p. 557)
indeed
updates
the
instance
at
least
once
per
com.rti.dds.infrastructure.DeadlineQosPolicy.period (p. 630).
If
the deadline is missed, the com.rti.dds.subscription.DataReader
(p. 487) considers the com.rti.dds.publication.DataWriter (p. 557)
not alive and automatically gives ownership to the next highest-strength
com.rti.dds.publication.DataWriter (p. 557) that is alive.
Case where data is not periodically updated The case where the
com.rti.dds.publication.DataWriter (p. 557) is not writing data periodically is also a very important use-case. Since the instance is not being
updated at any fixed period, the deadline mechanism cannot be used
to determine ownership. The liveliness solves this situation. Ownership
is maintained while the com.rti.dds.publication.DataWriter (p. 557) is
alive and for the com.rti.dds.publication.DataWriter (p. 557) to be
alive it must fulfill its com.rti.dds.infrastructure.LivelinessQosPolicy
(p. 1140) contract.
The different means to renew liveliness (automatic,
manual) combined by the implied renewal each time data is written
handle the three conditions above [crash], [connectivity loss], and [application fault]. Note that to handle [application fault], LIVELINESS must be
com.rti.dds.infrastructure.LivelinessQosPolicyKind.LivelinessQosPolicyKind.MANUAL BY TOPIC LIVELINESS QOS. The com.rti.dds.publication.DataWriter
(p. 557) can retain ownership by periodically writing data or else calling
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1204
Class Documentation
8.159.4.2
There are applications that are designed in such a way that their correct operation requires some minimal topological connectivity, that is, the writer needs
to have a minimum number of readers or alternatively the reader must have a
minimum number of writers.
A common scenario is that the application does not start doing its logic until it
knows that some specific writers have the minimum configured readers (e.g the
alarm monitor is up).
A more common scenario is that the application logic will wait until some writers
appear that can provide some needed source of information (e.g. the raw sensor
data that must be processed).
Furthermore, once the application is running it is a requirement that this
minimal connectivity (from the source of the data) is monitored and the
application informed if it is ever lost. For the case where data is being
written periodically, the com.rti.dds.infrastructure.DeadlineQosPolicy
(p. 628) and the on deadline missed listener provides the notification.
The case where data is not periodically updated requires the use of
the com.rti.dds.infrastructure.LivelinessQosPolicy (p. 1140) in combination with register instance/unregister instance to detect whether the
connectivity has been lost, and the notification is provided by
means of com.rti.dds.subscription.InstanceStateKind.InstanceStateKind.NOT ALIVE NO WRITERS INSTANCE STATE.
In terms of the required mechanisms, the scenario is very similar to the case
of maintaining ownership. In both cases, the reader needs to know whether a
writer is still managing the current value of an instance even though it is not
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1205
continually writing it and this knowledge requires the writer to keep its liveliness
plus some means to know which instances the writer is currently managing
(i.e. the registered instances).
8.159.4.3
com.rti.ndds.example.FooDataWriter.dispose (p. 1027) is semantically different from com.rti.ndds.example.FooDataWriter.unregister instance (p. 1016).
com.rti.ndds.example.FooDataWriter.dispose
a
(p. 1027) indicates that the data instance no longer exists (e.g.
track that has disappeared, a simulation entity that has been destroyed, a record entry that has been deleted, etc.)
whereas
com.rti.ndds.example.FooDataWriter.unregister instance
(p. 1016)
indicates that the writer is no longer taking responsibility for updating the
value of the instance.
Deleting a com.rti.dds.publication.DataWriter (p. 557) is equivalent to unregistering all the instances it was writing, but is not the same as disposing
all the instances.
For
a
com.rti.dds.topic.Topic
(p. 1545)
with
com.rti.dds.infrastructure.OwnershipQosPolicyKind.OwnershipQosPolicyKind.EXCLUSIVE OWNERSHIP QOS, if the current owner of an instance disposes it, the
readers accessing the instance will see the instance state as being DISPOSED and not see the values being written by the weaker writer (even
after the stronger one has disposed the instance). This is because the
com.rti.dds.publication.DataWriter (p. 557) that owns the instance is
saying that the instance no longer exists (e.g. the master of the database is
saying that a record has been deleted) and thus the readers should see it as
such.
For
a
com.rti.dds.topic.Topic
(p. 1545)
with
com.rti.dds.infrastructure.OwnershipQosPolicyKind.OwnershipQosPolicyKind.EXCLUSIVE OWNERSHIP QOS, if the current owner of an instance unregisters it, then
it will relinquish ownership of the instance and thus the readers may see the
value updated by another writer (which will then become the owner). This
is because the owner said that it no longer will be providing values for the
instance and thus another writer can take ownership and provide those values.
8.159.5
8.159.5.1
OwnershipQosPolicyKind kind
1206
Class Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.160
OwnershipQosPolicyKind
ence
1207
Class
Refer-
Kinds of ownership.
Inheritance diagram for OwnershipQosPolicyKind::
static
final
OwnershipQosPolicyKind
OWNERSHIP QOS
EXCLUSIVE -
Indicates
each
instance
can
only
be
owned
by
one
com.rti.dds.publication.DataWriter ( p. 557), but the owner of an
instance can change dynamically.
8.160.1
Detailed Description
Kinds of ownership.
QoS:
com.rti.dds.infrastructure.OwnershipQosPolicy (p. 1199)
8.160.2
8.160.2.1
1208
8.160.2.2
Class Documentation
final OwnershipQosPolicyKind EXCLUSIVE OWNERSHIP QOS [static]
Indicates
each
instance
can
only
be
owned
by
one
com.rti.dds.publication.DataWriter (p. 557), but the owner of an instance can change dynamically.
The selection of the owner is controlled by the setting of the OWNERSHIP STRENGTH (p. 88) policy. The owner is always set to be the highest-strength
com.rti.dds.publication.DataWriter (p. 557) object among the ones currently active (as determined by the LIVELINESS (p. 82)).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.161
1209
Public Attributes
int value
The strength value used to arbitrate among multiple writers.
8.161.1
Detailed Description
1210
Class Documentation
8.161.2
8.161.2.1
int value
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.162
1211
Public Attributes
final BuiltinTopicKey t key
DCPS key to distinguish entries.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1212
8.162.1
Class Documentation
Detailed Description
8.162.2
8.162.2.1
<<eXtension>> ( p. 278) Name value pair properties to be stored with domain (p. 328) participant
8.162.2.4
1213
Each bit indicates a builtin (p. 330) endpoint that may be available on the
participant for use in discovery.
8.162.2.7
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1214
8.163
Class Documentation
ParticipantBuiltinTopicDataDataReader
Class Reference
8.163.1
Detailed Description
( p. 279)
com.rti.ndds.example.FooDataReader
See also:
builtin.ParticipantBuiltinTopicData (p. 1211)
builtin.ParticipantBuiltinTopicDataTypeSupport.PARTICIPANT TOPIC NAME (p. 1216)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.164
ParticipantBuiltinTopicDataSeq
Reference
1215
Class
8.164.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1216
Class Documentation
8.165
ParticipantBuiltinTopicDataTypeSupport
Class Reference
DDS -
8.165.1
Detailed Description
( p. 279)
com.rti.ndds.example.FooTypeSupport
See also:
builtin.ParticipantBuiltinTopicData (p. 1211)
8.165.2
8.165.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.166
1217
Set of strings that introduces a logical partition among the topics visible by a com.rti.dds.publication.Publisher (p. 1262) and a
com.rti.dds.subscription.Subscriber (p. 1476).
Inheritance diagram for PartitionQosPolicy::
Public Attributes
final StringSeq name
A list of partition names.
8.166.1
Detailed Description
Set of strings that introduces a logical partition among the topics visible by a com.rti.dds.publication.Publisher (p. 1262) and a
com.rti.dds.subscription.Subscriber (p. 1476).
This QoS policy is used to set string identifiers that are used for matching
DataReaders and DataWriters for the same Topic.
A
com.rti.dds.publication.DataWriter
(p. 557)
within
a
com.rti.dds.publication.Publisher
(p. 1262)
only
communicates
with
a
com.rti.dds.subscription.DataReader
(p. 487)
in
a
com.rti.dds.subscription.Subscriber (p. 1476) if (in addition to
matching the com.rti.dds.topic.Topic (p. 1545) and having compatible QoS) the com.rti.dds.publication.Publisher (p. 1262) and
com.rti.dds.subscription.Subscriber (p. 1476) have a common partition name string.
Entity:
com.rti.dds.publication.Publisher
com.rti.dds.subscription.Subscriber (p. 1476)
(p. 1262),
Properties:
RxO (p. 101) = NO
Changeable (p. 102) = YES (p. 102)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1218
Class Documentation
8.166.2
Usage
This policy allows the introduction of a logical partition concept inside the
physical partition induced by a domain ( p. 328).
Usually DataReaders and DataWriters are matched only by their topic (p. 359)
(so that data are only sent by DataWriters to DataReaders for the same topic
(p. 359)). The Partition QoS policy allows you to add one or more strings,
partitions, to a Publisher and/or Subscriber. If partitions are added, then
a DataWriter and DataReader for the same topic (p. 359) are only considered
matched if their Publishers and Subscribers have partitions in common (intersecting partitions).
Since the set of partitions for a publisher or subscriber can be dynamically
changed, the Partition QoS policy is useful to control which DataWriters can
send data to which DataReaders and vice versa even if all of the DataWriters
and DataReaders are for the same topic (p. 359). This facility is useful for
creating temporary separation groups among entities that would otherwise be
connected to and exchange data each other.
Failure to match partitions is not considered an incompatible QoS and does
not trigger any listeners or conditions. A change in this policy can potentially
modify the match of existing DataReader and DataWriter entities. It may
establish new matches that did not exist before, or break existing matches.
Partition strings are usually directly matched via string comparisons. However,
partition strings can also contain wildcard symbols so that partitions can be
matched via pattern matching. As long as the partitions or wildcard patterns
of a Publisher intersect with the partitions or wildcard patterns of a Subscriber,
their DataWriters and DataReaders of the same topic (p. 359) are able to match;
otherwise they are not.
These
partition
name
patterns
are
regular
expressions
as
defined
by
the
POSIX
fnmatch
API
(1003.2-1992
section
B.6).
Either com.rti.dds.publication.Publisher (p. 1262) or
com.rti.dds.subscription.Subscriber (p. 1476) may include regular expressions in partition names, but no two names that both contain wildcards
will ever be considered to match. This means that although regular expressions
may be used both at publisher as well as subscriber side, RTI Connext will not
try to match two regular expressions (between publishers and subscribers).
Each publisher and subscriber must belong to at least one logical partition. A
regular expression is not considered to be a logical partition. If a publisher or
subscriber has not specify a logical partition, it is assumed to be in the default
partition. The default partition is defined to be an empty string (). Put
another way:
An empty sequence of strings in this QoS policy is considered equivalent
to a sequence containing only a single string, the empty string.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1219
8.166.3
8.166.3.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1220
Class Documentation
(p. 1217)
is
specified
on
a
domain
(p. 328)
basis
in
com.rti.dds.infrastructure.DomainParticipantResourceLimitsQosPolicy.max partition cumulative characters (p. 792).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.167
1221
Specifies how the samples representing changes to data instances are presented
to a subscribing application.
Inheritance diagram for PresentationQosPolicy::
Public Attributes
PresentationQosPolicyAccessScopeKind access scope
Determines the largest scope spanning the entities for which the order and
coherency of changes can be preserved.
8.167.1
Detailed Description
Specifies how the samples representing changes to data instances are presented
to a subscribing application.
This QoS policy controls the extent to which changes to data instances can be
made dependent on each other and also the kind of dependencies that can be
propagated and maintained by RTI Connext. Specifically, this policy affects the
applications ability to:
specify and receive coherent changes to instances
specify the relative order in which changes are presented
Entity:
com.rti.dds.publication.Publisher
com.rti.dds.subscription.Subscriber (p. 1476)
(p. 1262),
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1222
Class Documentation
Status:
com.rti.dds.infrastructure.StatusKind.StatusKind.OFFERED INCOMPATIBLE QOS STATUS, com.rti.dds.infrastructure.StatusKind.StatusKind.REQUESTED
INCOMPATIBLE QOS STATUS
Properties:
RxO (p. 101) = YES
Changeable (p. 102) = UNTIL ENABLE (p. 102)
8.167.2
Usage
1223
1224
Class Documentation
to instances though different com.rti.dds.publication.DataWriter
(p. 557) entities are not necessarily seen in the order they occur. This
is the case, even if the changes are made by a single application thread
using com.rti.dds.publication.DataWriter (p. 557) objects attached
to the same com.rti.dds.publication.Publisher (p. 1262).
For com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPolicyAccessScop
PRESENTATION QOS the subscribing application must use the
APIs
com.rti.dds.subscription.Subscriber.begin access
(p. 1497),
com.rti.dds.subscription.Subscriber.end access
(p. 1498)
and
com.rti.dds.subscription.Subscriber.get datareaders (p. 1489) to access
the changes in the proper order.
8.167.3
Compatibility
The value offered is considered compatible with the value requested if and only
if the following conditions are met:
the inequality offered access scope >= requested access scope evaluates to TRUE or requested access scope is
com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPolicyAccessSc
OFFERED PRESENTATION QOS. For the purposes of this inequality, the values of access scope are considered ordered such that
com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPolicyAccessSc
PRESENTATION QOS < com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.Prese
PRESENTATION QOS < com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.Prese
PRESENTATION QOS.
requested
coherent access
or else both offered and
com.rti.dds.infrastructure.true.
is
com.rti.dds.infrastructure.false,
requested coherent access are
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1225
8.167.4
8.167.4.1
Determines the largest scope spanning the entities for which the order and
coherency of changes can be preserved.
[default] com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPolicyAccessScopeKind
PRESENTATION QOS
8.167.4.2
Specifies support for coherent access. Controls whether coherent access is supported within the scope access scope.
That is, the ability to group a set of changes as a unit on the publishing end
such that they are received as a unit at the subscribing end.
Note:
To
use
this
feature,
the
DataWriter
must
be
configured
for
RELIABLE
communication
(see
com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQosPolicyKind.RELIABLE RELIABILITY QOS).
[default] com.rti.dds.infrastructure.false
8.167.4.3
Specifies support for ordered access to the samples received at the subscription
(p. 353) end. Controls whether ordered access is supported within the scope
access scope.
That is, the ability of the subscriber to see changes in the same order as they
occurred on the publishing end.
[default] com.rti.dds.infrastructure.false
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1226
Class Documentation
8.168
PresentationQosPolicyAccessScopeKind
Class Reference
TOPIC -
Scope
spans
to
all
instances
within
the
same
com.rti.dds.publication.DataWriter
( p. 557)
(or
com.rti.dds.subscription.DataReader ( p. 487)), but not across instances in different com.rti.dds.publication.DataWriter ( p. 557) (or
com.rti.dds.subscription.DataReader ( p. 487)).
8.168.1
Detailed Description
8.168.2
8.168.2.1
final PresentationQosPolicyAccessScopeKind
INSTANCE PRESENTATION QOS [static]
final PresentationQosPolicyAccessScopeKind
TOPIC PRESENTATION QOS [static]
Scope
spans
to
all
instances
within
the
same
com.rti.dds.publication.DataWriter
(p. 557)
(or
com.rti.dds.subscription.DataReader (p. 487)), but not across instances in different com.rti.dds.publication.DataWriter (p. 557) (or
com.rti.dds.subscription.DataReader (p. 487)).
8.168.2.3
final PresentationQosPolicyAccessScopeKind
GROUP PRESENTATION QOS [static]
Scope
spans
to
all
instances
belonging
to
com.rti.dds.publication.DataWriter
(p. 557)
(or
com.rti.dds.subscription.DataReader
(p. 487))
entities
within
the
same
com.rti.dds.publication.Publisher
(p. 1262)
(or
com.rti.dds.subscription.Subscriber (p. 1476)).
8.168.2.4
final PresentationQosPolicyAccessScopeKind
HIGHEST OFFERED PRESENTATION QOS [static]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1228
Class Documentation
8.169
8.169.1
Detailed Description
8.169.2
8.169.2.1
Constant value.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.170
1229
Public Attributes
char major
Major product version.
char minor
Minor product version.
char release
Release letter for product version.
char revision
Revision number of product.
ProductVersion t
PRODUCTVERSION -
8.170.1
Detailed Description
1230
Class Documentation
8.170.2
8.170.2.1
ProductVersion t ()
Constructor.
8.170.3
8.170.3.1
Initial value:
new ProductVersion_t((char)0, (char)0, (char)0, (char)0)
char major
char minor
char release
char revision
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.171
1231
Configures the way that XML documents containing QoS profiles are loaded by
RTI Connext.
Inheritance diagram for ProfileQosPolicy::
Public Attributes
final StringSeq string profile
Sequence of strings containing a XML document to load.
8.171.1
under
Detailed Description
Configures the way that XML documents containing QoS profiles are loaded by
RTI Connext.
All QoS values for Entities can be configured in QoS profiles defined in XML
documents. XML documents can be passed to RTI Connext in string form or,
more likely, through files found on a file system.
There are also default locations where DomainParticipants will look for files to
load QoS profiles. These include the current working directory from where an
application is started, a file in the distribution directory for RTI Connext, and
the locations specified by an environment variable. You may disable any or all
of these default locations using the Profile QoS policy.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1232
Class Documentation
Entity:
com.rti.dds.domain.DomainParticipantFactory (p. 742)
Properties:
RxO (p. 101) = NO
Changeable (p. 102) = Changeable (p. 102)
8.171.2
8.171.2.1
Sequence of URL groups (p. 235) containing a set of XML documents to load.
Only one of the elements of each group will be loaded by RTI Connext, starting
from the left.
[default] Empty sequence (zero-length).
8.171.2.3
Ignores the file USER QOS PROFILES.xml in the current working directory.
When this field is set to com.rti.dds.infrastructure.true, the QoS profiles contained in the file USER QOS PROFILES.xml in the current working directory
will be ignored.
[default] com.rti.dds.infrastructure.false
8.171.2.4
1233
Ignores
the
file
NDDS QOS PROFILES.xml
NDDSHOME/resource/qos profiles 4.4d/xml.
under
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1234
Class Documentation
8.172
Public Attributes
String name
Property name.
String value
Property value.
boolean propagate
Indicates if the property must be propagated on discovery.
8.172.1
Detailed Description
8.172.2
8.172.2.1
Property t ()
Constructor.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1235
Constructor.
Parameters:
src <<in>> ( p. 279) Property used to initialized the new property.
8.172.2.3
Constructor.
Parameters:
name <<in>> ( p. 279) Property name.
value <<in>> ( p. 279) Property value.
propagate <<in>> ( p. 279) Parameter used to indicates whether or not
the property must be propagated.
8.172.3
8.172.3.1
String name
Property name.
8.172.3.2
String value
Property value.
8.172.3.3
boolean propagate
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1236
Class Documentation
8.173
Public Attributes
final PropertySeq value
Sequence of properties.
8.173.1
Detailed Description
(p. 654)
(p. 487)
Properties:
RxO (p. 101) = N/A;
Changeable (p. 102) = YES (p. 102)
See also:
com.rti.dds.domain.DomainParticipant.get builtin subscriber
(p. 711)
8.173.2
Usage
The PROPERTY QoS policy can be used to associate a set of properties in the
form of (name,value) pairs with a com.rti.dds.subscription.DataReader
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1237
(p. 487),
com.rti.dds.publication.DataWriter
(p. 557),
or
This is similar to
com.rti.dds.domain.DomainParticipant (p. 654).
the com.rti.dds.infrastructure.UserDataQosPolicy (p. 1694), except this
policy uses (name, value) pairs, and you can select whether or not a particular
pair should be propagated (included in the builtin topic (p. 359)).
This QoS policy may be used to configure:
Durable Writer History, see Configuring Durable Writer History
(p. 227)
Durable Reader State, see Configuring Durable Reader State (p. 227)
Builtin Transport Plugins, see UDPv4 Transport Property Names
in Property QoS Policy of Domain Participant (p. 1669), UDPv6
Transport Property Names in Property QoS Policy of Domain
Participant (p. 1681), and Shared Memory Transport Property
Names in Property QoS Policy of Domain Participant (p. 1437)
Extension Transport Plugins, see Loading Transport Plugins through
Property QoS Policy of Domain Participant (p. 219)
Clock Selection (p. 145)
In addition, you may add your own name/value pairs to the Property
QoS policy of an Entity (p. 931). Via this QoS policy, you can direct
RTI Connext to propagate these name/value pairs with the discovery information for the Entity (p. 931). Applications that discover the Entity (p. 931) can then access the user-specific name/value pairs in the discovery information of the remote Entity (p. 931).
This allows you to
add meta-information about an Entity (p. 931) for application-specific use,
for example, authentication/authorization certificates (which can also be
done using the com.rti.dds.infrastructure.UserDataQosPolicy (p. 1694)
or com.rti.dds.infrastructure.GroupDataQosPolicy (p. 1039)).
8.173.2.1
1238
Class Documentation
Avoids the process of creating entities disabled, changing their QoS settings, then enabling them
Allows selection of clock
Some of the RTI Connext capabilities configurable via the Property QoS policy
can also be configured in code via APIs. However, the Property QoS policy
allows you to configure those parameters via XML files. In addition, some of
the configuration APIs will only work if the Entity (p. 931) was created in
a disabled state and then enabled after the configuration change was applied.
By configuring those parameters using the Property QoS policy during entity
creation, you avoid the additional work of first creating a disabled entity and
then enabling it afterwards.
There are helper functions to facilitate working with properties, see the
com.rti.dds.infrastructure.PropertyQosPolicyHelper (p. 1239) class on
the PROPERTY (p. 92) page.
8.173.3
8.173.3.1
Initial value:
new PropertySeq()
Sequence of properties.
[default] An empty list.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.174
PropertyQosPolicyHelper
ence
1239
Class
Refer-
Policy Helpers which facilitate management of the properties in the input policy.
8.174.1
Detailed Description
Policy Helpers which facilitate management of the properties in the input policy.
8.174.2
8.174.2.1
1240
Class Documentation
Precondition:
policy cannot be null.
Parameters:
policy <<in>> ( p. 279) Input policy.
Returns:
Number of properties.
8.174.2.2
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1241
8.174.2.4
1242
Class Documentation
8.174.2.5
8.174.2.6
1243
Parameters:
policy <<in>> ( p. 279) Input policy.
properties <<inout>> ( p. 279) A com.rti.dds.infrastructure.PropertySeq
(p. 1244) object where the set or list of properties will be returned.
name prefix Name prefix.
Returns:
One
of
the
Standard
Return
Codes
(p. 108)
or
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES
(p. 1362).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1244
8.175
Class Documentation
8.175.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.176
1245
Public Attributes
byte major
Major protocol version number.
byte minor
Minor protocol version number.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1246
8.176.1
Class Documentation
Detailed Description
8.176.2
8.176.2.1
ProtocolVersion t ()
Constructor.
8.176.3
8.176.3.1
Initial value:
new ProtocolVersion_t((byte)1, (byte)0)
8.176.3.2
Initial value:
new ProtocolVersion_t((byte)1, (byte)1)
8.176.3.3
Initial value:
new ProtocolVersion_t((byte)1, (byte)2)
1247
Initial value:
new ProtocolVersion_t((byte)2, (byte)0)
Initial value:
new ProtocolVersion_t((byte)2, (byte)1)
Initial value:
new ProtocolVersion_t((byte)2, (byte)1)
byte major
byte minor
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1248
Class Documentation
8.177
8.177.1
Detailed Description
8.177.2
8.177.2.1
Constant value.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.178
1249
Entry created when a com.rti.dds.publication.DataWriter (p. 557) is discovered in association with its Publisher (p. 1262).
Inherits AbstractBuiltinTopicData.
Public Attributes
final BuiltinTopicKey t key
DCPS key to distinguish entries.
1250
Class Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1251
8.178.1
Detailed Description
Entry created when a com.rti.dds.publication.DataWriter (p. 557) is discovered in association with its Publisher (p. 1262).
Data
associated
with
the
built-in
topic
(p. 359)
builtin.PublicationBuiltinTopicDataTypeSupport.PUBLICATION TOPIC NAME (p. 1258). It contains QoS policies and additional information
that apply to the remote com.rti.dds.publication.DataWriter (p. 557) the
related com.rti.dds.publication.Publisher (p. 1262).
See also:
builtin.PublicationBuiltinTopicDataTypeSupport.PUBLICATION TOPIC NAME (p. 1258)
builtin.PublicationBuiltinTopicDataDataReader (p. 1256)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1252
Class Documentation
8.178.2
8.178.2.1
DCPS key of the participant to which the DataWriter (p. 557) belongs.
8.178.2.3
1253
Policy of the Publisher (p. 1262) to which the DataWriter (p. 557) belongs.
8.178.2.17
Policy of the Publisher (p. 1262) to which the DataWriter (p. 557) belongs.
8.178.2.18
Policy of the Publisher (p. 1262) to which the DataWriter (p. 557) belongs.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1254
8.178.2.20
Class Documentation
TypeCode type code
<<eXtension>> ( p. 278) Custom unicast locators that the endpoint can specify. The default locators will be used if this is not specified.
8.178.2.24
8.178.2.25
1255
8.178.2.29
<<eXtension>> ( p. 278) The publication (p. 349) name and role name.
This member contains the name and the role name of the discovered publication (p. 349).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1256
8.179
Class Documentation
PublicationBuiltinTopicDataDataReader
Class Reference
8.179.1
Detailed Description
( p. 279)
com.rti.ndds.example.FooDataReader
See also:
builtin.PublicationBuiltinTopicData (p. 1249)
builtin.PublicationBuiltinTopicDataTypeSupport.PUBLICATION TOPIC NAME (p. 1258)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.180
PublicationBuiltinTopicDataSeq
Reference
1257
Class
8.180.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1258
Class Documentation
8.181
PublicationBuiltinTopicDataTypeSupport
Class Reference
DDS -
8.181.1
Detailed Description
( p. 279)
com.rti.ndds.example.FooTypeSupport
See also:
builtin.PublicationBuiltinTopicData (p. 1249)
8.181.2
8.181.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.182
1259
Public Attributes
int total count
The
total
cumulative
number
of
times
the
concerned
com.rti.dds.publication.DataWriter ( p. 557) discovered a match
with a com.rti.dds.subscription.DataReader ( p. 487).
the
8.182.1
Detailed Description
1260
Class Documentation
8.182.2
8.182.2.1
The
total
cumulative
number
of
times
the
concerned
com.rti.dds.publication.DataWriter (p. 557) discovered a match
with a com.rti.dds.subscription.DataReader (p. 487).
This number increases whenever a new match is discovered. It does not change
when an existing match goes away.
8.182.2.2
The incremental changes in total count since the last time the listener was called
or the status was read.
8.182.2.3
The
current
number
of
readers
with
com.rti.dds.publication.DataWriter (p. 557) is matched.
which
the
This number increases when a new match is discovered and decreases when an
existing match goes away.
8.182.2.4
<<eXtension>> ( p. 278) The highest value that current count has reached
until now.
8.182.2.5
The change in current count since the last time the listener was called or the
status was read.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1261
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1262
Class Documentation
8.183
void set default datawriter qos with profile (String library name,
String profile name)
<<eXtension>>
(p. 278)
Set
com.rti.dds.publication.DataWriterQos ( p. 610)
publisher based on the input XML QoS profile.
the
values
default
for this
DataWriter create datawriter with profile (Topic topic, String library name, String profile name, DataWriterListener listener, int
mask)
<<eXtension>> (p. 278) Creates a com.rti.dds.publication.DataWriter
( p. 557) object using the com.rti.dds.publication.DataWriterQos
( p. 610) associated with the input XML QoS profile.
1263
void set qos with profile (String library name, String profile name)
<<eXtension>> (p. 278) Change the QoS of this publisher using the input
XML QoS profile.
XML
library
for
void set default profile (String library name, String profile name)
<<eXtension>> (p. 278) Sets the default
com.rti.dds.publication.Publisher ( p. 1262).
XML
profile
for
1264
Class Documentation
Indicates
to
RTI
Connext
that
the
application
has
completed
the
multiple
changes
initiated
by
the
previous
com.rti.dds.publication.Publisher.suspend publications ( p. 1280).
void copy from topic qos (DataWriterQos a datawriter qos, TopicQos a topic qos)
Copies the policies in the com.rti.dds.topic.TopicQos ( p. 1566) to the
corresponding policies in the com.rti.dds.publication.DataWriterQos
( p. 610).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1265
static final DataWriterQos DATAWRITER QOS USE TOPIC QOS = new DataWriterQos()
Special
value
for
creating
com.rti.dds.publication.DataWriter
( p. 557)
with
a
combination
of
the
default
and
the
com.rti.dds.publication.DataWriterQos
( p. 610)
com.rti.dds.topic.TopicQos ( p. 1566).
8.183.1
Detailed Description
1266
Class Documentation
(p. 1279),
com.rti.dds.publication.Publisher.get listener
com.rti.dds.infrastructure.Entity.enable
(p. 935),
(p. 1280),
com.rti.dds.infrastructure.Entity.get statuscondition
(p. 936),
com.rti.dds.infrastructure.Entity.get status changes (p. 936)
com.rti.dds.publication.Publisher.create datawriter
(p. 1269),
com.rti.dds.publication.Publisher.create datawriter with profile
com.rti.dds.publication.Publisher.delete datawriter
(p. 1271),
(p. 1273),
com.rti.dds.publication.Publisher.delete contained entities (p. 1284), com.rti.dds.publication.Publisher.set default datawriter qos (p. 1267), com.rti.dds.publication.Publisher.set default datawriter qos with profile
(p. 1268),
com.rti.dds.publication.Publisher.get default datawriter qos
(p. 1266),
com.rti.dds.publication.Publisher.wait for acknowledgments (p. 1285), com.rti.dds.publication.Publisher.set default library (p. 1277), com.rti.dds.publication.Publisher.set default profile (p. 1278),
See also:
Operations Allowed in Listener Callbacks (p. 1132)
8.183.2
8.183.2.1
Copies the default com.rti.dds.publication.DataWriterQos (p. 610) values into the provided com.rti.dds.publication.DataWriterQos (p. 610) instance.
The retreived qos will match the set of values specified on the last successful call to com.rti.dds.publication.Publisher.set default datawriter qos
(p. 1267) or com.rti.dds.publication.Publisher.set default datawriter qos with profile (p. 1268), or else, if the call was never made, the default
values from is owning com.rti.dds.domain.DomainParticipant (p. 654).
This method may potentially allocate memory depending on the sequences contained in some QoS policies.
MT Safety:
UNSAFE. It is not safe to retrieve the default QoS value from
a com.rti.dds.publication.Publisher (p. 1262) while another thread
may be simultaneously calling com.rti.dds.publication.Publisher.set default datawriter qos (p. 1267).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1267
Parameters:
qos <<inout>> ( p. 279) com.rti.dds.publication.DataWriterQos
(p. 610) to be filled-up. Cannot be NULL.
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.publication.Publisher.DATAWRITER QOS DEFAULT (p. 182)
com.rti.dds.publication.Publisher.create datawriter (p. 1269)
8.183.2.2
1268
Class Documentation
Parameters:
qos <<in>> ( p. 279) Default qos to be set.
The special value
com.rti.dds.subscription.Subscriber.DATAREADER QOS DEFAULT (p. 196) may be passed as qos to indicate that the default
QoS should be reset back to the initial values the factory would used if
com.rti.dds.publication.Publisher.set default datawriter qos
(p. 1267) had never been called. Cannot be NULL.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
8.183.2.3
<<eXtension>>
( p. 278)
Set
the
default
com.rti.dds.publication.DataWriterQos (p. 610) values for this publisher based on the input XML QoS profile.
This
default
value
will
be
used
for
newly
created
com.rti.dds.publication.DataWriter
(p. 557)
if
com.rti.dds.publication.Publisher.DATAWRITER QOS DEFAULT (p. 182) is specified as the qos parameter when
com.rti.dds.publication.Publisher.create datawriter (p. 1269) is called.
Precondition:
The com.rti.dds.publication.DataWriterQos (p. 610) contained in the
specified XML QoS profile must be consistent, or else the operation will
have no effect and fail with com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
MT Safety:
UNSAFE. It is not safe to set the default QoS value
from
a
com.rti.dds.publication.Publisher
(p. 1262)
while
another
thread
may
be
simultaneously
calling
com.rti.dds.publication.Publisher.set default datawriter qos
(p. 1267),
com.rti.dds.publication.Publisher.get default datawriter qos
(p. 1266)
or
calling
com.rti.dds.publication.Publisher.create datawriter
(p. 1269)
with
com.rti.dds.publication.Publisher.DATAWRITER QOS DEFAULT (p. 182) as the qos parameter.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1269
Parameters:
library name <<in>> ( p. 279) Library name containing the XML
QoS profile.
If library name is null RTI Connext will use
the default library (see com.rti.dds.publication.Publisher.set default library (p. 1277)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see com.rti.dds.publication.Publisher.set default profile
(p. 1278)).
If the input profile cannot be found, the method
com.rti.dds.infrastructure.RETCODE ERROR (p. 1356).
fails
with
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
See also:
com.rti.dds.publication.Publisher.DATAWRITER QOS DEFAULT (p. 182)
com.rti.dds.publication.Publisher.create datawriter with profile
(p. 1271)
8.183.2.4
1270
Class Documentation
Retrieve the default com.rti.dds.publication.DataWriter (p. 557) qos
by means of the com.rti.dds.publication.Publisher.get default datawriter qos (p. 1266) operation.
Combine
those
two
QoS
policies
(for
example,
using
com.rti.dds.publication.Publisher.copy from topic qos (p. 1283))
and selectively modify policies as desired.
When
a
com.rti.dds.publication.DataWriter
(p. 557)
is
created, only those transports already registered are available to the
See Built-in Transcom.rti.dds.publication.DataWriter (p. 557).
port Plugins (p. 222) for details on when a builtin (p. 352) transport is
registered.
Precondition:
If publisher is enabled, topic (p. 359) must have been enabled. Otherwise,
this operation will fail and no com.rti.dds.publication.DataWriter
(p. 557) will be created.
The given com.rti.dds.topic.Topic (p. 1545) must have been created from
the same participant as this publisher. If it was created from a different
participant, this method will fail.
MT Safety:
UNSAFE. If com.rti.dds.publication.Publisher.DATAWRITER QOS DEFAULT (p. 182) is used for the qos parameter, it is
not safe to create the datawriter while another thread may be simultaneously calling com.rti.dds.publication.Publisher.set default datawriter qos (p. 1267).
Parameters:
topic ( p. 359) <<in>> ( p. 279)
The com.rti.dds.topic.Topic
(p. 1545) that the com.rti.dds.publication.DataWriter (p. 557)
will be associated with. Cannot be NULL.
qos <<in>> ( p. 279) QoS to be used for creating the new
com.rti.dds.publication.DataWriter (p. 557).
The special
value
com.rti.dds.publication.Publisher.DATAWRITER QOS DEFAULT (p. 182) can be used to indicate that the
com.rti.dds.publication.DataWriter (p. 557) should be created
with the default com.rti.dds.publication.DataWriterQos (p. 610)
set in the com.rti.dds.publication.Publisher (p. 1262). The special value com.rti.dds.publication.Publisher.DATAWRITER QOS USE TOPIC QOS (p. 183) can be used to indicate
that
the
com.rti.dds.publication.DataWriter
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1271
of
the
8.183.2.5
1272
Class Documentation
1273
Specifying QoS on entities (p. 100) for information on setting QoS before
entity creation
com.rti.dds.publication.DataWriterQos (p. 610) for rules on consistency among QoS
com.rti.dds.publication.Publisher.create datawriter (p. 1269)
com.rti.dds.publication.Publisher.get default datawriter qos
(p. 1266)
com.rti.dds.topic.Topic.set qos (p. 1547)
com.rti.dds.publication.Publisher.copy from topic qos (p. 1283)
com.rti.dds.publication.DataWriter.set listener (p. 564)
8.183.2.6
8.183.3
1274
Class Documentation
Precondition:
If the com.rti.dds.publication.DataWriter (p. 557) does not belong to
the com.rti.dds.publication.Publisher (p. 1262), the operation will fail
with com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
Postcondition:
Listener installed on the com.rti.dds.publication.DataWriter (p. 557)
will not be called after this method completes successfully.
Parameters:
a datawriter <<in>> ( p. 279) The com.rti.dds.publication.DataWriter
(p. 557) to be deleted.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
or
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
8.183.3.1
1275
MT Safety:
UNSAFE.
It
is
not
safe
to
lookup
a
in
one
thread
com.rti.dds.publication.DataWriter
(p. 557)
while another thread is simultaneously creating or destroying that
com.rti.dds.publication.DataWriter (p. 557).
8.183.3.2
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1276
8.183.3.3
Class Documentation
void set qos with profile (String library name, String
profile name)
<<eXtension>> ( p. 278) Change the QoS of this publisher using the input
XML QoS profile.
This operation modifies the QoS of the com.rti.dds.publication.Publisher
(p. 1262).
The
com.rti.dds.publication.PublisherQos.group data
(p. 1291),
com.rti.dds.publication.PublisherQos.partition
(p. 1291)
and
(p. 1291)
can
com.rti.dds.publication.PublisherQos.entity factory
be changed. The other policies are immutable.
Parameters:
library name <<in>> ( p. 279) Library name containing the XML
QoS profile.
If library name is null RTI Connext will use
the default library (see com.rti.dds.publication.Publisher.set default library (p. 1277)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see com.rti.dds.publication.Publisher.set default profile
(p. 1278)).
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE IMMUTABLE POLICY (p. 1358), or com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359).
See also:
com.rti.dds.publication.PublisherQos (p. 1290) for rules on consistency among QoS
Operations Allowed in Listener Callbacks (p. 1132)
8.183.3.4
1277
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
get qos (abstract) (p. 933)
8.183.3.5
8.183.3.6
XML
library
for
This method specifies the library that will be used as the default the next time
a default library is needed during a call to one of this Publishers operations.
Any API requiring a library name as a parameter can use null to refer to the
default library.
If the default library is not set, the com.rti.dds.publication.Publisher
(p. 1262) inherits the default from the com.rti.dds.domain.DomainParticipant
(p. 654) (see com.rti.dds.domain.DomainParticipant.set default library
(p. 707)).
Parameters:
library name <<in>> ( p. 279) Library name. If library name is null
any previous default is unset.
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.publication.Publisher.get default library (p. 1277)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1278
8.183.3.7
Class Documentation
String get default profile ()
8.183.3.8
XML
profile
for
This method specifies the profile that will be used as the default the next time
a default Publisher (p. 1262) profile is needed during a call to one of this
Publishers operations. When calling a com.rti.dds.publication.Publisher
(p. 1262) method that requires a profile name parameter, you can use NULL
to refer to the default profile. (This same information applies to setting a default
library.)
If the default profile is not set, the com.rti.dds.publication.Publisher
(p. 1262) inherits the default from the com.rti.dds.domain.DomainParticipant
(p. 654) (see com.rti.dds.domain.DomainParticipant.set default profile
(p. 708)).
This
method
does
not
set
the
default
QoS
for
com.rti.dds.publication.DataWriter (p. 557) objects created by the
com.rti.dds.publication.Publisher (p. 1262); for this functionality, use
com.rti.dds.publication.Publisher.set default datawriter qos with profile (p. 1268) (you may pass in NULL after having called set default profile() (p. 1278)).
This method does not set the default QoS for newly created Publishers;
for this functionality, use com.rti.dds.domain.DomainParticipant.set default publisher qos with profile (p. 672).
Parameters:
library name <<in>> ( p. 279) The library name containing the profile.
profile name <<in>> ( p. 279) The profile name. If profile name is null
any previous default is unset.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1279
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.publication.Publisher.get default profile (p. 1278)
com.rti.dds.publication.Publisher.get default profile library
(p. 1279)
8.183.3.9
<<eXtension>> ( p. 278) Gets the library where the default XML QoS profile
is contained for a com.rti.dds.publication.Publisher (p. 1262).
The
default
profile
library
is
automatically
set
when
com.rti.dds.publication.Publisher.set default profile (p. 1278) is called.
This library can be different than the com.rti.dds.publication.Publisher
(p. 1262) default library (see com.rti.dds.publication.Publisher.get default library (p. 1277)).
Returns:
The default profile library or null if the default profile was not set.
See also:
com.rti.dds.publication.Publisher.set default profile (p. 1278)
8.183.3.10
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1280
8.183.3.11
Class Documentation
PublisherListener get listener ()
(p. 1289)
of
the
See also:
get listener (abstract) (p. 934)
8.183.3.12
Indicates to RTI Connext that the application is about to make multiple modifications using com.rti.dds.publication.DataWriter (p. 557) objects belonging to the com.rti.dds.publication.Publisher (p. 1262).
It is a hint to RTI Connext so it can optimize its performance by e.g., holding
the dissemination of the modifications and then batching them.
The use of this operation must be matched by a corresponding call
to com.rti.dds.publication.Publisher.resume publications (p. 1281) indicating that the set of modifications has completed.
If the com.rti.dds.publication.Publisher (p. 1262) is deleted before
com.rti.dds.publication.Publisher.resume publications (p. 1281) is
called, any suspended updates yet to be published will be discarded.
RTI Connext is not required and does not currently make use of this hint in
any way. However, similar results can be achieved by using asynchronous publishing. Combined with com.rti.dds.publication.FlowController (p. 964),
com.rti.dds.infrastructure.PublishModeQosPolicyKind.PublishModeQosPolicyKind.ASYNCHRONOUS
PUBLISH MODE QOS
com.rti.dds.publication.DataWriter
(p. 557)
instances allow the user even finer control of traffic shaping and sample
coalescing.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
or
See also:
com.rti.dds.publication.FlowController (p. 964)
com.rti.dds.publication.FlowController.trigger flow (p. 967)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1281
8.183.3.13
Indicates
to
RTI
Connext
that
the
application
has
completed
the
multiple
changes
initiated
by
the
previous
com.rti.dds.publication.Publisher.suspend publications (p. 1280).
This is a hint to RTI Connext that can be used for example, to batch all the
modifications made since the com.rti.dds.publication.Publisher.suspend publications (p. 1280).
RTI Connext is not required and does not currently make use of this hint in
any way. However, similar results can be achieved by using asynchronous publishing. Combined with com.rti.dds.publication.FlowController (p. 964),
com.rti.dds.infrastructure.PublishModeQosPolicyKind.PublishModeQosPolicyKind.ASYNCHRONOUS PUBLISH MODE QOS
com.rti.dds.publication.DataWriter
(p. 557)
instances allow the user even finer control of traffic shaping and sample
coalescing.
Precondition:
A
call
to
com.rti.dds.publication.Publisher.resume publications
(p. 1281)
must
match
a
previous
call
to
com.rti.dds.publication.Publisher.suspend publications
(p. 1280).
Otherwise
the
operation
will
fail
with
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
or
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET
(p. 1363)
or
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
See also:
com.rti.dds.publication.FlowController (p. 964)
com.rti.dds.publication.FlowController.trigger flow (p. 967)
com.rti.dds.publication.FlowController.ON DEMAND FLOW CONTROLLER NAME (p. 189)
com.rti.dds.infrastructure.PublishModeQosPolicy (p. 1295)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1282
8.183.3.14
Class Documentation
void begin coherent changes ()
Indicates that the application will begin a coherent set of modifications using com.rti.dds.publication.DataWriter (p. 557) objects attached to the
com.rti.dds.publication.Publisher (p. 1262).
A coherent set is a set of modifications that must be propagated in such a
way that they are interpreted at the receivers side as a consistent set of modifications; that is, the receiver will only be able to access the data after all the
modifications in the set are available at the receiver end.
A connectivity change may occur in the middle of a set of coherent changes; for
example, the set of partitions used by the com.rti.dds.publication.Publisher
(p. 1262) or one of its com.rti.dds.subscription.Subscriber (p. 1476) s may
change, a late-joining com.rti.dds.subscription.DataReader (p. 487) may
appear on the network, or a communication failure may occur. In the event
that such a change prevents an entity from receiving the entire set of coherent
changes, that entity must behave as if it had received none of the set.
These calls can be nested. In that case, the coherent set terminates only with
the last call to com.rti.dds.publication.Publisher.end coherent changes
(p. 1282).
The support for coherent changes enables a publishing application to change the
value of several data-instances that could belong to the same or different topics
and have those changes be seen atomically by the readers. This is useful in cases
where the values are inter-related (for example, if there are two data-instances
representing the altitude and velocity vector of the same aircraft and both are
changed, it may be useful to communicate those values in a way the reader can
see both together; otherwise, it may e.g., erroneously interpret that the aircraft
is on a collision course).
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
8.183.3.15
or
1283
8.183.3.16
Copies the policies in the com.rti.dds.topic.TopicQos (p. 1566) to the corresponding policies in the com.rti.dds.publication.DataWriterQos (p. 610).
Copies the policies in the com.rti.dds.topic.TopicQos (p. 1566) to the corresponding policies in the com.rti.dds.publication.DataWriterQos (p. 610)
(replacing values in the com.rti.dds.publication.DataWriterQos (p. 610),
if present).
This is a convenience operation most useful in combination with the operations com.rti.dds.publication.Publisher.get default datawriter qos
(p. 1266) and com.rti.dds.topic.Topic.get qos (p. 1548). The operation
com.rti.dds.publication.Publisher.copy from topic qos (p. 1283) can be
used to merge the com.rti.dds.publication.DataWriter (p. 557) default
QoS policies with the corresponding ones on the com.rti.dds.topic.Topic
(p. 1545).
The resulting QoS can then be used to create a new
com.rti.dds.publication.DataWriter (p. 557), or set its QoS.
This
operation
does
not
check
the
resulting
com.rti.dds.publication.DataWriterQos (p. 610) for consistency. This
is because the merged com.rti.dds.publication.DataWriterQos (p. 610)
may not be the final one, as the application can still modify some policies
prior to applying the policies to the com.rti.dds.publication.DataWriter
(p. 557).
Parameters:
a datawriter qos <<inout>> ( p. 279) com.rti.dds.publication.DataWriterQos
(p. 610) to be filled-up. Cannot be NULL.
a topic qos <<in>> ( p. 279) com.rti.dds.topic.TopicQos (p. 1566)
to be merged with com.rti.dds.publication.DataWriterQos
(p. 610). Cannot be NULL.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1284
Class Documentation
Exceptions:
One of the Standard Return Codes (p. 108)
8.183.3.17
Retrieve all the DataWriters created from this Publisher (p. 1262).
Parameters:
writers <<inout>> ( p. 279) Sequence where the DataWriters will be
added
Exceptions:
One of the Standard Return Codes (p. 108)
8.183.3.18
8.183.3.19
Deletes all the entities that were created by means of the create operation on
the com.rti.dds.publication.Publisher (p. 1262).
Deletes all contained com.rti.dds.publication.DataWriter (p. 557) objects.
Once com.rti.dds.publication.Publisher.delete contained entities (p. 1284) completes successfully, the application may delete the
com.rti.dds.publication.Publisher (p. 1262), knowing that it has no
contained com.rti.dds.publication.DataWriter (p. 557) objects.
The operation will fail with com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363) if any of the contained entities is
in a state where it cannot be deleted.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
or
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1285
Blocks the calling thread until all data written by the Publishers reliable
DataWriters is acknowledged, or until timeout expires.
This operation blocks the calling thread until either all data written by the reliable entities is acknowledged by (a) all reliable
com.rti.dds.subscription.DataReader (p. 487) entities that are matched
and alive and (b) by all required subscriptions, or until the duration specified
by the max wait parameter elapses, whichever happens first. A successful
completion indicates that all the samples written have been acknowledged; a
return value of TIMEOUT indicates that max wait elapsed before all the data
was acknowledged.
Note that if a thread is blocked in the call to this operation on a
com.rti.dds.publication.Publisher (p. 1262) and a different thread writes
new samples on any of the reliable DataWriters that belong to this Publisher
(p. 1262), the new samples must be acknowledged before unblocking the thread
that is waiting on this operation.
If none of the com.rti.dds.publication.DataWriter (p. 557) instances have
com.rti.dds.infrastructure.ReliabilityQosPolicy (p. 1324) kind set to RELIABLE, the operation will complete successfully.
Parameters:
max wait <<in>> ( p. 279) Specifies maximum time to wait for acknowledgements com.rti.dds.infrastructure.Duration t (p. 813) .
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361), com.rti.dds.infrastructure.RETCODE TIMEOUT
(p. 1364)
8.183.3.21
<<eXtension>> ( p. 278) Blocks the calling thread until asynchronous sending is complete.
This operation blocks the calling thread (up to max wait) until all
data written by the asynchronous com.rti.dds.publication.DataWriter
(p. 557) entities is sent and acknowledged (if reliable) by all matched
com.rti.dds.subscription.DataReader (p. 487) entities. A successful completion indicates that all the samples written have been sent and acknowledged
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1286
Class Documentation
where applicable; if it times out, this indicates that max wait elapsed before all
the data was sent and/or acknowledged.
In other words,
this guarantees that sending to best effort
com.rti.dds.subscription.DataReader (p. 487) is complete in addition
to what com.rti.dds.publication.Publisher.wait for acknowledgments
(p. 1285) provides.
If none of the com.rti.dds.publication.DataWriter (p. 557) instances have
com.rti.dds.infrastructure.PublishModeQosPolicy.kind (p. 1297) set to
com.rti.dds.infrastructure.PublishModeQosPolicyKind.PublishModeQosPolicyKind.ASYNCHRONOUS
PUBLISH MODE QOS, the operation will complete immediately, with
com.rti.dds.infrastructure.RETCODE OK.
Parameters:
max wait <<in>> ( p. 279) Specifies maximum time to wait for acknowledgements com.rti.dds.infrastructure.Duration t (p. 813).
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361), com.rti.dds.infrastructure.RETCODE TIMEOUT
(p. 1364)
8.183.3.22
<<eXtension>>
( p. 278)
Re<<experimental>>
( p. 278)
trieves
a
com.rti.dds.publication.DataWriter
(p. 557)
contained within the com.rti.dds.publication.Publisher (p. 1262) the
com.rti.dds.publication.DataWriter (p. 557) entity name.
Every com.rti.dds.publication.DataWriter (p. 557) in the system has an
entity name which is configured and stored in the <<eXtension>> ( p. 278)
EntityName policy, ENTITY NAME (p. 74).
This operation retrieves the com.rti.dds.publication.DataWriter (p. 557)
within the com.rti.dds.publication.Publisher (p. 1262) whose name matches
the one specified. If there are several com.rti.dds.publication.DataWriter
(p. 557) with the same name within the com.rti.dds.publication.Publisher
(p. 1262), the operation returns the first matching occurrence.
Parameters:
datawriter name <<in>>
( p. 279)
Entity
name
com.rti.dds.publication.DataWriter (p. 557).
of
the
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1287
Returns:
The first com.rti.dds.publication.DataWriter (p. 557) found with the
specified name or NULL if it is not found.
See also:
com.rti.dds.domain.DomainParticipant.lookup datawriter by name exp (p. 733)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1288
8.184
Class Documentation
8.184.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.185
1289
8.185.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1290
Class Documentation
8.186
Public Attributes
final PresentationQosPolicy presentation
Presentation policy, PRESENTATION ( p. 90).
8.186.1
area
and all
for
entities
the
that
Detailed Description
1291
length
of
com.rti.dds.publication.PublisherQos.partition.name
<=
(p. 776)
com.rti.dds.domain.DomainParticipantQos.resource limits
.max partitions
combined
number
of
characters
(including
terminating
0)
in
com.rti.dds.publication.PublisherQos.partition.name
<=
(p. 776)
com.rti.dds.domain.DomainParticipantQos.resource limits
.max partition cumulative characters
If any of the above are not true, com.rti.dds.publication.Publisher.set qos (p. 1275) and com.rti.dds.publication.Publisher.set qos with profile (p. 1276) will fail with com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359) and com.rti.dds.domain.DomainParticipant.create publisher (p. 683) will return NULL.
8.186.2
8.186.2.1
8.186.2.2
8.186.2.3
8.186.2.4
8.186.2.5
final AsynchronousPublisherQosPolicy
asynchronous publisher
1292
8.186.2.6
Class Documentation
final ExclusiveAreaQosPolicy exclusive area
<<eXtension>>
( p. 278)
Exclusive
area
for
the
com.rti.dds.publication.Publisher (p. 1262) and all entities that are
created by it.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.187
1293
8.187.1
Detailed Description
8.187.2
8.187.2.1
Exceptions:
NullPointerException if the given collection is null
8.187.3
8.187.3.1
int getMaximum ()
Get the current maximum number of elements that can be stored in this sequence.
The maximum of the sequence represents the maximum number of elements that
the underlying buffer can hold. It does not represent the current number of
elements.
The maximum is a non-negative number. It is initialized when the sequence is
first created.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1294
Class Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.188
1295
Specifies how RTI Connext sends application data on the network. This QoS
policy can be used to tell RTI Connext to use its own thread to send data,
instead of the user thread.
Inheritance diagram for PublishModeQosPolicy::
Public Attributes
PublishModeQosPolicyKind kind
Publishing mode.
8.188.1
Detailed Description
Specifies how RTI Connext sends application data on the network. This QoS
policy can be used to tell RTI Connext to use its own thread to send data,
instead of the user thread.
The publishing mode of a com.rti.dds.publication.DataWriter (p. 557) determines whether data is written synchronously in the context of the user
thread when calling com.rti.ndds.example.FooDataWriter.write (p. 1021)
or asynchronously in the context of a separate thread internal to the middleware.
Each
com.rti.dds.publication.Publisher
(p. 1262)
spawns
a
single
asynchronous
publishing
thread
(com.rti.dds.infrastructure.AsynchronousPublisherQosPolicy.thread
(p. 399)) to serve all its asynchronous com.rti.dds.publication.DataWriter
(p. 557) instances.
See also:
com.rti.dds.infrastructure.AsynchronousPublisherQosPolicy
(p. 397)
com.rti.dds.infrastructure.HistoryQosPolicy (p. 1046)
com.rti.dds.publication.FlowController (p. 964)
Entity:
com.rti.dds.publication.DataWriter (p. 557)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1296
Class Documentation
Properties:
RxO (p. 101) = N/A
Changeable (p. 102) = NO (p. 102)
8.188.2
Usage
The fastest way for RTI Connext to send data is for the user thread to execute
the middleware code that actually sends the data itself. However, there are
times when user applications may need or want an internal middleware thread
to send the data instead. For instance, to send large data reliably, you must use
an asynchronous thread.
When data is written asynchronously, a com.rti.dds.publication.FlowController
(p. 964), identified by flow controller name, can be used to shape
the network traffic.
Shaping a data flow usually means limiting the
maximum data rates at which the middleware will send data for a
com.rti.dds.publication.DataWriter (p. 557). The flow controller will
buffer any excess data and only send it when the send rate drops below
the maximum rate. The flow controllers properties determine when the
asynchronous publishing thread is allowed to send data and how much.
Asynchronous publishing may increase latency, but offers the following advantages:
- The com.rti.ndds.example.FooDataWriter.write (p. 1021) call does not
make any network calls and is therefore faster and more deterministic. This
becomes important when the user thread is executing time-critical code.
- When data is written in bursts or when sending large data types as multiple fragments, a flow controller can throttle the send rate of the asynchronous
publishing thread to avoid flooding the network.
- Asynchronously written samples for the same destination will be coalesced into
a single network packet which reduces bandwidth consumption.
The maximum number of samples that will be coalesced depends
on
com.rti.ndds.transport.Transport.Property t.gather send buffer count max (p. 1574) (each sample requires at least 2-4
gather-send buffers).
Performance can be improved by increasing
com.rti.ndds.transport.Transport.Property t.gather send buffer count max (p. 1574). Note that the maximum value is operating system
dependent.
The middleware must queue samples until they can be sent by
the asynchronous publishing thread (as determined by the corresponding com.rti.dds.publication.FlowController (p. 964)).
The
number of samples that will be queued is determined by the
com.rti.dds.infrastructure.HistoryQosPolicy (p. 1046).
When using
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1297
com.rti.dds.infrastructure.HistoryQosPolicyKind.HistoryQosPolicyKind.KEEP only
the
most
recent
LAST HISTORY QOS,
com.rti.dds.infrastructure.HistoryQosPolicy.depth
(p. 1049)
samples are kept in the queue. Once unsent samples are removed from the queue,
they are no longer available to the asynchronous publishing thread and will
therefore never be sent.
8.188.3
8.188.3.1
PublishModeQosPolicyKind kind
Publishing mode.
[default] com.rti.dds.infrastructure.PublishModeQosPolicyKind.PublishModeQosPolicyKind.SYNCHRONOUS PUBLISH MODE QOS
8.188.3.2
to
See also:
com.rti.dds.domain.DomainParticipant.create flowcontroller
(p. 681)
com.rti.dds.publication.FlowController.DEFAULT FLOW CONTROLLER NAME (p. 187)
com.rti.dds.publication.FlowController.FIXED RATE FLOW CONTROLLER NAME (p. 188)
com.rti.dds.publication.FlowController.ON DEMAND FLOW CONTROLLER NAME (p. 189)
[default] com.rti.dds.publication.FlowController.DEFAULT FLOW CONTROLLER NAME (p. 187)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1298
Class Documentation
8.189
SYNCHRONOUS -
8.189.1
Detailed Description
8.189.2
8.189.2.1
final PublishModeQosPolicyKind
SYNCHRONOUS PUBLISH MODE QOS [static]
1299
final PublishModeQosPolicyKind
ASYNCHRONOUS PUBLISH MODE QOS [static]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1300
Class Documentation
8.190
8.190.1
Detailed Description
8.190.2
8.190.2.1
Parameters:
other <<in>> ( p. 279) Other object to compare with this QoS.
Returns:
true if the given object is a QoS of the same concrete type as this QoS and
all policies are equal, false otherwise
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.191
1301
Public Attributes
final QosPolicyId t id
The ID of this QoS policy.
8.191.1
Detailed Description
8.191.2
8.191.2.1
final QosPolicyId t id
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1302
Class Documentation
8.192
Public Attributes
QosPolicyId t policy id
The QosPolicy (p. 1301) ID.
int count
a counter
8.192.1
Detailed Description
8.192.2
8.192.2.1
Copy constructor.
Parameters:
src QosPolicyCount (p. 1302) to copy from.
Exceptions:
NullPointerException if the source object is null.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.192.3
8.192.3.1
QosPolicyId t policy id
1303
int count
a counter
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1304
8.193
Class Documentation
8.193.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.194
1305
for
com.rti.dds.infrastructure.PresentationQosPolicy
for
com.rti.dds.infrastructure.LatencyBudgetQosPolicy
for
com.rti.dds.infrastructure.OwnershipQosPolicy
OWNERSHIPSTRENGTH QOS -
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1306
Class Documentation
static final QosPolicyId t TIMEBASEDFILTER QOS POLICY ID
Identifier for com.rti.dds.infrastructure.TimeBasedFilterQosPolicy
( p. 1541).
for
static
final
POLICY ID
com.rti.dds.infrastructure.ReliabilityQosPolicy
QosPolicyId t
DESTINATIONORDER QOS -
com.rti.dds.infrastructure.ResourceLimitsQosPolicy
for
com.rti.dds.infrastructure.EntityFactoryQosPolicy
for
com.rti.dds.infrastructure.TopicDataQosPolicy
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1307
for
com.rti.dds.infrastructure.GroupDataQosPolicy
TRANSPORTPRIORITY QOS -
static
final
QosPolicyId t
TYPE CONSISTENCY ENFORCEMENT QOS POLICY ID
Identifier for com.rti.dds.infrastructure.TypeConsistencyEnforcementQosPolicy
( p. 1661).
for
for
static
final
QosPolicyId t
LIMITS QOS POLICY ID
<<eXtension>>
(p. 278)
Identifier
for
com.rti.dds.infrastructure.DataWriterResourceLimitsQosPolicy
( p. 621)
1308
Class Documentation
<<eXtension>>
(p. 278)
Identifier
for
com.rti.dds.infrastructure.DataReaderProtocolQosPolicy ( p. 521)
for
for
for
for
for
Identifier
for
for
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1309
TRANSPORTSELECTION QOS -
<<eXtension>>
(p. 278)
Identifier
for
com.rti.dds.infrastructure.TransportSelectionQosPolicy ( p. 1600)
static
final
POLICY ID
QosPolicyId t
TRANSPORTUNICAST QOS -
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.TransportUnicastQosPolicy ( p. 1605)
for
static
final
POLICY ID
QosPolicyId t
TRANSPORTBUILTIN QOS -
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.TransportBuiltinQosPolicy ( p. 1580)
for
for
ASYNCHRONOUSPUBLISHER -
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.AsynchronousPublisherQosPolicy
( p. 397)
for
for
for
for
1310
Class Documentation
<<eXtension>>
(p. 278)
Identifier
com.rti.dds.infrastructure.ProfileQosPolicy ( p. 1231)
for
for
for
for
8.194.1
for
Detailed Description
8.194.2
8.194.2.1
8.195
1311
<<interface>>
( p. 279)
These
are
specialised
com.rti.dds.subscription.ReadCondition (p. 1313) objects that allow
the application to also specify a filter on the locally available data.
Inheritance diagram for QueryCondition::
8.195.1
Detailed Description
<<interface>>
( p. 279)
These
are
specialised
com.rti.dds.subscription.ReadCondition (p. 1313) objects that allow
the application to also specify a filter on the locally available data.
Each
query
condition
filter
is
composed
of
a
com.rti.dds.subscription.ReadCondition (p. 1313) state filter and a
content filter expressed as a query expression and query parameters.
The query (query expression) is similar to an SQL WHERE clause and can
be parameterised by arguments that are dynamically changeable by the set query parameters() (p. 1312) operation.
Two query conditions that have the same query expression will require unique
query condition content filters if their query paramters differ. Query conditions
that differ only in their state masks will share the same query condition content
filter.
Queries and Filters Syntax (p. 286) describes the syntax of query expression and query parameters.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1312
Class Documentation
8.195.2
8.195.2.1
8.195.2.3
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.196
1313
8.196.1
Detailed Description
1314
Class Documentation
(p. 1448) with the DATA AVAILABLE STATUS instead, which will perform
better in this situation.
8.196.2
8.196.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.197
1315
Controls how a DataReader manages the lifecycle of the data that it has received.
Inheritance diagram for ReaderDataLifecycleQosPolicy::
Public Attributes
final Duration t autopurge nowriter samples delay
Maximum duration for which the com.rti.dds.subscription.DataReader
will
maintain
information
regarding
( p. 487)
an
instance
once
its
instance state
becomes
com.rti.dds.subscription.InstanceStateKind.InstanceStateKind.NOT ALIVE NO WRITERS INSTANCE STATE.
8.197.1
Detailed Description
Controls how a DataReader manages the lifecycle of the data that it has received.
When a DataReader receives data, it is stored in a receive queue for the
DataReader. The user application may either take the data from the queue
or leave it there.
This QoS policy controls whether or not RTI Connext will automatically
remove data from the receive queue (so that user applications cannot access it
afterwards) when it detects that there are no more DataWriters alive for that
data. It specifies how long a com.rti.dds.subscription.DataReader (p. 487)
must retain information regarding instances that have the instance state
com.rti.dds.subscription.InstanceStateKind.InstanceStateKind.NOT ALIVE NO WRITERS INSTANCE STATE.
Note: This policy is not concerned with keeping reliable reader state or discovery
information.
The com.rti.dds.subscription.DataReader (p. 487) internally maintains the samples that have not been taken by the application, subject to the constraints imposed by other QoS policies such
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1316
Class Documentation
as
com.rti.dds.infrastructure.HistoryQosPolicy
(p. 1046)
com.rti.dds.infrastructure.ResourceLimitsQosPolicy (p. 1348).
and
The com.rti.dds.subscription.DataReader (p. 487) also maintains information regarding the identity, view state and instance state of data instances
even after all samples have been taken. This is needed to properly compute the
states when future samples arrive.
8.197.2
8.197.2.1
1317
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1318
Class Documentation
8.198
Configures threads used by RTI Connext to receive and process data from transports (for example, UDP sockets).
Inheritance diagram for ReceiverPoolQosPolicy::
Public Attributes
final ThreadSettings t thread
Receiver pool thread(s).
8.198.1
Detailed Description
Configures threads used by RTI Connext to receive and process data from transports (for example, UDP sockets).
This QoS policy is an extension to the DDS standard.
Entity:
com.rti.dds.domain.DomainParticipant (p. 654)
Properties:
RxO (p. 101) = N/A
Changeable (p. 102) = NO (p. 102)
See also:
Controlling CPU Core Affinity for RTI Threads (p. 1533)
8.198.2
Usage
This QoS policy sets the thread properties such as priority level and stack size for
the threads used by the middleware to receive and process data from transports.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1319
RTI uses a separate receive thread per port per transport plug-in. To
force RTI Connext to use a separate thread to process the data for
a com.rti.dds.subscription.DataReader (p. 487), set a unique port for
the com.rti.dds.infrastructure.TransportUnicastQosPolicy (p. 1605) or
com.rti.dds.infrastructure.TransportMulticastQosPolicy (p. 1590) for
the com.rti.dds.subscription.DataReader (p. 487).
This QoS policy also sets the size of the buffer used to store packets received
from a transport. This buffer size will limit the largest single packet of data
that a com.rti.dds.domain.DomainParticipant (p. 654) will accept from a
transport. Users will often set this size to the largest packet that any of the
transports used by their application will deliver. For many applications, the
value 65,536 (64 K) is a good choice; this value is the largest packet that can
be sent/received via UDP.
8.198.3
8.198.3.1
1320
Class Documentation
8.198.3.2
8.198.3.3
1321
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1322
Class Documentation
8.199
8.199.1
Detailed Description
8.199.2
8.199.2.1
1323
Filter existing samples only when they are requested by the reader.
On the publishing side, when a new reader matches a writer, the writer can be
configured to filter previously written samples stored in the writer queue. This
option configures the writer to filter only existing samples that are requested by
the reader.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1324
Class Documentation
8.200
Public Attributes
ReliabilityQosPolicyKind kind
Kind of reliability.
ReliabilityQosPolicyAcknowledgmentModeKind
ment kind
acknowledg-
8.200.1
Detailed Description
8.200.2
Usage
by
by
a
a
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1325
These levels are ordered, com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQosPolicyKind.BEST EFFORT RELIABILITY QOS < com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQosPolicyKind.REL
RELIABILITY QOS. A com.rti.dds.publication.DataWriter (p. 557)
offering one level is implicitly offering all levels below.
Note:
To send large data reliably, you will also need to set
com.rti.dds.infrastructure.PublishModeQosPolicyKind.PublishModeQosPolicyKind.ASYNCHRONOUS PUBLISH MODE QOS. Large in this context means that the data cannot be
sent as a single packet by the transport (for example, data larger than 63K
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1326
Class Documentation
8.200.3
Compatibility
The value offered is considered compatible with the value requested if and only
if:
the inequality offered kind >= requested kind evaluates
to TRUE. For the purposes of this inequality, the values
of
com.rti.dds.infrastructure.ReliabilityQosPolicy.kind
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1327
(p. 1327)
are
considered
ordered
such
that
com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQosPolicyKind.BEST EFFORT RELIABILITY QOS < com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQosPolicyKind
RELIABILITY QOS.
8.200.4
8.200.4.1
ReliabilityQosPolicyKind kind
Kind of reliability.
[default] com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQosPolicyKind.BEST EFFORT RELIABILITY QOS for com.rti.dds.subscription.DataReader
(p. 487)
and
com.rti.dds.topic.Topic
(p. 1545),
com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQosPolicyKind.RELIABLE RELIABILITY QOS for com.rti.dds.publication.DataWriter (p. 557)
8.200.4.2
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1328
8.200.4.3
Class Documentation
ReliabilityQosPolicyAcknowledgmentModeKind
acknowledgment kind
by
sent
a
by
[default] com.rti.dds.infrastructure.ReliabilityQosPolicyAcknowledgmentModeKind.ReliabilityQosPolicy
ACKNOWLEDGMENT MODE
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.201
1329
ReliabilityQosPolicyAcknowledgmentModeKind
Class Reference
Kinds of acknowledgment.
Inheritance diagram for ReliabilityQosPolicyAcknowledgmentModeKind::
8.201.1
Detailed Description
Kinds of acknowledgment.
QoS:
com.rti.dds.infrastructure.ReliabilityQosPolicy (p. 1324)
8.201.2
8.201.2.1
final ReliabilityQosPolicyAcknowledgmentModeKind
PROTOCOL ACKNOWLEDGMENT MODE [static]
1330
8.201.2.2
Class Documentation
final ReliabilityQosPolicyAcknowledgmentModeKind
APPLICATION AUTO ACKNOWLEDGMENT MODE
[static]
Samples are acknowleged automatically after a subscribing application has accessed them.
A sample received by a com.rti.ndds.example.FooDataReader (p. 979) is
acknowledged after it has been taken and then returned. Specifically, all samples taken by a call to com.rti.ndds.example.FooDataReader.take (p. 983)
are acknowledged after com.rti.ndds.example.FooDataReader.return Acknowledgments are sent at a rate deloan (p. 1008) is called.
terminded by com.rti.dds.infrastructure.RtpsReliableReaderProtocol t.samples per app ack (p. 1370).
8.201.2.3
final ReliabilityQosPolicyAcknowledgmentModeKind
APPLICATION EXPLICIT ACKNOWLEDGMENT MODE [static]
Samples are acknowledged after the subscribing application explicitly calls acknowledge on the samples.
Samples received by a com.rti.dds.subscription.DataReader (p. 487) are
explicitly acknowledged by the subscribing application, after it calls either com.rti.dds.subscription.DataReader.acknowledge all (p. 505) or
com.rti.dds.subscription.DataReader.acknowledge sample (p. 505).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.202
ReliabilityQosPolicyKind
ence
1331
Class
Refer-
Kinds of reliability.
Inheritance diagram for ReliabilityQosPolicyKind::
BEST EFFORT -
static
final
ReliabilityQosPolicyKind
RELIABILITY QOS
RELIABLE -
Specifies RTI Connext will attempt to deliver all samples in its history.
Missed samples may be retried.
8.202.1
Detailed Description
Kinds of reliability.
QoS:
com.rti.dds.infrastructure.ReliabilityQosPolicy (p. 1324)
8.202.2
8.202.2.1
(p. 487)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
and
1332
8.202.2.2
Class Documentation
final ReliabilityQosPolicyKind RELIABLE RELIABILITY QOS [static]
Specifies RTI Connext will attempt to deliver all samples in its history. Missed
samples may be retried.
In
steady-state
(no
modifications
communicated
via
the
com.rti.dds.publication.DataWriter (p. 557)), RTI Connext guarantees
that all samples in the com.rti.dds.publication.DataWriter (p. 557) history
will eventually be delivered to all the com.rti.dds.subscription.DataReader
(p. 487) objects (subject to timeouts that indicate loss of communication with
a particular com.rti.dds.subscription.Subscriber (p. 1476)).
Outside steady state, the HISTORY (p. 79) and RESOURCE LIMITS
(p. 106) policies will determine how samples become part of the history and
whether samples can be discarded from it.
[default] for com.rti.dds.publication.DataWriter (p. 557)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.203
1333
ReliableReaderActivityChangedStatus
Class Reference
ReliableReaderActivityChangedStatus
tyChangedStatus src)
(ReliableReaderActivi-
Public Attributes
int active count
The current number of reliable readers currently matched with this reliable
writer.
8.203.1
Detailed Description
1334
Class Documentation
Entity:
com.rti.dds.publication.DataWriter (p. 557)
Listener:
com.rti.dds.publication.DataWriterListener (p. 586)
This
status
is
the
reciprocal
status
to
the
com.rti.dds.subscription.LivelinessChangedStatus
(p. 1135)
on
the
reader.
It
is
different
than
the
com.rti.dds.publication.LivelinessLostStatus (p. 1138) on the writer
in that the latter informs the writer about its own liveliness; this status informs
the writer about the liveliness (activity) of its matched readers.
All counts in this status will remain at zero for best effort writers.
8.203.2
8.203.2.1
ReliableReaderActivityChangedStatus ()
8.203.2.2
ReliableReaderActivityChangedStatus
(ReliableReaderActivityChangedStatus src)
8.203.3
8.203.3.1
The current number of reliable readers currently matched with this reliable
writer.
8.203.3.2
The number of reliable readers that have been dropped by this reliable writer
because they failed to send acknowledgements in a timely fashion.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1335
A reader is considered to be inactive after is has been sent heartbeats com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.max heartbeat retries (p. 1378) times, each heartbeat having been separated from
the previous by the current heartbeat period.
8.203.3.3
The most recent change in the number of active remote reliable readers.
8.203.3.4
The most recent change in the number of inactive remote reliable readers.
8.203.3.5
The instance handle of the last reliable remote reader to be determined inactive.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1336
Class Documentation
8.204
ReliableWriterCacheChangedStatus
Class Reference
ReliableWriterCacheChangedStatus
CacheChangedStatus src)
(ReliableWriter-
A copy constructor.
Public Attributes
final ReliableWriterCacheEventCount
cache
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1337
8.204.1
Detailed Description
8.204.2
8.204.2.1
ReliableWriterCacheChangedStatus ()
ReliableWriterCacheChangedStatus
(ReliableWriterCacheChangedStatus src)
A copy constructor.
Parameters:
src Source to copy from.
Exceptions:
NullPointerException if the source object is null.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1338
Class Documentation
8.204.3
8.204.3.1
final ReliableWriterCacheEventCount
empty reliable writer cache
The number of times the reliable writers cache of unacknowledged samples has
become empty.
8.204.3.2
The number of times the reliable writers cache, or send window, of unacknowledged samples has become full.
Applies to writers cache when the send window is enabled (when both
com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.min send window size (p. 1383) and com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.max send window size (p. 1384) are com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LE
UNLIMITED (p. 106)).
Otherwise, applies when the number of unacknowledged samples has reached
the send window limit.
8.204.3.3
final ReliableWriterCacheEventCount
low watermark reliable writer cache
The number of times the reliable writers cache of unacknowledged samples has
fallen to the low watermark.
A low watermark event will only be considered to have taken place when the
number of unacknowledged samples in the writers cache decreases to this value.
A sample count that increases to this value will not result in a callback or in a
change to the total count of low watermark events.
When the writers send window is enabled, the low watermark is scaled down,
if necessary, to fit within the current send window.
8.204.3.4
final ReliableWriterCacheEventCount
high watermark reliable writer cache
The number of times the reliable writers cache of unacknowledged samples has
risen to the high watermark.
A high watermark event will only be considered to have taken place when the
number of unacknowledged sampled increases to this value. A sample count
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1339
that was above this value and then decreases back to it will not trigger an
event.
When the writers send window is enabled, the high watermark is scaled down,
if necessary, to fit within the current send window.
8.204.3.5
The highest value that unacknowledged sample count has reached until now.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1340
Class Documentation
8.205
ReliableWriterCacheEventCount
Reference
Class
<<eXtension>> ( p. 278) The number of times the number of unacknowledged samples in the cache of a reliable writer hit a certain well-defined threshold.
Inherits Struct.
Public Attributes
int total count
The total number of times the event has occurred.
8.205.1
Detailed Description
<<eXtension>> ( p. 278) The number of times the number of unacknowledged samples in the cache of a reliable writer hit a certain well-defined threshold.
See also:
com.rti.dds.publication.ReliableWriterCacheChangedStatus
(p. 1336)
8.205.2
8.205.2.1
The incremental number of times the event has occurred since the listener was
last invoked or the status read.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.206
1341
static
final
RemoteParticipantPurgeKind
PARTICIPANT PURGE
NO REMOTE -
8.206.1
Detailed Description
1342
Class Documentation
8.206.2
8.206.2.1
Initial value:
new RemoteParticipantPurgeKind(
"LIVELINESS_BASED_REMOTE_PARTICIPANT_PURGE", 0)
[default] Maintain knowledge of the remote participant for as long as it maintains its liveliness contract.
A participant will continue attempting communication with its peers, even if
discovery communication with them is lost, as long as the remote participants
maintain their liveliness. If both discovery communication and participant liveliness are lost, however, the local participant will remove all records of the
remote participant and its contained endpoints, and no further data communication with them will occur until and unless they are rediscovered.
The
liveliness
contract
a
participant
promises
to
its
peers
its
liveliness
lease
duration
is
specified
in
its
com.rti.dds.infrastructure.DiscoveryConfigQosPolicy.participant liveliness lease duration (p. 641) QoS field.
It maintains that contract by writing data to those other participants with a writer that has
a com.rti.dds.infrastructure.LivelinessQosPolicyKind (p. 1144) of
com.rti.dds.infrastructure.LivelinessQosPolicyKind.LivelinessQosPolicyKind.AUTOMATIC LIVELINESS QOS or com.rti.dds.infrastructure.LivelinessQosPolicyKind.LivelinessQosPolicyKind.MAN
BY PARTICIPANT LIVELINESS QOS and by asserting itself (at the
com.rti.dds.infrastructure.DiscoveryConfigQosPolicy.participant liveliness assert period (p. 642)) over the Simple Discovery Protocol.
8.206.2.2
final RemoteParticipantPurgeKind
NO REMOTE PARTICIPANT PURGE [static]
Initial value:
new RemoteParticipantPurgeKind(
"NO_REMOTE_PARTICIPANT_PURGE", 1)
1343
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1344
Class Documentation
8.207
RequestedDeadlineMissedStatus
Reference
Class
Public Attributes
int total count
Total cumulative count of the deadlines detected for any instance read by the
com.rti.dds.subscription.DataReader ( p. 487).
8.207.1
Detailed Description
8.207.2
8.207.2.1
Total cumulative count of the deadlines detected for any instance read by the
com.rti.dds.subscription.DataReader (p. 487).
8.207.2.2
The incremental number of deadlines detected since the last time the listener
was called or the status was read.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1345
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1346
Class Documentation
8.208
RequestedIncompatibleQosStatus
Reference
Class
Public Attributes
int total count
Total cumulative count of how many times the concerned
com.rti.dds.subscription.DataReader
( p. 487)
discovered
a
for
the
same
com.rti.dds.publication.DataWriter
( p. 557)
com.rti.dds.topic.Topic ( p. 1545) with an offered QoS that is incompatible
with that requested by the com.rti.dds.subscription.DataReader ( p. 487).
8.208.1
Detailed Description
1347
8.208.2
8.208.2.1
Total
cumulative
count
of
how
many
times
the
concerned
com.rti.dds.subscription.DataReader
(p. 487)
discovered
a
for
the
same
com.rti.dds.publication.DataWriter
(p. 557)
com.rti.dds.topic.Topic (p. 1545) with an offered QoS that is incompatible with that requested by the com.rti.dds.subscription.DataReader
(p. 487).
8.208.2.2
The change in total count since the last time the listener was called or the
status was read.
8.208.2.3
The PolicyId t of one of the policies that was found to be incompatible the last
time an incompatibility was detected.
8.208.2.4
A list containing, for each policy, the total number of times that the
concerned
com.rti.dds.subscription.DataReader
(p. 487)
discovered a com.rti.dds.publication.DataWriter (p. 557) for the same
com.rti.dds.topic.Topic (p. 1545) with an offered QoS that is incompatible with that requested by the com.rti.dds.subscription.DataReader
(p. 487).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1348
Class Documentation
8.209
ResourceLimitsQosPolicy
ence
Class
Refer-
Controls the amount of physical memory allocated for DDS entities, if dynamic
allocations are allowed, and how they occur. Also controls memory usage among
different instance values for keyed topics.
Inheritance diagram for ResourceLimitsQosPolicy::
Public Attributes
int max samples
Represents the maximum samples the middleware can store
for any one com.rti.dds.publication.DataWriter ( p. 557) (or
com.rti.dds.subscription.DataReader ( p. 487)).
a
(or
in(or
in(or
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1349
8.209.1
Detailed Description
Controls the amount of physical memory allocated for DDS entities, if dynamic
allocations are allowed, and how they occur. Also controls memory usage among
different instance values for keyed topics.
Entity:
com.rti.dds.topic.Topic (p. 1545), com.rti.dds.subscription.DataReader
(p. 487), com.rti.dds.publication.DataWriter (p. 557)
Status:
com.rti.dds.infrastructure.StatusKind.StatusKind.SAMPLE REJECTED STATUS, com.rti.dds.subscription.SampleRejectedStatus
(p. 1418)
Properties:
RxO (p. 101) = NO
Changeable (p. 102) = UNTIL ENABLE (p. 102)
8.209.2
Usage
This policy controls the resources that RTI Connext can use to meet the requirements imposed by the application and other QoS settings.
For the reliability protocol (and com.rti.dds.infrastructure.DurabilityQosPolicy
(p. 802)), this QoS policy determines the actual maximum queue size when
the com.rti.dds.infrastructure.HistoryQosPolicy (p. 1046) is set to
com.rti.dds.infrastructure.HistoryQosPolicyKind.HistoryQosPolicyKind.KEEP ALL HISTORY QOS.
In general, this QoS policy is used to limit the amount of system memory that
RTI Connext can allocate. For embedded real-time systems and safety-critical
systems, pre-determination of maximum memory usage is often required. In addition, dynamic memory allocation could introduce non-deterministic latencies
in time-critical paths.
This QoS policy can be set such that an entity does not dynamically allocate
any more memory after its initialization phase.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1350
Class Documentation
If com.rti.dds.publication.DataWriter (p. 557) objects are communicating samples faster than they are ultimately taken by the
com.rti.dds.subscription.DataReader (p. 487) objects, the middleware will
eventually hit against some of the QoS-imposed resource limits. Note that this
may occur when just a single com.rti.dds.subscription.DataReader (p. 487)
cannot keep up with its corresponding com.rti.dds.publication.DataWriter
The behavior in this case depends on the set(p. 557).
If
reliability
is
ting
for
the
RELIABILITY
(p. 105).
com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQosPolicyKind.BEST EFFORT RELIABILITY QOS,
then
RTI
Connext
is
allowed
to
drop
samples.
If
the
reliability
is
com.rti.dds.infrastructure.ReliabilityQosPolicyKind.ReliabilityQosPolicyKind.RELIABLE RELIABILITY QOS,
RTI
Connext
will
block
the
com.rti.dds.publication.DataWriter (p. 557) or discard the sample at
the com.rti.dds.subscription.DataReader (p. 487) in order not to lose
existing samples.
The constant com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH may
be
used
to
indicate
the
UNLIMITED
(p. 106)
absence
of
a
particular
limit.
For
example
setting
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max samples per instance (p. 1352) to com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106) will cause RTI Connext not to enforce this particular
limit.
If these resource limits are not set sufficiently, under certain circumstances the
com.rti.dds.publication.DataWriter (p. 557) may block on a write() call
even though the com.rti.dds.infrastructure.HistoryQosPolicy (p. 1046) is
com.rti.dds.infrastructure.HistoryQosPolicyKind.HistoryQosPolicyKind.KEEP LAST HISTORY QOS. To guarantee the writer does not block for
com.rti.dds.infrastructure.HistoryQosPolicyKind.HistoryQosPolicyKind.KEEP LAST HISTORY QOS, make sure the resource limits are set such that:
max_samples >= max_instances * max_samples_per_instance
See also:
com.rti.dds.infrastructure.ReliabilityQosPolicy (p. 1324)
com.rti.dds.infrastructure.HistoryQosPolicy (p. 1046)
8.209.3
Consistency
1351
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max samples
(p. 1351) >= com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max samples per instance
(p. 1352).
As
described
above,
this
limit
will
not
be
enforced
if
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max samples per instance (p. 1352) is set to com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106).
The setting of RESOURCE LIMITS (p. 106) max samples per instance
must be consistent with the HISTORY (p. 79) depth. For these two QoS
to be consistent, it must be true that depth <= max samples per instance.
See also:
com.rti.dds.infrastructure.HistoryQosPolicy (p. 1046)
8.209.4
8.209.4.1
Represents
the
maximum
samples
the
middleware
can
store
for
any
one
com.rti.dds.publication.DataWriter
(p. 557)
(or
com.rti.dds.subscription.DataReader (p. 487)).
Specifies
the
maximum
number
of
data
samples
(or
a
com.rti.dds.publication.DataWriter
(p. 557)
com.rti.dds.subscription.DataReader (p. 487)) can manage across all
the instances associated with it.
For unkeyed types,
this value has to be equal to max samples per instance if max samples per instance is not equal to
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106).
When
batching
is
enabled,
the
maximum
number
of
data
samples
a
com.rti.dds.publication.DataWriter
(p. 557)
can
manage
will
also
be
limited
by
com.rti.dds.infrastructure.DataWriterResourceLimitsQosPolicy.max batches (p. 624).
[default] com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
[range] [1, 100 million] or com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106), >= initial samples, >= max samples per instance,
>= com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy.max samples per remote writer
(p. 546)
or
>=
com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.heartbeats per max samples (p. 1379)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1352
Class Documentation
For
com.rti.dds.publication.DataWriterQos
(p. 610)
max samples
>=
com.rti.dds.infrastructure.DataWriterProtocolQosPolicy.rtps reliable writer.heartbeats per max samples if batching is disabled.
8.209.4.2
Represents
the
maximum
number
of
instances
com.rti.dds.publication.DataWriter
(p. 557)
com.rti.dds.subscription.DataReader (p. 487)) can manage.
a
(or
8.209.4.3
in(or
8.209.4.4
1353
in(or
[default] 32
[range] [1,1 million], <= max instances
8.209.4.6
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1354
8.210
Class Documentation
8.210.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.211
1355
Class
8.211.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1356
8.212
Class Documentation
8.212.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.213
1357
8.213.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1358
8.214
Class Documentation
8.214.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.215
Application specified a set of QoS policies that are not consistent with each
other.
Inheritance diagram for RETCODE INCONSISTENT POLICY::
8.215.1
Detailed Description
Application specified a set of QoS policies that are not consistent with each
other.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1360
8.216
Class Documentation
Indicates a transient situation where the operation did not return any data but
there is no inherent error.
Inheritance diagram for RETCODE NO DATA::
8.216.1
Detailed Description
Indicates a transient situation where the operation did not return any data but
there is no inherent error.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.217
1361
8.217.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1362
8.218
Class Documentation
RTI Connext ran out of the resources needed to complete the operation.
Inheritance diagram for RETCODE OUT OF RESOURCES::
8.218.1
Detailed Description
RTI Connext ran out of the resources needed to complete the operation.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.219
8.219.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1364
8.220
Class Documentation
8.220.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.221
1365
8.221.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1366
Class Documentation
8.222
RtpsReliableReaderProtocol t
(Duration t
min heartbeat response delay,
Duration t
max heartbeat response delay,
Duration t heartbeat suppression duration, Duration t nack period, Duration t round trip time, Duration t app ack period,
Duration t min app ack response keep duration)
Constructor with given durations.
Public Attributes
final Duration t min heartbeat response delay
The minimum delay to respond to a heartbeat.
1367
8.222.1
Detailed Description
8.222.2
8.222.2.1
RtpsReliableReaderProtocol t ()
8.222.2.2
RtpsReliableReaderProtocol t (Duration t
min heartbeat response delay, Duration t
max heartbeat response delay, Duration t
heartbeat suppression duration, Duration t nack period,
Duration t round trip time, Duration t app ack period,
Duration t min app ack response keep duration)
1368
Class Documentation
8.222.3
8.222.3.1
1369
with a reliable writer. The reader will stop sending NACKs when it has received
all available historical data from the writer.
[default] 5 seconds
[range] [1 nanosec, 1 year]
8.222.3.5
1370
8.222.3.8
Class Documentation
final Duration t min app ack response keep duration
8.222.3.9
1371
[default] 1
[range] [1, 1000000], or com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1372
Class Documentation
8.223
Public Attributes
int low watermark
When the number of unacknowledged samples in the cache
of a reliable writer meets or falls below this threshold, the
com.rti.dds.infrastructure.StatusKind.StatusKind.RELIABLE WRITER CACHE CHANGED STATUS is considered to have changed.
1373
final
Duration t
duration
final
Duration t
duration
boolean
duration
1374
Class Documentation
Minimum size of send window of unacknowledged samples.
8.223.1
Detailed Description
8.223.2
8.223.2.1
1375
8.223.2.2
1376
Class Documentation
com.rti.dds.domain.DomainParticipantQos.discovery config
8.223.2.3
1377
[range] [1 nanosec,1 year], >= com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.fast heartbeat period (p. 1377), >= com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.late joiner heartbeat period (p. 1377)
8.223.2.4
An alternative heartbeat period used when a reliable writer needs to flush its
unacknowledged samples more quickly.
This heartbeat period will be used when the number of unacknowledged samples
in the cache of a reliable writer meets or exceeds the writers high watermark
and has not subsequently dropped to the low watermark. The normal period
will be used at all other times.
This period must not be slower (i.e. must be of the same or shorter duration)
than the normal heartbeat period.
[default] 3 seconds
[range] [1 nanosec,1 year], <= com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.heartbeat period (p. 1376)
8.223.2.5
An alternative heartbeat period used when a reliable reader joins late and needs
to be caught up on cached samples of a reliable writer more quickly than the
normal heartbeat rate.
This heartbeat period will be used when a reliable reader joins after a reliable
writer with non-volatile durability has begun publishing samples. Once the
reliable reader has received all cached samples, it will be serviced at the same
rate as other reliable readers.
This period must not be slower (i.e. must be of the same or shorter duration)
than the normal heartbeat period.
[default] 3 seconds
[range] [1 nanosec,1 year], <= com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.heartbeat period (p. 1376)
8.223.2.6
The period at which to send virtual heartbeats. Virtual heartbeats inform the
reliable reader about the range of samples currently present, for each virtual
GUID, in the reliable writers queue.
A reliable writer will send periodic virtual heartbeats at this rate.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1378
Class Documentation
[default]
com.rti.dds.infrastructure.Duration t.AUTO.
If
com.rti.dds.infrastructure.PresentationQosPolicy.access scope
(p. 1225) is set to com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPoli
this
value
is
set
to
PRESENTATION QOS,
com.rti.dds.infrastructure.RtpsReliableWriterProtocol Otherwise, the value is set to
t.heartbeat period (p. 1376).
com.rti.dds.infrastructure.Duration t.INFINITE.
[range] > 1 nanosec, com.rti.dds.infrastructure.Duration t.INFINITE, or
com.rti.dds.infrastructure.Duration t.AUTO
8.223.2.7
The number of samples that a reliable writer has to publish before sending a
virtual heartbeat.
[default] com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
[range] [1,1000000], com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
8.223.2.8
Whether to treat remote readers as inactive when their NACKs do not progress.
Nominally,
a remote reader is marked inactive when a successive number of periodic heartbeats equal or greater than
com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.max heartbeat retries (p. 1378) have been sent without receiving any ack/nacks
back.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1379
1380
Class Documentation
8.223.2.11
8.223.2.12
8.223.2.13
The duration for ignoring consecutive NACKs that may trigger redundant repairs.
A reliable writer may receive consecutive NACKs within a short duration from
a remote reader that will trigger the sending of redundant repair messages.
This specifies the duration during which consecutive NACKs are ignored to
prevent redundant repairs from being sent.
[default] 0 seconds
[range] [0,1 day],
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1381
positive
ACKs
are
disabled
for
data
writer
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1382
Class Documentation
1383
both
and
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
are
1384
Class Documentation
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106), then com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max samples (p. 1351) serves as the effective send window limit.
When
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max samples (p. 1351) is less than max send window size, then it serves as the
effective max send window. If it is less than min send window size, then
effectively both min and max send window sizes are equal to max samples. In
addition, the low and high watermarks are scaled down linearly to stay within
the send window size, and the full reliable queue status is set when the send
window is full.
[default] com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
[range]
>
0,
<=
max send window size,
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
or
See also:
com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.max send window size (p. 1384)
com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.low watermark (p. 1375)
com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.high watermark (p. 1375)
com.rti.dds.publication.ReliableWriterCacheChangedStatus.full reliable writer cache (p. 1338)
8.223.2.21
1385
send window. If it is also less than min send window size, then effectively both
min and max send window sizes are equal to max samples. In addition, the low
and high watermarks are scaled down linearly to stay within the send window
size, and the full reliable queue status is set when the send window is full.
[default] com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
[range]
>
0,
>=
min send window size,
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.LENGTH UNLIMITED (p. 106)
or
See also:
com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.min send window size (p. 1383)
com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.low watermark (p. 1375)
com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.high watermark (p. 1375)
com.rti.dds.publication.ReliableWriterCacheChangedStatus.full reliable writer cache (p. 1338)
8.223.2.22
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1386
8.223.2.23
Class Documentation
int send window increase factor
8.223.2.24
1387
8.223.2.25
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1388
Class Documentation
8.224
RTPS reserved port kind, used to identify the types of ports that can be reserved
on domain (p. 328) participant enable.
8.224.1
Detailed Description
RTPS reserved port kind, used to identify the types of ports that can be reserved
on domain (p. 328) participant enable.
See also:
com.rti.dds.infrastructure.WireProtocolQosPolicy.rtps reserved port mask (p. 1731)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1389
8.224.2
8.224.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1390
Class Documentation
8.225
Public Attributes
int port base
The base port offset.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.225.1
1391
Detailed Description
The metatraffic multicast port is used to exchange discovery metatraffic using multicast. The corresponding multicast group addresses are specified
via com.rti.dds.infrastructure.DiscoveryQosPolicy.multicast receive addresses (p. 650) on a com.rti.dds.domain.DomainParticipant (p. 654)
entity.
metatraffic_multicast_port = port_base + (domain_id_gain * domain_id) + builtin_multicast_port_offset
RTPS also defines the default multicast and unicast ports on which DataReaders and DataWriters receive usertraffic.
These default ports can be
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1392
Class Documentation
The usertraffic multicast port is used to exchange user data using multicast. The corresponding multicast group addresses can be configured using
com.rti.dds.infrastructure.TransportMulticastQosPolicy (p. 1590).
usertraffic_multicast_port = port_base + (domain_id_gain * domain_id) + user_multicast_port_offset
By default,
the port mapping parameters are configured to
compliant
with
OMGs
DDS
Interoperability
Wire
Protocol
(see
also
com.rti.dds.infrastructure.RtpsWellKnownPorts t.INTEROPERABLE RTPS WELL KNOWN PORTS (p. 137)).
The OMGs DDS Interoperability Wire Protocol compliant port mapping parameters are not backwards compatible with previous versions of the RTI Connext middleware.
When modifying the port mapping parameters, care must be taken to avoid
port aliasing. This would result in undefined discovery behavior. The chosen
parameter values will also determine the maximum possible number of domains
in the system and the maximum number of participants per domain (p. 328).
Additionally, any resulting mapped port number must be within the range imposed by the underlying transport. For example, for UDPv4, this range typically
equals [1024 - 65535].
QoS:
com.rti.dds.infrastructure.WireProtocolQosPolicy (p. 1723)
8.225.2
8.225.2.1
1393
and:
(port_base + (domain_id_gain * (domain_id + 1)) - 1)
Under such a case, the highest domain id is limited only by the underlying
transports maximum port. The highest participant id, however, must satisfy:
max_participant_id < (domain_id_gain / participant_id_gain)
On the contrary,
if domain id gain <= participant id gain,
it results in a port mapping layout where a given domains
com.rti.dds.domain.DomainParticipant (p. 654) instances occupy ports
spanned across the entire valid port range allowed by the underlying transport.
For instance, it results in the following potential mapping:
Mapped Port
higher port number
Domain
Domain
Domain
Domain
Domain
Domain
Domain
Id
Id
Id
Id
Id
Id
Id
=
=
=
=
=
=
1
0
1
0
1
0
Participant
Participant
Participant
Participant
Participant
Participant
Participant
ID
ID
ID
ID
ID
ID
ID
=
=
=
=
=
=
2
2
1
1
0
0
Under this case, the highest participant id is limited only by the underlying
transports maximum port. The highest domain id, however, must satisfy:
max_domain_id < (participant_id_gain / domain_id_gain)
Additionally, domain id gain also determines the range of the port-specific offsets.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1394
Class Documentation
Violating this may result in port aliasing and undefined discovery behavior.
[default] 250
[range] [> 0], but resulting ports must be within the range imposed by the
underlying transport.
8.225.2.3
[default] 2
[range] [> 0], but resulting ports must be within the range imposed by the
underlying transport.
8.225.2.4
1395
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1396
Class Documentation
8.226
Public Attributes
final GUID t writer guid = new GUID t(GUID t.GUID AUTO)
16-byte identifier identifying the virtual GUID.
static
final
IDENTITY
SampleIdentity t
UNKNOWN SAMPLE -
8.226.1
Detailed Description
8.226.2
8.226.2.1
1397
Copy constructor.
8.226.3
8.226.3.1
8.226.3.3
Initial value:
new SequenceNumber_t(SequenceNumber_t.AUTO_SEQUENCE_NUMBER)
monotonically increasing 64-bit integer that identifies the sample in the data
source.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1398
Class Documentation
8.227
Public Attributes
int sample state
The sample state of the sample.
1399
final SequenceNumber t
sequence number
<<eXtension>> (p. 278) The original publication ( p. 349) virtual sequence number of a related sample
1400
Class Documentation
8.227.1
Detailed Description
8.227.2
8.227.3
Interpretation of the
generation count and
count
For each instance, RTI Connext internally maintains two counts, the
com.rti.dds.subscription.SampleInfo.disposed generation count
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1401
(p. 1405)
and
com.rti.dds.subscription.SampleInfo.no writers generation count (p. 1405), relative to each DataReader (p. 487):
The com.rti.dds.subscription.SampleInfo.disposed generation count (p. 1405) and com.rti.dds.subscription.SampleInfo.no writers generation count (p. 1405) are initialized to zero when the
com.rti.dds.subscription.DataReader (p. 487) first detects the
presence of a never-seen-before instance.
The
com.rti.dds.subscription.SampleInfo.disposed generation count (p. 1405) is incremented each time the
instance state of the corresponding instance changes from
com.rti.dds.subscription.InstanceStateKind.InstanceStateKind.NOT ALIVE DISPOSED INSTANCE STATE
to
com.rti.dds.subscription.InstanceStateKind.InstanceStateKind.ALIVE INTANCE STATE.
The
com.rti.dds.subscription.SampleInfo.no writers generation count (p. 1405) is incremented each time the
instance state of the corresponding instance changes from
com.rti.dds.subscription.InstanceStateKind.InstanceStateKind.NOT ALIVE NO WRITERS INSTANCE STATE
to
com.rti.dds.subscription.InstanceStateKind.InstanceStateKind.ALIVE INTANCE STATE.
These generation counts are reset to zero when the instance resource is
reclaimed.
The
com.rti.dds.subscription.SampleInfo.disposed generation count
(p. 1405)
and
com.rti.dds.subscription.SampleInfo.no writers generation count
(p. 1405)
available
in
the
com.rti.dds.subscription.SampleInfo (p. 1398) capture a snapshot of
the corresponding counters at the time the sample was received.
8.227.4
1402
Class Documentation
The
com.rti.dds.subscription.SampleInfo.generation rank
(p. 1405) available in the com.rti.dds.subscription.SampleInfo
(p. 1398) indicates the difference in generations between the sample
(S) and the Most Recent Sample of the same instance that appears in
the returned Collection (MRSIC). That is, it counts the number of times
the instance transitioned from not-alive to alive in the time from the
reception of the S to the reception of MRSIC.
These generation ranks are reset to zero when the instance resource is
reclaimed.
The
com.rti.dds.subscription.SampleInfo.absolute generation rank
(p. 1406) available in the com.rti.dds.subscription.SampleInfo (p. 1398)
indicates the difference in generations between the sample (S) and the Most
Recent Sample of the same instance that the middleware has received (MRS).
That is, it counts the number of times the instance transitioned from not-alive
to alive in the time from the reception of the S to the time when the read or
take was called.
absolute_generation_rank = (MRS.disposed_generation_count
+ MRS.no_writers_generation_count)
- (S.disposed_generation_count
+ S.no_writers_generation_count)
8.227.5
These counters and ranks allow the application to distinguish samples belonging
to different generations of the instance. Note that it is possible for an instance
to transition from not-alive to alive (and back) several times before the application accesses the data by means of read or take. In this case, the returned
collection may contain samples that cross generations (i.e. some samples were received before the instance became not-alive, other after the instance re-appeared
again). Using the information in the com.rti.dds.subscription.SampleInfo
(p. 1398), the application can anticipate what other information regarding the
same instance appears in the returned collection, as well as in the infrastructure (p. 334) and thus make appropriate decisions.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1403
For example, an application desiring to only consider the most current sample
for each instance would only look at samples with sample rank == 0. Similarly,
an application desiring to only consider samples that correspond to the latest
generation in the collection will only look at samples with generation rank ==
0. An application desiring only samples pertaining to the latest generation
available will ignore samples for which absolute generation rank != 0. Other
application-defined criteria may also be used.
See also:
com.rti.dds.subscription.SampleStateKind
com.rti.dds.subscription.InstanceStateKind
com.rti.dds.subscription.ViewStateKind
com.rti.dds.subscription.SampleInfo.valid data (p. 1406)
8.227.6
8.227.6.1
(p. 1426),
(p. 1061),
(p. 1703),
Given a pointer to a native SampleInfo (p. 1398) object from the queue, get a
reference to the corresponding Java SampleInfo (p. 1398) object.
8.227.7
8.227.7.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1404
8.227.7.2
Class Documentation
int view state
8.227.7.3
8.227.7.4
8.227.7.5
8.227.7.6
1405
The disposed generation count of the instance at the time of sample reception.
Indicates the number of times the instance had become alive after it was disposed
explicitly by a com.rti.dds.publication.DataWriter (p. 557), at the time the
sample was received.
See also:
Interpretation of the SampleInfo disposed generation count and
no writers generation count (p. 1400) Interpretation of the SampleInfo counters and ranks (p. 1402)
8.227.7.8
The no writers generation count of the instance at the time of sample reception.
Indicates the number of times the instance had become alive after it was disposed
because there were no writers, at the time the sample was received.
See also:
Interpretation of the SampleInfo disposed generation count and
no writers generation count (p. 1400) Interpretation of the SampleInfo counters and ranks (p. 1402)
8.227.7.9
8.227.7.10
1406
Class Documentation
Indicates the generation difference (number of times the instance was disposed
and become alive again) between the time the sample was received, and the
time the most recent sample in the collection related to the same instance was
received.
See also:
Interpretation of the SampleInfo sample rank, generation rank
and absolute generation rank (p. 1401) Interpretation of the SampleInfo counters and ranks (p. 1402)
8.227.7.11
8.227.7.12
Indicates whether the DataSample contains data or else it is only used to communicate a change in the instance state of the instance.
Normally
each
DataSample
contains
both
a
com.rti.dds.subscription.SampleInfo
(p. 1398)
and
some
Data.
However there are situations where a DataSample contains only the
com.rti.dds.subscription.SampleInfo (p. 1398) and does not have any
associated data. This occurs when the RTI Connext notifies the application of a change of state for an instance that was caused by some internal
mechanism (such as a timeout) for which there is no associated data.
An example of this situation is when the RTI Connext detects that an
instance has no writers and changes the corresponding instance state to
com.rti.dds.subscription.InstanceStateKind.InstanceStateKind.NOT ALIVE NO WRITERS INSTANCE STATE.
The application can distinguish whether a particular DataSample has data
by examining the value of the valid data flag. If this flag is set to
com.rti.dds.infrastructure.true, then the DataSample contains valid Data. If
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1407
1408
Class Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.228
1409
8.228.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1410
Class Documentation
8.229
Public Attributes
int total count
Total cumulative count of all samples lost across all instances of data published under the com.rti.dds.topic.Topic ( p. 1545).
8.229.1
Detailed Description
8.229.2
8.229.2.1
Total cumulative count of all samples lost across all instances of data published
under the com.rti.dds.topic.Topic (p. 1545).
8.229.2.2
The incremental number of samples lost since the last time the listener was
called or the status was read.
8.229.2.3
1411
See also:
com.rti.dds.subscription.SampleRejectedStatusKind (p. 1420)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1412
Class Documentation
8.230
static final
LIMIT
SampleLostStatusKind
received
by
the
LOST BY INSTANCES -
static
final
SampleLostStatusKind
WRITERS PER INSTANCE LIMIT
LOST BY REMOTE -
static
final
SampleLostStatusKind
COHERENT SET
LOST BY LARGE -
static
final
SampleLostStatusKind
WRITERS LIMIT
LOST BY VIRTUAL -
static
final
SampleLostStatusKind
WRITERS PER SAMPLE LIMIT
1413
LOST BY REMOTE -
A resource limit on the number of remote writers per sample was reached.
static
final
SampleLostStatusKind
LOST BY REMOTE WRITER SAMPLES PER VIRTUAL QUEUE LIMIT
A resource limit on the number of samples published by a remote writer
on behalf of a virtual writer that a com.rti.dds.subscription.DataReader
( p. 487) may store was reached.
static
final
MEMORY
SampleLostStatusKind
LOST BY OUT OF -
A sample was lost because there was not enough memory to store the sample.
8.230.1
Detailed Description
8.230.2
8.230.2.1
Initial value:
new com.rti.dds.subscription.SampleLostStatusKind(
"NOT_LOST", 0)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1414
8.230.2.2
Class Documentation
final SampleLostStatusKind LOST BY WRITER
[static]
Initial value:
new com.rti.dds.subscription.SampleLostStatusKind(
"LOST_BY_WRITER", 1)
received
by
the
Initial value:
new com.rti.dds.subscription.SampleLostStatusKind(
"LOST_BY_INSTANCES_LIMIT", 2)
8.230.2.4
Initial value:
new SampleLostStatusKind(
"LOST_BY_REMOTE_WRITERS_PER_INSTANCE_LIMIT", 3)
A resource limit on the number of remote writers for a single instance from which
a com.rti.dds.subscription.DataReader (p. 487) may read was reached.
This constant is an extension to the DDS standard.
See also:
com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy
(p. 542)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1415
Initial value:
new SampleLostStatusKind(
"LOST_BY_INCOMPLETE_COHERENT_SET", 4)
8.230.2.6
Initial value:
new SampleLostStatusKind(
"LOST_BY_LARGE_COHERENT_SET", 5)
8.230.2.7
Initial value:
new SampleLostStatusKind(
"LOST_BY_SAMPLES_PER_REMOTE_WRITER_LIMIT", 6)
A resource limit on the number of samples from a given remote writer that a
com.rti.dds.subscription.DataReader (p. 487) may store was reached.
This constant is an extension to the DDS standard.
See also:
com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy
(p. 542)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1416
8.230.2.8
Class Documentation
final SampleLostStatusKind LOST BY VIRTUAL WRITERS LIMIT [static]
Initial value:
new SampleLostStatusKind(
"DDS_LOST_BY_VIRTUAL_WRITERS_LIMIT", 7)
8.230.2.9
Initial value:
new SampleLostStatusKind(
"LOST_BY_REMOTE_WRITERS_PER_SAMPLE_LIMIT", 8)
A resource limit on the number of remote writers per sample was reached.
This constant is an extension to the DDS standard.
See also:
com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy
(p. 542)
8.230.2.10
Initial value:
new SampleLostStatusKind(
"LOST_BY_AVAILABILITY_WAITING_TIME", 9)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1417
8.230.2.11
final SampleLostStatusKind LOST BY REMOTE WRITER SAMPLES PER VIRTUAL QUEUE LIMIT
[static]
Initial value:
new SampleLostStatusKind(
"LOST_BY_REMOTE_WRITER_SAMPLES_PER_VIRTUAL_QUEUE_LIMIT", 10)
A resource limit on the number of samples published by a remote writer on behalf of a virtual writer that a com.rti.dds.subscription.DataReader (p. 487)
may store was reached.
This constant is an extension to the DDS standard.
See also:
com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy
(p. 542)
8.230.2.12
Initial value:
new SampleLostStatusKind(
"LOST_BY_OUT_OF_MEMORY", 11)
A sample was lost because there was not enough memory to store the sample.
This constant is an extension to the DDS standard.
See also:
com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy
(p. 542)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1418
Class Documentation
8.231
Public Attributes
int total count
Total
cumulative
count
of
samples
com.rti.dds.subscription.DataReader ( p. 487).
rejected
by
the
8.231.1
Detailed Description
8.231.2
8.231.2.1
Total
cumulative
count
of
samples
com.rti.dds.subscription.DataReader (p. 487).
8.231.2.2
rejected
by
the
The incremental number of samples rejected since the last time the listener was
called or the status was read.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1419
8.231.2.4
Handle to the instance being updated by the last sample that was rejected.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1420
Class Documentation
8.232
static
final
SampleRejectedStatusKind
INSTANCES LIMIT
REJECTED BY -
static
final
SampleRejectedStatusKind
SAMPLES LIMIT
REJECTED BY -
static
final
SampleRejectedStatusKind
SAMPLES PER INSTANCE LIMIT
REJECTED BY -
static
final
SampleRejectedStatusKind
REMOTE WRITERS LIMIT
REJECTED BY -
static
final
SampleRejectedStatusKind
REJECTED BY REMOTE WRITERS PER INSTANCE LIMIT
A resource limit on the number of remote writers for a single instance
from which a com.rti.dds.subscription.DataReader ( p. 487) may read
was reached.
static
final
SampleRejectedStatusKind
REJECTED BY SAMPLES PER REMOTE WRITER LIMIT
A resource limit on the number of samples from a given remote writer that
a com.rti.dds.subscription.DataReader ( p. 487) may store was reached.
static
final
SampleRejectedStatusKind
VIRTUAL WRITERS LIMIT
REJECTED BY -
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1421
static
final
SampleRejectedStatusKind
REJECTED BY REMOTE WRITERS PER SAMPLE LIMIT
A resource limit on the number of remote writers per sample was reached.
static
final
SampleRejectedStatusKind
REJECTED BY REMOTE WRITER SAMPLES PER VIRTUAL QUEUE LIMIT
A resource limit on the number of samples published by a remote writer
on behalf of a virtual writer that a com.rti.dds.subscription.DataReader
( p. 487) may store was reached.
8.232.1
Detailed Description
8.232.2
8.232.2.1
Initial value:
new com.rti.dds.subscription.SampleRejectedStatusKind(
"NOT_REJECTED", 0)
8.232.2.2
final SampleRejectedStatusKind
REJECTED BY INSTANCES LIMIT [static]
Initial value:
new com.rti.dds.subscription.SampleRejectedStatusKind(
"REJECTED_BY_INSTANCES_LIMIT", 1)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1422
Class Documentation
8.232.2.3
final SampleRejectedStatusKind
REJECTED BY SAMPLES LIMIT [static]
Initial value:
new SampleRejectedStatusKind(
"REJECTED_BY_SAMPLES_LIMIT", 2)
8.232.2.4
Initial value:
new SampleRejectedStatusKind(
"REJECTED_BY_SAMPLES_PER_INSTANCE_LIMIT", 3)
8.232.2.5
final SampleRejectedStatusKind
REJECTED BY REMOTE WRITERS LIMIT [static]
Initial value:
new SampleRejectedStatusKind(
"REJECTED_BY_REMOTE_WRITERS_LIMIT", 4)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1423
8.232.2.6
Initial value:
new SampleRejectedStatusKind(
"REJECTED_BY_REMOTE_WRITERS_PER_INSTANCE_LIMIT", 5)
A resource limit on the number of remote writers for a single instance from which
a com.rti.dds.subscription.DataReader (p. 487) may read was reached.
This constant is an extension to the DDS standard.
See also:
com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy
(p. 542)
8.232.2.7
Initial value:
new SampleRejectedStatusKind(
"REJECTED_BY_SAMPLES_PER_REMOTE_WRITER_LIMIT", 6)
A resource limit on the number of samples from a given remote writer that a
com.rti.dds.subscription.DataReader (p. 487) may store was reached.
This constant is an extension to the DDS standard.
See also:
com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy
(p. 542)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1424
8.232.2.8
Class Documentation
final SampleRejectedStatusKind
REJECTED BY VIRTUAL WRITERS LIMIT
[static]
Initial value:
new SampleRejectedStatusKind(
"REJECTED_BY_VIRTUAL_WRITERS_LIMIT", 7)
8.232.2.9
Initial value:
new SampleRejectedStatusKind(
"REJECTED_BY_REMOTE_WRITERS_PER_SAMPLE_LIMIT", 8)
A resource limit on the number of remote writers per sample was reached.
This constant is an extension to the DDS standard.
See also:
com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy
(p. 542)
8.232.2.10
final SampleRejectedStatusKind
REJECTED BY REMOTE WRITER SAMPLES PER VIRTUAL QUEUE LIMIT
[static]
Initial value:
new SampleRejectedStatusKind(
"REJECTED_BY_REMOTE_WRITER_SAMPLES_PER_VIRTUAL_QUEUE_LIMIT", 9)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1425
A resource limit on the number of samples published by a remote writer on behalf of a virtual writer that a com.rti.dds.subscription.DataReader (p. 487)
may store was reached.
This constant is an extension to the DDS standard.
See also:
com.rti.dds.infrastructure.DataReaderResourceLimitsQosPolicy
(p. 542)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1426
Class Documentation
8.233
8.233.1
Detailed Description
8.233.2
8.233.2.1
1427
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1428
Class Documentation
8.234
<<interface>> ( p. 279) <<generic>> ( p. 279) A type-safe, ordered collection of elements. The type of these elements is referred to in this documentation
as com.rti.ndds.example.Foo (p. 977).
Inheritance diagram for Sequence::
Class getElementType ()
8.234.1
Detailed Description
<<interface>> ( p. 279) <<generic>> ( p. 279) A type-safe, ordered collection of elements. The type of these elements is referred to in this documentation
as com.rti.ndds.example.Foo (p. 977).
For users who define data types in OMG IDL, this type corresponds to the IDL
express sequence<Foo>.
For any user-data type Foo that an application defines for the purpose of datadistribution with RTI Connext, a FooSeq is generated. We refer to an IDL
sequence<Foo> as FooSeq.
A sequence is a type-safe List that makes a distinction between its allocated
size and its logical size (much like the ArrayList class). The Collection.size()
method returns the logical size.
A new sequence is created for elements of a particular Class, which does not
change throughout the lifetime of a sequence instance.
To add an element to a sequence, use the add() method inherited from
the standard interface java.util.List; this will implicitly increase the sequences size. Or, to pre-allocate space for several elements at once, use
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.setMaximum.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1429
8.234.2
8.234.2.1
int getMaximum ()
Get the current maximum number of elements that can be stored in this sequence.
The maximum of the sequence represents the maximum number of elements that
the underlying buffer can hold. It does not represent the current number of
elements.
The maximum is a non-negative number. It is initialized when the sequence is
first created.
The maximum can be changed implicitly by adding an element to the sequence with add(),
or explicitly by calling
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.setMaximum.
Returns:
the current maximum of the sequence.
See also:
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.size()
Implemented in BooleanSeq (p. 421), ByteSeq (p. 445), CharSeq (p. 462),
ConditionSeq (p. 466), DoubleSeq (p. 800), FloatSeq (p. 962), IntSeq
(p. 1068), LongSeq (p. 1185), ShortSeq (p. 1446), PublisherSeq (p. 1293),
DataReaderSeq (p. 555), SubscriberSeq (p. 1507), and LoanableSequence (p. 1148).
8.234.2.2
1430
Class Documentation
Note: If you add an element with add(), the sequences size is increased implicitly.
Postcondition:
length == MINIMUM(original length, new max)
Parameters:
new max Must be >= 0.
Returns:
com.rti.dds.infrastructure.true on success, com.rti.dds.infrastructure.false if
the preconditions are not met. In that case the sequence is not modified.
Implemented in AbstractSequence
(p. 1148).
8.234.2.3
Class getElementType ()
Returns:
a common supertype for all elements in this sequence.
Implemented in AbstractPrimitiveSequence
quence (p. 391).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.235
1431
void plusplus ()
Increases the value of this by one.
void minusminus ()
Decreases the value of this by one.
Public Attributes
int high
The most significant part of the sequence number.
long low
The least significant part of the sequence number.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1432
Class Documentation
SequenceNumber t
SEQUENCE NUMBER -
8.235.1
Detailed Description
8.235.2
8.235.2.1
SequenceNumber t ()
Constructor.
8.235.2.2
Copy constructor.
Parameters:
sn The sequence number instance to copy. It must not be null.
8.235.2.3
Constructor.
Parameters:
high must be in the interval [0,0xffffffff]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1433
8.235.3
8.235.3.1
8.235.3.2
void plusplus ()
void minusminus ()
8.235.3.5
1434
Class Documentation
8.235.4
8.235.4.1
int high
long low
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.236
1435
Classes
class Property t
Subclass of com.rti.ndds.transport.Transport.Property t ( p. 1570) allowing specification of parameters that are specific to the shared-memory
transport ( p. 376).
8.236.1
Detailed Description
8.236.2
In this scenario, the properties of the sender or receiver transport (p. 376)
plugin instances should be adjusted, so that they are compatible.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1436
8.236.3
Class Documentation
If a process using shared memory crashes (say because the user typed in C),
resources associated with its shared memory ports may not be properly cleaned
up. Later, if another RTI Connext process needs to open the same ports (say,
the crashed program is restarted), it will attempt to reuse the shared memory
segment left behind by the crashed process.
The reuse is allowed iff the properties of transport (p. 376) plugin are compatible with those embedded in the shared memory segment (i.e., of the original
creator). Otherwise, the process will fail to open the ports, and will output
messages such as below (with numbers appropriate to the properties of the
transport (p. 376) plugins involved).
NDDS_Transport_Shmem_create_recvresource_rrEA:failed to initialize shared
memory resource Cannot recycle existing shmem: size not compatible for key 0x1234
In this scenario, the shared memory segments must be cleaned up using appropriate platform specific commands. For details, please refer to the Platform
Notes.
8.236.4
The transport (p. 376) uses the shared memory segment keys, given by
the formula below.
0x400000 + port
The transport (p. 376) also uses signaling shared semaphore keys given by
the formula below.
0x800000 + port
The transport (p. 376) also uses mutex shared semaphore keys given by the
formula below.
0xb00000 + port
wher
the
port
is
a
function
of
the
domain id
and
the
participant id,
as
described
in
com.rti.dds.infrastructure.WireProtocolQosPolicy.participant id
(p. 1728)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1437
See also:
com.rti.dds.infrastructure.WireProtocolQosPolicy.participant id
(p. 1728)
com.rti.ndds.transport.TransportSupport.set builtin transport property() (p. 1603)
8.236.5
RTI Connext can implicitly create this plugin and register with the
com.rti.dds.domain.DomainParticipant (p. 654) if this transport (p. 376)
is specified in com.rti.dds.infrastructure.TransportBuiltinQosPolicy
(p. 1580).
To specify the properties of the builtin shared memory transport (p. 376) that
is implicitly registered, you can either:
call
com.rti.ndds.transport.TransportSupport.set builtin transport property (p. 1603) or
specify
the
pre-defined
property
names
in
com.rti.dds.infrastructure.PropertyQosPolicy (p. 1236) associated with the com.rti.dds.domain.DomainParticipant (p. 654). (see
Shared Memory Transport Property Names in Property QoS
Policy of Domain Participant (p. 1437)).
Builtin
transport
(p. 376)
plugin
properties
specified
in
com.rti.dds.infrastructure.PropertyQosPolicy
(p. 1236)
always
overwrite
the
ones
specified
through
com.rti.ndds.transport.TransportSupport.set builtin transport property() (p. 1603). The default value is assumed on any unspecified
property. Note that all properties should be set before the transport (p. 376)
is implicitly created and registered by RTI Connext. See Built-in Transport
Plugins (p. 222) for details on when a builtin transport (p. 376) is registered.
8.236.6
The following table lists the predefined property names that can be
set in the com.rti.dds.infrastructure.PropertyQosPolicy (p. 1236) of a
com.rti.dds.domain.DomainParticipant (p. 654) to configure the builtin
shared memory transport (p. 376) plugin.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1438
Name
Class Documentation
Descriptions
See
dds.transport.shmem.builtin.parent.address
com.rti.ndds.transport.Transport.Property
bit count
t.address bit count
(p. 1573)
See
dds.transport.shmem.builtin.parent.properties
com.rti.ndds.transport.Transport.Property
bitmap
t.properties bitmap
(p. 1574)
See
dds.transport.shmem.builtin.parent.gather
com.rti.ndds.transport.Transport.Property
send buffer count max
t.gather send buffer count max
(p. 1574)
See
com.rti.ndds.transport.Transport.Property
dds.transport.shmem.builtin.parent.message
size max
t.message size max
(p. 1574)
See
com.rti.ndds.transport.Transport.Property
dds.transport.shmem.builtin.parent.allow
interfaces
t.allow interfaces list (p. 1575)
and
com.rti.ndds.transport.Transport.Property t.allow interfaces list length.
Interfaces should be specified as
comma-separated strings, with each
comma delimiting an interface. For
example (p. 375): 127.0.0.1,eth0
See
dds.transport.shmem.builtin.parent.deny
com.rti.ndds.transport.Transport.Property
interfaces
t.deny interfaces list (p. 1575)
and
com.rti.ndds.transport.Transport.Property t.deny interfaces list length.
Interfaces should be specified as
comma-separated strings, with each
comma delimiting an interface. For
example (p. 375): 127.0.0.1,eth0
See
dds.transport.shmem.builtin.parent.allow
com.rti.ndds.transport.Transport.Property
multicast interfaces
t.allow multicast interfaces list
(p. 1576) and
com.rti.ndds.transport.Transport.Property t.allow multicast interfaces list length.
Interfaces should be specified as
comma-separated strings, with each
Generated on Mon Aug 13 09:02:20 2012
for RTIdelimiting
Connext Java
API by Doxygen
comma
an interface.
For
example (p. 375): 127.0.0.1,eth0
See
dds.transport.shmem.builtin.parent.deny
com.rti.ndds.transport.Transport.Property
multicast interfaces
t.deny multicast interfaces list
(p. 1576) and
com.rti.ndds.transport.Transport.Property t.deny multicast interfaces list -
8.237
1439
Subclass of com.rti.ndds.transport.Transport.Property t (p. 1570) allowing specification of parameters that are specific to the shared-memory transport (p. 376).
Inheritance diagram for ShmemTransport.Property t::
Public Attributes
int received message count max
Number of messages that can be buffered in the receive queue.
8.237.1
Detailed Description
Subclass of com.rti.ndds.transport.Transport.Property t (p. 1570) allowing specification of parameters that are specific to the shared-memory transport (p. 376).
See also:
com.rti.ndds.transport.TransportSupport.set builtin transport property() (p. 1603)
8.237.2
8.237.2.1
Property t ()
1440
Class Documentation
8.237.3
8.237.3.1
8.237.3.2
The total number of bytes that can be buffered in the receive queue.
This number controls how much memory is allocated by the plugin for the
receive queue. The actual number of bytes allocated is:
size = receive_buffer_size + message_size_max +
received_message_count_max * fixedOverhead
where fixedOverhead is some small number of bytes used by the queue data
structure. The following rules are noted:
receive buffer size < message size max received message count max, then the transport (p. 376) plugin will not be able to store
received message count max messages of size message size max.
receive buffer size > message size max received message count max, then there will be memory allocated that cannot be used by
the plugin and thus wasted.
To optimize memory usage, the user is allowed to specify a size for the receive
queue to be less than that required to hold the maximum number of messages
which are all of the maximum size.
In most situations, the average message size may be far less than the maximum
message size. So for example (p. 375), if the maximum message size is 64 K
bytes, and the user configures the plugin to buffer at least 10 messages, then 640
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1441
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1442
Class Documentation
8.238
void setShort (int dstIndex, short[ ] elements, int srcIndex, int length)
Copy a portion of the given array into this sequence.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1443
int getMaximum ()
Get the current maximum number of elements that can be stored in this
sequence.
8.238.1
Detailed Description
8.238.2
8.238.2.1
ShortSeq ()
8.238.2.2
Constructs an empty sequence of short integers with the given initial maximum.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1444
8.238.2.3
Class Documentation
ShortSeq (short[ ] shorts)
8.238.3
8.238.3.1
Append length elements from the given array to this sequence, starting at index
offset in that array.
Exceptions:
NullPointerException if the given array is null.
8.238.3.2
Exceptions:
NullPointerException if the given array is null
8.238.3.3
Shift all elements in the sequence starting from the given index and add the
element to the given index.
8.238.3.5
1445
Exceptions:
IndexOutOfBoundsException if the index is out of bounds.
8.238.3.6
Set the new short at the given index and return the old short.
Exceptions:
IndexOutOfBoundsException if the index is out of bounds.
8.238.3.7
8.238.3.8
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1446
8.238.3.9
Class Documentation
int getMaximum ()
Get the current maximum number of elements that can be stored in this sequence.
The maximum of the sequence represents the maximum number of elements that
the underlying buffer can hold. It does not represent the current number of
elements.
The maximum is a non-negative number. It is initialized when the sequence is
first created.
The maximum can be changed implicitly by adding an element
to the sequence with add() (p. 1447), or explicitly by calling
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.setMaximum.
Returns:
the current maximum of the sequence.
See also:
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.size()
Implements Sequence (p. 1429).
8.238.3.10
1447
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1448
Class Documentation
8.239
8.239.1
Detailed Description
(p. 1709),
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.239.2
8.239.2.1
1449
8.239.2.2
of
the
8.239.2.3
1450
Class Documentation
Returns:
com.rti.dds.infrastructure.Entity (p. 931) associated
com.rti.dds.infrastructure.StatusCondition (p. 1448).
with
the
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.240
1451
1452
Class Documentation
will consider the com.rti.dds.publication.DataWriter ( p. 557) as no
longer alive.
static
final
int
DATA WRITER APPLICATION ACKNOWLEDGMENT STATUS
<<eXtension>> (p. 278) A com.rti.dds.publication.DataWriter
( p. 557) has received an application-level acknowledgment for a sample
static final
STATUS
int
static final
STATUS
int
<<eXtension>> (p. 278) The number of unacknowledged samples in a reliable writers cache has changed such that it has reached a pre-defined trigger
point.
1453
8.240.1
Detailed Description
(p. 931),
(p. 1448),
8.240.2
8.240.2.1
Another topic (p. 359) exists with the same name but different characteristics.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1454
Class Documentation
Entity:
com.rti.dds.topic.Topic (p. 1545)
Status:
com.rti.dds.topic.InconsistentTopicStatus (p. 1052)
Listener:
com.rti.dds.topic.TopicListener (p. 1564)
8.240.2.2
8.240.2.3
1455
QoS:
DEADLINE (p. 52)
Status:
com.rti.dds.subscription.RequestedDeadlineMissedStatus
(p. 1344)
Listener:
com.rti.dds.subscription.DataReaderListener (p. 518)
8.240.2.4
A QosPolicy (p. 1301) value was incompatible with what was requested.
Entity:
com.rti.dds.publication.DataWriter (p. 557)
Status:
com.rti.dds.publication.OfferedIncompatibleQosStatus (p. 1197)
Listener:
com.rti.dds.publication.DataWriterListener (p. 586)
8.240.2.5
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1456
8.240.2.6
Class Documentation
final int SAMPLE LOST STATUS [static]
8.240.2.7
8.240.2.8
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1457
8.240.2.10
8.240.2.11
1458
Class Documentation
Entity:
com.rti.dds.subscription.DataReader (p. 487)
QoS:
LIVELINESS (p. 82)
Status:
com.rti.dds.subscription.LivelinessChangedStatus (p. 1135)
Listener:
com.rti.dds.subscription.DataReaderListener (p. 518)
8.240.2.12
The
com.rti.dds.publication.DataWriter
(p. 557)
com.rti.dds.subscription.DataReader
(p. 487)
that
com.rti.dds.topic.Topic (p. 1545) and has compatible QoS.
has
found
matches
the
Entity:
com.rti.dds.publication.DataWriter (p. 557)
Status:
com.rti.dds.publication.PublicationMatchedStatus (p. 1259)
Listener:
com.rti.dds.publication.DataWriterListener (p. 586)
8.240.2.13
The
com.rti.dds.subscription.DataReader
(p. 487)
has
found
com.rti.dds.publication.DataWriter
(p. 557)
that
matches
the
com.rti.dds.topic.Topic (p. 1545) and has compatible QoS.
Entity:
com.rti.dds.subscription.DataReader (p. 487)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1459
Status:
com.rti.dds.subscription.SubscriptionMatchedStatus (p. 1519)
Listener:
com.rti.dds.subscription.DataReaderListener (p. 518)
8.240.2.14
8.240.2.15
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1460
8.240.2.16
Class Documentation
final int RELIABLE WRITER CACHE CHANGED STATUS [static]
<<eXtension>> ( p. 278) The number of unacknowledged samples in a reliable writers cache has changed such that it has reached a pre-defined trigger
point.
This status is considered changed at the following times:
the
cache is empty (i.e.
contains no unacknowledge samples), full
(i.e.
the sample count has reached the value specified in
com.rti.dds.infrastructure.ResourceLimitsQosPolicy.max samples
(p. 1351)), or the number of samples has reached a high (see
com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.high watermark (p. 1375)) or low (see com.rti.dds.infrastructure.RtpsReliableWriterProtocol t.low watermark (p. 1375)) watermark.
Entity:
com.rti.dds.publication.DataWriter (p. 557)
Status:
com.rti.dds.publication.ReliableWriterCacheChangedStatus
(p. 1336)
Listener:
com.rti.dds.publication.DataWriterListener (p. 586)
8.240.2.17
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1461
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1462
Class Documentation
8.241
<<interface>>
( p. 279)
com.rti.dds.infrastructure.String >.
Instantiates
DataReader
<
from
the
void take (StringSeq received data, SampleInfoSeq info seq, int max samples, int sample states, int view states, int instance states)
Access
a
collection
of
data-samples
com.rti.dds.subscription.DataReader ( p. 487).
from
the
value
from
the
value
from
the
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.241.1
1463
Detailed Description
<<interface>>
( p. 279)
com.rti.dds.infrastructure.String >.
Instantiates
<
DataReader
See also:
com.rti.ndds.example.FooDataReader (p. 979)
com.rti.dds.subscription.DataReader (p. 487)
8.241.2
8.241.2.1
Access
a
collection
of
data
samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
See also:
com.rti.ndds.example.FooDataReader.read (p. 981)
8.241.2.2
Access
a
collection
of
data-samples
com.rti.dds.subscription.DataReader (p. 487).
from
the
See also:
com.rti.ndds.example.FooDataReader.take (p. 983)
8.241.2.3
Accesses
via
com.rti.dds.type.builtin.StringDataReader.read
(p. 1463) the samples that match the criteria specified in the
com.rti.dds.subscription.ReadCondition (p. 1313).
See also:
com.rti.ndds.example.FooDataReader.read w condition (p. 990)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1464
8.241.2.4
Class Documentation
void take w condition (StringSeq received data,
SampleInfoSeq info seq, int max samples,
ReadCondition condition)
Analogous
to
com.rti.dds.type.builtin.StringDataReader.read w condition
(p. 1463)
except
it
accesses
samples
via
the
com.rti.dds.type.builtin.StringDataReader.take (p. 1463) operation.
See also:
com.rti.ndds.example.FooDataReader.take w condition (p. 991)
8.241.2.5
Copies
the
next not-previously-accessed data
com.rti.dds.subscription.DataReader (p. 487).
value
from
the
See also:
com.rti.ndds.example.FooDataReader.read next sample (p. 993)
8.241.2.6
Copies
the
next not-previously-accessed data
com.rti.dds.subscription.DataReader (p. 487).
value
from
the
See also:
com.rti.ndds.example.FooDataReader.take next sample (p. 994)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.242
1465
<<interface>>
( p. 279)
com.rti.dds.infrastructure.String >.
Instantiates
DataWriter
<
8.242.1
Detailed Description
<<interface>>
( p. 279)
com.rti.dds.infrastructure.String >.
Instantiates
DataWriter
See also:
com.rti.ndds.example.FooDataWriter (p. 1012)
com.rti.dds.publication.DataWriter (p. 557)
8.242.2
8.242.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
<
1466
8.242.2.2
Class Documentation
void write w timestamp (String instance data,
InstanceHandle t handle, Time t source timestamp)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.243
1467
8.243.1
Detailed Description
1468
Class Documentation
See also:
com.rti.dds.infrastructure.com.rti.dds.util.Sequence
8.243.2
8.243.2.1
StringSeq ()
8.243.3
8.243.3.1
Copy data into this object from another. The result of this method is that
both this and src will be the same size and contain the same data.
Parameters:
src The Object which contains the data to be copied
Returns:
Generally, return this but special cases (such as Enum) exist.
Exceptions:
NullPointerException If src is null OR if there are null objects contained in this sequence.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1469
Read array of strings. The length specified must match the expected length of
array. Otherwise, the stream will be positioned incorrectly, leading to corrupt
reads. The length of array must be at least the value of length parameter
(otherwise, ArrayOutOfBoundException will be thrown).
Parameters:
value array to read into
in Interface for reading object in CDR encoding.
length the length of array (<= value.length)
8.243.3.3
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1470
Class Documentation
8.244
8.244.1
Detailed Description
8.244.2
8.244.2.1
1471
This
method
can
also
be
used
to
register
the
same
com.rti.dds.type.builtin.com.rti.dds.type.builtin.StringTypeSupport with a
com.rti.dds.domain.DomainParticipant (p. 654) using different values for
the type name.
If
register type
is
called
multiple
times
with
the
same
com.rti.dds.domain.DomainParticipant (p. 654) and type name, the
second (and subsequent) registrations are ignored by the operation.
Parameters:
participant <<in>> ( p. 279) the com.rti.dds.domain.DomainParticipant
(p. 654) to register the data type com.rti.dds.infrastructure.String
with. Cannot be null.
type name <<in>> ( p. 279) the type name under with the data type
com.rti.dds.infrastructure.String is registered with the participant;
this type name is used when creating a new com.rti.dds.topic.Topic
(p. 1545). (See com.rti.dds.domain.DomainParticipant.create topic (p. 697).) The name may not be null or longer than 255 characters.
Exceptions:
One of
the
Standard
Return
Codes
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET
(p. 1363)
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES (p. 1362).
(p. 108),
or
MT Safety:
UNSAFE on the FIRST call. It is not safe for two threads to simultaneously
make the first call to register a type. Subsequent calls are thread safe.
See also:
com.rti.dds.domain.DomainParticipant.create topic (p. 697)
8.244.2.2
1472
Class Documentation
Precondition:
The com.rti.dds.infrastructure.String type with type name is registered
with the participant and all com.rti.dds.topic.Topic (p. 1545) objects referencing the type have been destroyed. If the type is not
registered with the participant, or if any com.rti.dds.topic.Topic
(p. 1545) is associated with the type, the operation will fail with
com.rti.dds.infrastructure.RETCODE ERROR (p. 1356).
Postcondition:
All information about the type is removed from RTI Connext. No further
communication using this type is possible.
Parameters:
participant <<in>> ( p. 279) the com.rti.dds.domain.DomainParticipant
(p. 654) to unregister the data type com.rti.dds.infrastructure.String
from. Cannot be null.
type name <<in>> ( p. 279) the type name under with the data type
com.rti.dds.infrastructure.String is registered with the participant.
The name should match a name that has been previously used to
register a type with the participant. Cannot be null.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE BAD PARAMETER
(p. 1355) or com.rti.dds.infrastructure.RETCODE ERROR
(p. 1356)
MT Safety:
SAFE.
See also:
com.rti.dds.type.builtin.com.rti.dds.type.builtin.StringTypeSupport.register type
8.244.2.3
1473
Returns:
default name for the com.rti.dds.infrastructure.String type.
See also:
com.rti.dds.type.builtin.com.rti.dds.type.builtin.StringTypeSupport.register type
com.rti.dds.domain.DomainParticipant.create topic (p. 697)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1474
Class Documentation
8.245
Public Attributes
String name
The name of the struct member.
TypeCode type
The type of the struct member.
boolean is pointer
Indicates whether the struct member is a pointer or not.
short bits
Number of bits of a bitfield member.
boolean is key
Indicates if the struct member is a key member or not.
8.245.1
Detailed Description
8.245.2
8.245.2.1
Constructs a StructMember (p. 1474) object initialized with the given values.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.245.3
8.245.3.1
String name
1475
TypeCode type
boolean is pointer
short bits
boolean is key
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1476
Class Documentation
8.246
void set default datareader qos with profile (String library name,
String profile name)
<<eXtension>>
(p. 278)
Set
the
com.rti.dds.subscription.DataReaderQos ( p. 536) values
subscriber based on the input XML QoS profile.
default
for this
DataReader
create datareader
(TopicDescription
topic,
DataReaderQos qos, DataReaderListener listener, int mask)
Creates a com.rti.dds.subscription.DataReader ( p. 487) that will be attached and belong to the com.rti.dds.subscription.Subscriber ( p. 1476).
1477
void set qos with profile (String library name, String profile name)
<<eXtension>> (p. 278) Change the QoS of this subscriber using the input
XML QoS profile.
XML
library
for
void set default profile (String library name, String profile name)
<<eXtension>> (p. 278) Sets the default
com.rti.dds.subscription.Subscriber ( p. 1476).
XML
profile
for
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1478
Class Documentation
void copy from topic qos (DataReaderQos datareader qos, TopicQos topic qos)
Copies the policies in the com.rti.dds.topic.TopicQos ( p. 1566) to the
corresponding policies in the com.rti.dds.subscription.DataReaderQos
( p. 536).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1479
static final DataReaderQos DATAREADER QOS USE TOPIC QOS = new DataReaderQos()
Special value for creating com.rti.dds.subscription.DataReader
( p. 487)
with
a
combination
of
the
default
com.rti.dds.subscription.DataReaderQos
( p. 536)
and
the
com.rti.dds.topic.TopicQos ( p. 1566).
8.246.1
Detailed Description
1480
Class Documentation
The base-class operations com.rti.dds.subscription.Subscriber.set com.rti.dds.subscription.Subscriber.set qos qos
(p. 1492),
with profile (p. 1493), com.rti.dds.subscription.Subscriber.get qos (p. 1493), com.rti.dds.subscription.Subscriber.set listener
(p. 1496),
com.rti.dds.subscription.Subscriber.get listener
com.rti.dds.infrastructure.Entity.enable
(p. 935),
(p. 1497),
com.rti.dds.infrastructure.Entity.get statuscondition
(p. 936),
com.rti.dds.infrastructure.Entity.get status changes (p. 936)
com.rti.dds.subscription.Subscriber.create datareader (p. 1483),
com.rti.dds.subscription.Subscriber.create datareader with com.rti.dds.subscription.Subscriber.delete profile (p. 1486),
datareader (p. 1487), com.rti.dds.subscription.Subscriber.delete contained entities (p. 1500), com.rti.dds.subscription.Subscriber.set default datareader qos (p. 1481), com.rti.dds.subscription.Subscriber.set default datareader qos with profile
(p. 1482),
com.rti.dds.subscription.Subscriber.get default datareader qos
(p. 1480), com.rti.dds.subscription.Subscriber.set default library
(p. 1494), com.rti.dds.subscription.Subscriber.set default profile
(p. 1495)
All operations except for the base-class operations set qos() (p. 1492), set qos with profile() (p. 1493), get qos() (p. 1493), set listener() (p. 1496),
get listener() (p. 1497), enable() (p. 935) and create datareader()
(p. 1483) may fail with com.rti.dds.infrastructure.RETCODE NOT ENABLED (p. 1361).
See also:
Operations Allowed in Listener Callbacks (p. 1132)
8.246.2
8.246.2.1
Copies the default com.rti.dds.subscription.DataReaderQos (p. 536) values into the provided com.rti.dds.subscription.DataReaderQos (p. 536) instance.
The retrieved qos will match the set of values specified on the last successful
call to com.rti.dds.subscription.Subscriber.set default datareader qos (p. 1481), or com.rti.dds.subscription.Subscriber.set default datareader qos with profile (p. 1482), or else, if the call was never made,
the default values from is owning com.rti.dds.domain.DomainParticipant
(p. 654).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1481
This method may potentially allocate memory depending on the sequences contained in some QoS policies.
MT Safety:
UNSAFE. It is not safe to retrieve the default QoS value from
a subscriber while another thread may be simultaneously calling
com.rti.dds.subscription.Subscriber.set default datareader qos
(p. 1481)
Parameters:
qos <<inout>> ( p. 279) com.rti.dds.subscription.DataReaderQos
(p. 536) to be filled-up. Cannot be NULL.
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.subscription.Subscriber.DATAREADER QOS DEFAULT (p. 196)
com.rti.dds.subscription.Subscriber.create datareader (p. 1483)
8.246.2.2
1482
Class Documentation
MT Safety:
UNSAFE. It is not safe to set the default QoS value from a
subscriber while another thread may be simultaneously calling
com.rti.dds.subscription.Subscriber.set default datareader com.rti.dds.subscription.Subscriber.get qos
(p. 1481),
default datareader qos
(p. 1480)
or
calling
com.rti.dds.subscription.Subscriber.create datareader
(p. 1483)
with com.rti.dds.subscription.Subscriber.DATAREADER QOS DEFAULT (p. 196) as the qos parameter.
Parameters:
qos <<in>> ( p. 279) The default com.rti.dds.subscription.DataReaderQos
(p. 536)
to
be
set
to.
The
special
value
com.rti.dds.subscription.Subscriber.DATAREADER QOS DEFAULT (p. 196) may be passed as qos to indicate that the
default QoS should be reset back to the initial values the factory
would used if com.rti.dds.subscription.Subscriber.set default Cannot be
datareader qos (p. 1481) had never been called.
NULL.
Exceptions:
One of
the
Standard
Return
Codes (p. 108),
or
or
com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
8.246.2.3
<<eXtension>>
( p. 278)
Set
the
default
com.rti.dds.subscription.DataReaderQos (p. 536) values for this subscriber based on the input XML QoS profile.
This
default
value
will
be
used
for
newly
created
com.rti.dds.subscription.DataReader
(p. 487)
if
com.rti.dds.subscription.Subscriber.DATAREADER QOS DEFAULT (p. 196) is specified as the qos parameter when
com.rti.dds.subscription.Subscriber.create datareader
(p. 1483)
is
called.
Precondition:
The com.rti.dds.subscription.DataReaderQos (p. 536) contained in
the specified XML QoS profile must be consistent, or else the operation will
have no effect and fail with com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1483
MT Safety:
UNSAFE. It is not safe to set the default QoS value
from
a
com.rti.dds.subscription.Subscriber
(p. 1476)
while
another
thread
may
be
simultaneously
calling
com.rti.dds.subscription.Subscriber.set default datareader qos
(p. 1481),
com.rti.dds.subscription.Subscriber.get default datareader qos
(p. 1480)
or
calling
(p. 1483)
com.rti.dds.subscription.Subscriber.create datareader
with com.rti.dds.subscription.Subscriber.DATAREADER QOS DEFAULT (p. 196) as the qos parameter.
Parameters:
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default
library (see com.rti.dds.subscription.Subscriber.set default library (p. 1494)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see
com.rti.dds.subscription.Subscriber.set default profile
(p. 1495)).
If the input profile cannot be found the method
com.rti.dds.infrastructure.RETCODE ERROR (p. 1356).
fails
with
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
See also:
com.rti.dds.subscription.Subscriber.DATAREADER QOS DEFAULT (p. 196)
com.rti.dds.subscription.Subscriber.create datareader with profile (p. 1486)
8.246.2.4
Creates a com.rti.dds.subscription.DataReader (p. 487) that will be attached and belong to the com.rti.dds.subscription.Subscriber (p. 1476).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1484
Class Documentation
construct
using
the
When a com.rti.dds.subscription.DataReader (p. 487) is created, only those transports already registered are available to the
com.rti.dds.subscription.DataReader (p. 487).
See Built-in Transport Plugins (p. 222) for details on when a builtin (p. 358) transport is
registered.
MT Safety:
UNSAFE. If com.rti.dds.subscription.Subscriber.DATAREADER QOS DEFAULT (p. 196) is used for the qos parameter, it is not safe to
create the datareader while another thread may be simultaneously calling
com.rti.dds.subscription.Subscriber.set default datareader qos
(p. 1481).
Precondition:
If subscriber is enabled, the topic (p. 359) must be enabled. If it is not,
this operation will fail and no com.rti.dds.subscription.DataReader
(p. 487) will be created.
The given com.rti.dds.topic.TopicDescription (p. 1561) must have
been created from the same participant as this subscriber. If it was created
from a different participant, this method will return NULL.
If qos is com.rti.dds.subscription.Subscriber.DATAREADER QOS USE TOPIC QOS (p. 197),
topic (p. 359) cannot be
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1485
of
the
1486
Class Documentation
8.246.2.5
1487
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default
library (see com.rti.dds.subscription.Subscriber.set default library (p. 1494)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see
com.rti.dds.subscription.Subscriber.set default profile
(p. 1495)).
listener <<in>>
( p. 279)
The
listener
of
the
com.rti.dds.subscription.DataReader (p. 487).
mask <<in>> ( p. 279). Changes of communication status to be invoked
on the listener. See com.rti.dds.infrastructure.StatusMask.
Returns:
A com.rti.dds.subscription.DataReader (p. 487) of a derived class
specific to the data-type associated with the com.rti.dds.topic.Topic
(p. 1545) or NULL if an error occurred.
See also:
com.rti.ndds.example.FooDataReader (p. 979)
Specifying QoS on entities (p. 100) for information on setting QoS before
entity creation
com.rti.dds.subscription.DataReaderQos (p. 536) for rules on consistency among QoS
com.rti.dds.subscription.Subscriber.DATAREADER QOS DEFAULT (p. 196)
com.rti.dds.subscription.Subscriber.DATAREADER QOS USE TOPIC QOS (p. 197)
com.rti.dds.subscription.Subscriber.create datareader (p. 1483)
com.rti.dds.subscription.Subscriber.get default datareader qos
(p. 1480)
com.rti.dds.topic.Topic.set qos (p. 1547)
com.rti.dds.subscription.Subscriber.copy from topic qos (p. 1499)
com.rti.dds.subscription.DataReader.set listener (p. 497)
8.246.2.6
1488
Class Documentation
8.246.2.7
1489
Therefore the suggested sequence when looking up builtin (p. 358) DataReaders
is:
Create a disabled com.rti.dds.domain.DomainParticipant (p. 654).
(optional) Modify builtin (p. 358) transport properties
Call
com.rti.dds.domain.DomainParticipant.get builtin subscriber() (p. 711).
Call lookup datareader() (p. 1488).
Call enable() (p. 935) on the DomainParticipant.
Parameters:
topic name <<in>>
( p. 279)
Name
of
the
com.rti.dds.topic.TopicDescription (p. 1561) that the retrieved
com.rti.dds.subscription.DataReader (p. 487) is attached to.
Cannot be NULL.
Returns:
A com.rti.dds.subscription.DataReader (p. 487) that belongs to
the com.rti.dds.subscription.Subscriber (p. 1476) attached to the
com.rti.dds.topic.TopicDescription (p. 1561) with topic name. If no
such com.rti.dds.subscription.DataReader (p. 487) exists, this operation returns NULL.
The returned com.rti.dds.subscription.DataReader (p. 487) may be enabled or disabled.
If more than one com.rti.dds.subscription.DataReader (p. 487) is attached
to the com.rti.dds.subscription.Subscriber (p. 1476), this operation may
return any one of them.
MT Safety:
UNSAFE.
It
is
not
safe
to
lookup
a
com.rti.dds.subscription.DataReader (p. 487) in one thread
while another thread is simultaneously creating or destroying that
com.rti.dds.subscription.DataReader (p. 487).
8.246.2.8
1490
Class Documentation
To
retrieve
the
samples
in
the
order
they
were
published
across
DataWriters
of
the
same
group
(com.rti.dds.publication.Publisher
(p. 1262)
configured
with
com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPolicyAccessScopeKi
PRESENTATION QOS), the application should read()/take() from each
DataReader (p. 487) in the same order as it appears in the output sequence. The application will move to the next DataReader (p. 487) when the
read()/take() operation fails with com.rti.dds.infrastructure.RETCODE NO DATA (p. 1360).
Parameters:
readers <<inout>> ( p. 279) a com.rti.dds.subscription.DataReaderSeq
(p. 555) object where the set or list of readers will be returned. Cannot
be NULL.
sample states <<in>> ( p. 279) the returned DataReader (p. 487)
must contain samples that have one of these sample states.
view states <<in>> ( p. 279) the returned DataReader (p. 487) must
contain samples that have one of these view states.
instance states <<in>> ( p. 279) the returned DataReader (p. 487)
must contain samples that have one of these instance states.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE NOT ENABLED
or
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1491
(p. 1361).
See also:
Access to data samples (p. 356)
com.rti.dds.subscription.Subscriber.begin access (p. 1497)
com.rti.dds.subscription.Subscriber.end access (p. 1498)
PRESENTATION (p. 90)
8.246.2.9
Retrieve all the DataReaders created from this Subscriber (p. 1476).
Parameters:
readers <<inout>> ( p. 279) Sequence where the DataReaders will be
added
Exceptions:
One of the Standard Return Codes (p. 108)
8.246.2.10
Invokes the operation com.rti.dds.subscription.DataReaderListener.on data available() (p. 520) on the com.rti.dds.subscription.DataReaderListener
(p. 518) objects attached to contained com.rti.dds.subscription.DataReader
(p. 487) entities with com.rti.dds.infrastructure.StatusKind.StatusKind.DATA AVAILABLE STATUS that is considered changed as described in Changes in
read communication status (p. 112).
This
operation
is
typically
invoked
from
the
com.rti.dds.subscription.SubscriberListener.on data on readers
(p. 1504)
operation
in
the
com.rti.dds.subscription.SubscriberListener (p. 1503).
That way
the com.rti.dds.subscription.SubscriberListener (p. 1503) can delegate
to the com.rti.dds.subscription.DataReaderListener (p. 518) objects the
handling of the data.
The operation will notify the data readers that have a sample state
of com.rti.dds.subscription.SampleStateKind.SampleStateKind.NOT READ SAMPLE STATE, view state of com.rti.dds.subscription.SampleStateKind.ANY SAMPLE STATE
(p. 203)
and
instance state
of
com.rti.dds.subscription.InstanceStateKind.ANY INSTANCE STATE (p. 205).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1492
Class Documentation
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
8.246.2.11
or
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1493
<<eXtension>> ( p. 278) Change the QoS of this subscriber using the input
XML QoS profile.
This operation modifies the QoS of the com.rti.dds.subscription.Subscriber
(p. 1476).
The
com.rti.dds.subscription.SubscriberQos.group data
(p. 1506),
com.rti.dds.subscription.SubscriberQos.partition
(p. 1506)
and
com.rti.dds.subscription.SubscriberQos.entity factory (p. 1506) can
be changed. The other policies are immutable.
Parameters:
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default
library (see com.rti.dds.subscription.Subscriber.set default library (p. 1494)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see
com.rti.dds.subscription.Subscriber.set default profile
(p. 1495)).
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE IMMUTABLE POLICY (p. 1358), or com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359).
See also:
com.rti.dds.subscription.SubscriberQos (p. 1505) for rules on consistency among QoS
Operations Allowed in Listener Callbacks (p. 1132)
8.246.2.13
1494
Class Documentation
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
get qos (abstract) (p. 933)
8.246.2.14
8.246.2.15
XML
library
for
This method specifies the library that will be used as the default the next time
a default library is needed during a call to one of this Subscribers operations.
Any API requiring a library name as a parameter can use null to refer to the
default library.
If the default library is not set, the com.rti.dds.subscription.Subscriber
(p. 1476) inherits the default from the com.rti.dds.domain.DomainParticipant
(p. 654) (see com.rti.dds.domain.DomainParticipant.set default library
(p. 707)).
Parameters:
library name <<in>> ( p. 279) Library name. If library name is null
any previous default is unset.
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.subscription.Subscriber.get default library (p. 1494)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1495
8.246.2.17
XML
profile
for
This method specifies the profile that will be used as the default the next time a
default Subscriber (p. 1476) profile is needed during a call to one of this Subscribers operations. When calling a com.rti.dds.subscription.Subscriber
(p. 1476) method that requires a profile name parameter, you can use NULL
to refer to the default profile. (This same information applies to setting a default
library.)
If the default profile is not set, the com.rti.dds.subscription.Subscriber
(p. 1476) inherits the default from the com.rti.dds.domain.DomainParticipant
(p. 654) (see com.rti.dds.domain.DomainParticipant.set default profile
(p. 708)).
This
method
does
not
set
the
default
QoS
for
com.rti.dds.subscription.DataReader (p. 487) objects created by this
com.rti.dds.subscription.Subscriber (p. 1476); for this functionality,
use
com.rti.dds.subscription.Subscriber.set default datareader qos with profile (p. 1482) (you may pass in NULL after having called
set default profile() (p. 1495)).
This method does not set the default QoS for newly created Subscribers;
for this functionality, use com.rti.dds.domain.DomainParticipant.set default subscriber qos with profile (p. 677).
Parameters:
library name <<in>> ( p. 279) The library name containing the profile.
profile name <<in>> ( p. 279) The profile name. If profile name is null
any previous default is unset.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1496
Class Documentation
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.subscription.Subscriber.get default profile (p. 1495)
com.rti.dds.subscription.Subscriber.get default profile library
(p. 1496)
8.246.2.18
<<eXtension>> ( p. 278) Gets the library where the default XML QoS profile
is contained for a com.rti.dds.subscription.Subscriber (p. 1476).
The
default
profile
library
is
automatically
com.rti.dds.subscription.Subscriber.set default profile
called.
set
when
(p. 1495)
is
8.246.2.19
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1497
(p. 1503)
of
the
See also:
get listener (abstract) (p. 934)
8.246.2.21
Indicates that the application is about to access the data samples in any of
the com.rti.dds.subscription.DataReader (p. 487) objects attached to the
com.rti.dds.subscription.Subscriber (p. 1476).
If
the
com.rti.dds.infrastructure.PresentationQosPolicy.access scope (p. 1225) of the com.rti.dds.subscription.Subscriber (p. 1476) is
com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPolicyAccessScopeKind.GROUP
PRESENTATION QOS or com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPolicy
OFFERED PRESENTATION QOS and com.rti.dds.infrastructure.PresentationQosPolicy.ordered access (p. 1225) is com.rti.dds.infrastructure.true, the application is required
to use this operation to access the samples in order across DataWriters of the same group (com.rti.dds.publication.Publisher (p. 1262)
with
com.rti.dds.infrastructure.PresentationQosPolicy.access scope
(p. 1225) set to com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPolicyAccessScope
PRESENTATION QOS).
In the above case, the operation begin access() (p. 1497) must
be called prior to calling any of the sample-accessing operations,
com.rti.dds.subscription.Subscriber.get datareaders
(p. 1489)
on
the
com.rti.dds.subscription.Subscriber
(p. 1476),
and
com.rti.ndds.example.FooDataReader.read
(p. 981),
com.rti.ndds.example.FooDataReader.take
(p. 983),
com.rti.ndds.example.FooDataReader.read w condition
(p. 990),
and com.rti.ndds.example.FooDataReader.take w condition (p. 991) on
any com.rti.dds.subscription.DataReader (p. 487).
Once the application has finished accessing the data samples, it must call
com.rti.dds.subscription.Subscriber.end access (p. 1498).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1498
Class Documentation
The application is not required to call begin access() (p. 1497) / end access() (p. 1498) to access the samples in order if the PRESENTATION (p. 90) policy in the com.rti.dds.publication.Publisher
(p. 1262) has com.rti.dds.infrastructure.PresentationQosPolicy.access scope
(p. 1225)
set
to
something
other
than
com.rti.dds.infrastructure.PresentationQosPolicyAccessScopeKind.PresentationQosPolicyAccessScopeKi
PRESENTATION QOS. In this case, calling begin access() (p. 1497) /
end access() (p. 1498) is not considered an error and has no effect.
Calls to begin access() (p. 1497) / end access() (p. 1498) may be nested and
must be balanced.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
or
See also:
Access to data samples (p. 356)
com.rti.dds.subscription.Subscriber.get datareaders (p. 1489)
PRESENTATION (p. 90)
8.246.2.23
Indicates that the application has finished accessing the data samples in
com.rti.dds.subscription.DataReader (p. 487) objects managed by the
com.rti.dds.subscription.Subscriber (p. 1476).
This operation must be used to close a corresponding begin access() (p. 1497).
This
call
must
close
a
previous
call
to
com.rti.dds.subscription.Subscriber.begin access()
otherwise
the
operation
will
fail
with
the
error
(p. 1497),
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
Exceptions:
One of
the
Standard
Return
Codes
(p. 108)
or
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET
(p. 1363)
or
com.rti.dds.infrastructure.RETCODE NOT ENABLED
(p. 1361).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1499
Copies the policies in the com.rti.dds.topic.TopicQos (p. 1566) to the corresponding policies in the com.rti.dds.subscription.DataReaderQos (p. 536).
Copies the policies in the com.rti.dds.topic.TopicQos (p. 1566) to the corresponding policies in the com.rti.dds.subscription.DataReaderQos (p. 536)
(replacing values in the com.rti.dds.subscription.DataReaderQos (p. 536),
if present).
This is a convenience operation most useful in combination with the operations com.rti.dds.subscription.Subscriber.get default datareader qos
(p. 1480) and com.rti.dds.topic.Topic.get qos (p. 1548). The operation
com.rti.dds.subscription.Subscriber.copy from topic qos (p. 1499) can
be used to merge the com.rti.dds.subscription.DataReader (p. 487) default
QoS policies with the corresponding ones on the com.rti.dds.topic.Topic
The resulting QoS can then be used to create a new
(p. 1545).
com.rti.dds.subscription.DataReader (p. 487), or set its QoS.
This
operation
does
not
check
the
resulting
com.rti.dds.subscription.DataReaderQos (p. 536) for consistency. This is
because the merged com.rti.dds.subscription.DataReaderQos (p. 536)
may not be the final one, as the application can still modify some policies
prior to applying the policies to the com.rti.dds.subscription.DataReader
(p. 487).
Parameters:
datareader qos <<inout>> ( p. 279) com.rti.dds.subscription.DataReaderQos
(p. 536) to be filled-up. Cannot be NULL.
topic qos <<in>> ( p. 279) com.rti.dds.topic.TopicQos (p. 1566)
to be merged with com.rti.dds.subscription.DataReaderQos
(p. 536). Cannot be NULL.
Exceptions:
One of the Standard Return Codes (p. 108)
8.246.2.25
1500
8.246.2.26
Class Documentation
void delete contained entities ()
Deletes all the entities that were created by means of the create operation on
the com.rti.dds.subscription.Subscriber (p. 1476).
Deletes all contained com.rti.dds.subscription.DataReader (p. 487)
objects.
This pattern is applied recursively.
In this manner, the
operation
com.rti.dds.subscription.Subscriber.delete contained entities
(p. 1500)
on
the
com.rti.dds.subscription.Subscriber
(p. 1476) will end up deleting all the entities recursively contained
in
the
com.rti.dds.subscription.Subscriber
(p. 1476),
that
is
also the com.rti.dds.subscription.QueryCondition (p. 1311) and
com.rti.dds.subscription.ReadCondition (p. 1313) objects belonging
to the contained com.rti.dds.subscription.DataReader (p. 487).
The operation will fail with com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363) if any of the contained
entities is in a state where it cannot be deleted.
This will occur,
for example, if a contained com.rti.dds.subscription.DataReader
(p. 487) cannot be deleted because the application has called
a
com.rti.ndds.example.FooDataReader.read
(p. 981)
or
com.rti.ndds.example.FooDataReader.take (p. 983) operation and has not
called the corresponding com.rti.ndds.example.FooDataReader.return loan (p. 1008) operation to return the loaned samples.
Once
com.rti.dds.subscription.Subscriber.delete contained entities (p. 1500) completes successfully, the application may delete the
com.rti.dds.subscription.Subscriber (p. 1476), knowing that it has no
contained com.rti.dds.subscription.DataReader (p. 487) objects.
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363)
8.246.2.27
<<experimental>>
( p. 278)
<<eXtension>>
( p. 278)
Retrieves a com.rti.dds.subscription.DataReader (p. 487) contained
within
the
com.rti.dds.subscription.Subscriber
(p. 1476)
the
com.rti.dds.subscription.DataReader (p. 487) entity name.
Every com.rti.dds.subscription.DataReader (p. 487) in the system has an
entity name which is configured and stored in the <<eXtension>> ( p. 278)
EntityName policy, ENTITY NAME (p. 74).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1501
of
the
Returns:
The first com.rti.dds.subscription.DataReader (p. 487) found with the
specified name or NULL if it is not found.
See also:
com.rti.dds.domain.DomainParticipant.lookup datareader by name exp (p. 734)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1502
Class Documentation
8.247
A listener adapter in the spirit of the Java AWT listener adapters. (The Adapter
provides empty implementations for the listener methods).
Inheritance diagram for SubscriberAdapter::
8.247.1
Detailed Description
A listener adapter in the spirit of the Java AWT listener adapters. (The Adapter
provides empty implementations for the listener methods).
Clients who do not wish to implement all listener methods can subclass this
class and override only the methods of interest.
8.247.2
8.247.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.248
1503
8.248.1
Detailed Description
1504
Class Documentation
8.248.2
8.248.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.249
1505
Public Attributes
final PresentationQosPolicy presentation
Presentation policy, PRESENTATION ( p. 90).
8.249.1
Detailed Description
1506
Class Documentation
If any of the above are not true, com.rti.dds.subscription.Subscriber.set qos (p. 1492) and com.rti.dds.subscription.Subscriber.set qos with profile (p. 1493) will fail with com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359)
8.249.2
8.249.2.1
<<eXtension>> ( p. 278) Exclusive area for the subscriber and all entities
that are created by the subscriber.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.250
1507
8.250.1
Detailed Description
8.250.2
8.250.2.1
Exceptions:
NullPointerException if the given collection is null
8.250.3
8.250.3.1
int getMaximum ()
Get the current maximum number of elements that can be stored in this sequence.
The maximum of the sequence represents the maximum number of elements that
the underlying buffer can hold. It does not represent the current number of
elements.
The maximum is a non-negative number. It is initialized when the sequence is
first created.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1508
Class Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.251
1509
Entry created when a com.rti.dds.subscription.DataReader (p. 487) is discovered in association with its Subscriber (p. 1476).
Inherits AbstractBuiltinTopicData.
Public Attributes
final BuiltinTopicKey t key
DCPS key to distinguish entries.
1510
Class Documentation
1511
8.251.1
Detailed Description
Entry created when a com.rti.dds.subscription.DataReader (p. 487) is discovered in association with its Subscriber (p. 1476).
Data
associated
with
the
built-in
topic
(p. 359)
builtin.SubscriptionBuiltinTopicDataTypeSupport.SUBSCRIPTION TOPIC NAME (p. 1518). It contains QoS policies and additional information
that apply to the remote com.rti.dds.subscription.DataReader (p. 487)
the related com.rti.dds.subscription.Subscriber (p. 1476).
See also:
builtin.SubscriptionBuiltinTopicDataTypeSupport.SUBSCRIPTION TOPIC NAME (p. 1518)
builtin.SubscriptionBuiltinTopicDataDataReader (p. 1516)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1512
Class Documentation
8.251.2
8.251.2.1
DCPS key of the participant to which the DataReader (p. 487) belongs.
8.251.2.3
1513
Policy of the Subscriber (p. 1476) to which the DataReader (p. 487) belongs.
8.251.2.15
Policy of the Subscriber (p. 1476) to which the DataReader (p. 487) belongs.
8.251.2.16
final TypeConsistencyEnforcementQosPolicy
type consistency
Policy of the Subscriber (p. 1476) to which the DataReader (p. 487) belongs.
8.251.2.19
1514
8.251.2.20
Class Documentation
final BuiltinTopicKey t subscriber key
<<eXtension>> ( p. 278) Custom unicast locators that the endpoint can specify. The default locators will be used if this is not specified.
8.251.2.23
8.251.2.26
1515
<<eXtension>> ( p. 278) The subscription (p. 353) name and role name.
This member contains the name and the role name of the discovered subscription (p. 353).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1516
8.252
Class Documentation
SubscriptionBuiltinTopicDataDataReader
Class Reference
8.252.1
Detailed Description
( p. 279)
com.rti.ndds.example.FooDataReader
See also:
builtin.SubscriptionBuiltinTopicData (p. 1509)
builtin.SubscriptionBuiltinTopicDataTypeSupport.SUBSCRIPTION TOPIC NAME (p. 1518)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.253
SubscriptionBuiltinTopicDataSeq
Reference
1517
Class
8.253.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1518
Class Documentation
8.254
SubscriptionBuiltinTopicDataTypeSupport
Class Reference
Instantiates
(p. 1509) > .
TypeSupport
<
builtin.SubscriptionBuiltinTopicData
8.254.1
Detailed Description
Instantiates
(p. 1509) > .
TypeSupport
<
builtin.SubscriptionBuiltinTopicData
Instantiates:
<<generic>>
(p. 1036)
( p. 279)
com.rti.ndds.example.FooTypeSupport
See also:
builtin.SubscriptionBuiltinTopicData (p. 1509)
8.254.2
8.254.2.1
of
builtin.SubscriptionBuiltinTopicDataDataReader
See also:
builtin.SubscriptionBuiltinTopicData (p. 1509)
builtin.SubscriptionBuiltinTopicDataDataReader (p. 1516)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.255
1519
Public Attributes
int total count
The
total
cumulative
number
of
times
the
concerned
com.rti.dds.subscription.DataReader ( p. 487) discovered a match
with a com.rti.dds.publication.DataWriter ( p. 557).
the
8.255.1
Detailed Description
1520
Class Documentation
8.255.2
8.255.2.1
The
total
cumulative
number
of
times
the
com.rti.dds.subscription.DataReader (p. 487) discovered
with a com.rti.dds.publication.DataWriter (p. 557).
concerned
match
This number increases whenever a new match is discovered. It does not change
when an existing match goes away.
8.255.2.2
The change in total count since the last time the listener was called or the status
was read.
8.255.2.3
The
current
number
of
writers
with
which
com.rti.dds.subscription.DataReader (p. 487) is matched.
the
This number increases when a new match is discovered and decreases when an
existing match goes away.
8.255.2.4
<<eXtension>> ( p. 278) The highest value that current count has reached
until now.
8.255.2.5
The change in current count since the last time the listener was called or the
status was read.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1521
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1522
8.256
Class Documentation
System exception.
Inheritance diagram for SystemException::
8.256.1
Detailed Description
System exception.
This class is based on a similar class in CORBA.
See also:
http://java.sun.com/javase/6/docs/api/org/omg/CORBA/SystemException.html
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.257
SystemResourceLimitsQosPolicy
Reference
1523
Class
Public Attributes
int max objects per thread
The maximum number of objects that can be stored per thread for a
com.rti.dds.domain.DomainParticipantFactory ( p. 742).
8.257.1
Detailed Description
8.257.2
Usage
Within a single process (or address space for some supported realtime operating systems), applications may create and use multiple
com.rti.dds.domain.DomainParticipant (p. 654) entities. This QoS policy
sets a parameter that places an effective upper bound on the maximum number of com.rti.dds.domain.DomainParticipant (p. 654) entities that can be
created in a single process/address space.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1524
Class Documentation
8.257.3
8.257.3.1
The maximum number of objects that can be stored per thread for a
com.rti.dds.domain.DomainParticipantFactory (p. 742).
Before increasing this value to allow you to create more participants, carefully
consider the application design that requires you to create so many participants. Remember: a com.rti.dds.domain.DomainParticipant (p. 654) is
a heavy-weight object. It spawns several threads and maintains its own discovery database (see DISCOVERY (p. 56)). Creating more participants than
RTI Connext strictly requires one per domain (p. 328) per process/address
space can adversely affect the performance and resource utilization of your
application.
[default] 1024; this value allows you to create about 10 or 11
com.rti.dds.domain.DomainParticipant (p. 654) entities.
[range] [1, 1 billion]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.258
1525
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1526
Class Documentation
static final TCKind TK UNION
union type.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.258.1
1527
Detailed Description
8.258.2
8.258.2.1
8.258.2.2
short type.
8.258.2.3
long type.
8.258.2.4
8.258.2.5
8.258.2.6
float type.
8.258.2.7
double type.
8.258.2.8
boolean type.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1528
8.258.2.9
Class Documentation
final TCKind TK CHAR [static]
char type.
8.258.2.10
octet type.
8.258.2.11
struct type.
8.258.2.12
union type.
8.258.2.13
enumerated type.
8.258.2.14
string type.
8.258.2.15
sequence type.
8.258.2.16
array type.
8.258.2.17
1529
value type.
8.258.2.24
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1530
Class Documentation
8.259
Public Attributes
int mask
Describes the type of thread.
int priority
Thread priority.
8.259.1
Detailed Description
8.259.2
8.259.2.1
int mask
1531
int priority
Thread priority.
Important: The interpretation of numeric thread priority values is different
based on whether the priority is specified in your application code or in an XML
QoS profile document. This is because QoS profile documents are intended to
be usable across programming languages.
[range] java.lang.Thread.MIN PRIORITY to MAX PRIORITY if set programmatically in Java code [range] Platform-dependent if set in a QoS profile document
8.259.2.3
8.259.2.4
8.259.2.5
Initial value:
ThreadSettingsCpuRotationKind.THREAD_SETTINGS_CPU_NO_ROTATION
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1532
Class Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.260
1533
ThreadSettingsCpuRotationKind
Reference
Class
THREAD -
Any thread controlled by this QoS can run on any listed processor, as determined by OS scheduling.
static
final
ThreadSettingsCpuRotationKind
SETTINGS CPU RR ROTATION
THREAD -
Threads controlled by this QoS will be assigned one processor from the list in
round-robin order.
8.260.1
Detailed Description
8.260.2
(p. 1531)
is
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1534
Class Documentation
8.260.3
8.260.3.1
final ThreadSettingsCpuRotationKind
THREAD SETTINGS CPU NO ROTATION [static]
Any thread controlled by this QoS can run on any listed processor, as determined
by OS scheduling.
8.260.3.2
final ThreadSettingsCpuRotationKind
THREAD SETTINGS CPU RR ROTATION [static]
Threads controlled by this QoS will be assigned one processor from the list in
round-robin order.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.261
1535
8.261.1
Detailed Description
8.261.2
8.261.2.1
Code executed within the thread may perform floating point operations.
8.261.2.2
1536
8.261.2.3
Class Documentation
final int THREAD SETTINGS REALTIME PRIORITY
[static]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.262
1537
boolean is invalid ()
boolean is zero ()
Check if time is zero.
Public Attributes
int sec
seconds
int nanosec
nanoseconds
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1538
8.262.1
Class Documentation
Detailed Description
8.262.2
8.262.2.1
Copy constructor.
Parameters:
time The instance to copy. It must not be null.
8.262.2.2
Constructor.
Parameters:
sec must be >=0
nanosec must be >=0
Exceptions:
RETCODE BAD PARAMETER ( p. 1355) if either time value is
negative
8.262.3
8.262.3.1
boolean is invalid ()
Returns:
com.rti.dds.infrastructure.true if the given time is not valid (i.e. is negative)
8.262.3.2
boolean is zero ()
1539
Returns:
com.rti.dds.infrastructure.true if the given time is equal to
com.rti.dds.infrastructure.Time t.ZERO or com.rti.dds.infrastructure.false
otherwise.
8.262.3.3
8.262.4
8.262.4.1
1540
8.262.4.4
Class Documentation
int sec
seconds
8.262.4.5
int nanosec
nanoseconds
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.263
1541
Filter that allows a com.rti.dds.subscription.DataReader (p. 487) to specify that it is interested only in (potentially) a subset of the values of the data.
Inheritance diagram for TimeBasedFilterQosPolicy::
Public Attributes
final Duration t minimum separation
The minimum separation duration between subequent samples.
8.263.1
Detailed Description
Filter that allows a com.rti.dds.subscription.DataReader (p. 487) to specify that it is interested only in (potentially) a subset of the values of the data.
The filter states that the com.rti.dds.subscription.DataReader (p. 487)
does not want to receive more than one value each minimum separation, regardless of how fast the changes occur.
Entity:
com.rti.dds.subscription.DataReader (p. 487)
Properties:
RxO (p. 101) = N/A
Changeable (p. 102) = YES (p. 102)
8.263.2
Usage
You can use this QoS policy to reduce the amount of data received
by
a
com.rti.dds.subscription.DataReader
(p. 487).
com.rti.dds.publication.DataWriter (p. 557) entities may send data
faster than needed by a com.rti.dds.subscription.DataReader (p. 487).
For example, a com.rti.dds.subscription.DataReader (p. 487) of sensor
data that is displayed to a human operator in a GUI application does not need
to receive data updates faster than a user can reasonably perceive changes in
data values. This is often measured in tenths (0.1) of a second up to several
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1542
Class Documentation
8.263.3
1543
Consistency
1544
Class Documentation
8.263.4
8.263.4.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.264
1545
<<interface>> ( p. 279) The most basic description of the data to be published and subscribed.
Inheritance diagram for Topic::
the
void set qos with profile (String library name, String profile name)
<<eXtension>> (p. 278) Change the QoS of this topic ( p. 359) using the
input XML QoS profile.
8.264.1
Detailed Description
<<interface>> ( p. 279) The most basic description of the data to be published and subscribed.
QoS:
com.rti.dds.topic.TopicQos (p. 1566)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1546
Class Documentation
Status:
com.rti.dds.infrastructure.StatusKind.StatusKind.INCONSISTENT com.rti.dds.topic.InconsistentTopicStatus
TOPIC STATUS,
(p. 1052)
Listener:
com.rti.dds.topic.TopicListener (p. 1564)
A com.rti.dds.topic.Topic (p. 1545) is identified by its name, which must
be unique in the whole domain (p. 328). In addition (by virtue of extending com.rti.dds.topic.TopicDescription (p. 1561)) it fully specifies the type
of the data that can be communicated when publishing or subscribing to the
com.rti.dds.topic.Topic (p. 1545).
com.rti.dds.topic.Topic
(p. 1545)
is
the
only
com.rti.dds.topic.TopicDescription (p. 1561) that can be used for publications and therefore associated with a com.rti.dds.publication.DataWriter
(p. 557).
The following operations may be called even if the com.rti.dds.topic.Topic
(p. 1545) is not enabled.
Other operations will fail with the value
com.rti.dds.infrastructure.RETCODE NOT ENABLED (p. 1361) if
called on a disabled com.rti.dds.topic.Topic (p. 1545):
All the base-class operations set qos() (p. 1547), set qos with profile()
(p. 1548), get qos() (p. 1548), set listener() (p. 1549), get listener()
(p. 1549) enable() (p. 935), get statuscondition() (p. 936) and get status changes() (p. 936)
get inconsistent topic status() (p. 1546)
See also:
Operations Allowed in Listener Callbacks (p. 1132)
8.264.2
8.264.2.1
1547
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
com.rti.dds.topic.InconsistentTopicStatus (p. 1052)
8.264.2.2
to
be
applied
to
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1548
8.264.2.3
Class Documentation
void set qos with profile (String library name, String
profile name)
<<eXtension>> ( p. 278) Change the QoS of this topic (p. 359) using the
input XML QoS profile.
(p. 1567)
The
com.rti.dds.topic.TopicQos.topic data
and
com.rti.dds.topic.TopicQos.deadline
(p. 1568),
com.rti.dds.topic.TopicQos.latency budget
(p. 1568),
(p. 1568)
and
com.rti.dds.topic.TopicQos.transport priority
com.rti.dds.topic.TopicQos.lifespan (p. 1568) can be changed.
The
other policies are immutable.
Parameters:
library name <<in>> ( p. 279) Library name containing the XML QoS
profile. If library name is null RTI Connext will use the default library (see com.rti.dds.domain.DomainParticipant.set default library (p. 707)).
profile name <<in>> ( p. 279) XML QoS Profile name.
If profile name is null RTI Connext will use the default profile (see com.rti.dds.domain.DomainParticipant.set default profile (p. 708)).
Exceptions:
One of
the
Standard
Return
Codes
(p. 108),
com.rti.dds.infrastructure.RETCODE IMMUTABLE POLICY (p. 1358) if immutable policy is changed, or
com.rti.dds.infrastructure.RETCODE INCONSISTENT POLICY (p. 1359) if policies are inconsistent
See also:
com.rti.dds.topic.TopicQos (p. 1566) for rules on consistency among
QoS
Operations Allowed in Listener Callbacks (p. 1132)
8.264.2.4
1549
Exceptions:
One of the Standard Return Codes (p. 108)
See also:
get qos (abstract) (p. 933)
8.264.2.5
8.264.2.6
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1550
Class Documentation
8.265
8.265.1
Detailed Description
8.265.2
8.265.2.1
( p. 279)
(p. 1545) that
Locally
triggers
the
created
listener
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1551
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1552
Class Documentation
8.266
Public Attributes
final BuiltinTopicKey t key
DCPS key to distinguish entries.
String name
Name of the com.rti.dds.topic.Topic ( p. 1545).
1553
8.266.1
Detailed Description
8.266.2
8.266.2.1
1554
8.266.2.2
Class Documentation
String name
8.266.2.3
8.266.2.4
8.266.2.5
8.266.2.6
8.266.2.7
8.266.2.8
8.266.2.9
8.266.2.10
1555
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1556
8.267
Class Documentation
TopicBuiltinTopicDataDataReader Class
Reference
8.267.1
Detailed Description
( p. 279)
com.rti.ndds.example.FooDataReader
See also:
builtin.TopicBuiltinTopicData (p. 1552)
builtin.TopicBuiltinTopicDataTypeSupport.TOPIC TOPIC NAME (p. 1558)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.268
1557
8.268.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1558
Class Documentation
8.269
TopicBuiltinTopicDataTypeSupport
Class Reference
<
builtin.TopicBuiltinTopicData
8.269.1
Detailed Description
<
builtin.TopicBuiltinTopicData
Instantiates:
<<generic>>
(p. 1036)
( p. 279)
com.rti.ndds.example.FooTypeSupport
See also:
builtin.TopicBuiltinTopicData (p. 1552)
8.269.2
8.269.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.270
1559
Public Attributes
final ByteSeq value
a sequence of octets
8.270.1
Detailed Description
8.270.2
Usage
The purpose of this QoS is to allow the application to attach additional information to the created com.rti.dds.topic.Topic (p. 1545) objects, so that when a
remote application discovers their existence, it can access that information and
use it for its own purposes. This extra data is not used by RTI Connext.
One possible use of this QoS is to attach security credentials or some other
information that can be used by the remote application to authenticate the
source.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1560
Class Documentation
8.270.3
8.270.3.1
a sequence of octets
[default] empty (zero-length)
[range] Octet sequence of length [0,max length]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.271
1561
8.271.1
Detailed Description
(p. 1665),
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1562
Class Documentation
8.271.2
8.271.2.1
correthis
Returns:
the type name.
The returned type name is valid until the
com.rti.dds.topic.TopicDescription (p. 1561) is deleted.
Postcondition:
The result is non-NULL.
See also:
com.rti.dds.topic.TypeSupport
com.rti.ndds.example.FooTypeSupport (p. 1036)
8.271.2.2
(p. 1665),
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1563
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1564
Class Documentation
8.272
8.272.1
Detailed Description
1565
8.272.2
8.272.2.1
( p. 279)
(p. 1545) that
Locally
triggers
the
created
listener
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1566
Class Documentation
8.273
Public Attributes
final TopicDataQosPolicy topic data
Topic ( p. 1545) data policy, TOPIC DATA ( p. 118).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1567
8.273.1
Detailed Description
8.273.2
8.273.2.1
1568
8.273.2.4
Class Documentation
final DeadlineQosPolicy deadline
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.274
1569
Classes
class Property t
Base structure that must be inherited by derived Transport ( p. 1569) Plugin
classes.
8.274.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1570
Class Documentation
8.275
Base structure that must be inherited by derived Transport (p. 1569) Plugin
classes.
Inheritance diagram for Transport.Property t::
Public Attributes
final int classid
The Transport-Plugin Class ID.
1571
A list of strings, each identifying a range of interface addresses or an interface name. If the list is non-empty (i.e., allow multicast interfaces list length > 0), allow the use of multicast only on these interfaces; otherwise allow the use of all the allowed interfaces.
static
final
int
NDDS TRANSPORT PROPERTY BIT BUFFER ALWAYS LOANED = 0x2
Specified zero-copy behavior of transport ( p. 376).
static final int NDDS TRANSPORT PROPERTY GATHER SEND BUFFER COUNT MIN = 3
Minimum number of gather-send buffers that must be supported by a Transport ( p. 1569) Plugin implementation.
8.275.1
Detailed Description
Base structure that must be inherited by derived Transport (p. 1569) Plugin
classes.
This structure contains properties that must be set before registration of any
transport (p. 376) plugin with RTI Connext. The RTI Connext core will configure itself to use the plugin based on the properties set within this structure.
A transport (p. 376) plugin may extend from this structure to add transportspecific properties.
WARNING: The transport (p. 376) properties of an instance of a Transport
(p. 1569) Plugin should be considered immutable after the plugin has been created. That means the values contained in the property structure stored as a
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1572
Class Documentation
part of the transport (p. 376) plugin itself should not be changed. If those
values are modified, the results are undefined.
8.275.2
8.275.2.1
8.275.2.2
8.275.2.3
final int NDDS TRANSPORT PROPERTY BIT BUFFER ALWAYS LOANED = 0x2
[static]
1573
final int NDDS TRANSPORT PROPERTY GATHER SEND BUFFER COUNT MIN = 3
[static]
Minimum number of gather-send buffers that must be supported by a Transport (p. 1569) Plugin implementation.
For the NDDS Transport Property t structure to be valid, the value of Transport.Property t.gather send buffer count max (p. 1574) must be greater
than or equal to this value.
8.275.2.5
8.275.2.6
Number of bits in a 16-byte address that are used by the transport (p. 376).
Should be between 0 and 128.
A transport (p. 376) plugin should define the range of addresses (starting from
0x0) that are meaningful to the plugin. It does this by setting the number of
bits of an IPv6 address that will be used to designate an address in the network
to which the transport (p. 376) plugin is connected.
For example (p. 375), for an address range of 0-255, the address bit count
should be set to 8. For the range of addresses used by IPv4 (4 bytes), it should
be set to 32.
See also:
Transport Class Attributes (p. 379)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1574
8.275.2.7
Class Documentation
final int properties bitmap
A bitmap that defines various properties of the transport (p. 376) to the RTI
Connext core.
Currently, the only property supported is whether or not the transport (p. 376)
plugin will always loan a buffer when RTI Connext tries to receive a message
using the plugin. This is in support of a zero-copy interface.
See also:
NDDS TRANSPORT PROPERTY BIT BUFFER ALWAYS LOANED (p. 1572)
8.275.2.8
Specifies the maximum number of buffers that RTI Connext can pass to the
send() method of a transport (p. 376) plugin.
The transport (p. 376) plugin send() API supports a gather-send concept,
where the send() call can take several discontiguous buffers, assemble and send
them in a single message. This enables RTI Connext to send a message from
parts obtained from different sources without first having to copy the parts into
a single contiguous buffer.
However, most transports that support a gather-send concept have an upper
limit on the number of buffers that can be gathered and sent. Setting this value
will prevent RTI Connext from trying to gather too many buffers into a send
call for the transport (p. 376) plugin.
RTI Connext requires all transport-plugin implementations to support a gathersend of least a minimum number of buffers. This minimum number is defined to
be NDDS TRANSPORT PROPERTY GATHER SEND BUFFER COUNT MIN (p. 1573).
If the underlying transport (p. 376) does not support a gather-send concept
directly, then the transport (p. 376) plugin itself must copy the separate buffers
passed into the send() call into a single buffer for sending or otherwise send each
buffer individually. However this is done by the transport (p. 376) plugin, the
receive rEA() call of the destination application should assemble, if needed,
all of the pieces of the message into a single buffer before the message is passed
to the RTI Connext layer.
8.275.2.9
The maximum size of a message in bytes that can be sent or received by the
transport (p. 376) plugin.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1575
If the maximum size of a message that can be sent by a transport (p. 376) plugin is user configurable, the transport (p. 376) plugin should provide a default
value for this property. In any case, this value must be set before the transport
(p. 376) plugin is registered, so that RTI Connext can properly use the plugin.
Note:
If this value is increased from the default for any of the
built-in transports, or if custom transports are used, then the
com.rti.dds.infrastructure.ReceiverPoolQosPolicy.buffer size
(p. 1320) on the com.rti.dds.domain.DomainParticipant (p. 654)
should also be changed.
8.275.2.10
8.275.2.11
1576
Class Documentation
UDP. Multicast output will be sent and may be received over the interfaces in
the list.
It is up to the transport (p. 376) plugin to interpret the list of strings passed
in.
For example (p. 375), the following are acceptable strings in IPv4 format:
192.168.1.1, 192.168.1., 192.168., 192., ether0
This property is not interpreted by the RTI Connext core; it is provided merely
as a convenient and standardized way to specify the interfaces for the benefit of
the transport (p. 376) plugin developer and user.
The caller (user) must manage the memory of the list. The memory may be
freed after the com.rti.dds.domain.DomainParticipant (p. 654) is deleted.
8.275.2.12
8.275.2.13
1577
This black list is applied after allow multicast interfaces list and filters
out interfaces that should not be used for multicast.
Multicast output will be sent and may be received over the interfaces in the
resulting list.
It is up to the transport (p. 376) plugin to interpret the list of strings passed
in.
This property is not interpreted by the RTI Connext core; it is provided merely
as a convenient and standardized way to specify the interfaces for the benefit of
the transport (p. 376) plugin developer and user.
The caller (user) must manage the memory of the list. The memory may be
freed after the com.rti.dds.domain.DomainParticipant (p. 654) is deleted.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1578
Class Documentation
8.276
com.rti.ndds.transport.UDPv4Transport
com.rti.ndds.transport.UDPv6Transport
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.276.1
1579
Detailed Description
8.276.2
8.276.2.1
com.rti.ndds.transport.UDPv4Transport
com.rti.ndds.transport.UDPv6Transport
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1580
Class Documentation
8.277
Public Attributes
int mask
Specifies the built-in transports that are registered automatically when the
com.rti.dds.domain.DomainParticipant ( p. 654) is enabled.
8.277.1
Detailed Description
8.277.2
8.277.2.1
int mask
1581
Specifies the built-in transports that are registered automatically when the
com.rti.dds.domain.DomainParticipant (p. 654) is enabled.
RTI Connext provides several built-in transports.
Only those that
are specified with this mask are registered automatically when the
com.rti.dds.domain.DomainParticipant (p. 654) is enabled.
[default]
com.rti.dds.infrastructure.TransportBuiltinKind.MASK DEFAULT (p. 121)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1582
Class Documentation
8.278
TransportMulticastMapping t
src)
(TransportMulticastMapping t
Copy constructor.
Public Attributes
String addresses
A string containing a comma-separated list of IP addresses
or IP address ranges to be used to receive multicast traffic for the entity with a topic ( p. 359) that matches the
com.rti.dds.infrastructure.TransportMulticastMapping t.topic expression ( p. 1584).
8.278.1
Detailed Description
1583
QoS:
com.rti.dds.infrastructure.TransportMulticastMappingQosPolicy
(p. 1587)
8.278.2
8.278.2.1
TransportMulticastMapping t ()
Constructor.
8.278.2.2
TransportMulticastMapping t
(TransportMulticastMapping t src)
Copy constructor.
8.278.3
8.278.3.1
String addresses
skipped.
For
example:
You may replace a consecutive number of zeroes with a double colon, but only
once within an address. For example: FF00::202:B3FF:FE1E:8329
[default] NULL
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1584
8.278.3.2
Class Documentation
String topic expression
A regular expression that will be used to map topic (p. 359) names to corresponding multicast receive addresses.
A topic (p. 359) name must match the expression before a corresponding address is assigned.
[default] NULL
8.278.3.3
Specifies a function that will define the mapping between a topic (p. 359) name
and a specific multicast address from a list of addresses.
This function is optional. If not specified, the middleware will use a hash function to perform the mapping.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.279
1585
TransportMulticastMappingFunction t
Class Reference
TransportMulticastMappingFunction t
tMappingFunction t src)
(TransportMulticas-
Copy constructor.
Public Attributes
String dll
Specifies a dynamic library that contains a mapping function.
8.279.1
Detailed Description
8.279.2
8.279.2.1
TransportMulticastMappingFunction t ()
Constructor.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1586
8.279.2.2
Class Documentation
TransportMulticastMappingFunction t
(TransportMulticastMappingFunction t src)
Copy constructor.
8.279.3
8.279.3.1
String dll
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.280
1587
TransportMulticastMappingQosPolicy
Class Reference
Specifies
the
multicast
address
on
which
a
com.rti.dds.subscription.DataReader (p. 487) wants to receive its
data. It can also specify a port number as well as a subset of the available (at
the com.rti.dds.domain.DomainParticipant (p. 654) level) transports with
which to receive the multicast data.
Inheritance diagram for TransportMulticastMappingQosPolicy::
Public Attributes
final TransportMulticastMappingSeq value
A sequence of multicast communications settings.
8.280.1
Detailed Description
Specifies
the
multicast
address
on
which
a
com.rti.dds.subscription.DataReader (p. 487) wants to receive its
data. It can also specify a port number as well as a subset of the available (at
the com.rti.dds.domain.DomainParticipant (p. 654) level) transports with
which to receive the multicast data.
By default, a com.rti.dds.publication.DataWriter (p. 557) will send individually addressed packets for each com.rti.dds.subscription.DataReader
(p. 487) that subscribes to the topic (p. 359) of the DataWriter this is known
as unicast delivery. Thus, as many copies of the data will be sent over the network as there are DataReaders for the data. The network bandwidth used by a
DataWriter will thus increase linearly with the number of DataReaders.
Multicast addressing (on UDP/IP transports) allows multiple DataReaders to receive the same network packet.
By using multicast, a
com.rti.dds.publication.DataWriter (p. 557) can send a single network
packet that is received by all subscribing applications. Thus the network bandwidth usage will be constant, independent of the number of DataReaders.
Coordinating the multicast address specified by DataReaders can help optimize
network bandwidth usage in systems where there are multiple DataReaders for
the same com.rti.dds.topic.Topic (p. 1545).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1588
Class Documentation
Entity:
com.rti.dds.subscription.DataReader (p. 487)
Properties:
RxO (p. 101) = N/A
Changeable (p. 102) = NO (p. 102)
8.280.2
8.280.2.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.281
TransportMulticastMappingSeq
Reference
1589
Class
8.281.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1590
Class Documentation
8.282
Specifies
the
multicast
address
on
which
a
com.rti.dds.subscription.DataReader (p. 487) wants to receive its
data. It can also specify a port number as well as a subset of the available (at
the com.rti.dds.domain.DomainParticipant (p. 654) level) transports with
which to receive the multicast data.
Inheritance diagram for TransportMulticastQosPolicy::
Public Attributes
final TransportMulticastSettingsSeq value
A sequence of multicast communications settings.
TransportMulticastQosPolicyKind kind
A value that specifies a way to determine how to obtain the multicast address.
8.282.1
Detailed Description
Specifies
the
multicast
address
on
which
a
com.rti.dds.subscription.DataReader (p. 487) wants to receive its
data. It can also specify a port number as well as a subset of the available (at
the com.rti.dds.domain.DomainParticipant (p. 654) level) transports with
which to receive the multicast data.
By default, a com.rti.dds.publication.DataWriter (p. 557) will send individually addressed packets for each com.rti.dds.subscription.DataReader
(p. 487) that subscribes to the topic (p. 359) of the DataWriter this is known
as unicast delivery. Thus, as many copies of the data will be sent over the network as there are DataReaders for the data. The network bandwidth used by a
DataWriter will thus increase linearly with the number of DataReaders.
Multicast addressing (on UDP/IP transports) allows multiple DataReaders to receive the same network packet.
By using multicast, a
com.rti.dds.publication.DataWriter (p. 557) can send a single network
packet that is received by all subscribing applications. Thus the network bandwidth usage will be constant, independent of the number of DataReaders.
Coordinating the multicast address specified by DataReaders can help optimize
network bandwidth usage in systems where there are multiple DataReaders for
the same com.rti.dds.topic.Topic (p. 1545).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1591
Entity:
com.rti.dds.subscription.DataReader (p. 487)
Properties:
RxO (p. 101) = N/A
Changeable (p. 102) = NO (p. 102)
8.282.2
8.282.2.1
TransportMulticastQosPolicyKind kind
A value that specifies a way to determine how to obtain the multicast address.
This field can have two values.
If it is set to com.rti.dds.infrastructure.TransportMulticastQosPolicyKind.AUTOMATIC TRANSPORT MULTICAST QOS
(p. 124)
and
the
com.rti.dds.infrastructure.TransportMulticastQosPolicy.value
(p. 1591) does not have any elements, then multicast will not be used.
If it is set to com.rti.dds.infrastructure.TransportMulticastQosPolicyKind.AUTOMATIC TRANSPORT MULTICAST QOS
(p. 124)
and
the
com.rti.dds.infrastructure.TransportMulticastQosPolicy.value
(p. 1591) has at least one element with a valid address, then that address
will be used.
If it is set to com.rti.dds.infrastructure.TransportMulticastQosPolicyKind.AUTOMATIC TRANSPORT MULTICAST QOS
(p. 124)
and
the
com.rti.dds.infrastructure.TransportMulticastQosPolicy.value
(p. 1591)
has
at
least
one
element
with
an
empty
address,
then
the
address
will
be
obtained
from
com.rti.dds.infrastructure.TransportMulticastMappingQosPolicy
(p. 1587).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1592
Class Documentation
If it is set to com.rti.dds.infrastructure.TransportMulticastQosPolicyKind.UNICAST ONLY TRANSPORT MULTICAST QOS (p. 124), then multicast
will not be used.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.283
1593
TransportMulticastQosPolicyKind Class
Reference
8.283.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1594
Class Documentation
8.284
TransportMulticastSettings t
src)
(TransportMulticastSettings t
Copy constructor.
Public Attributes
final StringSeq transports
A sequence of transport aliases that specifies the transports on which to receive multicast traffic for the entity.
8.284.1
Detailed Description
8.284.2
8.284.2.1
TransportMulticastSettings t ()
1595
TransportMulticastSettings t
(TransportMulticastSettings t src)
Copy constructor.
8.284.3
8.284.3.1
The multicast group address on which the entity can receive data.
Must must be an address in the proper format (see Address Format (p. 59)).
[default] NONE/INVALID. Required to specify a multicast group address to
join.
[range] A valid IPv4 or IPv6 multicast address.
See also:
Address Format (p. 59)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1596
8.284.3.3
Class Documentation
int receive port
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.285
TransportMulticastSettingsSeq
Reference
1597
Class
8.285.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1598
Class Documentation
8.286
This QoS policy allows the application to take advantage of transports that are
capable of sending messages with different priorities.
Inheritance diagram for TransportPriorityQosPolicy::
Public Attributes
int value
This policy is a hint to the infrastructure ( p. 334) as to how to set the
priority of the underlying transport used to send the data.
8.286.1
Detailed Description
This QoS policy allows the application to take advantage of transports that are
capable of sending messages with different priorities.
The Transport Priority QoS policy is optional and only supported
on certain OSs and transports.
It allows you to specify on a
per-com.rti.dds.publication.DataWriter basis that the data sent by that
com.rti.dds.publication.DataWriter (p. 557) is of a different priority.
The DDS specification does not indicate how a DDS implementation should
treat data of different priorities. It is often difficult or impossible for DDS implementations to treat data of higher priority differently than data of lower priority,
especially when data is being sent (delivered to a physical transport) directly
by the thread that called com.rti.ndds.example.FooDataWriter.write
(p. 1021). Also, many physical network transports themselves do not have a
end-user controllable level of data packet priority.
Entity:
com.rti.dds.publication.DataWriter
com.rti.dds.topic.Topic (p. 1545)
(p. 557),
Properties:
RxO (p. 101) = N/A
Changeable (p. 102) = YES (p. 102)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.286.2
1599
Usage
8.286.3
8.286.3.1
int value
This policy is a hint to the infrastructure (p. 334) as to how to set the priority
of the underlying transport used to send the data.
You may choose any value within the range of a 32-bit signed integer; higher
values indicate higher priority. However, any further interpretation of this policy
is specific to a particular transport and a particular DDS implementation. For
example, a particular transport is permitted to treat a range of priority values
as equivalent to one another.
[default] 0
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1600
Class Documentation
8.287
Public Attributes
final StringSeq enabled transports
A sequence of transport aliases that specifies the transport instances available
for use by the entity.
8.287.1
Detailed Description
(p. 487),
Properties:
RxO (p. 101) = N/A
Changeable (p. 102) = NO (p. 102)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.287.2
8.287.2.1
1601
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1602
Class Documentation
8.288
<<interface>> ( p. 279) The utility class used to configure RTI Connext pluggable transports.
static void set builtin transport property (DomainParticipant participant in, Transport.Property t builtin transport property in)
Set the properties used to create a builtin transport ( p. 376) plugin.
8.288.1
Detailed Description
<<interface>> ( p. 279) The utility class used to configure RTI Connext pluggable transports.
8.288.2
8.288.2.1
Get the properties used to create a builtin transport (p. 376) plugin.
Retrieves the properties that will be used to create a builtin transport (p. 376)
plugin.
Precondition:
The builtin transport property inout parameter must be of the type
specified by the builtin transport kind in.
Parameters:
participant in <<in>>
( p. 279)
A
valid
com.rti.dds.domain.DomainParticipant (p. 654)
non-null
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1603
Parameters:
builtin transport property inout <<inout>> ( p. 279) The storage
area where the retrieved property will be output. The specific type
required by the builtin transport kind in must be used.
Returns:
One
of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
See also:
com.rti.ndds.transport.TransportSupport.set builtin transport property() (p. 1603)
8.288.2.2
Set the properties used to create a builtin transport (p. 376) plugin.
Specifies the properties that will be used to create a builtin transport (p. 376)
plugin.
If the builtin transport (p. 376) is already registered when this operation is
called, these property changes will not have any effect. Builtin transport
(p. 376) properties should always be set before the transport (p. 376) is registered. See Built-in Transport Plugins (p. 222) for details on when a builtin
transport (p. 376) is registered.
Precondition:
A disabled com.rti.dds.domain.DomainParticipant (p. 654). The
builtin transport property inout parameter must be of the type specified by the builtin transport kind in.
Parameters:
participant in <<in>>
( p. 279)
A
com.rti.dds.domain.DomainParticipant
not been enabled.
valid
(p. 654)
non-null
that has
Parameters:
builtin transport property in <<inout>> ( p. 279) The new transport (p. 376) property that will be used to the create the builtin
transport (p. 376) plugin.
The specific type required by the
builtin transport kind in must be used.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1604
Class Documentation
Returns:
One
of
the
Standard
Return
Codes
(p. 108),
or
com.rti.dds.infrastructure.RETCODE PRECONDITION NOT MET (p. 1363).
See also:
com.rti.ndds.transport.TransportSupport.get builtin transport property() (p. 1602)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.289
1605
Public Attributes
final TransportUnicastSettingsSeq value
A sequence of unicast communication settings.
8.289.1
Detailed Description
(p. 654),
(p. 487),
Properties:
RxO (p. 101) = N/A
Changeable (p. 102) = NO (p. 102)
8.289.2
Usage
RTI Connext may send data to a variety of Entities, not just DataReaders. For
example, reliable DataWriters may receive ACK/NACK packets from reliable
DataReaders.
During discovery, each com.rti.dds.infrastructure.Entity (p. 931) announces
to remote applications a list of (up to 4) unicast addresses to which the remote
application should send data (either user data packets or reliable protocol metadata such as ACK/NACKs and heartbeats).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1606
Class Documentation
By default, the list of addresses is populated automatically with values obtained from the enabled transport plug-ins allowed to be used by the Entity (p. 931) (see com.rti.dds.infrastructure.TransportBuiltinQosPolicy
(p. 1580) and com.rti.dds.infrastructure.TransportSelectionQosPolicy
(p. 1600)). Also, the associated ports are automatically determined (see
com.rti.dds.infrastructure.RtpsWellKnownPorts t (p. 1390)).
Use this QoS policy to manually set the receive address list for an Entity
(p. 931). You may optionally set a port to use a non-default receive port as
well. Only the first 4 addresses will be used.
RTI Connext will create a receive thread for every unique port number that it
encounters (on a per transport basis).
For a com.rti.dds.domain.DomainParticipant (p. 654), this QoS policy sets the default list of addresses used by other applications to send
user data for local DataReaders.
For a com.rti.dds.subscription.DataReader (p. 487), if set, then other
applications will use the specified list of addresses to send user data
(and reliable protocol packets for reliable DataReaders). Otherwise,
if not set, the other applications will use the addresses set by the
com.rti.dds.domain.DomainParticipant (p. 654).
For a reliable com.rti.dds.publication.DataWriter (p. 557), if set,
then other applications will use the specified list of addresses to send reliable protocol packets (ACKS/NACKS) on the behalf of reliable DataReaders. Otherwise, if not set, the other applications will use the addresses set
by the com.rti.dds.domain.DomainParticipant (p. 654).
8.289.3
8.289.3.1
1607
(p. 776)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1608
Class Documentation
8.290
Public Attributes
final StringSeq transports
A sequence of transport aliases that specifies the unicast interfaces on which
to receive unicast traffic for the entity.
8.290.1
Detailed Description
8.290.2
8.290.2.1
TransportUnicastSettings t ()
Constructor.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1609
TransportUnicastSettings t (TransportUnicastSettings t
src)
Copy constructor.
8.290.3
8.290.3.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1610
8.291
Class Documentation
8.291.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.292
1611
The definition of a particular data type, which you can use to inspect the name,
members, and other properties of types generated with rtiddsgen (p. 298) or
to modify types you define yourself at runtime.
Inherits Serializable.
1612
Class Documentation
Returns
the
com.rti.dds.typecode.TypeCode
( p. 1611)
describes the concrete base type of the value type that
com.rti.dds.typecode.TypeCode ( p. 1611) object describes.
that
this
int member label (int member index, int label index) throws BadKind,Bounds
Return the label index-th label associated to the member index-th member.
1613
int add member (String name, int id, TypeCode tc, byte member flags)
throws BadKind,BadMemberName,BadMemberId
Add a new member to this com.rti.dds.typecode.TypeCode ( p. 1611).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1614
Class Documentation
synchronized int add member (String name, int id, TypeCode tc, byte member flags, short visibility, boolean is pointer,
short bits) throws BadKind,BadMemberName,BadMemberId,BAD PARAM,IllegalStateException
Add a new member to this com.rti.dds.typecode.TypeCode ( p. 1611).
to
this
enum
1615
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1616
8.292.1
Class Documentation
Detailed Description
The definition of a particular data type, which you can use to inspect the name,
members, and other properties of types generated with rtiddsgen (p. 298) or
to modify types you define yourself at runtime.
You create com.rti.dds.typecode.TypeCode (p. 1611) objects using the
com.rti.dds.typecode.TypeCodeFactory (p. 1647) singleton. Then you can
use the methods on this class to inspect and modify the data type definition.
This class is based on a similar class from CORBA.
MT Safety:
SAFE for read-only access, UNSAFE for modification.
Modifying a single com.rti.dds.typecode.TypeCode (p. 1611) object concurrently from multiple threads is unsafe.
Modifying a
com.rti.dds.typecode.TypeCode (p. 1611) from a single thread while
concurrently reading the state of that com.rti.dds.typecode.TypeCode
(p. 1611) from another thread is also unsafe. However, reading the state
of a com.rti.dds.typecode.TypeCode (p. 1611) concurrently from
multiple threads, without any modification, is safe.
See also:
http://java.sun.com/javase/6/docs/api/org/omg/CORBA/TypeCode.html
8.292.2
8.292.2.1
TCKind kind ()
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1617
1618
Class Documentation
struct MyType {
long member_1;
} //@Extensibility EXTENSIBLE_EXTENSIBILITY
XML example:
<struct name="MyType" extensibility="extensible">
<member name="member_1" type="long"/>
</struct>
XSD example:
<xsd:complexType name="MyType">
<xsd:sequence>
<xsd:element name="member_1" minOccurs="1" maxOccurs="1" type="xsd:int"/>
</xsd:sequence>
</xsd:complexType>
<!-- @struct true -->
<!-- @extensibility EXTENSIBLE_EXTENSIBILITY -->
For
TypeCodes
built
at
run-time
using
the
com.rti.dds.typecode.TypeCodeFactory (p. 1647) API, the extensibility
can be provided as a parameter of the following APIs:
com.rti.dds.typecode.TypeCodeFactory.create struct tc (p. 1651)
com.rti.dds.typecode.TypeCodeFactory.create value tc (p. 1652)
com.rti.dds.typecode.TypeCodeFactory.create union tc (p. 1654)
com.rti.dds.typecode.TypeCodeFactory.create enum tc (p. 1656)
See also:
com.rti.dds.typecode.ExtensibilityKind (p. 956)
MT Safety:
SAFE.
Returns:
The type code extensibility kind.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1619
The
code
generation
for
the
previous
type
will
ate
a
com.rti.dds.typecode.TypeCode
(p. 1611)
com.rti.dds.typecode.TCKind.TK VALUE (p. 1529) kind.
generwith
Parameters:
tc <<in>> ( p. 279) Type code that will be compared with this
com.rti.dds.typecode.TypeCode (p. 1611).
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BAD PARAM if tc is
null.
Returns:
com.rti.dds.infrastructure.true if the type codes are equal.
com.rti.dds.infrastructure.false.
Otherwise,
See also:
http://java.sun.com/javase/6/docs/api/org/omg/CORBA/TypeCode.html#equal(org.omg.CORBA.TypeCod
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1620
8.292.2.4
Class Documentation
boolean equals (Object tc)
Otherwise,
See also:
http://java.sun.com/javase/6/docs/api/java/lang/Object.html#equals(java.lang.Object
8.292.2.5
1621
struct MyBaseType {
long member_1;
};
struct MyDerivedType: MyBaseType {
long member_2;
};
The previous two types that are related to each other by an inheritance relationship are assignable.
For additional information on type assignability refer to the OMG Extensible
and Dynamic Topic Types for DDS Specification.
Parameters:
from <<in>> ( p. 279) From type code
Returns:
com.rti.dds.infrastructure.true if the this is assignable from from. Otherwise, com.rti.dds.infrastructure.false.
8.292.2.6
Returns the number of elements in the type described by this type code.
Length is:
The maximum length of the string for string type codes.
The maximum length of the sequence for sequence type codes.
The first dimension of the array for array type codes.
Precondition:
self kind is com.rti.dds.typecode.TCKind.TK ARRAY (p. 1528),
com.rti.dds.typecode.TCKind.TK SEQUENCE
(p. 1528),
com.rti.dds.typecode.TCKind.TK STRING
(p. 1528)
or
com.rti.dds.typecode.TCKind.TK WSTRING (p. 1529).
MT Safety:
SAFE.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BadKind if the method
is invoked on an inappropriate kind of TypeCode (p. 1611) object.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1622
Class Documentation
Returns:
The bound for strings and sequences, or the number of elements for arrays
if no errors.
8.292.2.7
8.292.2.8
1623
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BadKind if the method
is invoked on an inappropriate kind of TypeCode (p. 1611) object.
Returns:
com.rti.dds.infrastructure.true if an alias is a pointer to the aliased type.
Otherwise, com.rti.dds.infrastructure.false.
8.292.2.9
Returns a constant indicating the modifier of the value type that this
com.rti.dds.typecode.TypeCode (p. 1611) object describes.
Precondition:
self kind is com.rti.dds.typecode.TCKind.TK VALUE (p. 1529),
com.rti.dds.typecode.TCKind.TK STRUCT
(p. 1528),
or
com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529).
For com.rti.dds.typecode.TCKind.TK STRUCT (p. 1528), this method
always returns com.rti.dds.typecode.ValueModifier.VM NONE.
MT Safety:
SAFE.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BadKind if the method
is invoked on an inappropriate kind of TypeCode (p. 1611) object.
Returns:
One of the following type modifiers: com.rti.dds.typecode.ValueModifier.VM NONE,
com.rti.dds.typecode.ValueModifier.VM ABSTRACT,
com.rti.dds.typecode.ValueModifier.VM CUSTOM
or
com.rti.dds.typecode.ValueModifier.VM TRUNCATABLE.
8.292.2.10
Returns
the
com.rti.dds.typecode.TypeCode
(p. 1611)
that
describes the concrete base type of the value type that this
com.rti.dds.typecode.TypeCode (p. 1611) object describes.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1624
Class Documentation
Precondition:
self kind is com.rti.dds.typecode.TCKind.TK VALUE (p. 1529),
com.rti.dds.typecode.TCKind.TK STRUCT
(p. 1528),
or
com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529).
MT Safety:
SAFE.
For com.rti.dds.typecode.TCKind.TK STRUCT (p. 1528), this method
always returns com.rti.dds.typecode.TCKind.TK NULL (p. 1527).
The com.rti.dds.typecode.TypeCode (p. 1611) of structs inheriting from
other structs has a com.rti.dds.typecode.TCKind.TK VALUE (p. 1529)
kind.
For example:
struct MyStruct: MyBaseStruct {
long member_1;
};
The
code
generation
for
the
previous
type
will
ate
a
com.rti.dds.typecode.TypeCode
(p. 1611)
com.rti.dds.typecode.TCKind.TK VALUE (p. 1529) kind.
generwith
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BadKind if the method
is invoked on an inappropriate kind of TypeCode (p. 1611) object.
Returns:
com.rti.dds.typecode.TypeCode (p. 1611) that describes the concrete
base type or null if there is no a concrete base type.
8.292.2.11
Returns the com.rti.dds.typecode.TypeCode (p. 1611) object representing the type for the members of the object described by this
com.rti.dds.typecode.TypeCode (p. 1611) object.
For sequences and arrays, it returns the element type. For aliases, it returns
the original type.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1625
Precondition:
self kind is com.rti.dds.typecode.TCKind.TK ARRAY (p. 1528),
com.rti.dds.typecode.TCKind.TK SEQUENCE
(p. 1528)
or
com.rti.dds.typecode.TCKind.TK ALIAS (p. 1528).
MT Safety:
SAFE.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BadKind if the method
is invoked on an inappropriate kind of TypeCode (p. 1611) object.
Returns:
A com.rti.dds.typecode.TypeCode (p. 1611) object representing the element type for sequences and arrays, and the original type for aliases.
8.292.2.12
8.292.2.13
1626
Class Documentation
Precondition:
self kind is com.rti.dds.typecode.TCKind.TK ARRAY (p. 1528).
Dimension index in the interval [0,(dimensions count-1)].
MT Safety:
SAFE.
Parameters:
index <<in>> ( p. 279) Dimension index in the interval [0,(dimensions
count-1)].
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BadKind if the method
is invoked on an inappropriate kind of TypeCode (p. 1611) object.
com.rti.dds.infrastructure.ExceptionCode t.Bounds - if the index
parameter/s are out of range.
Returns:
Requested dimension if no errors.
8.292.2.14
8.292.2.15
1627
MT Safety:
SAFE.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BadKind if the method
is invoked on an inappropriate kind of TypeCode (p. 1611) object.
Returns:
The number of members constituting the type described by this
com.rti.dds.typecode.TypeCode (p. 1611) object if no errors.
8.292.2.16
Returns the name of a type code member identified by the given index.
The method member name can be invoked on structure, union, and enumeration
com.rti.dds.typecode.TypeCode (p. 1611) objects.
Precondition:
self
kind
is
com.rti.dds.typecode.TCKind.TK STRUCT
(p. 1528),
com.rti.dds.typecode.TCKind.TK UNION
(p. 1528),
com.rti.dds.typecode.TCKind.TK ENUM
(p. 1528),
com.rti.dds.typecode.TCKind.TK VALUE
(p. 1529)
or
com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529).
The index param must be in the interval [0,(member count-1)].
MT Safety:
SAFE.
Parameters:
index <<in>> ( p. 279) Member index in the interval [0,(member count1)].
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BadKind if the method
is invoked on an inappropriate kind of TypeCode (p. 1611) object.
com.rti.dds.infrastructure.ExceptionCode t.Bounds - if the index
parameter/s are out of range.
Returns:
Name of the member if no errors.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1628
8.292.2.17
Class Documentation
TypeCode member type (int index) throws
BadKind,Bounds
8.292.2.18
Returns the ID of a sparse type code member identified by the given index.
The method can be invoked on sparse com.rti.dds.typecode.TypeCode
(p. 1611) objects.
This function is an RTI Connext extension to the CORBA Type Code Specification.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1629
Precondition:
self kind is com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529).
Member index in the interval [0,(member count-1)].
MT Safety:
SAFE.
Parameters:
index <<in>> ( p. 279) Member index in the interval [0,(member count1)].
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BadKind if the method
is invoked on an inappropriate kind of TypeCode (p. 1611) object.
com.rti.dds.infrastructure.ExceptionCode t.Bounds - if the index
parameter/s are out of range.
Returns:
ID of the member if no errors.
8.292.2.19
1630
Class Documentation
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BadKind if the method
is invoked on an inappropriate kind of TypeCode (p. 1611) object.
com.rti.dds.infrastructure.ExceptionCode t.Bounds - if the index
parameter/s are out of range.
Returns:
Number of labels if no errors.
8.292.2.20
Return the label index-th label associated to the member index-th member.
This method has been modified for RTI Connext from the CORBA Type code
Specification.
Example:
case 1: Label index 0
case 2: Label index 1
short short member;
The method can be invoked on union com.rti.dds.typecode.TypeCode
(p. 1611) objects.
Precondition:
self kind is com.rti.dds.typecode.TCKind.TK UNION (p. 1528).
The member index param must be in the interval [0,(member count-1)].
The label index param must be in the interval [0,(member labels count-1)].
MT Safety:
SAFE.
Parameters:
member index <<in>> ( p. 279) Member index.
label index <<in>> ( p. 279) Label index.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BadKind if the method
is invoked on an inappropriate kind of TypeCode (p. 1611) object.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1631
8.292.2.21
8.292.2.22
1632
Class Documentation
Precondition:
self
kind
is
com.rti.dds.typecode.TCKind.TK STRUCT
(p. 1528),
com.rti.dds.typecode.TCKind.TK VALUE
(p. 1529)
or com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529).
The index param must be in the interval [0,(member count-1)].
MT Safety:
SAFE.
Parameters:
index <<in>> ( p. 279) Member index in the interval [0,(member count1)].
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BadKind if the method
is invoked on an inappropriate kind of TypeCode (p. 1611) object.
com.rti.dds.infrastructure.ExceptionCode t.Bounds - if the index
parameter/s are out of range.
Returns:
com.rti.dds.infrastructure.true if the member is a key.
com.rti.dds.infrastructure.false.
8.292.2.23
Otherwise,
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1633
8.292.2.25
Otherwise,
1634
Class Documentation
Precondition:
self kind is com.rti.dds.typecode.TCKind.TK STRUCT (p. 1528) or
com.rti.dds.typecode.TCKind.TK VALUE (p. 1529).
The index param must be in the interval [0,(member count-1)].
MT Safety:
SAFE.
Parameters:
index <<in>> ( p. 279) Member index in the interval [0,(member count1)].
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BadKind if the method
is invoked on an inappropriate kind of TypeCode (p. 1611) object.
com.rti.dds.infrastructure.ExceptionCode t.Bounds - if the index
parameter/s are out of range.
Returns:
com.rti.dds.infrastructure.true if the member is a bitfield.
com.rti.dds.infrastructure.false.
8.292.2.26
Otherwise,
1635
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BadKind if the method
is invoked on an inappropriate kind of TypeCode (p. 1611) object.
com.rti.dds.infrastructure.ExceptionCode t.Bounds - if the index
parameter/s are out of range.
Returns:
The
number
of
bits
of
the
com.rti.dds.typecode.TypeCode.NOT BITFIELD
the member is not a bitfield.
8.292.2.27
bitfield
(p. 1646)
or
if
Returns the constant that indicates the visibility of the index-th member.
Precondition:
self kind is com.rti.dds.typecode.TCKind.TK VALUE (p. 1529),
com.rti.dds.typecode.TCKind.TK STRUCT
(p. 1528)
or
com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529).
The index param must be in the interval [0,(member count-1)].
MT Safety:
SAFE.
For com.rti.dds.typecode.TCKind.TK STRUCT (p. 1528), this method
always returns com.rti.dds.typecode.Visibility.PUBLIC MEMBER.
Parameters:
index <<in>> ( p. 279) Member index in the interval [0,(member count1)].
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BadKind if the method
is invoked on an inappropriate kind of TypeCode (p. 1611) object.
com.rti.dds.infrastructure.ExceptionCode t.Bounds - if the index
parameter/s are out of range.
Returns:
One of the following constants: com.rti.dds.typecode.Visibility.PRIVATE MEMBER or com.rti.dds.typecode.Visibility.PUBLIC MEMBER.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1636
8.292.2.28
Class Documentation
TypeCode discriminator type () throws BadKind
only
on
union
Precondition:
self kind is com.rti.dds.typecode.TCKind.TK UNION (p. 1528).
MT Safety:
SAFE.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BadKind if the method
is invoked on an inappropriate kind of TypeCode (p. 1611) object.
Returns:
com.rti.dds.typecode.TypeCode (p. 1611) object describing the discriminator of the union type if no errors.
8.292.2.29
only
on
union
Precondition:
self kind is com.rti.dds.typecode.TCKind.TK UNION (p. 1528)
MT Safety:
SAFE.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BadKind if the method
is invoked on an inappropriate kind of TypeCode (p. 1611) object.
Returns:
The index of the default member, or -1 if there is no default member.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1637
8.292.2.31
8.292.2.32
8.292.2.33
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1638
8.292.2.34
Class Documentation
int add member (String name, int id,
TypeCode tc, byte member flags) throws
BadKind,BadMemberName,BadMemberId
MT Safety:
UNSAFE.
Parameters:
name <<in>> ( p. 279) The name of the new member.
id <<in>>
( p. 279)
The
ID
of
the
new
member.
This should only be specified for members of kind
com.rti.dds.typecode.TCKind.TK SPARSE
(p. 1529)
and
com.rti.dds.typecode.TCKind.TK UNION (p. 1528); otherwise,
it should be com.rti.dds.typecode.TypeCode.MEMBER ID INVALID (p. 1644).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1639
tc <<in>> ( p. 279) The type of the new member. You can get or
create this com.rti.dds.typecode.TypeCode (p. 1611) with the
com.rti.dds.typecode.TypeCodeFactory (p. 1647).
member flags <<in>> ( p. 279) Indicates whether the member is part
of the key and whether it is required.
Returns:
The zero-based index of the new member relative to any other members
that previously existed.
See also:
com.rti.dds.typecode.TypeCode.add member (p. 1638)
com.rti.dds.typecode.TypeCode.add member to enum (p. 1640)
com.rti.dds.typecode.TypeCodeFactory (p. 1647)
com.rti.dds.typecode.TypeCode.NONKEY MEMBER (p. 1644)
com.rti.dds.typecode.TypeCode.KEY MEMBER (p. 1645)
com.rti.dds.typecode.TypeCode.NONKEY REQUIRED MEMBER (p. 1646)
8.292.2.35
1640
Class Documentation
tc <<in>> ( p. 279) The type of the new member. You can get or
create this com.rti.dds.typecode.TypeCode (p. 1611) with the
com.rti.dds.typecode.TypeCodeFactory (p. 1647).
member flags <<in>> ( p. 279) Indicates whether the member is part
of the key and whether it is required.
visibility <<in>> ( p. 279) Whether the new member is public or
private.
Non-public members are only relevant for types of
kind com.rti.dds.typecode.TCKind.TK VALUE (p. 1529) and
com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529). Possible
values include:
com.rti.dds.typecode.Visibility.PRIVATE MEMBER
com.rti.dds.typecode.Visibility.PUBLIC MEMBER
is pointer <<in>> ( p. 279) Whether the data member, in its deserialized form, should be stored by pointer as opposed to by value.
bits <<in>> ( p. 279) The number of bits, if this new member is a bit field,
or com.rti.dds.typecode.TypeCode.NOT BITFIELD (p. 1646).
Returns:
The zero-based index of the new member relative to any other members
that previously existed.
See also:
com.rti.dds.typecode.TypeCode.add member (p. 1638)
com.rti.dds.typecode.TypeCodeFactory (p. 1647)
com.rti.dds.typecode.TypeCode.NONKEY MEMBER (p. 1644)
com.rti.dds.typecode.TypeCode.KEY MEMBER (p. 1645)
com.rti.dds.typecode.TypeCode.NONKEY REQUIRED MEMBER (p. 1646)
8.292.2.36
Add
a
new
enumerated
constant
com.rti.dds.typecode.TypeCode (p. 1611).
to
this
enum
1641
MT Safety:
UNSAFE.
Parameters:
name <<in>> ( p. 279) The name of the new member. This string must
be unique within this type and must not be null.
ordinal <<in>> ( p. 279) The relative order of the new member in this
enum or a custom integer value. The value must be unique within the
type.
Returns:
The zero-based index of the new member relative to any other members
that previously existed.
See also:
com.rti.dds.typecode.TypeCode.add member (p. 1638)
com.rti.dds.typecode.TypeCode.add member (p. 1638)
com.rti.dds.typecode.TypeCodeFactory (p. 1647)
8.292.2.37
8.292.3
8.292.3.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1642
8.292.3.2
Class Documentation
final TypeCode TC SHORT [static]
8.292.3.3
8.292.3.4
8.292.3.5
8.292.3.6
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1643
8.292.3.8
8.292.3.9
8.292.3.10
8.292.3.11
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1644
8.292.3.12
Class Documentation
final TypeCode TC ULONGLONG [static]
8.292.3.13
8.292.3.14
8.292.3.15
8.292.3.17
A flag indicating that a type member is optional and not part of the key.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1645
8.292.3.19
A flag indicating that a type member is part of the key for that type, and
therefore required.
If a type is used with the Dynamic Data (p. 175) facility, all
com.rti.dds.dynamicdata.DynamicData (p. 817) samples of the type
will contain a value for all com.rti.dds.typecode.TypeCode.KEY MEMBER (p. 1645) fields, even if the type is a sparse value type
(i.e.
of kind com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529)).
If you do not set a value of the member explicitly (see, for example,
com.rti.dds.dynamicdata.DynamicData.DynamicData.set int), the middleware
will assume a default zero value: numeric values will be set to zero; strings
and sequences will be of zero length.
See also:
com.rti.dds.typecode.TypeCode.NONKEY REQUIRED MEMBER (p. 1646)
com.rti.dds.typecode.TypeCode.NONKEY MEMBER (p. 1644)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1646
Class Documentation
8.292.3.20
A flag indicating that a type member is not part of the key but is nevertheless
required.
This is the most common kind of member.
If a type is used with the Dynamic Data (p. 175) facility, all
com.rti.dds.dynamicdata.DynamicData (p. 817) samples of the type will
contain a value for all com.rti.dds.typecode.TypeCode.NONKEY REQUIRED MEMBER (p. 1646) fields, even if the type is a sparse value
type (i.e. of kind com.rti.dds.typecode.TCKind.TK SPARSE (p. 1529)).
If you do not set a value of the member explicitly (see, for example,
com.rti.dds.dynamicdata.DynamicData.DynamicData.set int), the middleware
will assume a default zero value: numeric values will be set to zero; strings
and sequences will be of zero length.
See also:
com.rti.dds.typecode.TypeCode.KEY MEMBER (p. 1645)
com.rti.dds.typecode.TypeCode.NONKEY MEMBER (p. 1644)
com.rti.dds.typecode.TypeCode.KEY MEMBER (p. 1645)
com.rti.dds.typecode.TypeCode.add member (p. 1638)
com.rti.dds.typecode.TypeCode.add member (p. 1638)
com.rti.dds.typecode.TypeCode.is member key (p. 1631)
com.rti.dds.typecode.TypeCode.is member required (p. 1632)
com.rti.dds.typecode.StructMember.is key (p. 1475)
com.rti.dds.typecode.ValueMember.is key (p. 1698)
8.292.3.21
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.293
1647
A singleton factory for creating, copying, and deleting data type definitions
dynamically.
TypeCode create struct tc (String name, StructMember[ ] members) throws BAD PARAM
Constructs a com.rti.dds.typecode.TCKind.TK STRUCT ( p. 1528)
com.rti.dds.typecode.TypeCode ( p. 1611).
( p. 1529)
TypeCode create value tc (String name, short type modifier, TypeCode concrete base, ValueMember[ ] members) throws BAD PARAM
Constructs a com.rti.dds.typecode.TCKind.TK VALUE
com.rti.dds.typecode.TypeCode ( p. 1611).
( p. 1529)
TypeCode create sparse tc (String name, short type modifier, TypeCode concrete base) throws BAD PARAM
Constructs a com.rti.dds.typecode.TCKind.TK SPARSE
com.rti.dds.typecode.TypeCode ( p. 1611).
( p. 1529)
TypeCode create union tc (String name, ExtensibilityKind extensibility kind, TypeCode discriminator type, int default index,
UnionMember[ ] members) throws BAD PARAM
Constructs a com.rti.dds.typecode.TCKind.TK UNION
com.rti.dds.typecode.TypeCode ( p. 1611).
( p. 1528)
TypeCode create union tc (String name, TypeCode discriminator type, int default index, UnionMember[ ] members) throws BAD PARAM
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1648
Class Documentation
Constructs a com.rti.dds.typecode.TCKind.TK UNION
com.rti.dds.typecode.TypeCode ( p. 1611).
( p. 1528)
TypeCode create enum tc (String name, ExtensibilityKind extensibility kind, EnumMember[ ] members) throws BAD PARAM
Constructs a com.rti.dds.typecode.TCKind.TK ENUM
com.rti.dds.typecode.TypeCode ( p. 1611).
( p. 1528)
( p. 1528)
TypeCode create array tc (int[ ] dimensions, TypeCode element type) throws BAD PARAM
Constructs a com.rti.dds.typecode.TCKind.TK ARRAY
com.rti.dds.typecode.TypeCode ( p. 1611).
( p. 1528)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1649
8.293.1
Detailed Description
A singleton factory for creating, copying, and deleting data type definitions
dynamically.
You can access the singleton with the com.rti.dds.typecode.TypeCodeFactory.get instance (p. 1650) method.
If you want to publish and subscribe to data of types that are not known to
you at system design time, this class will be your starting point. After creating
a data type definition with this class, you will modify that definition using the
com.rti.dds.typecode.TypeCode (p. 1611) class and then register it with the
Dynamic Data (p. 175) API.
The methods of this class fall into several categories:
Getting definitions for primitive types:
Type definitions for primitive types (e.g. integers, floating point values, etc.)
are pre-defined; your application only needs to get them, not create them.
com.rti.dds.typecode.TypeCodeFactory.get primitive tc (p. 1660)
Creating definitions for strings, arrays, and sequences:
Type definitions for strings, arrays, and sequences (i.e. variables-size lists) must
be created as you need them, because the type definition includes the maximum
length of those containers.
com.rti.dds.typecode.TypeCodeFactory.create string tc (p. 1657)
com.rti.dds.typecode.TypeCodeFactory.create wstring tc
(p. 1658)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1650
Class Documentation
com.rti.dds.typecode.TypeCodeFactory.create array tc (p. 1659)
com.rti.dds.typecode.TypeCodeFactory.TypeCodeFactory.create array tc
com.rti.dds.typecode.TypeCodeFactory.create sequence tc
(p. 1658)
8.293.2
8.293.2.1
1651
Returns:
The com.rti.dds.typecode.TypeCodeFactory (p. 1647) instance if no
errors. Otherwise, null.
8.293.2.2
(p. 1528)
Parameters:
name <<in>> ( p. 279) Name of the struct type. Cannot be null.
extensibility kind <<in>> ( p. 279) Type extensibility.
members <<in>>
( p. 279)
Initial
members
of
the
structure.
This
list
may
be
empty
(that
is,
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.size()
may return zero). If the list is not empty, the elements must describe
valid struct members. (For example, the names must be unique
within the type.) This argument may be null.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BAD PARAM.
Illegal parameter value.
Returns:
A newly-created com.rti.dds.typecode.TypeCode (p. 1611) object describing a struct.
8.293.2.3
(p. 1528)
Parameters:
name <<in>> ( p. 279) Name of the struct type. Cannot be null.
members <<in>>
structure.
( p. 279)
This
list
Initial
may
be
members
empty
of
(that
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
the
is,
1652
Class Documentation
com.rti.dds.infrastructure.com.rti.dds.util.Sequence.Sequence.size()
may return zero). If the list is not empty, the elements must describe
valid struct members. (For example, the names must be unique
within the type.) This argument may be null.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BAD PARAM.
Illegal parameter value.
Returns:
A newly-created com.rti.dds.typecode.TypeCode (p. 1611) object describing a struct.
8.293.2.4
(p. 1529)
Parameters:
name <<in>> ( p. 279) Name of the value type. Cannot be null.
extensibility kind <<in>> ( p. 279) Type extensibility.
type modifier <<in>> ( p. 279) One of the value type modifier
constants:
com.rti.dds.typecode.ValueModifier.VM NONE,
com.rti.dds.typecode.ValueModifier.VM CUSTOM,
com.rti.dds.typecode.ValueModifier.VM ABSTRACT
or
com.rti.dds.typecode.ValueModifier.VM TRUNCATABLE.
concrete base <<in>> ( p. 279) com.rti.dds.typecode.TypeCode
(p. 1611) object describing the concrete valuetype base. It may be
null if the valuetype does not have a concrete base.
members <<in>> ( p. 279) Initial members of the value type. This list
may be empty. If the list is not empty, the elements must describe
valid value type members. (For example, the names must be unique
within the type.) This argument may be null.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BAD PARAM.
Illegal parameter value.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1653
Returns:
A newly-created com.rti.dds.typecode.TypeCode (p. 1611) object describing a value.
8.293.2.5
(p. 1529)
Parameters:
name <<in>> ( p. 279) Name of the value type. Cannot be null.
type modifier <<in>> ( p. 279) One of the value type modifier
constants:
com.rti.dds.typecode.ValueModifier.VM NONE,
com.rti.dds.typecode.ValueModifier.VM CUSTOM,
com.rti.dds.typecode.ValueModifier.VM ABSTRACT
or
com.rti.dds.typecode.ValueModifier.VM TRUNCATABLE.
concrete base <<in>> ( p. 279) com.rti.dds.typecode.TypeCode
(p. 1611) object describing the concrete valuetype base. It may be
null if the valuetype does not have a concrete base.
members <<in>> ( p. 279) Initial members of the value type. This list
may be empty. If the list is not empty, the elements must describe
valid value type members. (For example, the names must be unique
within the type.) This argument may be null.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BAD PARAM.
Illegal parameter value.
Returns:
A newly-created com.rti.dds.typecode.TypeCode (p. 1611) object describing a value.
8.293.2.6
(p. 1529)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1654
Class Documentation
A sparse value type is similar to other value types but with one major difference:
not all members need to be present in every sample.
It is not possible to generate code for sparse value types; they must be created
at runtime using these APIs. You will interact with samples of sparse types
using the Dynamic Data (p. 175) APIs.
Parameters:
name <<in>> ( p. 279) Name of the value type. Cannot be null.
type modifier <<in>> ( p. 279) One of the value type modifier
constants:
com.rti.dds.typecode.ValueModifier.VM NONE,
com.rti.dds.typecode.ValueModifier.VM CUSTOM,
or
com.rti.dds.typecode.ValueModifier.VM ABSTRACT
com.rti.dds.typecode.ValueModifier.VM TRUNCATABLE.
concrete base <<in>> ( p. 279) com.rti.dds.typecode.TypeCode
(p. 1611) object describing the concrete valuetype base. It may be
null if the valuetype does not have a concrete base.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BAD PARAM.
Illegal parameter value.
Returns:
A newly-created com.rti.dds.typecode.TypeCode (p. 1611) object describing a value.
8.293.2.7
(p. 1528)
Parameters:
name <<in>> ( p. 279) Name of the union type. Cannot be null.
extensibility kind <<in>> ( p. 279) Type extensibility.
discriminator type <<in>> ( p. 279) Discriminator Type Code. Cannot be null.
default index <<in>> ( p. 279) Index of the default member, or -1 if
there is no default member.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1655
members <<in>> ( p. 279) Initial members of the union. This list may
be empty. If the list is not empty, the elements must describe valid
struct members. (For example, the names must be unique within the
type.) This argument may be null.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BAD PARAM.
Illegal parameter value.
Returns:
A newly-created com.rti.dds.typecode.TypeCode (p. 1611) object describing a union.
8.293.2.8
(p. 1528)
Parameters:
name <<in>> ( p. 279) Name of the union type. Cannot be null.
discriminator type <<in>> ( p. 279) Discriminator Type Code. Cannot be null.
default index <<in>> ( p. 279) Index of the default member, or -1 if
there is no default member.
members <<in>> ( p. 279) Initial members of the union. This list may
be empty. If the list is not empty, the elements must describe valid
struct members. (For example, the names must be unique within the
type.) This argument may be null.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BAD PARAM.
Illegal parameter value.
Returns:
A newly-created com.rti.dds.typecode.TypeCode (p. 1611) object describing a union.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1656
8.293.2.9
Class Documentation
TypeCode create enum tc (String name,
ExtensibilityKind extensibility kind, EnumMember[ ]
members) throws BAD PARAM
(p. 1528)
Parameters:
name <<in>> ( p. 279) Name of the enum type. Cannot be null.
extensibility kind <<in>> ( p. 279) Type extensibility.
members <<in>> ( p. 279) Initial members of the enumeration. All
members must have non-null names, and both names and ordinal values must be unique within the type. Note that it is also possible to
add members later with com.rti.dds.typecode.TypeCode.add member to enum (p. 1640). This argument may be null.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BAD PARAM.
Illegal parameter value.
Returns:
A newly-created com.rti.dds.typecode.TypeCode (p. 1611) object describing an enumeration.
8.293.2.10
(p. 1528)
Parameters:
name <<in>> ( p. 279) Name of the enum type. Cannot be null.
members <<in>> ( p. 279) Initial members of the enumeration. All
members must have non-null names, and both names and ordinal values must be unique within the type. Note that it is also possible to
add members later with com.rti.dds.typecode.TypeCode.add member to enum (p. 1640). This argument may be null.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BAD PARAM.
Illegal parameter value.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1657
Returns:
A newly-created com.rti.dds.typecode.TypeCode (p. 1611) object describing an enumeration.
8.293.2.11
8.293.2.12
(p. 1528)
Parameters:
bound <<in>> ( p. 279) Maximum length of the string. It cannot be
negative.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BAD PARAM.
Illegal parameter value.
Returns:
A newly-created com.rti.dds.typecode.TypeCode (p. 1611) object describing a string.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1658
8.293.2.13
Class Documentation
TypeCode create wstring tc (int bound) throws
BAD PARAM
8.293.2.14
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1659
(p. 1528)
Parameters:
dimensions <<in>> ( p. 279) Dimensions of the array. Each dimension
has to be greater than 0.
element type <<in>> ( p. 279) com.rti.dds.typecode.TypeCode
(p. 1611) describing the array elements. Cannot be null.
Exceptions:
com.rti.dds.infrastructure.ExceptionCode t.BAD PARAM.
Illegal parameter value.
Returns:
A newly-created com.rti.dds.typecode.TypeCode (p. 1611) object describing a sequence.
8.293.2.16
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1660
8.293.2.17
Class Documentation
TypeCode clone tc (TypeCode tc)
8.293.2.18
8.293.2.19
LONG
ULONG
SHORT
USHORT
FLOAT
DOUBLE
LONGDOUBLE
OCTET
BOOLEAN
CHAR
WCHAR
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.294
TypeConsistencyEnforcementQosPolicy
Class Reference
Defines the rules for determining whether the type used to publish a given topic
(p. 359) is consistent with that used to subscribe to it.
Inheritance diagram for TypeConsistencyEnforcementQosPolicy::
Public Attributes
TypeConsistencyKind kind
Type consistency kind.
8.294.1
Detailed Description
Defines the rules for determining whether the type used to publish a given topic
(p. 359) is consistent with that used to subscribe to it.
This
policy
defines
a
type
consistency
kind,
which
allows applications to select from among a set of predetermined policies.
The following consistency kinds are specified:
com.rti.dds.infrastructure.TypeConsistencyKind.TypeConsistencyKind.DISALLOW TYPE COERCION and com.rti.dds.infrastructure.TypeConsistencyKind.TypeConsistencyKind.ALLOW TYPE COERCION.
The default enforcement kind is com.rti.dds.infrastructure.TypeConsistencyKind.TypeConsistencyKind.ALLOW TYPE COERCION. However, when the middleware is introspecting the
built-in topic (p. 359) data declaration of a remote DataReader in order
to determine whether it can match with a local DataWriter, if it observes
that no TypeConsistencyEnforcementQosPolicy (p. 1661) value is
provided (as would be the case when communicating with a Service implementation not in conformance with this specification), it assumes a kind of
com.rti.dds.infrastructure.TypeConsistencyKind.TypeConsistencyKind.DISALLOW TYPE COERCION.
Entity:
com.rti.dds.subscription.DataReader (p. 487)
Properties:
RxO (p. 101) = N/A
Changeable (p. 102) = UNTIL ENABLE (p. 102)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1662
Class Documentation
8.294.2
8.294.2.1
TypeConsistencyKind kind
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.295
1663
TypeConsistencyKind
DISALLOW TYPE -
The DataWriter and the DataReader must support the same data type in
order for them to communicate.
8.295.1
Detailed Description
8.295.2
8.295.2.1
The DataWriter and the DataReader must support the same data type in order
for them to communicate.
This is the degree of type consistency enforcement required by the OMG DDS
Specification prior to the OMG Extensible and Dynamic Topic Types for
DDS Specification.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1664
8.295.2.2
Class Documentation
final TypeConsistencyKind ALLOW TYPE COERCION
[static]
The DataWriter and the DataReader need not support the same data type in
order for them to communicate as long as the DataReaders type is assignable
from the DataWriters type.
For example, the following two extensible types will be assignable to each other
since MyDerivedType contains all the members of MyBaseType (member 1)
plus some additional elements (member 2).
struct MyBaseType {
long member_1;
};
struct MyDerivedType: MyBaseType {
long member_2;
};
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.296
1665
<<interface>> ( p. 279) An abstract marker interface that has to be specialized for each concrete user data type that will be used by the application.
Inheritance diagram for TypeSupport::
8.296.1
Detailed Description
<<interface>> ( p. 279) An abstract marker interface that has to be specialized for each concrete user data type that will be used by the application.
The implementation provides an automatic means to generate a type-specific
class, com.rti.ndds.example.FooTypeSupport (p. 1036), from a description
of the type in IDL.
A com.rti.dds.topic.TypeSupport (p. 1665) must be registered using
the com.rti.ndds.example.FooTypeSupport.register type (p. 1037) operation on this type-specific class before it can be used to create
com.rti.dds.topic.Topic (p. 1545) objects.
See also:
com.rti.ndds.example.FooTypeSupport (p. 1036)
rtiddsgen (p. 298)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1666
Class Documentation
8.297
Public Attributes
transient Object plugin data
Value to pass into the type plugins de-/serialization function.
8.297.1
Detailed Description
(p. 487),
Properties:
RxO (p. 101) = N/A
Changeable (p. 102) = YES (p. 102)
8.297.2
Usage
1667
You can modify the rtiddsgen-generated code so that the de/serialization routines act differently depending on the information passed in via the object
pointer. (The generated serialization and deserialization code does not use the
pointer.)
This functionality can be used to
com.rti.dds.publication.DataWriter
com.rti.dds.subscription.DataReader
ized on a per DataWriter and DataReader
It can also be used to dynamically change how serialization (or for a less common case, deserialization) occurs. For example, a data type could represent
a table, including the names of the rows and columns. However, since the
row/column names of an instance of the table (a Topic) dont change, they
only need to be sent once. The information passed in through the TypeSupport QoS policy could be used to signal the serialization routine to send the
row/column names the first time a com.rti.dds.publication.DataWriter
(p. 557) calls com.rti.ndds.example.FooDataWriter.write (p. 1021), and
then never again.
8.297.3
8.297.3.1
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1668
Class Documentation
8.298
Classes
class Property t
Configurable IPv4/UDP Transport-Plugin properties.
8.298.1
Detailed Description
1669
8.298.2
The following table lists the predefined property names that can be
set in com.rti.dds.infrastructure.PropertyQosPolicy (p. 1236) of a
com.rti.dds.domain.DomainParticipant (p. 654) to configure the builtin
UDPv4 transport (p. 376) plugin.
See also:
com.rti.ndds.transport.TransportSupport.set builtin transport property() (p. 1603)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1670
Class Documentation
8.298.3
8.298.3.1
Value for com.rti.ndds.transport.UDPv4Transport.Property t.send blocking (p. 1677) to specify non-blocking sockets.
8.298.3.2
[default] Value for com.rti.ndds.transport.UDPv4Transport.Property t.send blocking (p. 1677) to specify blocking sockets.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1671
Description
See
dds.transport.UDPv4.builtin.parent.address
com.rti.ndds.transport.Transport.Property
bit count
t.address bit count
(p. 1573)
See
dds.transport.UDPv4.builtin.parent.properties
com.rti.ndds.transport.Transport.Property
bitmap
t.properties bitmap
(p. 1574)
See
dds.transport.UDPv4.builtin.parent.gather
com.rti.ndds.transport.Transport.Property
send buffer count max
t.gather send buffer count max
(p. 1574)
See
com.rti.ndds.transport.Transport.Property
dds.transport.UDPv4.builtin.parent.message
size max
t.message size max
(p. 1574)
See
com.rti.ndds.transport.Transport.Property
dds.transport.UDPv4.builtin.parent.allow
interfaces
t.allow interfaces list (p. 1575)
and
com.rti.ndds.transport.Transport.Property t.allow interfaces list length.
Interfaces should be specified as
comma-separated strings, with each
comma delimiting an interface. For
example (p. 375), 127.0.0.1,eth0
See
dds.transport.UDPv4.builtin.parent.deny
com.rti.ndds.transport.Transport.Property
interfaces
t.deny interfaces list (p. 1575)
and
com.rti.ndds.transport.Transport.Property t.deny interfaces list length.
Interfaces should be specified as
comma-separated strings, with each
comma delimiting an interface. For
example (p. 375): 127.0.0.1,eth0
See
dds.transport.UDPv4.builtin.parent.allow
com.rti.ndds.transport.Transport.Property
multicast interfaces
t.allow multicast interfaces list
(p. 1576) and
com.rti.ndds.transport.Transport.Property t.allow multicast interfaces list length.
Interfaces should be specified as
comma-separated strings, with each
Generated on Mon Aug 13 09:02:20 2012 for comma
RTI Connext
Java API
by DoxygenFor
delimiting
an interface.
example (p. 375): 127.0.0.1,eth0
See
dds.transport.UDPv4.builtin.parent.deny
com.rti.ndds.transport.Transport.Property
multicast interfaces
t.deny multicast interfaces list
(p. 1576) and
com.rti.ndds.transport.Transport.Property t.deny multicast interfaces list -
1672
Class Documentation
8.299
Public Attributes
int send socket buffer size
Size in bytes of the send buffer of a socket used for sending.
1673
Prevents the transport ( p. 376) plugin from using a network interface that
is not reported as RUNNING by the operating system.
8.299.1
Detailed Description
1674
Class Documentation
8.299.2
8.299.2.1
Property t ()
8.299.3
8.299.3.1
8.299.3.2
to
8.299.3.3
to
Allows the transport (p. 376) plugin to use unicast for sending and receiving.
This value turns unicast UDP on (if set to 1) or off (if set to 0) for this plugin.
By default, it will be turned on (1). Also by default, the plugin will use all
the allowed network interfaces that it finds up and running when the plugin is
instanced.
8.299.3.4
Allows the transport (p. 376) plugin to use multicast for sending and receiving.
This value turns multicast UDP on (if set to 1) or off (if set to 0) for this
plugin. By default, it will be turned on (1) for those platforms that support
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1675
multicast. Also by default, the plugin will use the all network interfaces allowed
for multicast that it finds up and running when the plugin is instanced.
8.299.3.5
Value for the time-to-live parameter for all multicast sends using this plugin.
This value is used to set the TTL of multicast packets sent by this transport
(p. 376) plugin.
See also:
NDDS TRANSPORT UDPV4 MULTICAST TTL DEFAULT
8.299.3.6
Prevents the transport (p. 376) plugin from putting multicast packets onto the
loopback interface.
If multicast loopback is disabled (this value is set to 1), then when sending multicast packets, RTI Connext will not put a copy of the packets on the loopback
interface. This prevents applications on the same node (including itself) from
receiving those packets.
This value is set to 0 by default, meaning multicast loopback is enabled .
Disabling multicast loopback (setting this value to 1) may result in minor performance gains when using multicast.
[NOTE: Windows CE systems do not support multicast loopback. This field is
ignored for Windows CE targets.]
8.299.3.7
Prevents the transport (p. 376) plugin from using the IP loopback interface.
Currently three values are allowed:
0: Forces local traffic to be sent over loopback, even if a more efficient
transport (p. 376) (such as shared memory) is installed (in which case
traffic will be sent over both transports).
1: Disables local traffic via this plugin. The IP loopback interface is
not used, even if no NICs are discovered. This is useful when you want
applications running on the same node to use a more efficient plugin (such
as shared memory) instead of the IP loopback.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1676
Class Documentation
-1: Automatic. Lets RTI Connext decide between the above two choices.
Prevents the transport (p. 376) plugin from using a network interface that is
not reported as UP by the operating system.
The transport (p. 376) checks the flags reported by the operating system for
each network interface upon initialization. An interface which is not reported as
UP will not be used. This property allows the user to configure the transport
(p. 376) to start using even the interfaces which were not reported as UP.
Two values are allowed:
0: Allow the use of interfaces which were not reported as UP.
1: Do not use interfaces which were not reported as UP.
[default] 1
8.299.3.9
Prevents the transport (p. 376) plugin from using a network interface that is
not reported as RUNNING by the operating system.
The transport (p. 376) checks the flags reported by the operating system for
each network interface upon initialization. An interface which is not reported as
UP will not be used. This property allows the same check to be extended to the
IFF RUNNING flag implemented by some operating systems. The RUNNING
flag is defined to mean that all resources are allocated, and may be off if there
is no link detected, e.g., the network cable is unplugged.
Two values are allowed:
0: Do not check the RUNNING flag when enumerating interfaces, just
make sure the interface is UP.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1677
1: Check the flag when enumerating interfaces, and ignore those that are
not reported as RUNNING. This can be used on some operating systems
to cause the transport (p. 376) to ignore interfaces that are enabled but
not connected to the network.
[default] 0 (i.e., do not check RUNNING flag)
8.299.3.10
Prevents the transport (p. 376) plugin from doing a zero copy.
By default, this plugin will use the zero copy on OSs that offer it. While this is
good for performance, it may sometime tax the OS resources in a manner that
cannot be overcome by the application.
The best example (p. 375) is if the hardware/device driver lends the buffer to
the application itself. If the application does not return the loaned buffers soon
enough, the node may error or malfunction. In case you cannot reconfigure the
H/W, device driver, or the OS to allow the zero copy feature to work for your
application, you may have no choice but to turn off zero copy use.
By default this is set to 0, so RTI Connext will use the zero-copy API if offered
by the OS.
8.299.3.11
Sockets
1678
Class Documentation
8.299.3.13
8.299.3.14
1679
Specifies the period in milliseconds to query for changes in the state of all the
interfaces.
The value of this property is ignored if ignore non interfaces is 1. If ignore nonup interfaces is 0 then the UDPv4 transport (p. 376) creates a new thread
to query the status of the interfaces. This property specifies the polling period
in milliseconds for performing this query.
[default] 500 milliseconds.
8.299.3.16
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1680
Class Documentation
8.300
Classes
class Property t
Configurable IPv6/UDP Transport-Plugin properties.
8.300.1
Detailed Description
1681
8.300.2
The following table lists the predefined property names that can be
set in com.rti.dds.infrastructure.PropertyQosPolicy (p. 1236) of a
com.rti.dds.domain.DomainParticipant (p. 654) to configure the builtin
UDPv6 transport (p. 376) plugin.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1682
Class Documentation
See also:
com.rti.ndds.transport.TransportSupport.set builtin transport property() (p. 1603)
8.300.3
8.300.3.1
Value for com.rti.ndds.transport.UDPv6Transport.Property t.send blocking (p. 1688) to specify non-blocking sockets.
8.300.3.2
[default] Value for com.rti.ndds.transport.UDPv6Transport.Property t.send blocking (p. 1688) to specify blocking sockets.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1683
Description
See
dds.transport.UDPv6.builtin.parent.address
com.rti.ndds.transport.Transport.Property
bit count
t.address bit count
(p. 1573)
See
dds.transport.UDPv6.builtin.parent.properties
com.rti.ndds.transport.Transport.Property
bitmap
t.properties bitmap
(p. 1574)
See
dds.transport.UDPv6.builtin.parent.gather
com.rti.ndds.transport.Transport.Property
send buffer count max
t.gather send buffer count max
(p. 1574)
See
com.rti.ndds.transport.Transport.Property
dds.transport.UDPv6.builtin.parent.message
size max
t.message size max
(p. 1574)
See
com.rti.ndds.transport.Transport.Property
dds.transport.UDPv6.builtin.parent.allow
interfaces
t.allow interfaces list (p. 1575)
and
com.rti.ndds.transport.Transport.Property t.allow interfaces list length.
Interfaces should be specified as
comma-separated strings, with each
comma delimiting an interface. For
example (p. 375): 127.0.0.1,eth0
See
dds.transport.UDPv6.builtin.parent.deny
com.rti.ndds.transport.Transport.Property
interfaces
t.deny interfaces list (p. 1575)
and
com.rti.ndds.transport.Transport.Property t.deny interfaces list length.
Interfaces should be specified as
comma-separated strings, with each
comma delimiting an interface. For
example (p. 375): 127.0.0.1,eth0
See
dds.transport.UDPv6.builtin.parent.allow
com.rti.ndds.transport.Transport.Property
multicast interfaces
t.allow multicast interfaces list
(p. 1576) and
com.rti.ndds.transport.Transport.Property t.allow multicast interfaces list length.
Interfaces should be specified as
comma-separated strings, with each
Generated on Mon Aug 13 09:02:20 2012 for comma
RTI Connext
Java API
by DoxygenFor
delimiting
an interface.
example (p. 375): 127.0.0.1,eth0
See
dds.transport.UDPv6.builtin.parent.deny
com.rti.ndds.transport.Transport.Property
multicast interfaces
t.deny multicast interfaces list
(p. 1576) and
com.rti.ndds.transport.Transport.Property t.deny multicast interfaces list -
1684
Class Documentation
8.301
Public Attributes
int send socket buffer size
Size in bytes of the send buffer of a socket used for sending.
1685
8.301.1
Detailed Description
8.301.2
8.301.2.1
Property t ()
8.301.3
8.301.3.1
1686
Class Documentation
to
to
Allows the transport (p. 376) plugin to use unicast for sending and receiving.
This value turns unicast UDP on (if set to 1) or off (if set to 0) for this plugin.
By default, it will be turned on (1). Also by default, the plugin will use all
the allowed network interfaces that it finds up and running when the plugin is
instanced.
8.301.3.4
Allows the transport (p. 376) plugin to use multicast for sending and receiving.
This value turns multicast UDP on (if set to 1) or off (if set to 0) for this
plugin. By default, it will be turned on (1) for those platforms that support
multicast. Also by default, the plugin will use the all network interfaces allowed
for multicast that it finds up and running when the plugin is instanced.
8.301.3.5
Value for the time-to-live parameter for all multicast sends using this plugin.
This is used to set the TTL of multicast packets sent by this transport (p. 376)
plugin.
See also:
NDDS TRANSPORT UDPV6 MULTICAST TTL DEFAULT
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1687
Prevents the transport (p. 376) plugin from putting multicast packets onto the
loopback interface.
If multicast loopback is disabled (this value is set to 1), then when sending multicast packets, RTI Connext will not put a copy of the packets on the loopback
interface. This prevents applications on the same node (including itself) from
receiving those packets.
This value is set to 0 by default, meaning multicast loopback is enabled .
Disabling multicast loopback (setting this value to 1) may result in minor performance gains when using multicast.
8.301.3.7
Prevents the transport (p. 376) plugin from using the IP loopback interface.
Currently three values are allowed:
0: Forces local traffic to be sent over loopback, even if a more efficient
transport (p. 376) (such as shared memory) is installed (in which case
traffic will be sent over both transports).
1: Disables local traffic via this plugin. Do not use the IP loopback
interface even if no NICs are discovered. This is useful when you want
applications running on the same node to use a more efficient transport
(p. 376) (such as shared memory) instead of the IP loopback.
-1: Automatic. Lets RTI Connext decide between the above two choices.
The current automatic (-1) RTI Connext policy is as follows.
If a shared memory transport (p. 376) plugin is available for local traffic,
the effective value is 1 (i.e., disable UDPv6 local traffic).
Otherwise, the effective value is 0 (i.e., use UDPv6 for local traffic also).
[default] -1 Automatic RTI Connext policy based on availability of the shared
memory transport (p. 376).
8.301.3.8
Prevents the transport (p. 376) plugin from using a network interface that is
not reported as RUNNING by the operating system.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1688
Class Documentation
The transport (p. 376) checks the flags reported by the operating system for
each network interface upon initialization. An interface which is not reported as
UP will not be used. This property allows the same check to be extended to the
IFF RUNNING flag implemented by some operating systems. The RUNNING
flag is defined to mean that all resources are allocated, and may be off if there
is no link detected, e.g., the network cable is unplugged.
Two values are allowed:
0: Do not check the RUNNING flag when enumerating interfaces, just
make sure interface is UP.
1: Check flag when enumerating interfaces and ignore those that are not
reported as RUNNING. This can be used on some operating systems to
cause the transport (p. 376) to ignore interfaces that are enabled but not
connected to the network.
[default] 0 (i.e., do not check RUNNING flag)
8.301.3.9
Prevents the transport (p. 376) plugin from doing zero copy.
By default, this plugin will use the zero copy on OSs that offer it. While this is
good for performance, it may sometimes tax the OS resources in a manner that
cannot be overcome by the application.
The best example (p. 375) is if the hardware/device driver lends the buffer
to the application itself. If the application does not return the loaned buffers
soon enough, the node may error or malfunction. If you cannot reconfigure the
H/W, device driver, or the OS to allow the zero copy feature to work for your
application, you may have no choice but to turn off the use of zero copy.
By default this is set to 0, so RTI Connext will use the zero copy API if offered
by the OS.
8.301.3.10
Sockets
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1689
Specify whether UDPv6 transport (p. 376) will process IPv4 addresses.
Set this to 1 to turn on processing of IPv4 addresses. Note that this may make
it incompatible with use of the UDPv4 transport (p. 376) within the same
domain participant.
[default] 0.
8.301.3.12
1690
Class Documentation
t.transport priority mapping high (p. 1690) to define the mapping from
DDS transport (p. 376) priority to the IPv6 TCLASS field. Defines the low
value of the output range for scaling.
Note that IPv6 TCLASS is generally an 8-bit value.
[default] 0.
8.301.3.14
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.302
1691
Inherited by TypeId.
8.302.1
Detailed Description
Base class for all generated unions. The purpose of this class is to recognize a
nddsgen generated union using reflection
Author:
jaime c
Version:
Revision
1.2
Date
2006/09/24 08:28:59
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1692
Class Documentation
8.303
Public Attributes
String name
The name of the union member.
boolean is pointer
Indicates whether the union member is a pointer or not.
int[ ] labels
The labels of the union member.
TypeCode type
The type of the union member.
8.303.1
Detailed Description
8.303.2
8.303.2.1
Constructs a UnionMember (p. 1692) object initialized with the given values.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.303.3
8.303.3.1
String name
1693
boolean is pointer
int [ ] labels
TypeCode type
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1694
Class Documentation
8.304
Public Attributes
final ByteSeq value
a sequence of octets
8.304.1
Detailed Description
(p. 654),
(p. 487),
Properties:
RxO (p. 101) = NO;
Changeable (p. 102) = YES (p. 102)
See also:
com.rti.dds.domain.DomainParticipant.get builtin subscriber
(p. 711)
8.304.2
Usage
The purpose of this QoS is to allow the application to attach additional information to the created com.rti.dds.infrastructure.Entity (p. 931) objects,
so that when a remote application discovers their existence, it can access that
information and use it for its own purposes. This information is not used by
RTI Connext.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1695
One possible use of this QoS is to attach security credentials or some other
information that can be used by the remote application to authenticate the
source.
In combination with operations such as com.rti.dds.domain.DomainParticipant.ignore participant (p. 714), com.rti.dds.domain.DomainParticipant.ignore publication (p. 716), com.rti.dds.domain.DomainParticipant.ignore subscription (p. 717), and com.rti.dds.domain.DomainParticipant.ignore topic (p. 715), this QoS policy can assist an application to define and enforce
its own security policies.
The use of this QoS is not limited to security; it offers a simple, yet flexible
extensibility mechanism.
Important: RTI Connext stores the data placed in this policy in pre-allocated
pools. It is therefore necessary to configure RTI Connext with the maximum size
of the data that will be stored in policies of this type. This size is configured with
com.rti.dds.infrastructure.DomainParticipantResourceLimitsQosPolicy.participant user data max length (p. 790), com.rti.dds.infrastructure.DomainParticipantResourceLimitsQosPolicy.w
user data max length (p. 791), and com.rti.dds.infrastructure.DomainParticipantResourceLimitsQosPol
user data max length (p. 791).
8.304.3
8.304.3.1
a sequence of octets
[default] empty (zero-length)
[range] Octet sequence of length [0,max length]
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1696
8.305
Class Documentation
User exception.
Inheritance diagram for UserException::
8.305.1
Detailed Description
User exception.
This class is based on a similar class in CORBA.
See also:
http://java.sun.com/javase/6/docs/api/org/omg/CORBA/UserException.html
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.306
1697
Public Attributes
String name
The name of the value member.
TypeCode type
The type of the value member.
boolean is pointer
Indicates whether the value member is a pointer or not.
short bits
Number of bits of a bitfield member.
boolean is key
Indicates if the value member is a key member or not.
short access
The type of access (public, private) for the value member.
8.306.1
Detailed Description
1698
Class Documentation
8.306.2
8.306.2.1
Constructs a ValueMember (p. 1697) object initialized with the given values.
8.306.3
8.306.3.1
String name
TypeCode type
boolean is pointer
short bits
boolean is key
short access
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.307
1699
Public Attributes
final byte[ ] vendorId = new byte[LENGTH MAX]
The vendor Id.
8.307.1
Detailed Description
8.307.2
8.307.2.1
VendorId t ()
Constructor.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1700
Class Documentation
8.307.3
8.307.3.1
The ID used when the vendor of the service implementing the RTPS protocol
is not known.
8.307.3.2
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.308
1701
String toString ()
Get this version in string form.
8.308.1
Detailed Description
8.308.2
8.308.2.1
1702
8.308.2.2
Class Documentation
ProductVersion t get product version ()
String toString ()
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.309
1703
8.309.1
Detailed Description
1704
Class Documentation
8.309.2
8.309.2.1
New instance. This latest generation of the instance has not previously been
accessed.
8.309.2.2
Not a new instance. This latest generation of the instance has previously been
accessed.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.310
1705
Constant used to indicate that a value type has the abstract modifier.
8.310.1
Detailed Description
Constant used to indicate that a value type has the abstract modifier.
An abstract value type may not be instantiated.
8.310.2
8.310.2.1
Constant value.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1706
Class Documentation
8.311
Constant used to indicate that a value type has the custom modifier.
8.311.1
Detailed Description
Constant used to indicate that a value type has the custom modifier.
This modifier is used to specify whether the value type uses custom marshaling.
8.311.2
8.311.2.1
Constant value.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.312
1707
8.312.1
Detailed Description
8.312.2
8.312.2.1
Constant value.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1708
Class Documentation
8.313
Constant used to indicate that a value type has the truncatable modifier.
8.313.1
Detailed Description
Constant used to indicate that a value type has the truncatable modifier.
A value with a state that derives from another value with a state can be declared
as truncatable. A truncatable type means the object can be truncated to the
base type.
8.313.2
8.313.2.1
Constant value.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.314
1709
( p. 464)
to
the
1710
Class Documentation
void delete ()
Destructor.
8.314.1
Detailed Description
8.314.2
Usage
com.rti.dds.infrastructure.Condition (p. 464) (s) (in conjunction with waitsets) provide an alternative mechanism to allow the middleware to communicate
communication status changes (including arrival of data) to the application.
This mechanism is wait-based. Its general use pattern is as follows:
The application indicates which relevant information it wants
to
get
by
creating
com.rti.dds.infrastructure.Condition
(p. 464)
objects
(com.rti.dds.infrastructure.StatusCondition
(p. 1448), com.rti.dds.subscription.ReadCondition (p. 1313) or
com.rti.dds.subscription.QueryCondition (p. 1311)) and attaching
them to a com.rti.dds.infrastructure.WaitSet (p. 1709).
It then waits on that com.rti.dds.infrastructure.WaitSet
(p. 1709)
until
the
trigger value
of
one
or
several
com.rti.dds.infrastructure.Condition (p. 464) objects become
com.rti.dds.infrastructure.true.
It then uses the result of the wait (i.e., active conditions, the
list of com.rti.dds.infrastructure.Condition (p. 464) objects with
trigger value == com.rti.dds.infrastructure.true) to actually get the information:
by
calling
com.rti.dds.infrastructure.Entity.get status changes (p. 936) and then get <communication status>() on
the relevant com.rti.dds.infrastructure.Entity (p. 931), if the
condition is a com.rti.dds.infrastructure.StatusCondition
(p. 1448) and the status changes, refer to plain communication
status;
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1711
by
calling
com.rti.dds.infrastructure.Entity.get (p. 936)
and
then
status changes
com.rti.dds.subscription.Subscriber.get on
the
relevant
datareaders
(p. 1489)
com.rti.dds.subscription.Subscriber (p. 1476) (and then
or
com.rti.ndds.example.FooDataReader.read()
(p. 981)
com.rti.ndds.example.FooDataReader.take (p. 983) on the returned com.rti.dds.subscription.DataReader (p. 487) objects),
if the condition is a com.rti.dds.infrastructure.StatusCondition
(p. 1448)
and
the
status
changes
refers
to
com.rti.dds.infrastructure.StatusKind.StatusKind.DATA ON READERS STATUS;
by
calling
com.rti.dds.infrastructure.Entity.get status changes
(p. 936)
and
then
com.rti.ndds.example.FooDataReader.read()
(p. 981)
or
com.rti.ndds.example.FooDataReader.take (p. 983) on the
relevant com.rti.dds.subscription.DataReader (p. 487), if the
condition is a com.rti.dds.infrastructure.StatusCondition
(p. 1448)
and
the
status
changes
refers
to
com.rti.dds.infrastructure.StatusKind.StatusKind.DATA AVAILABLE STATUS;
by calling directly com.rti.ndds.example.FooDataReader.read w condition (p. 990) or com.rti.ndds.example.FooDataReader.take w condition (p. 991) on a com.rti.dds.subscription.DataReader
(p. 487) with the com.rti.dds.infrastructure.Condition (p. 464)
as a parameter if it is a com.rti.dds.subscription.ReadCondition
(p. 1313) or a com.rti.dds.subscription.QueryCondition
(p. 1311).
Usually the first step is done in an initialization phase, while the others are put
in the application main loop.
As there is no extra information passed from the middleware
to the application when a wait returns (only the list of triggered
com.rti.dds.infrastructure.Condition
(p. 464)
objects),
com.rti.dds.infrastructure.Condition (p. 464) objects are meant to
embed all that is needed to react properly when enabled. In particular,
com.rti.dds.infrastructure.Entity (p. 931)-related conditions are related
to exactly one com.rti.dds.infrastructure.Entity (p. 931) and cannot be
shared.
The blocking behavior of the com.rti.dds.infrastructure.WaitSet (p. 1709)
is illustrated below.
The result of a com.rti.dds.infrastructure.WaitSet.WaitSet.wait operation depends on the state of the com.rti.dds.infrastructure.WaitSet
(p. 1709), which in turn depends on whether at least one attached
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1712
Class Documentation
com.rti.dds.infrastructure.Condition
(p. 464)
has
a
trigger value of com.rti.dds.infrastructure.true.
If the wait operation is
called on com.rti.dds.infrastructure.WaitSet (p. 1709) with state
BLOCKED, it will block the calling thread.
If wait is called on
a com.rti.dds.infrastructure.WaitSet (p. 1709) with state UNBLOCKED, it will return immediately.
In addition, when the
com.rti.dds.infrastructure.WaitSet (p. 1709) transitions from BLOCKED
to UNBLOCKED it wakes up any threads that had called wait on it.
A
key
aspect
of
the
com.rti.dds.infrastructure.Condition
(p. 464)/com.rti.dds.infrastructure.WaitSet (p. 1709) mechanism is the
setting of the trigger value of each com.rti.dds.infrastructure.Condition
(p. 464).
8.314.3
8.314.4
Similar
to
the
com.rti.dds.infrastructure.StatusCondition
(p. 1448),
a
com.rti.dds.subscription.ReadCondition
(p. 1313) also has a trigger value that determines whether
the
attached
com.rti.dds.infrastructure.WaitSet
(p. 1709)
is
BLOCKED
or
UNBLOCKED.
However,
unlike
the
com.rti.dds.infrastructure.StatusCondition (p. 1448), the trigger value of the com.rti.dds.subscription.ReadCondition (p. 1313)
is tied to the presence of at least a sample managed by RTI Connext with com.rti.dds.subscription.SampleStateKind (p. 1426) and
com.rti.dds.subscription.ViewStateKind (p. 1703) matching those of
the com.rti.dds.subscription.ReadCondition (p. 1313).
Furthermore,
for the com.rti.dds.subscription.QueryCondition (p. 1311) to have
a trigger value == com.rti.dds.infrastructure.true, the data associated
with the sample must be such that the query expression evaluates to
com.rti.dds.infrastructure.true.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1713
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1714
8.314.5
Class Documentation
8.314.6
8.314.6.1
WaitSet ()
(p. 1448),
8.314.6.2
<<eXtension>>
( p. 278)
Constructor
for
a
com.rti.dds.infrastructure.WaitSet (p. 1709) that may delay for more
while specifying that will be woken up after the given number of events or
delay period, whichever happens first
Constructs a new com.rti.dds.infrastructure.WaitSet (p. 1709).
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1715
Important:
The com.rti.dds.infrastructure.WaitSet (p. 1709) allocates native resources. When the com.rti.dds.infrastructure.WaitSet
is
no
longer
being
used,
users
should
call
(p. 1709)
com.rti.dds.infrastructure.WaitSet.WaitSet.delete explicitly to properly
clean up all native resources.
Parameters:
prop <<in>> ( p. 279) Property of wait set controlling when the wait set
should be woken up
Exceptions:
com.rti.dds.infrastructure.RETCODE OUT OF RESOURCES ( p. 1362)
if a new com.rti.dds.infrastructure.WaitSet (p. 1709) could not
be allocated.
8.314.7
8.314.7.1
1716
Class Documentation
8.314.7.2
Attaches a com.rti.dds.infrastructure.Condition
com.rti.dds.infrastructure.WaitSet (p. 1709).
(p. 464)
to
the
or
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1717
Detaches a com.rti.dds.infrastructure.Condition
com.rti.dds.infrastructure.WaitSet (p. 1709).
(p. 464)
from
the
8.314.7.4
8.314.7.5
<<eXtension>> ( p. 278) Sets the com.rti.dds.infrastructure.WaitSetProperty t (p. 1719), to configure the associated com.rti.dds.infrastructure.WaitSet
(p. 1709) to return after one or more trigger events have occurred.
Parameters:
prop <<in>> ( p. 279)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1718
Class Documentation
Exceptions:
One of the Standard Return Codes (p. 108)
8.314.7.6
8.314.7.7
void delete ()
Destructor.
Releases
the
resources
asociated
com.rti.dds.infrastructure.WaitSet (p. 1709).
with
this
Calling
this
method
multiple
times
on
the
same
com.rti.dds.infrastructure.WaitSet (p. 1709) is safe; subsequent deletions will have no effect.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.315
1719
Public Attributes
int max event count
Maximum
number
of
trigger
events
to
com.rti.dds.infrastructure.WaitSet ( p. 1709) to awaken.
cause
8.315.1
Detailed Description
the
1720
Class Documentation
8.315.2
8.315.2.1
Maximum
number
of
trigger
events
to
com.rti.dds.infrastructure.WaitSet (p. 1709) to awaken.
cause
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.316
1721
8.316.1
Detailed Description
8.316.2
8.316.2.1
WcharSeq ()
1722
8.316.2.2
Class Documentation
WcharSeq (int initialMaximum)
Constructs an empty sequence of wide characters with the given initial maximum.
8.316.2.3
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.317
1723
Specifies
the
wire-protocol-related
attributes
com.rti.dds.domain.DomainParticipant (p. 654).
for
the
Public Attributes
int participant id
A value used to distinguish among different participants belonging to the same
domain ( p. 328) on the same host.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1724
8.317.1
Class Documentation
Detailed Description
Specifies
the
wire-protocol-related
attributes
com.rti.dds.domain.DomainParticipant (p. 654).
for
the
Entity:
com.rti.dds.domain.DomainParticipant (p. 654)
Properties:
RxO (p. 101) = N/A
Changeable (p. 102) = NO (p. 102)
8.317.2
Usage
1725
1726
Class Documentation
Using com.rti.dds.infrastructure.WireProtocolQosPolicyAutoKind.RTPS AUTO ID FROM MAC (p. 139), the default value of each field is
interpreted as follows:
rtps host id: The first 32 bits of the MAC address of the first up
and running interface of the host machine are assigned.
rtps app id: The last 32 bits of the MAC address of the first up
and running interface of the host machine are assigned.
rtps instance id: This field is split into two different parts. The
process (or task) ID is assigned to the first 24 bits. A counter is
assigned to the last 8 bits. This counter is incremented per new
participant. In both scenarios, you can change the value of each field
independently.
If com.rti.dds.infrastructure.WireProtocolQosPolicyAutoKind.RTPS AUTO ID FROM MAC (p. 139) is used, the rtps instance id has been
logically split into two parts: 24 bits for the process/task ID and 8 bits for
the per new participant counter. To give to users the ability to manually
set the two parts independently, a bit-field mechanism has been introduced for the rtps instance id field when it is used in combination with
com.rti.dds.infrastructure.WireProtocolQosPolicyAutoKind.RTPS AUTO ID FROM MAC (p. 139). If one of the two parts is set to 0,
only this part will be handled by RTI Connext and you will be able to
handle the other one manually.
1727
participant_qos.wire_protocol.rtps_host_id
=
WireProtocolQosPolicy.RTPS_AUTO_ID;
participant_qos.wire_protocol.rtps_app_id
=
WireProtocolQosPolicy.RTPS_AUTO_ID;
participant_qos.wire_protocol.rtps_instance_id = (/* App ID */ (12 << 8) |
/* Instance ID*/ (WireProtocolQosPolicy.RTPS_AUTO_ID));
Option 2: Handle only the per participant counter and let RTI Connext handle
the application/task identifier:
participant_qos.wire_protocol.rtps_auto_id_kind =
WireProtocolQosPolicyAutoKind.RTPS_AUTO_ID_FROM_MAC;
participant_qos.wire_protocol.rtps_host_id
= WireProtocolQosPolicy.RTPS_AUTO_ID;
participant_qos.wire_protocol.rtps_app_id
= WireProtocolQosPolicy.RTPS_AUTO_ID;
participant_qos.wire_protocol.rtps_instance_id = (/* App ID */ (WireProtocolQosPolicy.RTPS_AUTO_ID) |
/* Instance ID*/ (12));
NOTE: If you are using com.rti.dds.infrastructure.WireProtocolQosPolicyAutoKind.RTPS AUTO ID FROM MAC (p. 139) as rtps auto id kind and you decide to
manually handle the rtps instance id field, you must ensure that both parts
are non-zero (otherwise RTI Connext will take responsibility for them). RTI
recommends that you always specify the two parts separately in order to avoid
errors.
Option 4: Let RTI Connext handle the entire rtps instance id field:
participant_qos.wire_protocol.rtps_auto_id_kind =
WireProtocolQosPolicyAutoKind.RTPS_AUTO_ID_FROM_MAC;
participant_qos.wire_protocol.rtps_host_id
= WireProtocolQosPolicy.RTPS_AUTO_ID;
participant_qos.wire_protocol.rtps_app_id
= WireProtocolQosPolicy.RTPS_AUTO_ID;
participant_qos.wire_protocol.rtps_instance_id = WireProtocolQosPolicy.RTPS_AUTO_ID;
NOTE: If you are using com.rti.dds.infrastructure.WireProtocolQosPolicyAutoKind.RTPS AUTO ID FROM MAC (p. 139) as rtps auto id kind and you decide
to manually handle the rtps instance id field, you must ensure that both
parts are non-zero (otherwise RTI Connext will take responsibility for them).
RTI recommends that you always specify the two parts separately in order to
clearly show the difference.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1728
Class Documentation
8.317.3
8.317.3.1
Indicates that RTI Connext should choose an appropriate host, app, instance
or object ID automatically.
If this special value is assigned to com.rti.dds.infrastructure.WireProtocolQosPolicy.rtps host id (p. 1729), com.rti.dds.infrastructure.WireProtocolQosPolicy.rtps app id (p. 1730), com.rti.dds.infrastructure.WireProtocolQosPolicy.rtps instance id (p. 1730), com.rti.dds.infrastructure.DataWriterProtocolQosPolicy.rtps object id (p. 594) or com.rti.dds.infrastructure.DataReaderProtocolQosPolicy.rtps object id (p. 523) RTI Connext will assign the ID automatically.
The actual ID value is chosen when the QoS is set:
the QoS
returned
from
com.rti.dds.domain.DomainParticipant.get qos
(p. 706),
com.rti.dds.publication.DataWriter.get qos
(p. 564)
or
com.rti.dds.subscription.DataReader.get qos (p. 497) will never have
this value.
QoS:
com.rti.dds.infrastructure.WireProtocolQosPolicy.rtps host id
(p. 1729) com.rti.dds.infrastructure.WireProtocolQosPolicy.rtps app id (p. 1730) com.rti.dds.infrastructure.WireProtocolQosPolicy.rtps instance id (p. 1730)
8.317.3.2
int participant id
to
1729
RTI Connext will pick the smallest participant ID based on the unicast
ports available on the transports enabled for discovery.
RTI Connext will attempt to resolve an automatic port index either when
a DomainPartcipant is enabled, or when a DataReader or DataWriter is
created. Therefore, all the transports enabled for discovery must have been
registered by this time. Otherwise, the discovery transports registered
after resolving the automatic port index may produce port conflicts when
the DomainPartcipant is enabled.
[default] -1 [automatic], i.e. RTI Connext will automatically pick the
participant id, as described above.
[range] [>= 0], or -1, and does not violate guidelines stated in
com.rti.dds.infrastructure.RtpsWellKnownPorts t (p. 1390).
See also:
com.rti.dds.infrastructure.Entity.enable() (p. 935)
8.317.3.3
1730
Class Documentation
interpreted as the first 32 bits of the MAC address assigned to the first up and
running interface of the host machine.
[range] [0,0xffffffff]
8.317.3.5
8.317.3.6
1731
assigned to the application/task identifier and the last 8 bits are assigned to a
counter that is incremented per new paricipant.
[range] [0,0xffffffff] NOTE: If you use DDS RTPS AUTO ID FROM MAC as
rtps auto id kind and you decide to manually handle the rtps instance id field, you must ensure that both the two parts are non-zero, otherwise the
middleware will take responsibility for them. We recommend that you always
specify the two parts separately in order to avoid errors. (examples)
8.317.3.7
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1732
Class Documentation
8.318
WireProtocolQosPolicyAutoKind
Reference
Class
static final WireProtocolQosPolicyAutoKind RTPS AUTO ID FROM MAC = new WireProtocolQosPolicyAutoKind(RTPS AUTO ID FROM MAC, 1)
Kind of auto mechanism used to calculate the GUID prefix.
8.318.1
Detailed Description
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.319
1733
<<eXtension>> ( p. 278)
Input
parameters
for
writing
with
(p. 1026),
com.rti.ndds.example.FooDataWriter.write w params
com.rti.ndds.example.FooDataWriter.dispose w params
(p. 1031),
com.rti.ndds.example.FooDataWriter.register instance w params
(p. 1016), com.rti.ndds.example.FooDataWriter.unregister instance w params (p. 1021)
Inheritance diagram for WriteParams t::
WriteParams t (SampleIdentity t identity, Time t source timestamp, Cookie t cookie, InstanceHandle t handle, SampleIdentity t related sample identity, boolean replace auto)
Construct a new WriteParams t ( p. 1733) with the given members.
Public Attributes
SampleIdentity t identity
Identity of the sample.
new
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1734
8.319.1
Class Documentation
Detailed Description
<<eXtension>> ( p. 278)
Input
parameters
for
writing
with
com.rti.ndds.example.FooDataWriter.write w params
(p. 1026),
(p. 1031),
com.rti.ndds.example.FooDataWriter.dispose w params
com.rti.ndds.example.FooDataWriter.register instance w params
(p. 1016), com.rti.ndds.example.FooDataWriter.unregister instance w params (p. 1021)
8.319.2
8.319.2.1
WriteParams t ()
8.319.3
8.319.3.1
1735
8.319.4
8.319.4.1
SampleIdentity t identity
Initial value:
new SampleIdentity_t(SampleIdentity_t.AUTO_SAMPLE_IDENTITY)
Initial value:
new SampleIdentity_t(SampleIdentity_t.UNKNOWN_SAMPLE_IDENTITY)
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1736
Class Documentation
Instance handle.
Either
the
handle
returned
by
a
previous
call
to
com.rti.ndds.example.FooDataWriter.register instance (p. 1014), or else
the special value com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL.
[default]
com.rti.dds.infrastructure.InstanceHandle t.InstanceHandle t.HANDLE NIL
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.320
1737
8.320.1
Detailed Description
8.320.2
8.320.2.1
8.320.2.2
8.320.2.3
8.320.2.4
8.320.2.5
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1738
Class Documentation
8.321
Public Attributes
boolean autodispose unregistered instances
Boolean
flag
that
controls
the
behavior
when
the
com.rti.dds.publication.DataWriter ( p. 557) unregisters an instance by
means of the unregister operations.
8.321.1
Detailed Description
8.321.2
Usage
1739
8.321.3
8.321.3.1
Boolean
flag
that
controls
com.rti.dds.publication.DataWriter
by means of the unregister operations.
the
behavior
when
the
(p. 557) unregisters an instance
com.rti.dds.infrastructure.true (default)
The com.rti.dds.publication.DataWriter (p. 557) will dispose the instance each time it is unregistered. The behavior is identical to explicitly
calling one of the dispose operations on the instance prior to calling the
unregister operation.
com.rti.dds.infrastructure.false
The com.rti.dds.publication.DataWriter (p. 557) will not dispose the
instance. The application can still call one of the dispose operations prior
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1740
Class Documentation
to unregistering the instance and accomplish the same effect.
[default] com.rti.dds.infrastructure.true
8.321.3.2
<<eXtension>>
( p. 278)
Maximum
duration
for
which
the
com.rti.dds.publication.DataWriter (p. 557) will maintain information
regarding an instance once it has unregistered the instance.
After this time elapses, the com.rti.dds.publication.DataWriter (p. 557)
will purge all internal information regarding the instance, including historical
samples.
When the duration is zero, the instance is purged as soon as all the samples
have been acknowledged by all the live DataReaders.
[default] com.rti.dds.infrastructure.Duration t.INFINITE (disabled)
[range] [0, 1 year] or com.rti.dds.infrastructure.Duration t.INFINITE
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
8.322
1741
8.322.1
Detailed Description
1742
Class Documentation
8.322.2
8.322.2.1
WstringSeq ()
Constructs an empty sequence of wide strings with the given initial maximum.
8.322.2.3
8.322.3
8.322.3.1
Read array of strings. The length specified must match the expected length of
array. Otherwise, the stream will be positioned incorrectly, leading to corrupt
reads. The length of array must be at least the value of length parameter
(otherwise, ArrayOutOfBoundException will be thrown).
Parameters:
value array to read into
in Interface for reading object in CDR encoding.
length the length of array (<= value.length)
8.322.3.2
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
Chapter 9
Example Documentation
9.1
HelloWorld.idl
9.1.1
9.1.1.1
HelloWorld.idl
[ (NDDSHOME)/example/JAVA/helloWorld/HelloWorld.idl]
1744
Example Documentation
struct HelloWorld {
string<128> msg;
};
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
9.2 HelloWorldDataReader.java
9.2
1745
HelloWorldDataReader.java
9.2.1
Files generated by rtiddsgen (p. 298) that implement the type specific APIs
required by the DDS specification, as described in the User Data Type Support (p. 164), where:
FooTypeSupport = HelloWorldTypeSupport
FooDataWriter = HelloWorldDataWriter
FooDataReader = HelloWorldDataReader
9.2.1.1
HelloWorldTypeSupport.java
[ (NDDSHOME)/example/JAVA/helloWorld/HelloWorldTypeSupport.java]
/*
WARNING: THIS FILE IS AUTO-GENERATED. DO NOT MODIFY.
This file was generated from .idl using "rtiddsgen".
The rtiddsgen tool is part of the RTI Connext distribution.
For more information, type rtiddsgen -help at a command shell
or consult the RTI Connext manual.
*/
import
import
import
import
import
import
import
import
import
import
import
import
import
import
import
import
import
import
com.rti.dds.cdr.CdrEncapsulation;
com.rti.dds.cdr.CdrInputStream;
com.rti.dds.cdr.CdrOutputStream;
com.rti.dds.cdr.CdrPrimitiveType;
com.rti.dds.cdr.CdrBuffer;
com.rti.dds.cdr.CdrHelper;
com.rti.dds.cdr.CdrMemberInfo;
com.rti.dds.domain.DomainParticipant;
com.rti.dds.publication.DataWriter;
com.rti.dds.publication.DataWriterListener;
com.rti.dds.subscription.DataReader;
com.rti.dds.subscription.DataReaderListener;
com.rti.dds.topic.KeyHash_t;
com.rti.dds.topic.TypeSupportImpl;
com.rti.dds.topic.TypeSupportType;
com.rti.dds.util.Sequence;
com.rti.dds.topic.DefaultEndpointData;
com.rti.dds.infrastructure.RETCODE_ERROR;
import com.rti.dds.topic.TypeSupportParticipantInfo;
import com.rti.dds.topic.TypeSupportEndpointInfo;
import com.rti.dds.typecode.TypeCode;
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1746
Example Documentation
import com.rti.dds.infrastructure.Copyable;
public
//
//
//
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
9.2 HelloWorldDataReader.java
1747
if(include_encapsulation) {
if (!CdrEncapsulation.isValidEncapsulationKind(encapsulation_id)) {
throw new RETCODE_ERROR("Unsupported encapsulation");
}
encapsulation_size
encapsulation_size
encapsulation_size
currentAlignment =
origAlignment = 0;
+= CdrPrimitiveType.SHORT.getMaxSizeSerialized(encapsulation_size);
+= CdrPrimitiveType.SHORT.getMaxSizeSerialized(encapsulation_size);
-= currentAlignment;
0;
currentAlignment +=
if (include_encapsulation) {
currentAlignment += encapsulation_size;
}
return currentAlignment - origAlignment;
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1748
Example Documentation
if(include_encapsulation) {
if (!CdrEncapsulation.isValidEncapsulationKind(encapsulation_id)) {
throw new RETCODE_ERROR("Unsupported encapsulation");
}
encapsulation_size
encapsulation_size
encapsulation_size
currentAlignment =
origAlignment = 0;
+= CdrPrimitiveType.SHORT.getMaxSizeSerialized(encapsulation_size);
+= CdrPrimitiveType.SHORT.getMaxSizeSerialized(encapsulation_size);
-= currentAlignment;
0;
currentAlignment +=
CdrPrimitiveType.getStringMaxSizeSerialized(currentAlignment, 1);
if (include_encapsulation) {
currentAlignment += encapsulation_size;
}
return currentAlignment - origAlignment;
}
encapsulation_size
encapsulation_size
encapsulation_size
currentAlignment =
origAlignment = 0;
+= CdrPrimitiveType.SHORT.getMaxSizeSerialized(encapsulation_size);
+= CdrPrimitiveType.SHORT.getMaxSizeSerialized(encapsulation_size);
-= currentAlignment;
0;
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
9.2 HelloWorldDataReader.java
1749
if(include_encapsulation) {
if (!CdrEncapsulation.isValidEncapsulationKind(encapsulation_id)) {
throw new RETCODE_ERROR("Unsupported encapsulation");
}
encapsulation_size
encapsulation_size
encapsulation_size
currentAlignment =
origAlignment = 0;
+= CdrPrimitiveType.SHORT.getMaxSizeSerialized(encapsulation_size);
+= CdrPrimitiveType.SHORT.getMaxSizeSerialized(encapsulation_size);
-= currentAlignment;
0;
currentAlignment += get_serialized_sample_max_size(
endpoint_data,false,encapsulation_id,currentAlignment);
if (include_encapsulation) {
currentAlignment += encapsulation_size;
}
return currentAlignment - origAlignment;
}
if(serialize_encapsulation) {
dst.serializeAndSetCdrEncapsulation(encapsulation_id);;
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1750
Example Documentation
position = dst.resetAlignment();
}
if(serialize_sample) {
HelloWorld typedSrc = (HelloWorld) src;
dst.writeString(typedSrc.msg,(128));
}
if (serialize_encapsulation) {
dst.restoreAlignment(position);
}
}
position = dst.resetAlignment();
}
if (serialize_key) {
HelloWorld typedSrc = (HelloWorld) src;
if (serialize_encapsulation) {
dst.restoreAlignment(position);
}
}
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
9.2 HelloWorldDataReader.java
1751
position = src.resetAlignment();
}
if(deserialize_sample) {
HelloWorld typedDst = (HelloWorld) dst;
try {
typedDst.msg = src.readString((128));
} catch (Exception e) {
if (src.available() > 0) {
throw new RETCODE_ERROR("Error deserializing sample! Remainder: " + src.available() + "\n" +
"Exception caused by: " + e.getMessage());
}
}
}
if (deserialize_encapsulation) {
src.restoreAlignment(position);
}
return dst;
}
if(deserialize_encapsulation) {
src.deserializeAndSetCdrEncapsulation();
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1752
Example Documentation
position = src.resetAlignment();
}
if(deserialize_key) {
HelloWorld typedDst = (HelloWorld) dst;
if (deserialize_encapsulation) {
src.restoreAlignment(position);
}
return dst;
}
if (skip_encapsulation) {
src.skipEncapsulation();
position = src.resetAlignment();
}
if (skip_sample) {
src.skipString();
}
if (skip_encapsulation) {
src.restoreAlignment(position);
}
}
public Object serialized_sample_to_key(
Object endpoint_data,
Object sample,
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
9.2 HelloWorldDataReader.java
1753
CdrInputStream src,
boolean deserialize_encapsulation,
boolean deserialize_key,
Object endpoint_plugin_qos)
{
int position = 0;
if(deserialize_encapsulation) {
src.deserializeAndSetCdrEncapsulation();
position = src.resetAlignment();
}
if (deserialize_key) {
HelloWorld typedDst = (HelloWorld) sample;
deserialize_sample(
endpoint_data, sample, src, false,
true, endpoint_plugin_qos);
}
if (deserialize_encapsulation) {
src.restoreAlignment(position);
}
return sample;
}
// ----------------------------------------------------------------------// Callbacks
// ----------------------------------------------------------------------public Object on_participant_attached(Object registration_data,
TypeSupportParticipantInfo participant_info,
boolean top_level_registration,
Object container_plugin_context,
TypeCode type_code) {
return super.on_participant_attached(
registration_data, participant_info, top_level_registration,
container_plugin_context, type_code);
}
public void on_participant_detached(Object participant_data) {
super.on_participant_detached(participant_data);
}
public Object on_endpoint_attached(Object participantData,
TypeSupportEndpointInfo endpoint_info,
boolean top_level_registration,
Object container_plugin_context) {
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1754
Example Documentation
return super.on_endpoint_attached(
participantData, endpoint_info,
top_level_registration, container_plugin_context);
}
public void on_endpoint_detached(Object endpoint_data) {
super.on_endpoint_detached(endpoint_data);
}
// ----------------------------------------------------------------------// Protected Methods
// ----------------------------------------------------------------------protected DataWriter create_datawriter(long native_writer,
DataWriterListener listener,
int mask) {
return new HelloWorldDataWriter(native_writer, listener, mask, this);
}
protected DataReader create_datareader(long native_reader,
DataReaderListener listener,
int mask) {
return new HelloWorldDataReader(native_reader, listener, mask, this);
}
// ----------------------------------------------------------------------// Constructor
// ----------------------------------------------------------------------protected HelloWorldTypeSupport() {
/* If the user data type supports keys, then the second argument
to the constructor below should be true. Otherwise it should
be false. */
super(TYPE_NAME, enableKeySupport,HelloWorldTypeCode.VALUE,HelloWorld.class,TypeSupportType.TST_STR
}
}
9.2.1.2
HelloWorldDataWriter.java
[ (NDDSHOME)/example/JAVA/helloWorld/HelloWorldDataWriter.java]
/*
WARNING: THIS FILE IS AUTO-GENERATED. DO NOT MODIFY.
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
9.2 HelloWorldDataReader.java
1755
com.rti.dds.infrastructure.Time_t;
com.rti.dds.infrastructure.WriteParams_t;
com.rti.dds.infrastructure.InstanceHandle_t;
com.rti.dds.publication.DataWriterImpl;
com.rti.dds.publication.DataWriterListener;
com.rti.dds.topic.TypeSupportImpl;
// ===========================================================================
public
//
//
//
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1756
Example Documentation
unregister_instance_w_params_untyped(
instance_data, params);
}
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
9.2 HelloWorldDataReader.java
1757
9.2.1.3
HelloWorldDataReader.java
[ (NDDSHOME)/example/JAVA/helloWorld/HelloWorldDataReader.java]
/*
WARNING: THIS FILE IS AUTO-GENERATED. DO NOT MODIFY.
This file was generated from .idl using "rtiddsgen".
The rtiddsgen tool is part of the RTI Connext distribution.
For more information, type rtiddsgen -help at a command shell
or consult the RTI Connext manual.
*/
import
import
import
import
import
import
import
com.rti.dds.infrastructure.InstanceHandle_t;
com.rti.dds.subscription.DataReaderImpl;
com.rti.dds.subscription.DataReaderListener;
com.rti.dds.subscription.ReadCondition;
com.rti.dds.subscription.SampleInfo;
com.rti.dds.subscription.SampleInfoSeq;
com.rti.dds.topic.TypeSupportImpl;
// ===========================================================================
public
//
//
//
1758
Example Documentation
SampleInfoSeq info_seq,
int max_samples,
ReadCondition condition) {
read_w_condition_untyped(received_data, info_seq, max_samples,
condition);
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
9.2 HelloWorldDataReader.java
1759
take_instance_w_condition_untyped(received_data, info_seq,
max_samples, a_handle, condition);
}
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1760
Example Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
9.3 HelloWorldPublisher.java
9.3
1761
HelloWorldPublisher.java
9.3.1
The publication example generated by rtiddsgen (p. 298). The example has
been modified slightly to update the sample value.
9.3.1.1
HelloWorldPublisher.java
[ (NDDSHOME)/example/JAVA/helloWorld/HelloWorldPublisher.java]
/* HelloWorldPublisher.java
A publication of data of type HelloWorld
This file is derived from code automatically generated by the rtiddsgen
command:
rtiddsgen -language java -example <arch> HelloWorld.idl
Example publication of type HelloWorld automatically generated by
rtiddsgen. To test them follow these steps:
(1) Compile this file and the example subscription.
(2) Start the subscription on the same domain used for RTI Connext with the command
java HelloWorldSubscriber <domain_id> <sample_count>
(3) Start the publication on the same domain used for RTI Connext with the command
java HelloWorldPublisher <domain_id> <sample_count>
(4) [Optional] Specify the list of discovery initial peers and
multicast receive addresses via an environment variable or a file
(in the current working directory) called NDDS_DISCOVERY_PEERS.
You can run any number of publishers and subscribers programs, and can
add and remove them dynamically from the domain.
Example:
To run the example application on domain <domain_id>:
Ensure that $(NDDSHOME)/lib/<arch> is on the dynamic library path for
Java.
On Unix:
add $(NDDSHOME)/lib/<arch> to the LD_LIBRARY_PATH environment
variable
On Windows:
add $(NDDSHOME)\lib\<arch> to the Path environment variable
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1762
Example Documentation
modification history
------------ ------*/
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.Arrays;
import
import
import
import
import
com.rti.dds.domain.*;
com.rti.dds.infrastructure.*;
com.rti.dds.publication.*;
com.rti.dds.topic.*;
com.rti.ndds.config.*;
// ===========================================================================
public
//
//
//
class HelloWorldPublisher {
----------------------------------------------------------------------Public Methods
-----------------------------------------------------------------------
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
9.3 HelloWorldPublisher.java
1763
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1764
Example Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
9.4 HelloWorldSeq.java
9.4
1765
HelloWorldSeq.java
9.4.1
HelloWorld.java
[ (NDDSHOME)/example/JAVA/helloWorld/HelloWorld.java]
/*
WARNING: THIS FILE IS AUTO-GENERATED. DO NOT MODIFY.
This file was generated from .idl using "rtiddsgen".
The rtiddsgen tool is part of the RTI Connext distribution.
For more information, type rtiddsgen -help at a command shell
or consult the RTI Connext manual.
*/
import com.rti.dds.infrastructure.*;
import com.rti.dds.infrastructure.Copyable;
import java.io.Serializable;
import com.rti.dds.cdr.CdrHelper;
public HelloWorld() {
}
1766
Example Documentation
}
public boolean equals(Object o) {
if (o == null) {
return false;
}
if(getClass() != o.getClass()) {
return false;
}
HelloWorld otherObj = (HelloWorld)o;
if(!msg.equals(otherObj.msg)) {
return false;
}
return true;
}
public int hashCode() {
int __result = 0;
__result += msg.hashCode();
return __result;
}
if (desc != null) {
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
9.4 HelloWorldSeq.java
1767
CdrHelper.printIndent(strBuffer, indent);
strBuffer.append(desc).append(":\n");
}
CdrHelper.printIndent(strBuffer, indent+1);
strBuffer.append("msg: ").append(msg).append("\n");
return strBuffer.toString();
}
}
9.4.1.2
HelloWorldSeq.java
[ (NDDSHOME)/example/JAVA/helloWorld/HelloWorldSeq.java]
/*
WARNING: THIS FILE IS AUTO-GENERATED. DO NOT MODIFY.
This file was generated from .idl using "rtiddsgen".
The rtiddsgen tool is part of the RTI Connext distribution.
For more information, type rtiddsgen -help at a command shell
or consult the RTI Connext manual.
*/
import java.util.Collection;
import
import
import
import
com.rti.dds.infrastructure.Copyable;
com.rti.dds.util.Enum;
com.rti.dds.util.Sequence;
com.rti.dds.util.LoanableSequence;
public
//
//
//
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1768
Example Documentation
}
// copy the data from source into this (into positions that already
// existed)
for(int i = 0; (i < origSize) && (i < srcSize); i++){
if (typedSrc.get(i) == null){
set(i, null);
} else {
// check to see if our entry is null, if it is, a new instance has to be allocated
if (get(i) == null){
set(i, HelloWorld.create());
}
set(i, ((Copyable) get(i)).copy_from(typedSrc.get(i)));
}
}
// copy new HelloWorld objects (beyond the original size of this object)
for(int i = origSize; i < srcSize; i++){
if (typedSrc.get(i) == null) {
add(null);
} else {
// NOTE: we need to create a new object here to hold the copy
add(HelloWorld.create());
// we need to do a set here since enums arent truely Copyable
set(i, ((Copyable) get(i)).copy_from(typedSrc.get(i)));
}
}
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
9.4 HelloWorldSeq.java
1769
return this;
}
}
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1770
Example Documentation
9.5
HelloWorldSubscriber.java
9.5.1
HelloWorldPublisher.java
[ (NDDSHOME)/example/JAVA/helloWorld/HelloWorldSubscriber.java]
/* HelloWorldSubscriber.java
A publication of data of type HelloWorld
This file is derived from code automatically generated by the rtiddsgen
command:
rtiddsgen -language java -example <arch> .idl
Example publication of type HelloWorld automatically generated by
rtiddsgen To test them follow these steps:
(1) Compile this file and the example subscription.
(2) Start the subscription on the same domain used for with the command
java HelloWorldSubscriber <domain_id> <sample_count>
(3) Start the publication with the command
java HelloWorldPublisher <domain_id> <sample_count>
(4) [Optional] Specify the list of discovery initial peers and
multicast receive addresses via an environment variable or a file
(in the current working directory) called NDDS_DISCOVERY_PEERS.
You can run any number of publishers and subscribers programs, and can
add and remove them dynamically from the domain.
Example:
To run the example application on domain <domain_id>:
Ensure that $(NDDSHOME)/lib/<arch> is on the dynamic library path for
Java.
On UNIX systems:
add $(NDDSHOME)/lib/<arch> to the LD_LIBRARY_PATH environment
variable
On Windows systems:
add %NDDSHOME%\lib\<arch> to the Path environment variable
9.5 HelloWorldSubscriber.java
1771
modification history
------------ ------*/
import java.net.InetAddress;
import java.net.UnknownHostException;
import java.util.Arrays;
import
import
import
import
import
com.rti.dds.domain.*;
com.rti.dds.infrastructure.*;
com.rti.dds.subscription.*;
com.rti.dds.topic.*;
com.rti.ndds.config.*;
// ===========================================================================
public
//
//
//
class HelloWorldSubscriber {
----------------------------------------------------------------------Public Methods
-----------------------------------------------------------------------
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1772
Example Documentation
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
9.5 HelloWorldSubscriber.java
1773
"Example HelloWorld",
typeName, DomainParticipant.TOPIC_QOS_DEFAULT,
null /* listener */, StatusKind.STATUS_MASK_NONE);
if (topic == null) {
System.err.println("create_topic error\n");
return;
}
// --- Create reader --- //
listener = new HelloWorldListener();
/* To customize data reader QoS, use
subscriber.get_default_datareader_qos() */
reader = (HelloWorldDataReader)
subscriber.create_datareader(
topic, Subscriber.DATAREADER_QOS_DEFAULT, listener,
StatusKind.STATUS_MASK_ALL);
if (reader == null) {
System.err.println("create_datareader error\n");
return;
}
// --- Wait for data --- //
final long receivePeriodSec = 4;
for (int count = 0;
(sampleCount == 0) || (count < sampleCount);
++count) {
System.out.println("HelloWorld subscriber sleeping for "
+ receivePeriodSec + " sec...");
try {
Thread.sleep(receivePeriodSec * 1000); // in millisec
} catch (InterruptedException ix) {
System.err.println("INTERRUPTED");
break;
}
}
} finally {
// --- Shutdown --- //
if(participant != null) {
participant.delete_contained_entities();
DomainParticipantFactory.TheParticipantFactory.
delete_participant(participant);
}
/* RTI Connext provides the finalize_instance()
method for users who want to release memory used by the
participant factory singleton. Uncomment the following block of
code for clean destruction of the participant factory
singleton. */
//DomainParticipantFactory.finalize_instance();
}
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen
1774
Example Documentation
}
// ----------------------------------------------------------------------// Private Types
// ----------------------------------------------------------------------// =======================================================================
private static class HelloWorldListener extends DataReaderAdapter {
HelloWorldSeq _dataSeq = new HelloWorldSeq();
SampleInfoSeq _infoSeq = new SampleInfoSeq();
public void on_data_available(DataReader reader) {
HelloWorldDataReader HelloWorldReader =
(HelloWorldDataReader)reader;
try {
HelloWorldReader.take(
_dataSeq, _infoSeq,
ResourceLimitsQosPolicy.LENGTH_UNLIMITED,
SampleStateKind.ANY_SAMPLE_STATE,
ViewStateKind.ANY_VIEW_STATE,
InstanceStateKind.ANY_INSTANCE_STATE);
for(int i = 0; i < _dataSeq.size(); ++i) {
SampleInfo info = (SampleInfo)_infoSeq.get(i);
if (info.valid_data) {
System.out.println(
((HelloWorld)_dataSeq.get(i)).toString("Received",0));
}
}
} catch (RETCODE_NO_DATA noData) {
// No data to process
} finally {
HelloWorldReader.return_loan(_dataSeq, _infoSeq);
}
}
}
}
Generated on Mon Aug 13 09:02:20 2012 for RTI Connext Java API by Doxygen