gwnavruntime/collision/collisionraycastquery.h Source File
Go to the documentation of this file.
9 #ifndef Navigation_RayCastQuery3D_H
10 #define Navigation_RayCastQuery3D_H
23 class CollisionRayCastQuery :
public IAtomicQuery
26 static QueryType GetStaticType() {
return TypeCollisionRayCast; }
27 virtual QueryType GetType()
const {
return TypeCollisionRayCast; }
29 virtual void BuildQueryBlob(BaseBlobHandler* blobHandler);
30 virtual void InitFromQueryBlob(World* world,
void* blob);
31 virtual Ptr<BaseBlobHandler> CreateQueryBlobHandler() {
return CreateStaticQueryBlobHandler(); }
32 static Ptr<BaseBlobHandler> CreateStaticQueryBlobHandler();
36 CollisionRayCastQuery() : m_world(
KY_NULL), m_result(RayDidNotHit) {}
37 virtual ~CollisionRayCastQuery() {}
49 void Initialize(
const Vec3f& start,
const Vec3f& dest);
53 virtual void Advance(WorkingMemory* workingMemory);
61 CollisionRayCastResult GetResult()
const {
return m_result; }
62 const Vec3f& GetStartPos()
const {
return m_start; }
63 const Vec3f& GetDestPos()
const {
return m_dest; }
71 CollisionRayCastResult m_result;
76 #endif //Navigation_RayCastQuery3D_H
#define KY_NULL
Null value.
Definition: types.h:247
virtual void Advance(WorkingMemory *workingMemory)
This function is called by the QueryQueue to process one step on the query.
QueryType
Enumerates all the type of query.
Definition: iquery.h:29
void PerformQuery(WorkingMemory *workingMemory=0)
Performs the query.
Definition: gamekitcrowddispersion.h:20
void BindToWorld(World *world)
Associates the query to this world, clears all the inputs and outputs and sets all other parameters t...
void Initialize()
Should be called by the derived class before trying to perform the query or to push it in a QueryQueu...
Definition: iquery.h:372