![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2004 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: pathMoveDesc.h,v $ $Revision: 1.7 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00014 00015 #ifndef DtPathMovementControllerDescriptor_H_ 00016 #define DtPathMovementControllerDescriptor_H_ 00017 00018 #include "vrfobjparam/compDesc.h" 00019 #include "vrfutil/rwString.h" 00020 #include "vrfutil/rwReal.h" 00021 #include "vrfutil/rwBoolean.h" 00022 #include "vrfutil/rwVectorObstructionTypeList.h" 00023 00026 #include "vrfobjparam/vrfobjparamDefines.h" 00027 class DT_DLL_vrfobjparam DtPathMovementControllerDescriptor : public DtComponentDescriptor 00028 { 00029 public: 00031 DtPathMovementControllerDescriptor(const DtString& name, 00032 DtReaderWriterRegistry * parentRegistry = 0); 00033 00035 DtPathMovementControllerDescriptor(const DtPathMovementControllerDescriptor & 00036 orig, DtReaderWriterRegistry * parentRegistry = 0); 00037 00039 DtPathMovementControllerDescriptor & operator=(const 00040 DtPathMovementControllerDescriptor & orig); 00041 00043 virtual ~DtPathMovementControllerDescriptor(); 00044 00047 virtual DtString type() const; 00048 00051 virtual double searchNodeSpacing() const; 00052 virtual void setSearchNodeSpacing(double space); 00054 00057 virtual double vectorSearchNodeSpacing() const; 00058 virtual void setVectorSearchNodeSpacing(double space); 00060 00063 virtual double searchAreaWidth() const; 00064 virtual void setSearchAreaWidth(double width); 00066 00069 virtual double searchAreaExtraLength() const; 00070 virtual void setSearchAreaExtraLength(double length); 00072 00075 virtual DtRwVectorObstructionTypeList& preferredRouteTypes(); 00076 virtual const DtRwVectorObstructionTypeList& preferredRouteTypes() const; 00078 00081 virtual double preferredRouteBonus() const; 00082 virtual void setPreferredRouteBonus(double bonus); 00084 00087 virtual DtRwVectorObstructionTypeList& impassableVectorTypes(); 00088 virtual const DtRwVectorObstructionTypeList& impassableVectorTypes() const; 00090 00093 virtual DtString metricType() const; 00094 virtual void setMetricType(const DtString& metricType); 00096 00099 virtual bool publishPaths() const; 00100 virtual void setPublishPaths(bool value); 00102 00104 00105 virtual bool registerVrfSpecificTasks() const; 00106 virtual void setRegisterVrfSpecificTasks(bool value); 00108 00109 virtual DtComponentDescriptor* clone( 00110 DtReaderWriterRegistry* parentRegistry = NULL) const; 00111 00113 static DtComponentDescriptor * creator(); 00114 00115 private: 00117 DtPathMovementControllerDescriptor(); 00118 00119 protected: 00120 00124 00130 DtRwReal mySearchNodeSpacing; 00131 00137 DtRwReal myVectorSearchNodeSpacing; 00138 00146 DtRwReal mySearchAreaWidth; 00147 00152 DtRwReal mySearchAreaExtraLength; 00153 00158 DtRwVectorObstructionTypeList myPreferredRouteTypes; 00159 00164 DtRwReal myPreferredRouteBonus; 00165 00170 DtRwVectorObstructionTypeList myImpassableVectorTypes; 00171 00175 DtRwString myMetricType; 00176 00181 DtRwBoolean myPublishPaths; 00182 00191 DtRwBoolean myRegisterVrfSpecificTasks; 00192 00194 }; 00195 00196 #endif