Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members

CDigitizerDictionary.h

Go to the documentation of this file.
00001 
00007 // Author:
00008 //   Ron Fox
00009 //   NSCL
00010 //   Michigan State University
00011 //   East Lansing, MI 48824-1321
00012 //   mailto:fox@nscl.msu.edu
00013 //
00014 
00015 #ifndef __CDIGITIZERDICTIONARY_H  //Required for current class
00016 #define __CDIGITIZERDICTIONARY_H
00017 
00018 //
00019 // Include files:
00020 //
00021 
00022 
00023 #ifndef __STL_STRING
00024 #include <string>
00025 #define __STL_STRING
00026 #endif
00027 
00028  
00029 #ifndef __STL_MAP
00030 #include <map>
00031 #define __STL_MAP
00032 #endif
00033 
00034 
00035 // forward class definitions
00036 
00037 class CReadableObject;
00038 
00039 //
00040 
00041 class CDigitizerDictionary      
00042 {
00043 public:
00044    typedef map<string, CReadableObject*> DigitizerMap;
00045    typedef DigitizerMap::iterator ModuleIterator;
00046 private:
00047         DigitizerMap m_Modules;
00048 
00049 public:
00050    //   
00051   CDigitizerDictionary ();
00052   ~CDigitizerDictionary ( );
00053 private:
00054   CDigitizerDictionary (const CDigitizerDictionary& rhs);
00055   CDigitizerDictionary& operator=(const CDigitizerDictionary& rhs);
00056   int operator== (const CDigitizerDictionary& rhs) const;
00057   int operator!= (const CDigitizerDictionary& rhs) const;
00058 public:
00059 
00060 // Selectors:
00061 
00062 public:
00063    DigitizerMap getMap() const {
00064       return m_Modules;
00065    }
00066 // Mutators:
00067 
00068 protected:
00069    void setMap(DigitizerMap& rMap) {
00070       m_Modules = rMap;
00071    }
00072 public:
00073 
00074    ModuleIterator DigitizerBegin ()   ; // 
00075    ModuleIterator DigitizerEnd ()   ; // 
00076    int DigitizerSize ()   ; // 
00077    void DigitizerAdd (CReadableObject* pDigitizer)   ; // 
00078    ModuleIterator DigitizerFind (const string& rName)   ; // 
00079    void Remove(ModuleIterator p) {
00080       m_Modules.erase(p);
00081    }
00082 
00083    // Utility functions:
00084 protected:
00085    void DestroyMap();
00086 };
00087 
00088 #endif

Generated on Fri Mar 12 13:04:04 2004 for Scripted Readout by doxygen 1.3.4