00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef ManyPairCuts_hh
00023 #define ManyPairCuts_hh
00024
00025 #include "StHbtMaker/Infrastructure/StHbtPairCutCollection.hh"
00026 #include "StHbtMaker/Base/StHbtPairCut.h"
00027
00028 class ManyPairCuts : public StHbtPairCut{
00029 public:
00030 ManyPairCuts();
00031 ManyPairCuts(const ManyPairCuts&);
00032
00033
00034 virtual bool Pass(const StHbtPair*);
00035 virtual StHbtString Report();
00036 ManyPairCuts* Clone();
00037
00038 void AddPairCut(StHbtPairCut*);
00039
00040
00041 private:
00042 long mNPairsPassed;
00043 long mNPairsFailed;
00044 StHbtPairCutCollection mPairCutCollection;
00045
00046
00047 #ifdef __ROOT__
00048 ClassDef(ManyPairCuts, 0)
00049 #endif
00050 };
00051
00052 inline ManyPairCuts::ManyPairCuts(const ManyPairCuts& c) : StHbtPairCut(c) {
00053 mNPairsPassed = 0;
00054 mNPairsFailed = 0;
00055
00056 }
00057 inline ManyPairCuts* ManyPairCuts::Clone() { ManyPairCuts* c = new ManyPairCuts(*this); return c;}
00058
00059 inline void ManyPairCuts::AddPairCut(StHbtPairCut* pc){mPairCutCollection.push_back(pc);}
00060
00061 #endif