![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2010 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: railPathControllerDescriptor.h,v $ $Revision: 1.1 $ $State: Exp $ 00007 ** Created: 8/6/10 MEM 00008 *******************************************************************************/ 00009 00012 00015 00016 #pragma once 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 DtRailPathControllerDescriptor : public DtComponentDescriptor 00028 { 00029 public: 00031 DtRailPathControllerDescriptor(const DtString& name, 00032 DtReaderWriterRegistry * parentRegistry = 0); 00033 00035 DtRailPathControllerDescriptor(const DtRailPathControllerDescriptor & 00036 orig, DtReaderWriterRegistry * parentRegistry = 0); 00037 00039 DtRailPathControllerDescriptor & operator=(const 00040 DtRailPathControllerDescriptor & orig); 00041 00043 virtual ~DtRailPathControllerDescriptor(); 00044 00047 virtual DtString type() const; 00048 00051 virtual bool usePredefinedSearchArea() const; 00052 virtual void setUsePredefinedSearchArea(bool usePred); 00054 00057 virtual double searchAreaRadius() const; 00058 virtual void setSearchAreaRadius(double radius); 00060 00063 virtual double searchAreaExtraLength() const; 00064 virtual void setSearchAreaExtraLength(double length); 00066 00069 virtual DtRwVectorObstructionTypeList& preferredRouteTypes(); 00070 virtual const DtRwVectorObstructionTypeList& preferredRouteTypes() const; 00072 00075 virtual double preferredRouteBonus() const; 00076 virtual void setPreferredRouteBonus(double bonus); 00078 00081 virtual DtRwVectorObstructionTypeList& impassableVectorTypes(); 00082 virtual const DtRwVectorObstructionTypeList& impassableVectorTypes() const; 00084 00087 virtual DtString metricType() const; 00088 virtual void setMetricType(const DtString& metricType); 00090 00093 virtual bool publishPaths() const; 00094 virtual void setPublishPaths(bool value); 00096 00098 00099 virtual bool registerVrfSpecificTasks() const; 00100 virtual void setRegisterVrfSpecificTasks(bool value); 00102 00103 virtual DtComponentDescriptor* clone( 00104 DtReaderWriterRegistry* parentRegistry = NULL) const; 00105 00107 static DtComponentDescriptor * creator(); 00108 00109 private: 00111 DtRailPathControllerDescriptor(); 00112 00113 protected: 00114 00118 00123 DtRwReal mySearchAreaExtraLength; 00124 00130 DtRwBoolean myUsePredefinedSearchArea; 00131 00136 DtRwReal myPredefinedSearchAreaRadius; 00137 00142 DtRwVectorObstructionTypeList myPreferredRouteTypes; 00143 00148 DtRwReal myPreferredRouteBonus; 00149 00154 DtRwVectorObstructionTypeList myImpassableVectorTypes; 00155 00159 DtRwString myMetricType; 00160 00165 DtRwBoolean myPublishPaths; 00166 00175 DtRwBoolean myRegisterVrfSpecificTasks; 00176 00178 };