gwnavruntime/channel/channelarray.h Source File

channelarray.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: LAPA - secondary contact: NOBODY
9 
10 #ifndef Navigation_ChannelArray_H
11 #define Navigation_ChannelArray_H
12 
16 
18 
19 
20 namespace Kaim
21 {
22 
23 class Path;
24 class World;
25 class ChannelSectionPtr;
26 class Database;
27 
28 
31 class ChannelArray: public RefCountBase<ChannelArray, MemStat_Channel>
32 {
33 public:
34  ChannelArray() {}
35  virtual ~ChannelArray();
36 
37  void Clear();
38 
39  KyUInt32 GetChannelCount() const { return m_channelArray.GetCount(); }
40  Channel* GetChannel(KyUInt32 index) const { return m_channelArray[index]; }
41  KyUInt32 GetChannelIdxFromPathNodeIdx(KyUInt32 pathNodeIdx) const;
42 
43  void SendVisualDebug(World* world) const;
44  void SendVisualDebug(World* world, KyUInt32 visualDebugId) const;
45 
46 public: // internal
47  KyArray<Ptr<Channel> > m_channelArray;
48 };
49 
50 } // namespace Kaim
51 
52 #endif // Navigation_ChannelArray_H
General purpose array for movable objects that require explicit construction/destruction.
Definition: kyarray.h:118
This class aggregates Channels along a Path.
Definition: channelarray.h:31
This class is a runtime container for Gameware Navigation WorldElements such as NavData, Bots, BoxObstacles, TagVolumes...
Definition: world.h:54
Definition: gamekitcrowddispersion.h:20
Channels define preferred navigation areas around an original Path section on NavMesh.
Definition: channel.h:177
unsigned int KyUInt32
Type used internally to represent an unsigned 32-bit integer.
Definition: types.h:36