DDS-PSM-C++
1.0
ISO C++ API for OpenSplice DDS
Main Page
Namespaces
Classes
Files
File List
File Members
All
Classes
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
src
hpp
dds
core
xtypes
TAnnotation.hpp
Go to the documentation of this file.
1
#ifndef OMG_DDS_CORE_XTYPES_TANNOTATIONS_HPP_
2
#define OMG_DDS_CORE_XTYPES_TANNOTATIONS_HPP_
3
4
#include <
dds/core/Reference.hpp
>
5
6
namespace
dds {
7
namespace
core {
8
namespace
xtypes {
9
10
struct
AnnotationKind_def
{
11
enum
type
{
12
ID_ANNOTATION_TYPE
,
13
OPTIONAL_ANNOTATION_TYPE
,
14
KEY_ANNOTATION_TYPE
,
15
SHARED_ANNOTATION_TYPE
,
16
NESTED_ANNOTATION_TYPE
,
17
EXTENSIBILITY_ANNOTATION_TYPE
,
18
MUST_UNDERSTAND_ANNOTATION_TYPE
,
19
VERBATIM_ANNOTATION_TYPE
,
20
BITSET_ANNOTATION_TYPE
21
};
22
};
23
24
typedef
dds::core::safe_enum<AnnotationKind_def>
AnnotationKind
;
25
26
struct
ExtensibilityKind_def
{
27
enum
type
{
28
FINAL
,
29
EXTENSIBLE
,
30
MUTABLE
31
};
32
};
33
typedef
dds::core::safe_enum<ExtensibilityKind_def>
ExtensibilityKind
;
34
35
36
template
<
typename
DELEGATE>
37
class
TAnnotation
;
38
39
template
<
typename
DELEGATE>
40
class
TIdAnnotation
;
41
42
template
<
typename
DELEGATE>
43
class
TKeyAnnotation
;
44
45
template
<
typename
DELEGATE>
46
class
TSharedAnnotation
;
47
48
template
<
typename
DELEGATE>
49
class
TNestedAnnotation
;
50
51
template
<
typename
DELEGATE>
52
class
TExtensibilityAnnotation
;
53
54
template
<
typename
DELEGATE>
55
class
TMustUnderstandAnnotation
;
56
57
template
<
typename
DELEGATE>
58
class
TVerbatimAnnotation
;
59
60
template
<
typename
DELEGATE>
61
class
TBitsetAnnotation
;
62
63
template
<
typename
DELEGATE>
64
class
TBitBoundAnnotation
;
65
66
}
67
}
68
}
69
70
template
<
typename
DELEGATE>
71
class
dds::core::xtypes::TAnnotation
:
public
dds::core::Reference
<DELEGATE> {
72
public
:
73
OMG_DDS_REF_TYPE
(
TAnnotation
,
dds::core::Reference
, DELEGATE)
74
75
public
:
76
TAnnotation
();
77
protected
:
78
TAnnotation
(
const
TypeKind&
kind
);
79
public
:
80
TypeKind
kind
()
const
;
81
};
82
template
<
typename
DELEGATE>
83
class
dds::core::xtypes::TIdAnnotation
:
public
dds::core::xtypes::TAnnotation
<DELEGATE> {
84
public
:
85
TIdAnnotation
(uint32_t
id
);
86
public
:
87
uint32_t
id
()
const
;
88
};
89
template
<
typename
DELEGATE>
90
class
dds::core::xtypes::TKeyAnnotation
:
public
dds::core::xtypes::TAnnotation
<DELEGATE> {
91
public
:
92
TKeyAnnotation
();
93
};
94
template
<
typename
DELEGATE>
95
class
dds::core::xtypes::TSharedAnnotation
:
public
dds::core::xtypes::TAnnotation
<DELEGATE> {
96
public
:
97
TSharedAnnotation
();
98
};
99
template
<
typename
DELEGATE>
100
class
dds::core::xtypes::TNestedAnnotation
:
public
dds::core::xtypes::TAnnotation
<DELEGATE> {
101
public
:
102
TNestedAnnotation
();
103
};
104
105
template
<
typename
DELEGATE>
106
class
dds::core::xtypes::TExtensibilityAnnotation
:
public
dds::core::xtypes::TAnnotation
<DELEGATE> {
107
108
public
:
109
TExtensibilityAnnotation
(
ExtensibilityKind
xkind);
110
111
public
:
112
ExtensibilityKind
extensibility_kind
()
const
;
113
};
114
115
template
<
typename
DELEGATE>
116
class
dds::core::xtypes::TMustUnderstandAnnotation
:
public
dds::core::xtypes::TAnnotation
<DELEGATE> {
117
public
:
118
TMustUnderstandAnnotation
();
119
};
120
121
template
<
typename
DELEGATE>
122
class
dds::core::xtypes::TVerbatimAnnotation
:
public
dds::core::xtypes::TAnnotation
<DELEGATE> {
123
public
:
124
TVerbatimAnnotation
(
const
std::string& text);
125
public
:
126
const
std::string&
verbatim_text
()
const
;
127
};
128
129
template
<
typename
DELEGATE>
130
class
dds::core::xtypes::TBitsetAnnotation
:
public
dds::core::xtypes::TAnnotation
<DELEGATE> {
131
public
:
132
TBitsetAnnotation
();
133
134
};
135
136
template
<
typename
DELEGATE>
137
class
dds::core::xtypes::TBitBoundAnnotation
:
public
dds::core::xtypes::TAnnotation
<DELEGATE> {
138
public
:
139
TBitBoundAnnotation
(uint32_t bound);
140
};
141
142
143
#endif
/* OMG_DDS_CORE_XTYPES_TANNOTATIONS_HPP_ */
Generated on Sat Nov 3 2012 00:02:18 for DDS-PSM-C++ by
1.8.2