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

BeamMonDbuModule.h

Go to the documentation of this file.
00001 
00024 #ifndef BEAMMONDBUMODULE_H
00025 #define BEAMMONDBUMODULE_H
00026 
00027 #include <BeamDataUtil/BDPipeline.h>
00028 #include <JobControl/JobCModule.h>
00029 
00030 
00031 class BMFileSummaryFiller;
00032 class BMSpillFiller;
00033 
00034 class BDScalar;
00035 class BDEarliest;
00036 class BDHornCurrent;
00037 class BDTarget;
00038 class BDHadMuMon;
00039 class RawBeamMonHeaderBlock;
00040 class RawBeamMonBlock;
00041 
00042 class BeamMonDbuModule : public JobCModule
00043 {
00044 public:
00045     BeamMonDbuModule();
00046     ~BeamMonDbuModule();
00047 
00048     JobCResult Ana(const MomNavigator *mom);
00049 
00050     void BeginFile();
00051     void EndFile();
00052     void EndJob();
00053     
00054 private:
00055     // Fill pipeline with processors that are needed for the tables
00056     void FillPipeline();
00057     // clean up
00058     void Reap();
00059 
00060     void Process(const RawBeamMonHeaderBlock& rbmhb,
00061                  const RawBeamMonBlock& rbmb);
00062 
00063     // Access the data pipeline
00064     BDPipeline fPipe;
00065 
00066     // The table fillers:
00067     BMFileSummaryFiller* fFileSummaryFiller;
00068     BMSpillFiller* fSpillFiller;
00069 
00070     // Processors 
00071     BDScalar* fProtonIntensity[4];
00072     BDEarliest* fEarliest;
00073     BDHornCurrent* fHornCurrent;
00074     BDTarget* fTarget;
00075 
00076     // Simple access to hadron/muon monitor data
00077     BDHadMuMon* fHadMu[4];
00078 };
00079 
00080 
00081 #endif  // BEAMMONDBUMODULE_H

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