#pragma once #include "CHPathScheduler/PathScheduler.h" inline bool AscendAxisX(SPathData& a, SPathData& b) { return (a.nPosX < b.nPosX); } inline bool DescendAxisX(SPathData& a, SPathData& b) { return (a.nPosX > b.nPosX); } inline bool AscendAxisY(SPathData& a, SPathData& b) { return (a.nPosY < b.nPosY); } inline bool DescendAxisY(SPathData& a, SPathData& b) { return (a.nPosY > b.nPosY); } class AFX_EXT_CLASS CPathScheduler_Sorting : public CPathScheduler { public: CPathScheduler_Sorting(void); virtual ~CPathScheduler_Sorting(void); virtual int GetSchedulerType() const { return SchedulerType_Sorting; } protected: virtual int CalculatePath(const SPathData& startPath, const VectorPathData& vecTotalPathData, CPathSchedulerResult& scheduleResult); virtual int CalculatePath(const SPathData& startPath, const VectorPathData& vecFirstPathData, const VectorPathData& vecSecondPathData, CPathSchedulerResult& scheduleResult) { return 1; } };