VR-Link API Documentation for HLA Evolved
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
rtiCompatibility.h
Go to the documentation of this file.
1 /*******************************************************************************
2 ** Copyright (c) 1992-2025 MAK Technologies, Inc
3 ** All rights reserved.
4 *******************************************************************************/
5 #pragma once
6 
7 #if DtHLA
8 
10 #include <iosfwd>
11 #include <cstring>
12 
19 
20 #if DtHLA_1516
21 
22  #if DtHLA_4
23 
24  #include <RTI/RTI1516.h>
25 
26 
28  DT_DLL_VL std::ostream& operator<<
29  (std::ostream& os, const rti1516_2025::ObjectInstanceHandle& handle);
30 
32  DT_DLL_VL std::ostream& operator<<
33  (std::ostream& os, const rti1516_2025::ObjectClassHandle& handle);
34 
36  DT_DLL_VL std::ostream& operator<<
37  (std::ostream& os, const rti1516_2025::InteractionClassHandle& handle);
38 
40  DT_DLL_VL std::ostream& operator<<
41  (std::ostream& os, const rti1516_2025::AttributeHandle& handle);
42 
44  DT_DLL_VL std::ostream& operator<<
45  (std::ostream& os, const rti1516_2025::ParameterHandle& handle);
46 
48  DT_DLL_VL std::ostream& operator<<
49  (std::ostream& os, const rti1516_2025::Exception& exception);
50 
53  namespace rti1516_2025 {
54 
65  template <typename HandleType, typename MapType>
66  class CompatibleHandleValuePairSet
67  {
68  public:
69 
70  CompatibleHandleValuePairSet(MapType *AHVM);
71  CompatibleHandleValuePairSet(const MapType *AHVM);
72  ~CompatibleHandleValuePairSet();
73 
74  unsigned long size() const ;
75  HandleType getHandle( unsigned long i) const ;
76  unsigned long getValueLength( unsigned long i) const ;
77  void getValue(unsigned long i, char* buffer, unsigned long &valueLength) const ;
78  char *getValuePointer(unsigned long i, unsigned long &valueLength) const ;
79  void add(HandleType h, const char* buffer, unsigned long valueLength);
80  void remove(HandleType h);
81  void empty();
82 
83  protected:
84 
85  void updateCachedIterator(unsigned long i) const;
86 
87  MapType *myMap;
88  mutable int myLastPlace;
89  mutable typename MapType::iterator myLastMapPosition;
90  };
91 
92 
95  typedef CompatibleHandleValuePairSet<AttributeHandle, AttributeHandleValueMap>
96  AttributeHandleValuePairSet;
97 
98  typedef CompatibleHandleValuePairSet<ParameterHandle, ParameterHandleValueMap>
99  ParameterHandleValuePairSet;
100 
101 
103  typedef unsigned long ULong;
104  typedef ObjectInstanceHandle ObjectHandle;
105 
106  };
107 #elif DtHLA_1516_EVOLVED
108 
109 #include <RTI/RTI1516.h>
110 
111 
113 DT_DLL_VL std::ostream& operator<<
114 (std::ostream& os, const rti1516e::ObjectInstanceHandle& handle);
115 
117 DT_DLL_VL std::ostream& operator<<
118 (std::ostream& os, const rti1516e::ObjectClassHandle& handle);
119 
121 DT_DLL_VL std::ostream& operator<<
122 (std::ostream& os, const rti1516e::InteractionClassHandle& handle);
123 
125 DT_DLL_VL std::ostream& operator<<
126 (std::ostream& os, const rti1516e::AttributeHandle& handle);
127 
129 DT_DLL_VL std::ostream& operator<<
130 (std::ostream& os, const rti1516e::ParameterHandle& handle);
131 
133 DT_DLL_VL std::ostream& operator<<
134 (std::ostream& os, const rti1516e::Exception& exception);
135 
138 namespace rti1516e {
139 
150  template <typename HandleType, typename MapType>
151  class CompatibleHandleValuePairSet
152  {
153  public:
154 
155  CompatibleHandleValuePairSet(MapType* AHVM);
156  CompatibleHandleValuePairSet(const MapType* AHVM);
157  ~CompatibleHandleValuePairSet();
158 
159  unsigned long size() const;
160  HandleType getHandle(unsigned long i) const;
161  unsigned long getValueLength(unsigned long i) const;
162  void getValue(unsigned long i, char* buffer, unsigned long& valueLength) const;
163  char* getValuePointer(unsigned long i, unsigned long& valueLength) const;
164  void add(HandleType h, const char* buffer, unsigned long valueLength);
165  void remove(HandleType h);
166  void empty();
167 
168  protected:
169 
170  void updateCachedIterator(unsigned long i) const;
171 
172  MapType* myMap;
173  mutable int myLastPlace;
174  mutable typename MapType::iterator myLastMapPosition;
175  };
176 
177 
180  typedef CompatibleHandleValuePairSet<AttributeHandle, AttributeHandleValueMap>
181  AttributeHandleValuePairSet;
182 
183  typedef CompatibleHandleValuePairSet<ParameterHandle, ParameterHandleValueMap>
184  ParameterHandleValuePairSet;
185 
186 
188  typedef unsigned long ULong;
189  typedef ObjectInstanceHandle ObjectHandle;
190 
191 };
192 
193  #else
194 
195  #include <RTI/RTI1516.h>
196 
197 
199  DT_DLL_VL std::ostream& operator<<
200  (std::ostream& os, const rti1516::ObjectInstanceHandle& handle);
201 
203  DT_DLL_VL std::ostream& operator<<
204  (std::ostream& os, const rti1516::ObjectClassHandle& handle);
205 
207  DT_DLL_VL std::ostream& operator<<
208  (std::ostream& os, const rti1516::InteractionClassHandle& handle);
209 
211  DT_DLL_VL std::ostream& operator<<
212  (std::ostream& os, const rti1516::AttributeHandle& handle);
213 
215  DT_DLL_VL std::ostream& operator<<
216  (std::ostream& os, const rti1516::ParameterHandle& handle);
217 
219  DT_DLL_VL std::ostream& operator<<
220  (std::ostream& os, const rti1516::Exception& exception);
221 
224  namespace rti1516 {
225 
236  template <typename HandleType, typename MapType>
237  class CompatibleHandleValuePairSet
238  {
239  public:
240 
241  CompatibleHandleValuePairSet(MapType *AHVM);
242  CompatibleHandleValuePairSet(const MapType *AHVM);
243  ~CompatibleHandleValuePairSet();
244 
245  inline unsigned long size() const ;
246  inline HandleType getHandle( unsigned long i) const ;
247  inline unsigned long getValueLength( unsigned long i) const ;
248  inline void getValue(unsigned long i, char* buffer, unsigned long &valueLength) const ;
249  inline char *getValuePointer(unsigned long i, unsigned long &valueLength) const ;
250  inline void add(HandleType h, const char* buffer, unsigned long valueLength);
251  inline void remove(HandleType h);
252  inline void empty();
253 
254  protected:
255 
256  void updateCachedIterator(unsigned long i) const;
257 
258  MapType *myMap;
259  mutable int myLastPlace;
260  mutable typename MapType::iterator myLastMapPosition;
261  };
262 
263 
266  typedef CompatibleHandleValuePairSet<AttributeHandle, AttributeHandleValueMap>
267  AttributeHandleValuePairSet;
268 
269  typedef CompatibleHandleValuePairSet<ParameterHandle, ParameterHandleValueMap>
270  ParameterHandleValuePairSet;
271 
272 
274  typedef unsigned long ULong;
275  typedef ObjectInstanceHandle ObjectHandle;
276 
277  };
278 
279  #endif //DtHLA_1516_EVOLVED
280 
281 #define INCLUDE_rtiCompataibility_inl_
282  #include "rtiCompatibility.inl"
283 #undef INCLUDE_rtiCompataibility_inl_
284 
285 #else // DtHLA_1516
286 
287  #include <RTI.hh>
288 
289  #if !defined(_WIN32) && !defined(RTI_USES_STD_FSTREAM) && !defined(__darwin__)
290  DT_DLL_VL std::ostream& operator<< (std::ostream& os, const RTI::Exception& exception);
291  #endif
292 
293 #endif // DtHLA_1516
294 
295 
296 #endif // if DtHLA
297 
#define DT_DLL_VL
Definition: vlMachineTypes.h:108
std::ostream & operator<<(std::ostream &os, const Dt3dChord &chord)
This file contains typedefs for machine dependant types.

Document ID: Generated on Thu Oct 16 00:12:25 EDT 2025 from SVN revision 280738
Copyright © 1992-2025 MAK Technologies. All Rights Reserved (www.mak.com)