OpenDDS
Snapshot(2023/04/28-20:55)
dds
DdsDcpsTypeSupportExt.idl
Go to the documentation of this file.
1
/*
2
* Distributed under the OpenDDS License.
3
* See: http://www.opendds.org/license.html
4
*/
5
6
#ifndef OPENDDS_DDSDCPSTYPESUPPORTEXT_IDL
7
#define OPENDDS_DDSDCPSTYPESUPPORTEXT_IDL
8
9
#include <
dds/DdsDcpsTopic.idl
>
10
#include <
dds/DdsDcpsPublication.idl
>
11
#include <
dds/DdsDcpsSubscription.idl
>
12
13
module
OpenDDS
{
14
module DCPS {
15
16
/**
17
* The generated type-specific FooTypeSupport interfaces include encode_to_* and
18
* decode_from_* operations that take an argument of type RepresentationFormat.
19
* Use one of the derived interfaces of RepresentationFormat to specify the external
20
* format type (JSON, CDR, etc.) and any details of the type conversion.
21
*/
22
local
interface
RepresentationFormat
{
23
};
24
25
/**
26
* Create an instance by passing *CDR_DATA_REPRESENTATION to TypeSupport::make_format().
27
*/
28
local
interface
CdrRepresentationFormat
:
RepresentationFormat
{
29
};
30
31
/**
32
* Create an instance by passing JSON_DATA_REPRESENTATION to TypeSupport::make_format().
33
*/
34
local
interface
JsonRepresentationFormat
:
RepresentationFormat
{
35
};
36
37
local
interface
TypeSupport
:
::DDS::TypeSupport
{
38
39
/**
40
* create and activate a FooDataWriter.
41
* Implemented by FooTypeSupportImpl.
42
* Publisher::create_datawriter() will set the topic, listener, qos and
43
* other initialization so the implementation of this method
44
* is as small and simple as possible.
45
*/
46
::DDS::DataWriter
create_datawriter();
47
48
/**
49
* create and activate a FooDataReader.
50
* Implemented by FooTypeSupportImpl.
51
* Subscriber::create_datareader() will set the topic, listener, qos and
52
* other initialization so the implementation of this method
53
* is as small and simple as possible.
54
*/
55
::DDS::DataReader
create_datareader();
56
57
#ifndef OPENDDS_NO_MULTI_TOPIC
58
::DDS::DataReader
create_multitopic_datareader();
59
#endif
60
61
boolean
has_dcps_key();
62
63
::DDS::ReturnCode_t
unregister_type(
64
in ::DDS::DomainParticipant domain,
65
in
string
type_name);
66
67
/// Get allowed representations defined by IDL annotations
68
void
representations_allowed_by_type(
69
inout ::DDS::DataRepresentationIdSeq
seq);
70
71
RepresentationFormat
make_format(
in ::DDS::DataRepresentationId_t
representation);
72
};
73
};
74
};
75
76
#endif
/* OPENDDS_DCPS_TYPE_SUPPORT_IDL */
DDS::DataWriter
Definition:
DdsDcpsPublication.idl:40
DDS::DataReader
Definition:
DdsDcpsSubscription.idl:75
DDS::DataRepresentationIdSeq
sequence< DataRepresentationId_t > DataRepresentationIdSeq
Definition:
DdsDcpsCore.idl:280
DDS::ReturnCode_t
long ReturnCode_t
Definition:
DdsDcpsInfrastructure.idl:42
OpenDDS::DCPS::CdrRepresentationFormat
Definition:
DdsDcpsTypeSupportExt.idl:28
OpenDDS::DCPS::TypeSupport
Definition:
DdsDcpsTypeSupportExt.idl:37
DdsDcpsTopic.idl
OpenDDS::DCPS::RepresentationFormat
Definition:
DdsDcpsTypeSupportExt.idl:22
DDS::DataRepresentationId_t
short DataRepresentationId_t
Definition:
DdsDcpsCore.idl:271
DdsDcpsPublication.idl
OpenDDS::DCPS::JsonRepresentationFormat
Definition:
DdsDcpsTypeSupportExt.idl:34
OpenDDS
The Internal API and Implementation of OpenDDS.
Definition:
AddressCache.h:28
DDS::TypeSupport
Definition:
DdsDcpsTopic.idl:68
DdsDcpsSubscription.idl
Generated by
1.8.13