gwnavruntime/pathfollower/trajectoryblob.h Source File

trajectoryblob.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 
8 #pragma once
9 
13 
14 
15 namespace Kaim
16 {
17 
18 class Trajectory;
19 class Bot;
20 
21 
23 // Trajectory blob
25 class TrajectoryBlob
26 {
27  KY_ROOT_BLOB_CLASS(Runtime, TrajectoryBlob, 0)
28 
29 public:
30  Vec2f m_idealVelocity;
31  KyFloat32 m_turningRadius;
32  KyUInt32 m_visualDebugId;
33 };
34 
35 inline void SwapEndianness(Endianness::Target e, TrajectoryBlob& self)
36 {
37  SwapEndianness(e, self.m_idealVelocity);
38  SwapEndianness(e, self.m_turningRadius);
39  SwapEndianness(e, self.m_visualDebugId);
40 }
41 
42 
43 class TrajectoryBlobBuilder: public BaseBlobBuilder<TrajectoryBlob>
44 {
45  KY_CLASS_WITHOUT_COPY(TrajectoryBlobBuilder)
46 
47 public:
48  TrajectoryBlobBuilder(const Trajectory* trajectory, const Bot* bot): m_trajectory(trajectory), m_bot(bot) {}
49  ~TrajectoryBlobBuilder() {}
50 
51 private:
52  virtual void DoBuild();
53 
54  const Trajectory* m_trajectory;
55  const Bot* m_bot;
56 };
57 
58 } // namespace Kaim
59 
std::uint32_t KyUInt32
uint32_t
Definition: types.h:29
#define KY_CLASS_WITHOUT_COPY(ClassName)
Define to forbid copy constructor and copy assignment.
Definition: types.h:196
The Autodesk Navigation namespace.
Definition: gamekitcrowddispersion.cpp:17
float KyFloat32
float
Definition: types.h:32