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

CalDetTOFRange.h

Go to the documentation of this file.
00001 #ifndef CALDETTOFRANGE_H
00002 #define CALDETTOFRANGE_H
00003 #include <iosfwd>
00004 #include <string>
00005 
00006 #include "DatabaseInterface/DbiTableRow.h"
00007 #include "LeakChecker/Lea.h"
00008 
00009 class DbiValidityRec;
00010 
00011 
00012 class CalDetTOFRange : public DbiTableRow
00013 {
00014 public:
00015      
00016      // Constructors and destructors.
00017      CalDetTOFRange() { LEA_CTOR; }
00018      CalDetTOFRange(UInt_t ptype, 
00019                     Float_t uslow, Float_t ushigh,
00020                     Float_t midlow, Float_t midhigh,                
00021                     Float_t dslow, Float_t dshigh,
00022                     Float_t ds_minus_us_low, Float_t ds_minus_us_high,
00023                     Float_t ds_minus_mid_low, Float_t ds_minus_mid_high)
00024           :
00025           fParticleType(ptype),
00026           fTDC2Low(uslow), fTDC2High(ushigh),
00027           fTDC1Low(midlow), fTDC1High(midhigh),
00028           fTDC0Low(dslow), fTDC0High(dshigh),
00029           fTDC2_Minus_TDC0_Low(ds_minus_us_low), 
00030           fTDC2_Minus_TDC0_High(ds_minus_us_high),
00031           fTDC2_Minus_TDC1_Low(ds_minus_mid_low), 
00032           fTDC2_Minus_TDC1_High(ds_minus_mid_high) 
00033           { LEA_CTOR; }
00034 
00035      virtual ~CalDetTOFRange(){ LEA_DTOR; }
00036    
00037      // State testing member functions
00038      UInt_t GetIndex(UInt_t /* defIndex */) const { return fParticleType; }
00039      UInt_t GetParticleType() const { return fParticleType; }
00040      Float_t GetTDC2Low() const {return fTDC2Low;}
00041      Float_t GetTDC2High() const {return fTDC2High;}
00042      Float_t GetTDC1Low() const {return fTDC1Low;}
00043      Float_t GetTDC1High() const {return fTDC1High;}
00044      Float_t GetTDC0Low() const {return fTDC0Low;}
00045      Float_t GetTDC0High() const {return fTDC0High;}
00046      Float_t GetTDC2MinusTDC0Low() const {return fTDC2_Minus_TDC0_Low;}
00047      Float_t GetTDC2MinusTDC0High() const {return fTDC2_Minus_TDC0_High;}
00048      Float_t GetTDC2MinusTDC1Low() const {return fTDC2_Minus_TDC1_Low;}
00049      Float_t GetTDC2MinusTDC1High() const {return fTDC2_Minus_TDC1_High;}
00050      
00051      virtual DbiTableRow* CreateTableRow() const { 
00052           return new CalDetTOFRange; }
00053 
00054      virtual void Print(Option_t* op="") const;
00055      std::ostream& Print(std::ostream&, Option_t* op = "") const;
00056 
00057      // static member function to provide the table description 
00058      // for temp table writing
00059      static std::string GetTableDesc() ; 
00060 
00061    // State changing member functions
00062      virtual void Fill(DbiResultSet& rs,
00063                        const DbiValidityRec* vrec);
00064      virtual void Store(DbiOutRowStream& ors,
00065                         const DbiValidityRec* vrec) const;
00066  
00067 private:  
00068    
00069      CalDetTOFRange(const CalDetTOFRange& from)
00070           : DbiTableRow() { LEA_CTOR; *this = from; }
00071      
00072      // Data members
00073      
00074 
00075      UInt_t   fParticleType;// the particle this range is to correspond to
00076 
00077      // anything outside these ranges is suspect
00078      Float_t fTDC2Low;
00079      Float_t fTDC2High;
00080      Float_t fTDC1Low;
00081      Float_t fTDC1High;
00082      Float_t fTDC0Low;
00083      Float_t fTDC0High;
00084      
00085      // anything inside these ranges is ok
00086      Float_t fTDC2_Minus_TDC0_Low;
00087      Float_t fTDC2_Minus_TDC0_High;
00088      Float_t fTDC2_Minus_TDC1_Low;
00089      Float_t fTDC2_Minus_TDC1_High;
00090 
00091      ClassDef(CalDetTOFRange,0)
00092 };
00093 
00094 std::ostream& operator<<(std::ostream&, const CalDetTOFRange&);
00095 
00096 #endif
00097 
00098 
00099 
00100 
00101 

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