![]() |
VR-Forces 4.0.4 Class Documentation
|
00001 /******************************************************************************* 00002 ** Copyright (c) 2007 MAK Technologies, Inc. 00003 ** All rights reserved. 00004 *******************************************************************************/ 00005 /******************************************************************************* 00006 ** $RCSfile: vrfRadioDescriptor.h,v $ $Revision: 1.4 $ $State: Exp $ 00007 *******************************************************************************/ 00008 00011 00013 00014 #ifndef vrfRadioDescriptor_h 00015 #define vrfRadioDescriptor_h 00016 00017 #include "vrfutil/rdrWritr.h" 00018 #include "vrfutil/rwString.h" 00019 #include "vrfutil/rwReal.h" 00020 #include "vrfobjparam/vrfobjparamDefines.h" 00021 #include "tdbutil/stringKeyFactory.h" 00022 #include "vrfobjparam/vrfRadioTransmitterParams.h" 00023 #include "vrfutil/rwBoolean.h" 00024 #include "vrfutil/rwReal.h" 00025 00026 class DtVrfRadioDescriptor; 00027 00029 typedef DtStringKeyFactory<DtVrfRadioDescriptor> DtVrfRadioDescriptorFactory; 00030 00031 class DtReaderWriterRegistry; 00032 class DtFilename; 00033 00037 class DT_DLL_vrfobjparam DtVrfRadioDescriptor : public DtReaderWriter 00038 { 00039 public: 00041 DtVrfRadioDescriptor(const DtString& name, 00042 DtReaderWriterRegistry* parentRegistry = NULL); 00043 00044 DtVrfRadioDescriptor(const DtSymbolString& name, 00045 DtReaderWriterRegistry* parentRegistry = NULL); 00046 00048 DtVrfRadioDescriptor(const DtVrfRadioDescriptor& orig, 00049 DtReaderWriterRegistry* parentRegistry = NULL); 00050 00052 DtVrfRadioDescriptor& operator=( 00053 const DtVrfRadioDescriptor& orig); 00054 00055 virtual ~DtVrfRadioDescriptor(); 00056 00059 virtual DtString type() const; 00060 00061 virtual DtVrfRadioDescriptor* clone( 00062 DtReaderWriterRegistry* parentRegistry = NULL) const; 00063 00065 00066 virtual void setRadioType(const DtString& typeString); 00067 virtual DtString radioType() const; 00069 00071 00072 virtual void setCommModelName(const DtString& name); 00073 virtual DtString commModelName() const; 00075 00077 00078 virtual void setPublishTransmitter(bool value); 00079 virtual bool publishTransmitter() const; 00081 00083 00084 00085 virtual DtVrfRadioTransmitterParams& transmitterParams(); 00086 virtual const DtVrfRadioTransmitterParams& transmitterParams() const; 00088 virtual bool transmitterParamsSpecified() const; 00090 00092 00093 virtual void setSampleRate(double value); 00094 virtual double sampleRate() const; 00096 00098 virtual void putData(FILE* fp, int indentLevel = 0); 00099 00102 virtual DtlObjPtr getData(DtlObjPtr args, const DtFilename& searchPath, 00103 const DtVariableBindingsList& variableBindings); 00104 00108 virtual bool init(); 00109 00112 static DtVrfRadioDescriptorFactory* factory(); 00113 static void setFactory(DtVrfRadioDescriptorFactory* factory); 00114 00116 00117 static DtVrfRadioDescriptor* createRadioDescriptor( 00118 DtlObjPtr mtlStream, const DtFilename& searchPath, const DtVariableBindingsList& variableBindings); 00119 00120 static DtVrfRadioDescriptor* createRadioDescriptor( 00121 const char* typeString); 00123 00125 static DtVrfRadioDescriptor* creator(); 00126 00127 private: 00129 DtVrfRadioDescriptor(); 00130 00131 protected: 00134 00135 00139 DtRwString myRadioType; 00140 00145 DtRwString myCommModelName; 00146 00152 DtRwBoolean myPublishTransmitter; 00153 00158 DtVrfRadioTransmitterParams myTransmitterParams; 00159 00164 DtRwReal mySampleRate; 00166 00167 static DtVrfRadioDescriptorFactory* theFactory; 00168 }; 00169 00170 #endif