gwnavgeneration/input/inputcellblob.h Source File

inputcellblob.h
Go to the documentation of this file.
1 /*
2 * Copyright 2015 Autodesk, Inc. All rights reserved.
3 * Use of this software is subject to the terms of the Autodesk license agreement and any attachments or Appendices thereto provided at the time of installation or download,
4 * or which otherwise accompanies this software in either electronic or hard copy form, or which is signed by you and accepted by Autodesk.
5 */
6 
7 
8 // primary contact: GUAL - secondary contact: NOBODY
9 #ifndef GwNavGen_InputCellBlob_H
10 #define GwNavGen_InputCellBlob_H
11 
12 
21 
22 namespace Kaim
23 {
24 
25 
26 class InputCellBlob
27 {
28  KY_DEFINE_NEW_DELETE_OPERATORS(Stat_Default_Mem)
29  KY_ROOT_BLOB_CLASS(Generator, InputCellBlob, 0)
30  KY_CLASS_WITHOUT_COPY(InputCellBlob)
31 public:
32  InputCellBlob() {}
33 
34 public:
35  KyFloat32 m_rasterPrecision;
36  KyGuid m_sectorGuid;
37  CellPos m_cellPos;
38  KyInt32 m_minAltitude;
39  KyInt32 m_maxAltitude;
40  BlobArray<TaggedTriangle3i> m_taggedTriangle3is;
41  BlobArray<TagVolumeBlob> m_tagVolumeBlobs;
42 };
43 
44 inline void SwapEndianness(Endianness::Target e, InputCellBlob& self)
45 {
46  SwapEndianness(e, self.m_rasterPrecision);
47  //SwapEndianness(e, self.m_sectorGuid); no swap on char[]
48  SwapEndianness(e, self.m_cellPos);
49  SwapEndianness(e, self.m_minAltitude);
50  SwapEndianness(e, self.m_maxAltitude);
51  SwapEndianness(e, self.m_taggedTriangle3is);
52  SwapEndianness(e, self.m_tagVolumeBlobs);
53 }
54 
55 } // namespace Kaim
56 
57 #endif
Vec2i CellPos
A type that represents the position of a cell within a 2D grid.
Definition: navmeshtypes.h:33
int KyInt32
Type used internally to represent a 32-bit integer.
Definition: types.h:35
#define KY_CLASS_WITHOUT_COPY(ClassName)
Define to forbid copy constructor and copy assignment.
Definition: types.h:387
Target
Enumerates the possible endianness types relative to the current platform.
Definition: endianness.h:35
Definition: gamekitcrowddispersion.h:20
#define KY_DEFINE_NEW_DELETE_OPERATORS(MemStat)
This macro defines new and delete operators.
Definition: memory.h:137
float KyFloat32
Type used internally to represent a 32-bit floating-point number.
Definition: types.h:43