gwnavgeneration/input/inputcellblob.h Source File

inputcellblob.h
Go to the documentation of this file.
1 /*
2 * Copyright 2016 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 #pragma once
8 
16 
17 namespace Kaim
18 {
19 
20 class InputCellBlob
21 {
22  KY_DEFINE_NEW_DELETE_OPERATORS(Stat_Default_Mem)
23  KY_ROOT_BLOB_CLASS(Generator, InputCellBlob, 0)
24  KY_CLASS_WITHOUT_COPY(InputCellBlob)
25 
26 public:
27  InputCellBlob() {}
28 
29 public:
30  KyFloat32 m_rasterPrecision;
31  KyGuid m_sectorGuid;
32  CellPos m_cellPos;
33  KyInt32 m_minAltitude;
34  KyInt32 m_maxAltitude;
35  BlobArray<TaggedTriangle3i> m_taggedTriangle3is;
36 
37 };
38 
39 inline void SwapEndianness(Endianness::Target e, InputCellBlob& self)
40 {
41  SwapEndianness(e, self.m_rasterPrecision);
42  //SwapEndianness(e, self.m_sectorGuid); no swap on char[]
43  SwapEndianness(e, self.m_cellPos);
44  SwapEndianness(e, self.m_minAltitude);
45  SwapEndianness(e, self.m_maxAltitude);
46  SwapEndianness(e, self.m_taggedTriangle3is);
47 }
48 
49 } // namespace Kaim
50 
Vec2i CellPos
A type that represents the position of a cell within a 2D grid.
Definition: navmeshtypes.h:30
#define KY_CLASS_WITHOUT_COPY(ClassName)
Define to forbid copy constructor and copy assignment.
Definition: types.h:196
#define KY_DEFINE_NEW_DELETE_OPERATORS(MemStat)
This macro defines new and delete operators.
Definition: memory.h:132
Target
Enumerates the possible endianness types relative to the current platform.
Definition: endianness.h:27
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17
std::int32_t KyInt32
int32_t
Definition: types.h:24
float KyFloat32
float
Definition: types.h:32