00001 #ifndef StHbtCutMonitorHandler_hh
00002 #define StHbtCutMonitorHandler_hh
00003
00004
00005 #include "StHbtMaker/Infrastructure/StHbtTypes.hh"
00006 #include "StHbtMaker/Infrastructure/StHbtEvent.hh"
00007 #include "StHbtMaker/Infrastructure/StHbtTrack.hh"
00008 #include "StHbtMaker/Infrastructure/StHbtV0.hh"
00009 #include "StHbtMaker/Infrastructure/StHbtKink.hh"
00010 #include "StHbtMaker/Infrastructure/StHbtPair.hh"
00011 #include "StHbtMaker/Infrastructure/StHbtParticleCollection.hh"
00012 #include "StHbtMaker/Infrastructure/StHbtCutMonitorCollection.hh"
00013 #include "StHbtMaker/Base/StHbtCutMonitor.hh"
00014
00015 class StHbtCutMonitorHandler{
00016
00017 public:
00018
00019 StHbtCutMonitorHandler();
00020 virtual ~StHbtCutMonitorHandler();
00021
00022 StHbtCutMonitorCollection* PassMonitorColl();
00023 StHbtCutMonitorCollection* FailMonitorColl();
00024 StHbtCutMonitor* PassMonitor(int n);
00025 StHbtCutMonitor* FailMonitor(int n);
00026 void AddCutMonitor(StHbtCutMonitor* cutMoni1, StHbtCutMonitor* cutMoni2);
00027 void AddCutMonitor(StHbtCutMonitor* cutMoni);
00028 void AddCutMonitorPass(StHbtCutMonitor* cutMoni);
00029 void AddCutMonitorFail(StHbtCutMonitor* cutMoni);
00030 void FillCutMonitor(const StHbtEvent* event, bool pass);
00031 void FillCutMonitor(const StHbtTrack* track, bool pass);
00032 void FillCutMonitor(const StHbtV0* v0, bool pass);
00033 void FillCutMonitor(const StHbtKink* kink, bool pass);
00034 void FillCutMonitor(const StHbtPair* pair, bool pass);
00035 void FillCutMonitor(const StHbtParticleCollection* partColl);
00036 void FillCutMonitor(const StHbtEvent* event, const StHbtParticleCollection* partColl);
00037 void Finish();
00038
00039 private:
00040 bool mCollectionsEmpty;
00041 StHbtCutMonitorCollection* mPassColl;
00042 StHbtCutMonitorCollection* mFailColl;
00043 #ifdef __ROOT__
00044 ClassDef(StHbtCutMonitorHandler, 0)
00045 #endif
00046
00047 };
00048
00049 inline StHbtCutMonitorCollection* StHbtCutMonitorHandler::PassMonitorColl() { return mPassColl;}
00050 inline StHbtCutMonitorCollection* StHbtCutMonitorHandler::FailMonitorColl() { return mFailColl;}
00051
00052 #endif