| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

In This Package:

DaqRunInfoSvc.h

Go to the documentation of this file.
00001 #ifndef DaqRunInfoSvc_h
00002 #define DaqRunInfoSvc_h
00003 
00004 #include "DaqRunInfoSvc/IDaqRunInfoSvc.h"
00005 #include "GaudiKernel/Service.h"
00006 
00007 using namespace std;
00008 
00009 class IDatabaseSvc;
00010 class DaqRawDataFileInfo;
00011 class DaqRunInfo;
00012 class DaqCalibRunInfo;
00013 
00014 class DaqRunInfoSvc : public Service, virtual public IDaqRunInfoSvc
00015 {
00016 
00017  public:
00018    // Service interface implementation
00019    DaqRunInfoSvc(const string& name, ISvcLocator *svc);
00020    virtual StatusCode initialize();
00021    virtual StatusCode finalize();
00022    virtual StatusCode queryInterface(const InterfaceID& riid,
00023                                     void** ppvInterface);
00024 
00025    // IDaqRunInfoSvc interface implementation
00026    // Return the runNo based on the raw data fileName
00027    int runNumber( const string fileName);
00028  
00029    // Return the table row of DaqRawDataFileInfo based on file name 
00030    const DaqRawDataFileInfo* GetFileInfo( const string filename);
00031 
00032    // Return the table row of DaqRunInfo based on runNo
00033    const DaqRunInfo* GetRunInfo( const int runNo);
00034 
00035    // Return the table row of DaqCalibRunInfo based on runNo
00036    const DaqCalibRunInfo* GetCalibRunInfo( const int runNo);
00037 
00038    // Return the DatabaseRecordVector belonging to a run
00039    int dbRecordVector(const int runNo, DatabaseRecordVector& vec);
00040  
00041    // Return the full list of DaqRunConfig belonging to a run
00042    int fullRunConfigList(const int runNo, vector<DayaBay::DaqRunConfig>& vec);
00043 
00044    // Return a simple list of DaqRunConfig belonging to a run
00045    int simpRunConfigList(const int runNo, vector<DayaBay::DaqRunConfig>& vec);
00046    
00047    // Return the lists of hardware belonging to a run
00048    int findHWList(vector<DayaBay::DaqRunConfig> cV, vector<string>& dets, vector<string>& crates, vector<string>& ltbs, vector<string>& fees);
00049 
00050    // Return the FEE threshold setting
00051    int findFEEThreshold(string runType, vector<DayaBay::DaqRunConfig> cv, vector<string> fees, map<string, string>& th_obj, map<string, bool>& isuni, map<string, int>& thres_uni, map<string, map<string, int> >& thres );
00052 
00053    // Return the LTB trigger setting
00054    int findLtbTrigger(string runType, vector<DayaBay::DaqRunConfig> cv, vector<string> ltbs, map<string, string>& mode, map<string, int>& source, map<string, string>& trig_name, map<string, map<string, int> >& trig_thres);
00055 
00056    string GetRunType(const int runNo);
00057 
00058  private:
00059 
00060    int findHWList(DatabaseRecordVector dbRV, vector<string>& dets, vector<string>& crates, vector<string>& ltbs, vector<string>& fees);
00061    int stringInVector(string str, vector<string> vec);
00062 
00063    // use database service
00064    IDatabaseSvc* m_dbSvc;
00065    // Property: Which Database svc to use?
00066    string m_dbSvcName;
00067    string m_dbName;
00068 
00069 };
00070 
00071 #endif //DaqRunInfoSvc_h
| Classes | Job Modules | Data Objects | Services | Algorithms | Tools | Packages | Directories | Tracs |

Generated on Mon Apr 11 20:16:30 2011 for DaqRunInfoSvc by doxygen 1.4.7