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