Fast RTPS  Version 2.1.0
Fast RTPS
XMLParserCommon.h
1 // Copyright 2017 Proyectos y Sistemas de Mantenimiento SL (eProsima).
2 //
3 // Licensed under the Apache License, Version 2.0 (the "License");
4 // you may not use this file except in compliance with the License.
5 // You may obtain a copy of the License at
6 //
7 // http://www.apache.org/licenses/LICENSE-2.0
8 //
9 // Unless required by applicable law or agreed to in writing, software
10 // distributed under the License is distributed on an "AS IS" BASIS,
11 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 // See the License for the specific language governing permissions and
13 // limitations under the License.
14 //
15 #ifndef XML_PARSER_COMMON_H_
16 #define XML_PARSER_COMMON_H_
17 
18 namespace eprosima {
19 namespace fastrtps {
20 namespace xmlparser {
21 
22 #define draw(ident, text, ...) for (uint8_t i = ident + 1; i > 0; --i) (i == 1) ? printf(text, ## __VA_ARGS__) : printf( \
23  "\t")
24 
29 enum class XMLP_ret
30 {
31  XML_ERROR,
32  XML_OK,
33  XML_NOK
34 };
35 
36 
37 extern const char* DEFAULT_FASTRTPS_ENV_VARIABLE;
38 extern const char* DEFAULT_FASTRTPS_PROFILES;
39 
40 extern const char* ROOT;
41 extern const char* PROFILES;
42 extern const char* LIBRARY_SETTINGS;
43 extern const char* TRANSPORT_DESCRIPTORS;
44 extern const char* PROFILE_NAME;
45 extern const char* DEFAULT_PROF;
46 extern const char* PARTICIPANT;
47 extern const char* PUBLISHER;
48 extern const char* SUBSCRIBER;
49 extern const char* RTPS;
50 extern const char* TYPES;
51 extern const char* LOG;
52 extern const char* REQUESTER;
53 extern const char* REPLIER;
54 
55 extern const char* TRANSPORT_DESCRIPTOR;
56 extern const char* TRANSPORT_ID;
57 extern const char* UDP_OUTPUT_PORT;
58 extern const char* TCP_WAN_ADDR;
59 extern const char* RECEIVE_BUFFER_SIZE;
60 extern const char* SEND_BUFFER_SIZE;
61 extern const char* TTL;
62 extern const char* NON_BLOCKING_SEND;
63 extern const char* WHITE_LIST;
64 extern const char* MAX_MESSAGE_SIZE;
65 extern const char* MAX_INITIAL_PEERS_RANGE;
66 extern const char* KEEP_ALIVE_FREQUENCY;
67 extern const char* KEEP_ALIVE_TIMEOUT;
68 extern const char* MAX_LOGICAL_PORT;
69 extern const char* LOGICAL_PORT_RANGE;
70 extern const char* LOGICAL_PORT_INCREMENT;
71 extern const char* ENABLE_TCP_NODELAY;
72 extern const char* METADATA_LOGICAL_PORT;
73 extern const char* LISTENING_PORTS;
74 extern const char* CALCULATE_CRC;
75 extern const char* CHECK_CRC;
76 extern const char* SEGMENT_SIZE;
77 extern const char* PORT_QUEUE_CAPACITY;
78 extern const char* PORT_OVERFLOW_POLICY;
79 extern const char* SEGMENT_OVERFLOW_POLICY;
80 extern const char* HEALTHY_CHECK_TIMEOUT_MS;
81 extern const char* DISCARD;
82 extern const char* FAIL;
83 extern const char* RTPS_DUMP_FILE;
84 
85 // IntraprocessDeliveryType
86 extern const char* OFF;
87 extern const char* USER_DATA_ONLY;
88 extern const char* FULL;
89 
90 extern const char* QOS_PROFILE;
91 extern const char* APPLICATION;
92 extern const char* TYPE;
93 // extern const char* TOPIC;
94 extern const char* DATA_WRITER;
95 extern const char* DATA_READER;
96 
98 extern const char* INTRAPROCESS_DELIVERY;
99 
101 extern const char* ALLOCATION;
102 extern const char* PREFIX;
103 extern const char* DEF_UNI_LOC_LIST;
104 extern const char* DEF_MULTI_LOC_LIST;
105 extern const char* SEND_SOCK_BUF_SIZE;
106 extern const char* LIST_SOCK_BUF_SIZE;
107 extern const char* BUILTIN;
108 extern const char* PORT;
109 extern const char* PORTS;
110 extern const char* LOGICAL_PORT;
111 extern const char* PHYSICAL_PORT;
112 extern const char* USER_DATA;
113 extern const char* PART_ID;
114 extern const char* IP4_TO_SEND;
115 extern const char* IP6_TO_SEND;
116 extern const char* THROUGHPUT_CONT;
117 extern const char* USER_TRANS;
118 extern const char* USE_BUILTIN_TRANS;
119 extern const char* PROPERTIES_POLICY;
120 extern const char* NAME;
121 extern const char* REMOTE_LOCATORS;
122 extern const char* MAX_UNICAST_LOCATORS;
123 extern const char* MAX_MULTICAST_LOCATORS;
124 extern const char* TOTAL_PARTICIPANTS;
125 extern const char* TOTAL_READERS;
126 extern const char* TOTAL_WRITERS;
127 extern const char* SEND_BUFFERS;
128 extern const char* PREALLOCATED_NUMBER;
129 extern const char* DYNAMIC_LC;
130 extern const char* MAX_PROPERTIES;
131 extern const char* MAX_USER_DATA;
132 extern const char* MAX_PARTITIONS;
133 
135 extern const char* TOPIC;
136 extern const char* QOS;
137 extern const char* TIMES;
138 extern const char* UNI_LOC_LIST;
139 extern const char* MULTI_LOC_LIST;
140 extern const char* REM_LOC_LIST;
141 //extern const char* THROUGHPUT_CONT;
142 extern const char* EXP_INLINE_QOS;
143 extern const char* HIST_MEM_POLICY;
144 //extern const char* PROPERTIES_POLICY;
145 extern const char* USER_DEF_ID;
146 extern const char* ENTITY_ID;
147 extern const char* MATCHED_SUBSCRIBERS_ALLOCATION;
148 extern const char* MATCHED_PUBLISHERS_ALLOCATION;
149 
151 extern const char* PROPERTIES;
152 extern const char* BIN_PROPERTIES;
153 extern const char* PROPERTY;
154 extern const char* VALUE;
155 extern const char* PROPAGATE;
156 extern const char* PREALLOCATED;
157 extern const char* PREALLOCATED_WITH_REALLOC;
158 extern const char* DYNAMIC;
159 extern const char* DYNAMIC_REUSABLE;
160 extern const char* LOCATOR;
161 extern const char* UDPv4_LOCATOR;
162 extern const char* UDPv6_LOCATOR;
163 extern const char* TCPv4_LOCATOR;
164 extern const char* TCPv6_LOCATOR;
165 extern const char* KIND;
166 extern const char* ADDRESS;
167 extern const char* UNIQUE_LAN_ID;
168 extern const char* WAN_ADDRESS;
169 extern const char* RESERVED;
170 extern const char* UDPv4;
171 extern const char* UDPv6;
172 extern const char* TCPv4;
173 extern const char* TCPv6;
174 extern const char* SHM;
175 extern const char* INIT_ACKNACK_DELAY;
176 extern const char* HEARTB_RESP_DELAY;
177 extern const char* INIT_HEARTB_DELAY;
178 extern const char* HEARTB_PERIOD;
179 extern const char* NACK_RESP_DELAY;
180 extern const char* NACK_SUPRESSION;
181 extern const char* BY_NAME;
182 extern const char* BY_VAL;
183 extern const char* DURATION_INFINITY;
184 extern const char* DURATION_INFINITE_SEC;
185 extern const char* DURATION_INFINITE_NSEC;
186 extern const char* SECONDS;
187 extern const char* NANOSECONDS;
188 extern const char* SHARED;
189 extern const char* EXCLUSIVE;
190 
192 extern const char* DURABILITY;
193 extern const char* DURABILITY_SRV;
194 extern const char* DEADLINE;
195 extern const char* LATENCY_BUDGET;
196 extern const char* LIVELINESS;
197 extern const char* RELIABILITY;
198 extern const char* LIFESPAN;
199 extern const char* TIME_FILTER;
200 extern const char* OWNERSHIP;
201 extern const char* OWNERSHIP_STRENGTH;
202 extern const char* DEST_ORDER;
203 extern const char* PRESENTATION;
204 extern const char* PARTITION;
205 extern const char* TOPIC_DATA;
206 extern const char* GROUP_DATA;
207 extern const char* PUB_MODE;
208 extern const char* DISABLE_POSITIVE_ACKS;
209 
210 extern const char* SYNCHRONOUS;
211 extern const char* ASYNCHRONOUS;
212 extern const char* NAMES;
213 extern const char* INSTANCE;
214 extern const char* GROUP;
215 extern const char* COHERENT_ACCESS;
216 extern const char* ORDERED_ACCESS;
217 extern const char* BY_RECEPTION_TIMESTAMP;
218 extern const char* BY_SOURCE_TIMESTAMP;
219 extern const char* MIN_SEPARATION;
220 extern const char* DURATION;
221 extern const char* MAX_BLOCK_TIME;
222 extern const char* _BEST_EFFORT;
223 extern const char* _RELIABLE;
224 extern const char* AUTOMATIC;
225 extern const char* MANUAL_BY_PARTICIPANT;
226 extern const char* MANUAL_BY_TOPIC;
227 extern const char* LEASE_DURATION;
228 extern const char* ANNOUNCE_PERIOD;
229 extern const char* COUNT;
230 extern const char* PERIOD;
231 extern const char* SRV_CLEAN_DELAY;
232 extern const char* HISTORY_KIND;
233 extern const char* HISTORY_DEPTH;
234 extern const char* MAX_SAMPLES;
235 extern const char* MAX_INSTANCES;
236 extern const char* MAX_SAMPLES_INSTANCE;
237 extern const char* _VOLATILE;
238 extern const char* _TRANSIENT_LOCAL;
239 extern const char* _TRANSIENT;
240 extern const char* _PERSISTENT;
241 extern const char* KEEP_LAST;
242 extern const char* KEEP_ALL;
243 extern const char* _NO_KEY;
244 extern const char* _WITH_KEY;
245 extern const char* DATA_TYPE;
246 extern const char* HISTORY_QOS;
247 extern const char* RES_LIMITS_QOS;
248 extern const char* DEPTH;
249 extern const char* ALLOCATED_SAMPLES;
250 extern const char* BYTES_PER_SECOND;
251 extern const char* PERIOD_MILLISECS;
252 extern const char* PORT_BASE;
253 extern const char* DOMAIN_ID_GAIN;
254 extern const char* PARTICIPANT_ID_GAIN;
255 extern const char* OFFSETD0;
256 extern const char* OFFSETD1;
257 extern const char* OFFSETD2;
258 extern const char* OFFSETD3;
259 extern const char* RTPS_PDP_TYPE;
260 extern const char* NONE;
261 extern const char* CLIENT;
262 extern const char* SERVER;
263 extern const char* BACKUP;
264 extern const char* IGNORE_PARTICIPANT_FLAGS;
265 extern const char* FILTER_DIFFERENT_HOST;
266 extern const char* FILTER_DIFFERENT_PROCESS;
267 extern const char* FILTER_SAME_PROCESS;
268 extern const char* WRITER_LVESS_PROTOCOL;
269 extern const char* DISCOVERY_SETTINGS;
270 extern const char* _EDP;
271 extern const char* DOMAIN_ID;
272 extern const char* LEASEDURATION;
273 extern const char* LEASE_ANNOUNCE;
274 extern const char* INITIAL_ANNOUNCEMENTS;
275 extern const char* AVOID_BUILTIN_MULTICAST;
276 extern const char* SIMPLE_EDP;
277 extern const char* META_UNI_LOC_LIST;
278 extern const char* META_MULTI_LOC_LIST;
279 extern const char* INIT_PEERS_LIST;
280 extern const char* CLIENTANNOUNCEMENTPERIOD;
281 extern const char* SERVER_LIST;
282 extern const char* RSERVER;
283 extern const char* SIMPLE;
284 extern const char* STATIC;
285 extern const char* PUBWRITER_SUBREADER;
286 extern const char* PUBREADER_SUBWRITER;
287 extern const char* STATIC_ENDPOINT_XML;
288 extern const char* READER_HIST_MEM_POLICY;
289 extern const char* WRITER_HIST_MEM_POLICY;
290 extern const char* READER_PAYLOAD_SIZE;
291 extern const char* WRITER_PAYLOAD_SIZE;
292 extern const char* MUTATION_TRIES;
293 extern const char* ACCESS_SCOPE;
294 extern const char* ENABLED;
295 
296 // Endpoint parser
297 extern const char* STATICDISCOVERY;
298 extern const char* READER;
299 extern const char* WRITER;
300 extern const char* USER_ID;
301 extern const char* EXPECT_INLINE_QOS;
302 extern const char* TOPIC_NAME;
303 extern const char* TOPIC_DATA_TYPE;
304 extern const char* TOPIC_KIND;
305 extern const char* RELIABILITY_QOS;
306 extern const char* UNICAST_LOCATOR;
307 extern const char* MULTICAST_LOCATOR;
308 extern const char* _RELIABLE_RELIABILITY_QOS;
309 extern const char* _BEST_EFFORT_RELIABILITY_QOS;
310 extern const char* DURABILITY_QOS;
311 extern const char* _TRANSIENT_LOCAL_DURABILITY_QOS;
312 extern const char* _VOLATILE_DURABILITY_QOS;
313 extern const char* OWNERSHIP_QOS;
314 extern const char* OWNERSHIP_KIND_NOT_PRESENT;
315 extern const char* _SHARED_OWNERSHIP_QOS;
316 extern const char* _EXCLUSIVE_OWNERSHIP_QOS;
317 extern const char* PARTITION_QOS;
318 extern const char* LIVELINESS_QOS;
319 extern const char* LIVELINESS_KIND_NOT_PRESENT;
320 extern const char* _AUTOMATIC_LIVELINESS_QOS;
321 extern const char* _MANUAL_BY_PARTICIPANT_LIVELINESS_QOS;
322 extern const char* _MANUAL_BY_TOPIC_LIVELINESS_QOS;
323 extern const char* LEASE_DURATION_MS;
324 extern const char* _INF;
325 extern const char* EPROSIMA_UNKNOWN_STRING;
327 extern const char* _VOLATILE_DURABILITY_QOS;
328 extern const char* STRENGTH;
329 
330 // TYPES parser
331 extern const char* BOOLEAN;
332 extern const char* CHAR;
333 extern const char* WCHAR;
334 extern const char* TBYTE;
335 extern const char* OCTET;
336 extern const char* UINT8;
337 extern const char* INT8;
338 extern const char* SHORT;
339 extern const char* LONG;
340 extern const char* USHORT;
341 extern const char* ULONG;
342 extern const char* LONGLONG;
343 extern const char* ULONGLONG;
344 extern const char* FLOAT;
345 extern const char* DOUBLE;
346 extern const char* LONGDOUBLE;
347 extern const char* STRING;
348 extern const char* WSTRING;
349 extern const char* LITERAL;
350 extern const char* STRUCT;
351 extern const char* UNION;
352 extern const char* SEQUENCE;
353 extern const char* MAP;
354 extern const char* TYPEDEF;
355 extern const char* BITSET;
356 extern const char* BITMASK;
357 extern const char* ENUM;
358 extern const char* CASE;
359 extern const char* DEFAULT;
360 extern const char* DISCRIMINATOR;
361 extern const char* CASE_DISCRIMINATOR;
362 extern const char* ARRAY_DIMENSIONS;
363 extern const char* STR_MAXLENGTH;
364 extern const char* SEQ_MAXLENGTH;
365 extern const char* MAP_MAXLENGTH;
366 extern const char* MAP_KEY_TYPE;
367 extern const char* ENUMERATOR;
368 extern const char* NON_BASIC_TYPE;
369 extern const char* NON_BASIC_TYPE_NAME;
370 extern const char* KEY;
371 extern const char* MEMBER;
372 extern const char* BITFIELD;
373 extern const char* BIT_VALUE;
374 extern const char* POSITION;
375 extern const char* BIT_BOUND;
376 extern const char* BASE_TYPE;
377 
378 // LOG
379 extern const char* USE_DEFAULT;
380 extern const char* CONSUMER;
381 extern const char* CLASS;
382 
383 // Allocation config
384 extern const char* INITIAL;
385 extern const char* MAXIMUM;
386 extern const char* INCREMENT;
387 
388 // TLS Config
389 extern const char* TLS;
390 extern const char* TLS_PASSWORD;
391 extern const char* TLS_OPTIONS;
392 extern const char* TLS_CERT_CHAIN_FILE;
393 extern const char* TLS_PRIVATE_KEY_FILE;
394 extern const char* TLS_TMP_DH_FILE;
395 extern const char* TLS_VERIFY_FILE;
396 extern const char* TLS_VERIFY_MODE;
397 extern const char* TLS_VERIFY_PATHS;
398 extern const char* TLS_DEFAULT_VERIFY_PATH;
399 extern const char* TLS_VERIFY_DEPTH;
400 extern const char* TLS_RSA_PRIVATE_KEY_FILE;
401 extern const char* TLS_HANDSHAKE_ROLE;
402 
403 // TLS HandShake Role
404 extern const char* TLS_HANDSHAKE_ROLE_DEFAULT;
405 extern const char* TLS_HANDSHAKE_ROLE_CLIENT;
406 extern const char* TLS_HANDSHAKE_ROLE_SERVER;
407 
408 // TLS Verify Stuff
409 extern const char* TLS_VERIFY_PATH;
410 extern const char* TLS_VERIFY;
411 
412 // TLS Options
413 extern const char* TLS_OPTION;
414 extern const char* TLS_DEFAULT_WORKAROUNDS;
415 extern const char* TLS_NO_COMPRESSION;
416 extern const char* TLS_NO_SSLV2;
417 extern const char* TLS_NO_SSLV3;
418 extern const char* TLS_NO_TLSV1;
419 extern const char* TLS_NO_TLSV1_1;
420 extern const char* TLS_NO_TLSV1_2;
421 extern const char* TLS_NO_TLSV1_3;
422 extern const char* TLS_SINGLE_DH_USE;
423 
424 // TLS Verify Mode
425 extern const char* TLS_VERIFY_NONE;
426 extern const char* TLS_VERIFY_PEER;
427 extern const char* TLS_VERIFY_FAIL_IF_NO_PEER_CERT;
428 extern const char* TLS_VERIFY_CLIENT_ONCE;
429 
430 // Requester and Replier
431 extern const char* SERVICE_NAME;
432 extern const char* REQUEST_TYPE;
433 extern const char* REPLY_TYPE;
434 extern const char* REQUEST_TOPIC_NAME;
435 extern const char* REPLY_TOPIC_NAME;
436 
437 } /* xmlparser */
438 } /* namespace */
439 } /* namespace eprosima */
440 
441 #endif
const char * _VOLATILE_DURABILITY_QOS
Definition: XMLParserCommon.h:327
const char * TLS_HANDSHAKE_ROLE_DEFAULT
const char * _MANUAL_BY_TOPIC_LIVELINESS_QOS
const char * _EXCLUSIVE_OWNERSHIP_QOS
const char * TLS_HANDSHAKE_ROLE_SERVER
const char * TLS_VERIFY_FAIL_IF_NO_PEER_CERT
const char * LIVELINESS_KIND_NOT_PRESENT
const char * OWNERSHIP_KIND_NOT_PRESENT
const char * TLS_DEFAULT_VERIFY_PATH
const char * TOPIC
Publisher-subscriber attributes.
const char * SEGMENT_OVERFLOW_POLICY
const char * _RELIABLE_RELIABILITY_QOS
const char * PREALLOCATED_WITH_REALLOC
XMLP_ret
Enum class XMLP_ret, used to provide a strongly typed result from the operations within this module.
Definition: XMLParserCommon.h:30
const char * ALLOCATION
RTPS Participant attributes.
const char * CLIENTANNOUNCEMENTPERIOD
const char * _AUTOMATIC_LIVELINESS_QOS
const char * IGNORE_PARTICIPANT_FLAGS
const char * HEALTHY_CHECK_TIMEOUT_MS
const char * TLS_RSA_PRIVATE_KEY_FILE
const char * _TRANSIENT_LOCAL_DURABILITY_QOS
Definition: XMLParserCommon.h:326
const char * EPROSIMA_UNKNOWN_STRING
const char * TLS_DEFAULT_WORKAROUNDS
const char * MATCHED_SUBSCRIBERS_ALLOCATION
const char * MAX_INITIAL_PEERS_RANGE
const char * DEFAULT_FASTRTPS_ENV_VARIABLE
const char * INTRAPROCESS_DELIVERY
LibrarySettings attributes.
const char * MATCHED_PUBLISHERS_ALLOCATION
const char * TLS_HANDSHAKE_ROLE_CLIENT
const char * _BEST_EFFORT_RELIABILITY_QOS
const char * _MANUAL_BY_PARTICIPANT_LIVELINESS_QOS
const char * FILTER_DIFFERENT_PROCESS
const char * AVOID_BUILTIN_MULTICAST
const char * DEFAULT_FASTRTPS_PROFILES
eProsima namespace.
Definition: LibrarySettingsAttributes.h:23