Main Page | Modules | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

DcsRadonLevelFinder.h

Go to the documentation of this file.
00001 #ifndef DCSRADONLEVELFINDER_H
00002 #define DCSRADONLEVELFINDER_H
00003 
00059 #include "Conventions/Detector.h"
00060 #include "DatabaseInterface/DbiResultPtr.h"
00061 #include "DcsUser/Dcs_Radon_Level.h"
00062 #include "Validity/VldContext.h"
00063 
00064 class DbiValidityRec;
00065 
00066 class DcsRadonLevelFinder
00067 {
00068 
00069 public:
00070 // Constructors and destructors.
00071   DcsRadonLevelFinder();
00072   DcsRadonLevelFinder(VldTimeStamp start, VldTimeStamp end, Detector::Detector_t detector);
00073   virtual ~DcsRadonLevelFinder(){ };
00074 
00075   static DcsRadonLevelFinder* Instance();   // Access to the Singleton for general use.
00076 
00077   // Getters - GetRadonLevel may cause new query to be performed so is non-const.
00078 
00079   const  std::vector<const Dcs_Radon_Level*> GetRadonLevelTable() const {return fRadonLevelTable;}
00080   Float_t GetRadonLevel(VldContext context, Int_t numPoints = 0);
00081   Float_t GetRadonLevel(VldTimeStamp date, Detector::Detector_t detector, Int_t numPoints = 0);
00082   Bool_t HasGoodData(VldTimeStamp date, Detector::Detector_t detector) const;
00083 
00084   // Setters
00085   void NewQuery(VldTimeStamp start, VldTimeStamp end, Detector::Detector_t detector);
00086 
00087 private:  
00088 
00089 // Data members
00090 
00091   // The singleton version
00092   static DcsRadonLevelFinder* fgDcsRadonLevelFinder; 
00093 
00094   // Current table of results both as query result and time ordered.
00095   DbiResultPtr<Dcs_Radon_Level>fQueryResults;   
00096   std::vector<const Dcs_Radon_Level*> fRadonLevelTable;
00097   // Detector for current  of table of results
00098   Detector::Detector_t fDetector;                  
00099 
00100   // true if this is the singleton version, in which case GetRadonLevel may cause new data to be read.
00101   Bool_t IsGlobalVersion; 
00102 
00103   ClassDef(DcsRadonLevelFinder,0)
00104 
00105 };
00106 
00107 #endif  // DCSRADONLEVELFINDER_H

Generated on Mon Feb 15 11:06:36 2010 for loon by  doxygen 1.3.9.1