gwnavruntime/path/ipatheventlistobserver.h Source File

ipatheventlistobserver.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 // primary contact: LAPA - secondary contact: NOBODY
8 #ifndef Navigation_IPathEventObserver_H
9 #define Navigation_IPathEventObserver_H
10 
14 
15 
16 namespace Kaim
17 {
18 class Bot;
19 class NavTag;
20 
25 class IPathEventListObserver : public RefCountBase<IPathEventListObserver, MemStat_PathFollowing>
26 {
27 public:
29  virtual ~IPathEventListObserver() {}
30 
32  {
35  };
36 
58  virtual void OnPathEventListBuildingStageDone(Bot* bot, PathEventList& pathEventList, KyUInt32 startIdxOfFirstNewEventInterval, FirstIntervalStatus firstIntervalStatus) = 0;
59 
62  {
66  };
67 
71  virtual void OnPathEventListDestroy(Bot* bot, PathEventList& pathEventList, DestructionPurpose destructionPurpose) = 0;
72 };
73 
74 
80 {
81 public:
83 
84  virtual ~DefaultPathEventListObserver() {}
85 
86  virtual void OnPathEventListDestroy(Kaim::Bot* /*bot*/, Kaim::PathEventList& /*pathEventList*/, DestructionPurpose /*destructionPurpose*/) {}
87 
88  virtual void OnPathEventListBuildingStageDone(Kaim::Bot* /*bot*/, Kaim::PathEventList& /*pathEventList*/, KyUInt32 /*firstIndexOfNewEvent*/, FirstIntervalStatus /*firstIntervalStatus*/) {}
89 };
90 
91 } // namespace Kaim
92 
93 #endif // Navigation_IPathEventObserver_H
The Path is being destroyed itself.
Definition: ipatheventlistobserver.h:69
This class is the world element that represent an active character in Gameware Navigation.
Definition: bot.h:150
PathEventList aggregates all PathEvents and PathEventIntervals in a PathValidityInterval.
Definition: patheventlist.h:141
IPathEventListObservers are called when related PathEventList has just been created or is about to be...
Definition: ipatheventlistobserver.h:26
virtual void OnPathEventListBuildingStageDone(Kaim::Bot *, Kaim::PathEventList &, KyUInt32, FirstIntervalStatus)
This function is called each time a stage of Path validation/PathEventList build is done...
Definition: ipatheventlistobserver.h:98
A new Path has been computed, the former Path and the related PathEventList are being destroyed...
Definition: ipatheventlistobserver.h:70
FirstIntervalStatus
Definition: ipatheventlistobserver.h:33
virtual void OnPathEventListDestroy(Bot *bot, PathEventList &pathEventList, DestructionPurpose destructionPurpose)=0
This function is called each time a non-empty PathEventList is going to be destroyed.
This default IPathEventListObserver does not set any PathEvent as CheckPoint.
Definition: ipatheventlistobserver.h:88
Definition: gamekitcrowddispersion.h:20
The first new interval is an extension of a previous one whose end PathEvent has been moved...
Definition: ipatheventlistobserver.h:36
A new PathEventList is about to be computed for the same Path.
Definition: ipatheventlistobserver.h:71
The first new interval is not an extension of a previous one, it starts from the previous last PathEv...
Definition: ipatheventlistobserver.h:35
unsigned int KyUInt32
Type used internally to represent an unsigned 32-bit integer.
Definition: types.h:36
virtual void OnPathEventListDestroy(Kaim::Bot *, Kaim::PathEventList &, DestructionPurpose)
This function is called each time a non-empty PathEventList is going to be destroyed.
Definition: ipatheventlistobserver.h:96
DestructionPurpose
Explains the reason the PathEventList is about to be destroyed.
Definition: ipatheventlistobserver.h:67
virtual void OnPathEventListBuildingStageDone(Bot *bot, PathEventList &pathEventList, KyUInt32 startIdxOfFirstNewEventInterval, FirstIntervalStatus firstIntervalStatus)=0
This function is called each time a stage of Path validation/PathEventList build is done...