00001 #ifndef FILLSPILLSERVERMON_H 00002 #define FILLSPILLSERVERMON_H 00003 00004 #include "JobControl/JobCModule.h" 00005 #include "Conventions/Detector.h" 00006 00007 #include "TFile.h" 00008 #include "TTree.h" 00009 00010 #include <vector> 00011 using std::vector; 00012 00013 class JobCommand; 00014 class MomNavigator; 00015 00016 class FillSpillServerMon : public JobCModule, public TObject 00017 { 00018 00019 public: 00020 00021 FillSpillServerMon(); 00022 ~FillSpillServerMon(); 00023 void BeginJob(); 00024 JobCResult Get(MomNavigator* mom); 00025 //JobCResult Ana(const MomNavigator* mom); 00026 const Registry& DefaultConfig() const; 00027 void Config(const Registry& r); 00028 void HandleCommand(JobCommand* command); 00029 void EndJob(); 00030 00031 private: 00032 00033 Int_t fRecord; 00034 Int_t fCounter; 00035 Int_t fTime; 00036 Int_t fBegTime; 00037 Int_t fEndTime; 00038 00039 Int_t fWriteToDatabase; 00040 Int_t fReadFromDatabase; 00041 Int_t fWriteOutResults; 00042 00043 Int_t fWriteReportedSpills; 00044 Int_t fWritePredictedSpills; 00045 Int_t fWriteFakeSpills; 00046 Int_t fWriteLocalSpills; 00047 00048 TFile* fSpillFile; 00049 TTree* fSpillTree; 00050 00051 Int_t Source; 00052 Int_t TimeStamp; 00053 Int_t SpillStatus; 00054 Int_t SpillType; 00055 Int_t SpillTimeND_sec; 00056 Int_t SpillTimeND_nsec; 00057 Int_t SpillTimeFD_sec; 00058 Int_t SpillTimeFD_nsec; 00059 Int_t SpillTimeError; 00060 Int_t Request_sec; 00061 Int_t WindowOpen_nsec; 00062 Int_t WindowClose_nsec; 00063 00064 vector<int> vecTimeStamp; 00065 vector<int> vecSpillStatus; 00066 vector<int> vecSpillType; 00067 vector<int> vecSpillTimeNDsec; 00068 vector<int> vecSpillTimeNDnanosec; 00069 vector<int> vecSpillTimeFDsec; 00070 vector<int> vecSpillTimeFDnanosec; 00071 vector<int> vecSpillTimeError; 00072 vector<int> vecRequestSec; 00073 vector<int> vecWindowOpen; 00074 vector<int> vecWindowClose; 00075 Detector::Detector_t fDetector; 00076 00077 void ClearVectors(); 00078 void PrintResults(); 00079 00080 void ProcessBlock(TObject* obj); 00081 00082 void WriteToDatabase(); 00083 void ReadFromDatabase(); 00084 void WriteOutResults(Int_t source); 00085 00086 ClassDef(FillSpillServerMon,1) 00087 00088 }; 00089 00090 #endif
1.3.9.1