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

In This Package:

IDaqRunInfoSvc.h

Go to the documentation of this file.
00001 #ifndef IDaqRunInfoSvc_h
00002 #define IDaqRunInfoSvc_h
00003 
00004 #include "GaudiKernel/IInterface.h"
00005 #include "DatabaseSvc/IDatabaseSvc.h"
00006 #include <string>
00007 #include <vector>
00008 #include <map>
00009 
00010 using namespace std;
00011 
00012 class DaqRawDataFileInfo;
00013 class DaqRunInfo;
00014 class DaqCalibRunInfo;
00015 
00016 namespace DayaBay{
00017  
00018 class DaqRunConfig { //identical with the table name in offline DB
00019   public:
00020     DaqRunConfig(){m_SchemaVersion=0; m_DataVersion=0; m_CreationVersion=0; m_ClassName=""; m_ObjectId=""; m_Name=""; m_ParentPosition=0; m_IntValue=0; m_FloatValue=0; m_StringValue=""; }
00021     ~DaqRunConfig(){;}
00022   public:
00023     int         m_SchemaVersion;
00024     int         m_DataVersion;
00025     int         m_CreationVersion;
00026     string m_ClassName;
00027     string m_ObjectId;
00028     string m_Name;
00029     int         m_ParentPosition;
00030     int         m_IntValue;
00031     double      m_FloatValue;
00032     string m_StringValue;
00033 };
00034  
00035 }
00036 
00037 // Declaration of the interface ID
00038 static const InterfaceID IID_IDaqRunInfoSvc("IDaqRunInfoSvc",1,0);
00039  
00040 class IDaqRunInfoSvc : virtual public IInterface
00041 {
00042  public:
00043   // Retrieve interface ID
00044   static const InterfaceID& interfaceID(){
00045     return IID_IDaqRunInfoSvc;
00046   }
00047   
00048   // Return the runNo based on the raw data fileName
00049   virtual int runNumber( const string fileName) = 0;
00050 
00051   // Return the table row of DaqRawDataFileInfo based on file name 
00052   virtual const DaqRawDataFileInfo* GetFileInfo( const string filename) = 0;
00053  
00054   // Return the table row of DaqRunInfo based on runNo
00055   virtual const DaqRunInfo* GetRunInfo( const int runNo) = 0;
00056  
00057   // Return the table row of DaqCalibRunInfo based on runNo
00058   virtual const DaqCalibRunInfo* GetCalibRunInfo( const int runNo) = 0;
00059 
00060   // Return the DatabaseRecordVector belonging to a run
00061   virtual int dbRecordVector(const int runNo, DatabaseRecordVector& vec) = 0;
00062 
00063   // Return the full list of DaqRunConfig belonging to a run
00064   virtual int fullRunConfigList(const int runNo, vector<DayaBay::DaqRunConfig>& vec) = 0;
00065 
00066   // Return a simple list of DaqRunConfig belonging to a run
00067   virtual int simpRunConfigList(const int runNo, vector<DayaBay::DaqRunConfig>& vec) = 0;
00068   
00069   // Return the lists of hardware belonging to a run
00070   virtual int findHWList(vector<DayaBay::DaqRunConfig> cV, vector<string>& dets, vector<string>& crates, vector<string>& ltbs, vector<string>& fees) = 0;
00071 
00072   // Return the FEE threshold setting
00073   virtual 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 ) = 0;
00074 
00075   // Return the LTB trigger setting
00076   virtual 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) = 0;
00077 
00078   virtual string GetRunType(const int runNo) = 0;
00079 
00080 };
00081 
00082 #endif //IDaqRunInfoSvc_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