00001
00002
00003 #ifndef STJTOWERENERGYCORRECTIONFORTRACKS_H
00004 #define STJTOWERENERGYCORRECTIONFORTRACKS_H
00005
00006 #include <TObject.h>
00007
00008 #include "StjTowerEnergyList.h"
00009 #include "StjTrackList.h"
00010
00011 class StjTowerEnergyCorrectionForTracks : public TObject {
00012
00013 public:
00014 StjTowerEnergyCorrectionForTracks() { }
00015 virtual ~StjTowerEnergyCorrectionForTracks() { }
00016
00017 StjTowerEnergyList operator()(const StjTowerEnergyList &energyDepositList, const StjTrackList& trackList);
00018
00019 StjTowerEnergyList Do(const StjTowerEnergyList &energyDepositList, const StjTrackList& trackList);
00020
00021
00022 private:
00023
00024 void countTracksOnBemcTower(const StjTrack& track);
00025
00026 double correctBemcTowerEnergyForTracks_(double energy, int bemcTowerId, float eta, float phi);
00027
00028 static const int mNOfBemcTowers = 4800;
00029
00030 int mNtracksOnTower[mNOfBemcTowers + 1];
00031
00032 ClassDef(StjTowerEnergyCorrectionForTracks, 1)
00033
00034 };
00035
00036 #endif // STJTOWERENERGYCORRECTIONFORTRACKS_H