Reflexxes Motion Libraries
Manual and Documentation (Type II, Version 1.2.6)
|
00001 // ---------------------- Doxygen info ---------------------- 00041 // ---------------------------------------------------------- 00042 // For a convenient reading of this file's source code, 00043 // please use a tab width of four characters. 00044 // ---------------------------------------------------------- 00045 00046 00047 #ifndef __RMLPositionFlags__ 00048 #define __RMLPositionFlags__ 00049 00050 00051 #include <RMLFlags.h> 00052 00053 00054 // ---------------------- Doxygen info ---------------------- 00063 // ---------------------------------------------------------- 00064 class RMLPositionFlags : public RMLFlags 00065 { 00066 public: 00067 00068 00069 // ---------------------- Doxygen info ---------------------- 00081 // ---------------------------------------------------------- 00082 RMLPositionFlags(void) 00083 { 00084 this->SynchronizationBehavior = RMLFlags::PHASE_SYNCHRONIZATION_IF_POSSIBLE ; 00085 this->BehaviorAfterFinalStateOfMotionIsReached = RMLPositionFlags::KEEP_TARGET_VELOCITY ; 00086 this->EnableTheCalculationOfTheExtremumMotionStates = true ; 00087 this->KeepCurrentVelocityInCaseOfFallbackStrategy = false ; 00088 } 00089 00090 00091 // ---------------------- Doxygen info ---------------------- 00096 // ---------------------------------------------------------- 00097 ~RMLPositionFlags(void) 00098 { 00099 } 00100 00101 00102 // ---------------------- Doxygen info ---------------------- 00110 // ---------------------------------------------------------- 00111 inline bool operator == (const RMLPositionFlags &Flags) const 00112 { 00113 return( (RMLFlags::operator==(Flags)) 00114 && (this->BehaviorAfterFinalStateOfMotionIsReached 00115 == Flags.BehaviorAfterFinalStateOfMotionIsReached) 00116 && (this->KeepCurrentVelocityInCaseOfFallbackStrategy 00117 == Flags.KeepCurrentVelocityInCaseOfFallbackStrategy)); 00118 } 00119 00120 00121 // ---------------------- Doxygen info ---------------------- 00129 // ---------------------------------------------------------- 00130 inline bool operator != (const RMLPositionFlags &Flags) const 00131 { 00132 return(!(*this == Flags)); 00133 } 00134 00135 00136 // ---------------------- Doxygen info ---------------------- 00144 // ---------------------------------------------------------- 00145 enum FinalMotionBehaviorEnum 00146 { 00150 KEEP_TARGET_VELOCITY = 0 , 00155 RECOMPUTE_TRAJECTORY = 1 00156 }; 00157 00158 00159 // ---------------------- Doxygen info ---------------------- 00178 // ---------------------------------------------------------- 00179 int BehaviorAfterFinalStateOfMotionIsReached; 00180 00181 00182 // ---------------------- Doxygen info ---------------------- 00204 // ---------------------------------------------------------- 00205 bool KeepCurrentVelocityInCaseOfFallbackStrategy; 00206 00207 00208 };// class RMLPositionFlags 00209 00210 00211 00212 #endif 00213 00214