9 #ifndef Navigation_CircleArcSplineComputationQuery_H
10 #define Navigation_CircleArcSplineComputationQuery_H
39 static QueryType GetStaticType() {
return TypeCircleArcSplineComputation; }
40 virtual QueryType GetType()
const {
return TypeCircleArcSplineComputation; }
58 const Vec3f& startPosition,
const ChannelSectionPtr& startSection,
59 const Vec3f& endPosition,
const ChannelSectionPtr& endSection);
64 void SetStartConstraint(
const Vec2f& constraint) { m_startConstraint = constraint; }
65 void SetEndConstraint(
const Vec2f& constraint) { m_endConstraint = constraint; }
66 void SetSplineConfig(
const SplineComputationConfig& config) { m_splineConfig = config; }
68 SplineComputationConfig& GetSplineConfig() {
return m_splineConfig; }
75 virtual void Advance(WorkingMemory* workingMemory);
87 const SplineComputationConfig& GetSplineConfig()
const {
return m_splineConfig; }
88 const Vec3f& GetStartPos()
const {
return m_startPosition; }
89 const Vec3f& GetEndPos()
const {
return m_endPosition; }
90 const ChannelSectionPtr& GetStartChannelSectionPtr()
const {
return m_startSection; }
91 const ChannelSectionPtr& GetEndChannelSectionPtr()
const {
return m_endSection; }
98 KyUInt32 GetOutputCount()
const {
return m_computer.GetOutputCount(); }
109 SplineComputationConfig m_splineConfig;
110 Vec3f m_startPosition;
112 ChannelSectionPtr m_startSection;
113 ChannelSectionPtr m_endSection;
114 Vec2f m_startConstraint;
115 Vec2f m_endConstraint;
127 #endif //Navigation_CircleArcSplineComputationQuery_H
Class used to configure all VisualDebug components for CircleArcSpline computation.
Definition: circlearcsplinecomputer.h:51
Class aggregating a CircleArcSpline and the corresponding computation result.
Definition: circlearcsplinecomputer.h:33
Indicates that the query has not yet been launched.
Definition: circlearcsplinecomputationquery.h:23
CircleArcSplineComputationQueryResult
Enumerates the possible results of a CircleArcSplineComputationQuery.
Definition: circlearcsplinecomputationquery.h:20
Indicates that the computation has been canceled.
Definition: circlearcsplinecomputationquery.h:27
virtual void ReleaseWorkingMemoryOnCancelDuringProcess(WorkingMemory *workingMemory=0)
Called when a query is canceled in FlushCommands while its status is QueryInProcess to make sure that...
#define KY_NULL
Null value.
Definition: types.h:247
Base class for CircleArcSplineComputationQuery.
Definition: circlearcsplinecomputationquery.h:33
Base class for all the queries that need to be time-sliced.
Definition: iquery.h:306
The CircleArcSplineComputer failed due to an internal error (bubble array not created, string puller failed, turn list construction or optimization failed...).
Definition: circlearcsplinecomputationquery.h:26
QueryType
Enumerates all the type of query.
Definition: iquery.h:29
Indicates that the query has not yet been initialized.
Definition: circlearcsplinecomputationquery.h:22
This class is a runtime container for all NavData that represents the world from the point of view of...
Definition: database.h:64
This class defines a two-dimensional vector whose coordinates are stored using floating-point numbers...
Definition: vec2f.h:24
Inputs are invalid: startSection or endSection are invalid or not in the same Channel.
Definition: circlearcsplinecomputationquery.h:25
Indicates that a spline has been successfully computed.
Definition: circlearcsplinecomputationquery.h:29
Definition: gamekitcrowddispersion.h:20
Class used to compute a CircleArcSpline in a Channel.
Definition: circlearcsplinecomputer.h:89
CircleArcSplineComputationResult
Enumerates the CircleArcSpline computation results.
Definition: circlearcsplinecomputationresult.h:17
Indicates that the query has not yet been initialized.
Definition: iquery.h:346
virtual void Advance(WorkingMemory *workingMemory)
Performs a single iteration of the spline computation query.
void PerformQuery(WorkingMemory *workingMemory=0)
Performs the query.
unsigned int KyUInt32
Type used internally to represent an unsigned 32-bit integer.
Definition: types.h:36
void BindToDatabase(Database *database)
Binds the query with the specified Database, clears all the inputs and outputs and sets all other par...
Indicates that the query has not yet been launched.
Definition: iquery.h:347
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:404
This class defines a three-dimensional vector whose coordinates are stored using floating-point numbe...
Definition: vec3f.h:23