gwnavgeneration/raster/rastercell.h Source File

rastercell.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_RasterCell_H
10 #define GwNavGen_RasterCell_H
11 
12 
21 
22 
23 namespace Kaim
24 {
25 
26 
27 class RasterColumn
28 {
29  KY_CLASS_WITHOUT_COPY(RasterColumn)
30 public:
31  RasterColumn() {}
32 public:
33  BlobArray<KyFloat32> m_altitudes;
34  BlobArray<KyUInt32> m_navTagIndices;
35 };
36 inline void SwapEndianness(Endianness::Target e, RasterColumn& self)
37 {
38  SwapEndianness(e, self.m_altitudes);
39  SwapEndianness(e, self.m_navTagIndices);
40 }
41 
42 
43 class RasterCell
44 {
45  KY_CLASS_WITHOUT_COPY(RasterCell)
46  KY_ROOT_BLOB_CLASS(Generator, RasterCell, 0)
47 public:
48  RasterCell() {}
49 
50 public:
51  KyFloat32 m_rasterPrecisionInMeters;
52  PixelAndCellGrid m_pixelAndCellGrid;
53  CellDesc m_cellDesc;
54  BlobArray<RasterColumn> m_columns; // row major
55  BlobArray<NavTag> m_navTags;
56 };
57 inline void SwapEndianness(Endianness::Target e, RasterCell& self)
58 {
59  SwapEndianness(e, self.m_rasterPrecisionInMeters);
60  SwapEndianness(e, self.m_pixelAndCellGrid);
61  SwapEndianness(e, self.m_cellDesc);
62  SwapEndianness(e, self.m_columns);
63  SwapEndianness(e, self.m_navTags);
64 }
65 
66 
67 }
68 
69 
70 #endif
71 
#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
float KyFloat32
Type used internally to represent a 32-bit floating-point number.
Definition: types.h:43