00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef StRareMaker_HH
00022 #define StRareMaker_HH
00023
00024
00025 #include "StMaker.h"
00026 #include "SystemOfUnits.h"
00027 #ifndef ROOT_TH1
00028 #include "TH1.h"
00029 #endif
00030 #ifndef ROOT_TH2
00031 #include "TH2.h"
00032 #endif
00033 #include "TTree.h"
00034 #include "TFile.h"
00035
00036 class StEvent;
00037
00038 class StRareEvent;
00039 class StRareEventCut;
00040 class StRareTrackCut;
00041 class StL3RareTrackCut;
00042
00043 class StRareMaker : public StMaker {
00044
00045 private:
00046 int number_of_events_processed;
00047 TFile* out;
00048
00049 protected:
00050
00051 TTree *m_Tree;
00052
00053 public:
00054
00055 StRareMaker(const Char_t *name="RareParticles", Char_t* fileName="RareEvent.root");
00056 StRareMaker(const Char_t *name, Char_t* fileName, StRareEventCut* cut, StRareTrackCut* track);
00057 StRareMaker(const Char_t *name,
00058 Char_t* fileName,
00059 StRareEventCut* cut,
00060 StRareTrackCut* trackCut,
00061 StL3RareTrackCut* l3trackCut);
00062 virtual ~StRareMaker(){};
00063 virtual void Clear(Option_t *option="");
00064 virtual Int_t Init();
00065 virtual Int_t Make();
00066 virtual void PrintInfo();
00067 virtual Int_t Finish();
00068 virtual void Report();
00069
00070 private:
00071 StRareTrackCut* mTrackCut;
00072 StRareEventCut* mEventCut;
00073 StL3RareTrackCut* mL3TrackCut;
00074 StRareEvent* mRareEvent;
00075
00076 ClassDef(StRareMaker, 1)
00077 };
00078
00079 #endif
00080
00081
00082
00083