MAK RTIspy API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
rtiVersion.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1998 MaK Technologies, Inc.
3 ** All rights reserved.
4 *******************************************************************************/
5 
8 
9 #ifndef DtDtVersion_H_
10 #define DtDtVersion_H_
11 
12 #include "rtiUtil.h"
13 #include <string>
14 
15 #define DtRtiMessageVersion 17
16 #define DtRtiVersionNumber "5.0.1c"
17 #define MAK_RTI_MAJOR_VERSION 5
18 #define MAK_RTI_MINOR_VERSION 0
19 #define MAK_RTI_REVISION 1
20 //#define MAK_RTI_IPB_VERSION 20
21 
22 //--------------------------------------------------
25 //--------------------------------------------------
26 // RTI 3.3 RELEASE NUMBER = 1
27 // RTI 3.3.1 RELEASE NUMBER = 2
28 // RTI 3.3.2 RELEASE NUMBER = 3
29 // RTI 3.4 RELEASE NUMBER = 4
30 // RTI 4.0 RELEASE NUMBER = 5
31 // RTI 4.0.1 RELEASE NUMBER = 6
32 // RTI 4.0.2 RELEASE NUMBER = 7
33 // RTI 4.0.3 RELEASE NUMBER = 8
34 // RTI 4.0.4 RELEASE NUMBER = 9
35 // RTI 4.1 RELEASE NUMBER = 10
36 // RTI 4.1.1 RELEASE NUMBER = 11
37 // RTI 4.2-PR RELEASE NUMBER = 12 (pre-release)
38 // RTI 4.2 RELEASE NUMBER = 13
39 // RTI 4.3 RELEASE NUMBER = 14
40 // RTI 4.4 RELEASE NUMBER = 15
41 // RTI 4.4.1 RELEASE NUMBER = 16
42 // RTI 4.4.2 RELEASE NUMBER = 17
43 // RTI 4.5 RELEASE NUMBER = 18
44 // RTI 4.5.1 RELEASE NUMBER = 19
45 // RTI 4.6 RELEASE NUMBER = 20
46 // RTI 4.6.1 RELEASE NUMBER = 21
47 // RTI 5.0 RELEASE NUMBER = 22
48 // RTI 5.0.1 RELEASE NUMBER = 23
49 #define MAK_RTI_RELEASE_NUM 23
50 
58 };
59 
60 #define DtHla13VersionString "1.3"
61 #define DtHla13DLCVersionString "1.3 DLC"
62 #define DtHla1516VersionString "1516-2000"
63 #define DtHlaEvolvedVersionString "1516-2010"
64 #define DtHla1516_2025VersionString "1516-2025"
65 
66 #ifdef DtIFSPEC1516
67 #define DtHlaVersionString DtHla1516VersionString
69 #elif defined(DtIFSPEC1516E)
70 #define DtHlaVersionString DtHlaEvolvedVersionString
72 #elif defined(DtIFSPEC1516_2025)
73 #define DtHlaVersionString DtHla1516_2025VersionString
75 #elif defined(DtIFSPEC13DLC)
76 #define DtHlaVersionString DtHla13DLCVersionString
78 #else
79 #define DtHlaVersionString DtHla13VersionString
81 #endif
82 
83 #if defined(ENABLE_PROFILER)
84 #define ProfileVersionString "-P"
85 #else
86 #define ProfileVersionString ""
87 #endif
88 
89 #ifndef DtVersion
90 #define DtVersion DtRtiVersionNumber " HLA " DtHlaVersionString ProfileVersionString
91 #endif
92 
93 //Partially stolen from boost (from vlutil, so that we can append the MSVC compiler version to our string
94 #if _WIN32 && ( defined(__INTEL_COMPILER) || defined(__ICL) || defined(__ICC) || defined(__ECC) )
95 
96 # if _MSC_VER == 1200
97 # define MSVC_COMPILER_VERSION "6.0"
98 # elif _MSC_VER == 1300
99 # define MSVC_COMPILER_VERSION "7.0"
100 # elif _MSC_VER == 1310
101 # define MSVC_COMPILER_VERSION "7.1"
102 # elif _MSC_VER == 1400
103 # define MSVC_COMPILER_VERSION "8.0"
104 # elif _MSC_VER == 1500
105 # define MSVC_COMPILER_VERSION "9.0"
106 # elif _MSC_VER == 1600
107 # define MSVC_COMPILER_VERSION "10.0"
108 # elif _MSC_VER == 1700
109 # define MSVC_COMPILER_VERSION "11.0"
110 # elif _MSC_VER == 1800
111 # define MSVC_COMPILER_VERSION "12.0"
112 # elif _MSC_VER == 1900
113 # define MSVC_COMPILER_VERSION "14.0"
114 # elif _MSC_VER == 1916
115 # define MSVC_COMPILER_VERSION "15.0"
116 # else
117 #ifdef _MSC_VER
118 # define MSVC_COMPILER_VERSION _MSC_VER
119 # endif
120 #endif
121 
122 
123 #define DtCompilerName MAKRti::DtString(DtCompiler()) + MAKRti::DtString(" For MSVC ") + MAKRti::DtString(MSVC_COMPILER_VERSION)
124 
125 #else
126 #define DtCompilerName DtCompiler()
127 #endif
128 
129 #define DtDateString MAKRti::DtString(__DATE__) + MAKRti::DtString(" at ") + MAKRti::DtString(__TIME__)
130 
131 
132 #ifndef DtDebugMode
133 #if WIN32
134 #ifdef NDEBUG
135 #define DtDebugMode "Release Mode"
136 #else
137 #define DtDebugMode "Debug Mode"
138 #endif
139 #else
140 #define DtDebugMode ""
141 #endif
142 #endif
143 
144 inline char* DtRtiMessageVersionString(int version)
145 {
146  static char unknownVersionStr[] = "MAK RTI Version unknown";
147  static char rti32VersionStr[] = "MAK RTI Version 3.2";
148  static char rti33VersionStr[] = "MAK RTI Version 3.3";
149  static char rti34VersionStr[] = "MAK RTI Version 3.4";
150  static char rti40VersionStr[] = "MAK RTI Version 4.0";
151  static char rti41VersionStr[] = "MAK RTI Version 4.1";
152  static char rti411VersionStr[] = "MAK RTI Version 4.1.1";
153  static char rti42prAVersionStr[] = "MAK RTI Version 4.2 pre-release A";
154  static char rti42prBVersionStr[] = "MAK RTI Version 4.2 pre-release B";
155  static char rti42VersionStr[] = "MAK RTI Version 4.2";
156  static char rti43VersionStr[] = "MAK RTI Version 4.3";
157  static char rti44VersionStr[] = "MAK RTI Version 4.4";
158  static char rti441VersionStr[] = "MAK RTI Version 4.4.x";
159  static char rti45VersionStr[] = "MAK RTI Version 4.5";
160  static char rti46VersionStr[] = "MAK RTI Version 4.6";
161  static char rti50VersionStr[] = "MAK RTI Version 5.0";
162  static char rti501VersionStr[] = "MAK RTI Version 5.0.1a";
163 
164 
165  char* versionString = unknownVersionStr;
166  switch (version)
167  {
168  case 1:
169  versionString = rti32VersionStr;
170  break;
171  case 2:
172  versionString = rti33VersionStr;
173  break;
174  case 3:
175  versionString = rti34VersionStr;
176  break;
177  case 4:
178  versionString = rti40VersionStr;
179  break;
180  // Message version 5 was internal only, never released
181  case 6:
182  versionString = rti41VersionStr;
183  break;
184  case 7:
185  versionString = rti411VersionStr;
186  break;
187  case 8:
188  versionString = rti42prAVersionStr;
189  break;
190  case 9:
191  versionString = rti42prBVersionStr;
192  break;
193  case 10:
194  versionString = rti42VersionStr;
195  break;
196  case 11:
197  versionString = rti43VersionStr;
198  break;
199  case 12:
200  versionString = rti44VersionStr;
201  break;
202  case 13:
203  versionString = rti441VersionStr;
204  break;
205  case 14:
206  versionString = rti45VersionStr;
207  break;
208  case 15:
209  versionString = rti46VersionStr;
210  break;
211  case 16:
212  versionString = rti50VersionStr;
213  break;
214  case 17:
215  versionString = rti501VersionStr;
216  break;
217  default:
218  versionString = unknownVersionStr;
219  break;
220  }
221  return versionString;
222 }
223 
224 inline char* DtHlaVersionFromId(DtHlaVersionId hlaVers)
225 {
226  static char unknownVersionStr[] = "HLA Version unknown";
227  static char hla13VersionStr[] = DtHla13VersionString;
228  static char hla13DlcVersionStr[] = DtHla13DLCVersionString;
229  static char hla1516VersionStr[] = DtHla1516VersionString;
230  static char hla1516eVersionStr[] = DtHlaEvolvedVersionString;
231  static char hla1516_2025VersionStr[] = DtHla1516_2025VersionString;
232 
233  char* versionString = unknownVersionStr;
234 
235  switch (hlaVers)
236  {
237  case DtHla13:
238  versionString = hla13VersionStr;
239  break;
240  case DtHla13DLC:
241  versionString = hla13DlcVersionStr;
242  break;
243  case DtHla1516:
244  versionString = hla1516VersionStr;
245  break;
246  case DtHlaEvolved:
247  versionString = hla1516eVersionStr;
248  break;
249  case DtHla1516_2025:
250  versionString = hla1516_2025VersionStr;
251  break;
252  default:
253  break;
254  }
255  return versionString;
256 }
257 
258 
259  DT_DLL_RTIUTIL extern const char* const theRtiLongAppName;
260  DT_DLL_RTIUTIL extern const char* const theRtiLongShortName;
261  DT_DLL_RTIUTIL extern const char* const theRtiBuildDate;
262  DT_DLL_RTIUTIL extern const char* const theRtiBuildTime;
263  DT_DLL_RTIUTIL extern std::string theRtiProtocol;
264 
265 
266 #endif //DtDtVersion_H_
267 
#define DtHla13DLCVersionString
Definition: rtiVersion.h:61
#define DtHla1516_2025VersionString
Definition: rtiVersion.h:64
Definition: rtiVersion.h:52
Definition: rtiVersion.h:56
char * DtRtiMessageVersionString(int version)
Definition: rtiVersion.h:144
DtHlaVersionId
Definition: rtiVersion.h:51
Definition: rtiVersion.h:53
DT_DLL_RTIUTIL const char *const theRtiBuildTime
DT_DLL_RTIUTIL const char *const theRtiBuildDate
Definition: rtiVersion.h:55
DT_DLL_RTIUTIL const char *const theRtiLongShortName
Definition: rtiVersion.h:54
#define DtHla13VersionString
Definition: rtiVersion.h:60
#define DtHla1516VersionString
Definition: rtiVersion.h:62
DT_DLL_RTIUTIL const char *const theRtiLongAppName
Definition: rtiVersion.h:57
#define DtHlaEvolvedVersionString
Definition: rtiVersion.h:63
const DtHlaVersionId DtHlaVersion(DtHla13)
char * DtHlaVersionFromId(DtHlaVersionId hlaVers)
Definition: rtiVersion.h:224
#define DT_DLL_RTIUTIL
Definition: rtiMsConfig.h:160
DT_DLL_RTIUTIL std::string theRtiProtocol

Document ID: Generated on Wed Jul 8 16:20:32 EDT 2026 from SVN revision 291616
Copyright © 2005-2025 MAK Technologies Inc. All Rights Reserved (www.mak.com)