Fast DDS  Version 3.6.1.0
Fast DDS
dynamic_language_binding.hpp
1 // Copyright 2016 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 
22 #ifndef FAST_DDS_GENERATED__DYNAMIC_LANGUAGE_BINDING_HPP
23 #define FAST_DDS_GENERATED__DYNAMIC_LANGUAGE_BINDING_HPP
24 
25 #include <cstdint>
26 #include <map>
27 #include <string>
28 #include <utility>
29 #include <vector>
30 
31 #include <fastcdr/cdr/fixed_size_string.hpp>
32 
33 #if defined(_WIN32)
34 #if defined(EPROSIMA_USER_DLL_EXPORT)
35 #define eProsima_user_DllExport __declspec( dllexport )
36 #else
37 #define eProsima_user_DllExport
38 #endif // EPROSIMA_USER_DLL_EXPORT
39 #else
40 #define eProsima_user_DllExport
41 #endif // _WIN32
42 
43 #if defined(_WIN32)
44 #if defined(EPROSIMA_USER_DLL_EXPORT)
45 #if defined(DYNAMIC_LANGUAGE_BINDING_SOURCE)
46 #define DYNAMIC_LANGUAGE_BINDING_DllAPI __declspec( dllexport )
47 #else
48 #define DYNAMIC_LANGUAGE_BINDING_DllAPI __declspec( dllimport )
49 #endif // DYNAMIC_LANGUAGE_BINDING_SOURCE
50 #else
51 #define DYNAMIC_LANGUAGE_BINDING_DllAPI
52 #endif // EPROSIMA_USER_DLL_EXPORT
53 #else
54 #define DYNAMIC_LANGUAGE_BINDING_DllAPI
55 #endif // _WIN32
56 
57 namespace eprosima {
58 
59 namespace fastdds {
60 
61 namespace dds {
62 
63 
64 typedef std::vector<std::string> IncludePathSeq;
65 
66 typedef eprosima::fastcdr::fixed_string<256> ObjectName;
67 
68 typedef std::vector<uint32_t> BoundSeq;
69 
70 typedef uint8_t TypeKind;
71 
72 const TypeKind TK_NONE = 0x00;
73 const TypeKind TK_BOOLEAN = 0x01;
74 const TypeKind TK_BYTE = 0x02;
75 const TypeKind TK_INT16 = 0x03;
76 const TypeKind TK_INT32 = 0x04;
77 const TypeKind TK_INT64 = 0x05;
78 const TypeKind TK_UINT16 = 0x06;
79 const TypeKind TK_UINT32 = 0x07;
80 const TypeKind TK_UINT64 = 0x08;
81 const TypeKind TK_FLOAT32 = 0x09;
82 const TypeKind TK_FLOAT64 = 0x0A;
83 const TypeKind TK_FLOAT128 = 0x0B;
84 const TypeKind TK_INT8 = 0x0C;
85 const TypeKind TK_UINT8 = 0x0D;
86 const TypeKind TK_CHAR8 = 0x10;
87 const TypeKind TK_CHAR16 = 0x11;
88 const TypeKind TK_STRING8 = 0x20;
89 const TypeKind TK_STRING16 = 0x21;
90 const TypeKind TK_ALIAS = 0x30;
91 const TypeKind TK_ENUM = 0x40;
92 const TypeKind TK_BITMASK = 0x41;
93 const TypeKind TK_ANNOTATION = 0x50;
94 const TypeKind TK_STRUCTURE = 0x51;
95 const TypeKind TK_UNION = 0x52;
96 const TypeKind TK_BITSET = 0x53;
97 const TypeKind TK_SEQUENCE = 0x60;
98 const TypeKind TK_ARRAY = 0x61;
99 const TypeKind TK_MAP = 0x62;
100 typedef std::map<ObjectName, ObjectName> Parameters;
101 
106 enum class ExtensibilityKind : int32_t
107 {
108  FINAL,
109  APPENDABLE,
110  MUTABLE
111 };
116 enum class TryConstructKind : int32_t
117 {
118  USE_DEFAULT,
119  DISCARD,
120  TRIM
121 };
122 typedef uint32_t MemberId;
123 
124 typedef std::vector<int32_t> UnionCaseLabelSeq;
125 
126 typedef std::vector<int32_t> Int32Seq;
127 
128 typedef std::vector<uint32_t> UInt32Seq;
129 
130 typedef std::vector<int8_t> Int8Seq;
131 
132 typedef std::vector<uint8_t> UInt8Seq;
133 
134 typedef std::vector<int16_t> Int16Seq;
135 
136 typedef std::vector<uint16_t> UInt16Seq;
137 
138 typedef std::vector<int64_t> Int64Seq;
139 
140 typedef std::vector<uint64_t> UInt64Seq;
141 
142 typedef std::vector<float> Float32Seq;
143 
144 typedef std::vector<double> Float64Seq;
145 
146 typedef std::vector<long double> Float128Seq;
147 
148 typedef std::vector<char> CharSeq;
149 
150 typedef std::vector<wchar_t> WcharSeq;
151 
152 typedef std::vector<bool> BooleanSeq;
153 
154 typedef std::vector<uint8_t> ByteSeq;
155 
156 typedef std::vector<std::string> StringSeq;
157 
158 typedef std::vector<std::wstring> WstringSeq;
159 
160 
161 } // namespace dds
162 
163 } // namespace fastdds
164 
165 } // namespace eprosima
166 
167 
168 #endif // _FAST_DDS_GENERATED_DYNAMIC_LANGUAGE_BINDING_HPP_
169 
170 
ExtensibilityKind
This class represents the enumeration ExtensibilityKind defined by the user in the IDL file.
Definition: dynamic_language_binding.hpp:107
TryConstructKind
This class represents the enumeration TryConstructKind defined by the user in the IDL file.
Definition: dynamic_language_binding.hpp:117
Definition: DomainParticipant.hpp:46
const TypeKind TK_ENUM
Definition: dynamic_language_binding.hpp:91
const TypeKind TK_BOOLEAN
Definition: dynamic_language_binding.hpp:73
uint32_t MemberId
Definition: dynamic_language_binding.hpp:122
const TypeKind TK_UINT16
Definition: dynamic_language_binding.hpp:78
const TypeKind TK_FLOAT128
Definition: dynamic_language_binding.hpp:83
std::vector< std::string > IncludePathSeq
Definition: dynamic_language_binding.hpp:64
const TypeKind TK_STRING8
Definition: dynamic_language_binding.hpp:88
std::vector< uint8_t > UInt8Seq
Definition: dynamic_language_binding.hpp:132
const TypeKind TK_ALIAS
Definition: dynamic_language_binding.hpp:90
const TypeKind TK_STRUCTURE
Definition: dynamic_language_binding.hpp:94
std::vector< int32_t > UnionCaseLabelSeq
Definition: dynamic_language_binding.hpp:124
const TypeKind TK_INT32
Definition: dynamic_language_binding.hpp:76
const TypeKind TK_UINT64
Definition: dynamic_language_binding.hpp:80
std::vector< uint16_t > UInt16Seq
Definition: dynamic_language_binding.hpp:136
std::vector< char > CharSeq
Definition: dynamic_language_binding.hpp:148
std::vector< long double > Float128Seq
Definition: dynamic_language_binding.hpp:146
const TypeKind TK_CHAR16
Definition: dynamic_language_binding.hpp:87
const TypeKind TK_NONE
Definition: dynamic_language_binding.hpp:72
std::vector< int64_t > Int64Seq
Definition: dynamic_language_binding.hpp:138
const TypeKind TK_UNION
Definition: dynamic_language_binding.hpp:95
const TypeKind TK_ARRAY
Definition: dynamic_language_binding.hpp:98
std::vector< float > Float32Seq
Definition: dynamic_language_binding.hpp:142
const TypeKind TK_MAP
Definition: dynamic_language_binding.hpp:99
std::vector< double > Float64Seq
Definition: dynamic_language_binding.hpp:144
std::vector< std::string > StringSeq
Definition: dynamic_language_binding.hpp:156
const TypeKind TK_FLOAT64
Definition: dynamic_language_binding.hpp:82
const TypeKind TK_BITMASK
Definition: dynamic_language_binding.hpp:92
const TypeKind TK_FLOAT32
Definition: dynamic_language_binding.hpp:81
std::map< ObjectName, ObjectName > Parameters
Definition: dynamic_language_binding.hpp:100
std::vector< wchar_t > WcharSeq
Definition: dynamic_language_binding.hpp:150
const TypeKind TK_CHAR8
Definition: dynamic_language_binding.hpp:86
std::vector< uint32_t > UInt32Seq
Definition: dynamic_language_binding.hpp:128
std::vector< bool > BooleanSeq
Definition: dynamic_language_binding.hpp:152
const TypeKind TK_SEQUENCE
Definition: dynamic_language_binding.hpp:97
const TypeKind TK_INT16
Definition: dynamic_language_binding.hpp:75
const TypeKind TK_UINT8
Definition: dynamic_language_binding.hpp:85
std::vector< uint32_t > BoundSeq
Definition: dynamic_language_binding.hpp:68
std::vector< int32_t > Int32Seq
Definition: dynamic_language_binding.hpp:126
const TypeKind TK_ANNOTATION
Definition: dynamic_language_binding.hpp:93
const TypeKind TK_INT64
Definition: dynamic_language_binding.hpp:77
const TypeKind TK_STRING16
Definition: dynamic_language_binding.hpp:89
std::vector< uint8_t > ByteSeq
Definition: dynamic_language_binding.hpp:154
std::vector< uint64_t > UInt64Seq
Definition: dynamic_language_binding.hpp:140
const TypeKind TK_BYTE
Definition: dynamic_language_binding.hpp:74
const TypeKind TK_UINT32
Definition: dynamic_language_binding.hpp:79
eprosima::fastcdr::fixed_string< 256 > ObjectName
Definition: dynamic_language_binding.hpp:66
std::vector< int16_t > Int16Seq
Definition: dynamic_language_binding.hpp:134
std::vector< std::wstring > WstringSeq
Definition: dynamic_language_binding.hpp:158
std::vector< int8_t > Int8Seq
Definition: dynamic_language_binding.hpp:130
const TypeKind TK_INT8
Definition: dynamic_language_binding.hpp:84
const TypeKind TK_BITSET
Definition: dynamic_language_binding.hpp:96
uint8_t TypeKind
Definition: dynamic_language_binding.hpp:70