00001 00002 00005 // Author: 00006 // Ron Fox 00007 // NSCL 00008 // Michigan State University 00009 // East Lansing, MI 48824-1321 00010 // mailto:fox@nscl.msu.edu 00011 // 00012 // Copyright 00013 00014 #ifndef __CSTRINGCONFIGPARAM_H //Required for current class 00015 #define __CSTRINGCONFIGPARAM_H 00016 00017 // 00018 // Include files: 00019 // 00020 00021 //Required for base classes 00022 #ifndef __CCONFIGURATIONPARAMETER_H //CConfigurationParameter 00023 #include "CConfigurationParameter.h" 00024 #endif 00025 00026 #ifndef __STL_STRING 00027 #include <string> 00028 #define __STL_STRING 00029 #endif 00030 00031 // Forward class defintions. 00032 00033 class CTCLInterpreter; 00034 class CTCLResult; 00035 00040 class CStringConfigParam : public CConfigurationParameter 00041 { 00042 00043 public: 00044 // Constructors and other cannnonical member functions. 00045 00046 CStringConfigParam (const string& keyword); 00047 virtual ~CStringConfigParam ( ); //Destructor - Delete any pointer data members that used new in constructors 00048 00049 CStringConfigParam(const CStringConfigParam& aCStringConfigParam ); 00050 CStringConfigParam& operator= (const CStringConfigParam& rhs); 00051 int operator== (const CStringConfigParam& rhs) const; 00052 int operator!= (const CStringConfigParam& rhs) const { 00053 return !(operator==(rhs)); 00054 } 00055 00056 // Class functions: 00057 public: 00058 string getOptionValue () ; // 00059 virtual int SetValue (CTCLInterpreter& rInterp, CTCLResult& rResult, 00060 const char* value) ; // 00061 virtual string GetParameterFormat(); 00062 00063 }; 00064 00065 #endif 00066