Safir SDK Core
Loading...
Searching...
No Matches
Defs.h
Go to the documentation of this file.
1/******************************************************************************
2*
3* Copyright Saab AB, 2004-2015 (http://safirsdkcore.com)
4*
5* Created by: Joel Ottosson / stjoot
6*
7*******************************************************************************
8*
9* This file is part of Safir SDK Core.
10*
11* Safir SDK Core is free software: you can redistribute it and/or modify
12* it under the terms of version 3 of the GNU General Public License as
13* published by the Free Software Foundation.
14*
15* Safir SDK Core is distributed in the hope that it will be useful,
16* but WITHOUT ANY WARRANTY; without even the implied warranty of
17* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18* GNU General Public License for more details.
19*
20* You should have received a copy of the GNU General Public License
21* along with Safir SDK Core. If not, see <http://www.gnu.org/licenses/>.
22*
23******************************************************************************/
24
25#ifndef __SAFIR_DOB_TYPESYSTEM_DEFS_H__
26#define __SAFIR_DOB_TYPESYSTEM_DEFS_H__
27
28#include <Safir/Utilities/Internal/VisibilityHelpers.h>
29
30#ifdef dots_cpp_EXPORTS
31# define DOTS_CPP_API SAFIR_HELPER_DLL_EXPORT
32#else
33# define DOTS_CPP_API SAFIR_HELPER_DLL_IMPORT
34# define SAFIR_LIBRARY_NAME "dots_cpp"
35# include <Safir/Utilities/Internal/AutoLink.h>
36#endif
37#define DOTS_CPP_LOCAL SAFIR_HELPER_DLL_LOCAL
38
39#include <Safir/Dob/Typesystem/LanguageInterfaceDefs.h>
40#include <string>
41#include <vector>
45namespace Safir
46{
50namespace Dob
51{
55namespace Typesystem
56{
66 typedef DotsC_Int32 Int32;
69 typedef DotsC_Int64 Int64;
72 typedef DotsC_Float32 Float32;
75 typedef DotsC_Float64 Float64;
85 namespace Si32
86 {
88 typedef Float32 Ampere;
89
92
94 typedef Float32 Hertz;
95
97 typedef Float32 Joule;
98
101
104
106 typedef Float32 Meter;
107
110
113
116
119
122
125
128
131
134
137
139 typedef Float32 Volt;
140
142 typedef Float32 Watt;
143 }
144
152 namespace Si64
153 {
156
159
161 typedef Float64 Hertz;
162
164 typedef Float64 Joule;
165
168
171
173 typedef Float64 Meter;
174
177
180
183
186
189
192
195
198
201
204
206 typedef Float64 Volt;
207
209 typedef Float64 Watt;
210 }
211
218 typedef DotsC_TypeId TypeId;
219
221 typedef std::vector<TypeId> TypeIdVector;
222
237 typedef DotsC_MemberIndex MemberIndex;
238
246 typedef DotsC_ArrayIndex ArrayIndex;
247
256 typedef DotsC_ParameterIndex ParameterIndex;
257
270 typedef DotsC_EnumerationValue EnumerationValue;
271
278 typedef DotsC_MemberType MemberType;
279
285 typedef DotsC_PropertyMappingKind PropertyMappingKind;
286
293 typedef DotsC_CollectionType CollectionType;
294
301 typedef std::vector<char> BinarySerialization;
302
306 typedef std::vector<char> Binary;
307}
308}
309}
310#endif
This namespace contains all the functionality and definitions of the SAFIR SDK.
Definition Backdoor.h:31
DotsC_EnumerationValue EnumerationValue
The ordinal value of an enumeration.
Definition Defs.h:270
std::vector< char > BinarySerialization
A type to contain binary serializations of DOB objects.
Definition Defs.h:301
DotsC_Float32 Float32
32 bit floating point type.
Definition Defs.h:72
DotsC_PropertyMappingKind PropertyMappingKind
An enumeration of the possible ways a property value can be defined.
Definition Defs.h:285
std::vector< char > Binary
A type to contain binary data.
Definition Defs.h:306
DotsC_Int32 Int32
32 bit integer type.
Definition Defs.h:66
DotsC_Int64 Int64
64 bit integer type.
Definition Defs.h:69
DotsC_ParameterIndex ParameterIndex
The index of a parameter in an object.
Definition Defs.h:256
DotsC_Float64 Float64
64 bit floating point type.
Definition Defs.h:75
std::vector< TypeId > TypeIdVector
A vector of TypeIds.
Definition Defs.h:221
DotsC_CollectionType CollectionType
An enumeration of all possible collection types of an object member.
Definition Defs.h:293
DotsC_ArrayIndex ArrayIndex
Index into an array.
Definition Defs.h:246
DotsC_TypeId TypeId
A unique type identifier.
Definition Defs.h:218
DotsC_MemberType MemberType
An enumeration of all possible types of an object member.
Definition Defs.h:278
DotsC_MemberIndex MemberIndex
The index of a member in an object.
Definition Defs.h:237
Float32 Steradian
32 bit representation of Steradian.
Definition Defs.h:136
Float32 Watt
32 bit representation of Watt.
Definition Defs.h:142
Float32 RadianPerSecond
32 bit representation of RadianPerSecond.
Definition Defs.h:124
Float32 Radian
32 bit representation of Radian.
Definition Defs.h:121
Float32 Volt
32 bit representation of Volt.
Definition Defs.h:139
Float32 Pascal
32 bit representation of Pascal.
Definition Defs.h:118
Float32 Newton
32 bit representation of Newton.
Definition Defs.h:115
Float32 SquareMeter
32 bit representation of SquareMeter.
Definition Defs.h:133
Float32 MeterPerSecondSquared
32 bit representation of MeterPerSecondSquared.
Definition Defs.h:112
Float32 Kelvin
32 bit representation of Kelvin.
Definition Defs.h:100
Float32 RadianPerSecondSquared
32 bit representation of RadianPerSecondSquared.
Definition Defs.h:127
Float32 Ampere
32 bit representation of Ampere.
Definition Defs.h:88
Float32 Meter
32 bit representation of Meter.
Definition Defs.h:106
Float32 Joule
32 bit representation of Joule.
Definition Defs.h:97
Float32 Hertz
32 bit representation of Hertz.
Definition Defs.h:94
Float32 MeterPerSecond
32 bit representation of MeterPerSecond.
Definition Defs.h:109
Float32 CubicMeter
32 bit representation of CubicMeter.
Definition Defs.h:91
Float32 Kilogram
32 bit representation of Kilogram.
Definition Defs.h:103
Float32 Second
32 bit representation of Second.
Definition Defs.h:130
Float64 Ampere
64 bit representation of Ampere.
Definition Defs.h:155
Float64 Kelvin
64 bit representation of Kelvin.
Definition Defs.h:167
Float64 Newton
64 bit representation of Newton.
Definition Defs.h:182
Float64 Pascal
64 bit representation of Pascal.
Definition Defs.h:185
Float64 Second
64 bit representation of Second.
Definition Defs.h:197
Float64 Kilogram
64 bit representation of Kilogram.
Definition Defs.h:170
Float64 Radian
64 bit representation of Radian.
Definition Defs.h:188
Float64 Joule
64 bit representation of Joule.
Definition Defs.h:164
Float64 Volt
64 bit representation of Volt.
Definition Defs.h:206
Float64 Watt
64 bit representation of Watt.
Definition Defs.h:209
Float64 RadianPerSecondSquared
64 bit representation of RadianPerSecondSquared.
Definition Defs.h:194
Float64 Steradian
64 bit representation of Steradian.
Definition Defs.h:203
Float64 Meter
64 bit representation of Meter.
Definition Defs.h:173
Float64 Hertz
64 bit representation of Hertz.
Definition Defs.h:161
Float64 RadianPerSecond
64 bit representation of RadianPerSecond.
Definition Defs.h:191
Float64 MeterPerSecond
64 bit representation of MeterPerSecond.
Definition Defs.h:176
Float64 CubicMeter
64 bit representation of CubicMeter.
Definition Defs.h:158
Float64 MeterPerSecondSquared
64 bit representation of MeterPerSecondSquared.
Definition Defs.h:179
Float64 SquareMeter
64 bit representation of SquareMeter.
Definition Defs.h:200