Kaim::BaseNavigationProfile Class Reference

Kaim::BaseNavigationProfile Class Referenceabstract

#include <basenavigationprofile.h>

Class Description

BaseNavigationProfile and its derivation NavigationProfile<TraverseLogic> is a class that simplifies the customization of the navigation.

Enforces all PathFinding and PathFollowing customizations to use the same TraverseLogic. Gathers explicitly the different customization interfaces that can be implemented in the PathFollower. Makes a clear distinction between [classes that are sharable between bots] and [classes that are per Bot] transparent.

Inherits Kaim::RefCountBase< C, Stat >.

Inherited by Kaim::NavigationProfile< TLogic >, Kaim::NavigationProfile< DefaultTraverseLogic >, and Kaim::NavigationProfile< Kaim::GameKitTraverseLogic >.

PathFinding

virtual Ptr< BaseAStarQueryCreateAStarQuery ()=0
 

PathProgress

virtual Ptr< BasePathProgressComputerGetSharedPathProgressComputer ()=0
 BasePathProgressComputer::Update() is called in Bot::UpdatePathFollowing() More...
 
virtual Ptr< IPathEventListObserverGetSharedPathEventListObserver ()=0
 IPathEventListObserver is called in BasePathProgressComputer::Update() More...
 
virtual Ptr< IPositionOnPathValidatorGetSharedPositionOnPathValidator ()=0
 IPositionOnPathValidator is called in BasePathProgressComputer::Update() More...
 

Trajectory

virtual Ptr< TrajectoryCreateTrajectory (Bot *bot)=0
 Trajectory::Compute() is called in Bot::UpdatePathFollowing() after BasePathProgressComputer::Update() More...
 
virtual Ptr< IAvoidanceComputerGetSharedAvoidanceComputer ()=0
 AvoidanceComputer::Compute() is called in Trajectory::Compute() More...
 
virtual Ptr< IAvoidanceSolverGetSharedAvoidanceSolver ()=0
 AvoidanceSolver::Solve() is called in the AvoidanceComputer. More...
 
virtual Ptr< IAvoidanceFilterGetSharedAvoidanceFilter ()=0
 IAvoidanceFilter::Filter() is called in the AvoidanceComputer. More...
 

Queries

virtual Ptr< BaseRayCanGoQueryCreateRayCanGoQuery ()=0
 

Bot Queries

virtual Vec3f ComputeMoveOnNavMesh (Bot *bot, const Vec3f &velocity, KyFloat32 simulationTimeInSeconds)=0
 

Member Function Documentation

virtual Ptr<Trajectory> Kaim::BaseNavigationProfile::CreateTrajectory ( Bot bot)
pure virtual

Trajectory::Compute() is called in Bot::UpdatePathFollowing() after BasePathProgressComputer::Update()

Implemented in Kaim::NavigationProfile< TLogic >, Kaim::NavigationProfile< DefaultTraverseLogic >, and Kaim::NavigationProfile< Kaim::GameKitTraverseLogic >.

virtual Ptr<IAvoidanceComputer> Kaim::BaseNavigationProfile::GetSharedAvoidanceComputer ( )
pure virtual

AvoidanceComputer::Compute() is called in Trajectory::Compute()

Implemented in Kaim::NavigationProfile< TLogic >, Kaim::NavigationProfile< DefaultTraverseLogic >, and Kaim::NavigationProfile< Kaim::GameKitTraverseLogic >.

virtual Ptr<IAvoidanceFilter> Kaim::BaseNavigationProfile::GetSharedAvoidanceFilter ( )
pure virtual
virtual Ptr<IAvoidanceSolver> Kaim::BaseNavigationProfile::GetSharedAvoidanceSolver ( )
pure virtual
virtual Ptr<IPathEventListObserver> Kaim::BaseNavigationProfile::GetSharedPathEventListObserver ( )
pure virtual
virtual Ptr<BasePathProgressComputer> Kaim::BaseNavigationProfile::GetSharedPathProgressComputer ( )
pure virtual

BasePathProgressComputer::Update() is called in Bot::UpdatePathFollowing()

Implemented in Kaim::NavigationProfile< TLogic >, Kaim::NavigationProfile< DefaultTraverseLogic >, and Kaim::NavigationProfile< Kaim::GameKitTraverseLogic >.

virtual Ptr<IPositionOnPathValidator> Kaim::BaseNavigationProfile::GetSharedPositionOnPathValidator ( )
pure virtual

The documentation for this class was generated from the following file: