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

FillSpillServerMon.h

Go to the documentation of this file.
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

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