00001
00002
00003
00004 #ifndef STBET4PMAKERIMP_H
00005 #define STBET4PMAKERIMP_H
00006
00007 #include "StjTowerEnergyList.h"
00008 #include "StjTrackList.h"
00009
00010 #include <utility>
00011
00012 class StjTPC;
00013 class StjBEMC;
00014 class StjEEMC;
00015 class StjTrackListCut;
00016 class StjTowerEnergyListCut;
00017
00018 class StjAbstractTowerEnergyCorrectionForTracks;
00019
00020 class StBET4pMakerImp {
00021
00022 public:
00023
00024 StBET4pMakerImp(StjTPC* tpc,
00025 StjTrackListCut* tpcCut,
00026 StjBEMC* bemc,
00027 StjTowerEnergyListCut* bemcCut,
00028 StjAbstractTowerEnergyCorrectionForTracks* correctTowerEnergyForTracks,
00029 StjEEMC* eemc);
00030
00031 virtual ~StBET4pMakerImp() { };
00032
00033 void Init();
00034
00035 std::pair<StjTrackList, StjTowerEnergyList> getTrackAndEnergyList();
00036
00037 StjTPC* TPC() { return _tpc; }
00038 StjBEMC* BEMC() { return _bemc; }
00039 StjEEMC* EEMC() { return _eemc; }
00040
00041 StjTrackListCut* getTPCTrackCut() { return _tpcCut; }
00042 StjTowerEnergyListCut* getBEMCEnergyCut() { return _bemcCut; }
00043
00044 private:
00045
00046 StjTPC* _tpc;
00047 StjBEMC* _bemc;
00048 StjEEMC* _eemc;
00049
00050 StjTrackListCut* _tpcCut;
00051 StjTowerEnergyListCut* _bemcCut;
00052
00053 StjAbstractTowerEnergyCorrectionForTracks* _correctTowerEnergyForTracks;
00054
00055 };
00056
00057 #endif // STBET4PMAKERIMP_H