gwnavruntime/pathfollower/basepathprogresscomputer.h Source File
Go to the documentation of this file.
8 #ifndef Navigation_BasePathProgressComputer_H
9 #define Navigation_BasePathProgressComputer_H
20 class IPathEventListObserver;
21 class IPositionOnPathValidator;
23 class PositionOnLivePath;
32 class BasePathProgressComputer:
public RefCountBase<BasePathProgressComputer, MemStat_PathFollowing>
47 Ptr<IPositionOnPathValidator> GetPositionOnPathCheckPointValidator() {
return m_positionOnPathCheckPointValidator; }
49 void CleanPathEventListOnNewPath(Bot* bot);
53 virtual void Update(Bot* bot,
KyFloat32 simulationTimeInSeconds) = 0;
56 void ComputeProgressOnPath(Bot* bot);
57 bool MustEventBeValidated(Bot* bot,
const PathEvent& pathEvent);
58 void FindUpperLimitOnPath(Bot* bot, PositionOnLivePath& positionOnPath);
59 void StopProgressAtUpperLimitOnPath(Bot* bot,
const PositionOnLivePath& upperLimitOnPath);
60 bool CanProgressAfterEvent(Bot* bot);
61 void UpdateProgressOnPathStatus(Bot* bot);
62 void MoveForwardAfterCrossedBisectorPlanes(Bot* bot,
const PositionOnLivePath& upperLimitOnPath);
63 void SnapProgressToNodeOrEvent(Bot* bot);
65 void ComputePositionInChannel(Bot* bot);
68 Ptr<IPathEventListObserver> m_pathEventListObserver;
69 Ptr<IPositionOnPathValidator> m_positionOnPathCheckPointValidator;
75 #endif // Navigation_IPathFollower_H
void SetPathEventListObserver(const Ptr< IPathEventListObserver > &m_pathEventListObserver)
Sets the SetPathEventListObserver.
IPathEventListObservers are called when related PathEventList has just been created or is about to be...
Definition: ipatheventlistobserver.h:26
#define KY_CLASS_WITHOUT_COPY(ClassName)
Define to forbid copy constructor and copy assignment.
Definition: types.h:387
Definition: gamekitcrowddispersion.h:20
The abstract base class for PathProgressComputer classes.
Definition: basepathprogresscomputer.h:37
void SetPositionOnPathCheckPointValidator(const Ptr< IPositionOnPathValidator > &positionOnPathCheckPointValidator)
Sets the IPositionOnPathValidator to be used to validate target on path check points.
float KyFloat32
Type used internally to represent a 32-bit floating-point number.
Definition: types.h:43