10 #include "AliEMCALRecoUtils.h"
11 #include "AliAnalysisManager.h"
12 #include "AliVEvent.h"
29 TNamed(
"AliEmcalCorrectionComponent",
"AliEmcalCorrectionComponent"),
31 fDefaultConfiguration(),
35 fGetPassFromFileName(kTRUE),
57 AliDebug(3, Form(
"%s", __PRETTY_FUNCTION__));
70 fDefaultConfiguration(),
74 fGetPassFromFileName(kTRUE),
96 AliDebug(3, Form(
"%s", __PRETTY_FUNCTION__));
116 AliDebug(3, Form(
"%s", __PRETTY_FUNCTION__));
119 std::string tempString =
"";
134 AliDebug(3, Form(
"%s", __PRETTY_FUNCTION__));
148 AliDebug(3, Form(
"%s", __PRETTY_FUNCTION__));
158 AliDebug(3, Form(
"%s", __PRETTY_FUNCTION__));
172 AliDebug(3, Form(
"%s", __PRETTY_FUNCTION__));
191 Double_t veta = t->GetTrackEtaOnEMCal();
192 Double_t vphi = t->GetTrackPhiOnEMCal();
200 phidiff=TVector2::Phi_mpi_pi(vphi-cphi);
212 Int_t bunchCrossNo =
fEvent->GetBunchCrossNumber();
241 std::size_t sharedParameterLocation = value.find(
"sharedParameters:");
242 if (sharedParameterLocation != std::string::npos)
245 value.erase(sharedParameterLocation, sharedParameterLocation + 17);
259 TTree *inputTree = mgr->GetTree();
263 AliError(
"Pointer to tree = 0, returning");
267 TFile *inputFile = inputTree->GetCurrentFile();
269 AliError(
"Null pointer input file, returning");
273 TString fname(inputFile->GetName());
279 else if (fname.Contains(
"LHC11c") &&
281 else if (fname.Contains(
"calo") || fname.Contains(
"high_lumi"))
287 else if (fname.Contains(
"LHC14a1a"))
289 AliInfo(
"Energy calibration activated for this MC production!");
294 AliFatal(Form(
"Pass number string not found: %s. Please set the pass number in the configuration!", fname.Data()));
311 for (
Int_t iCell = 0; iCell <
fCaloCells->GetNumberOfCells(); iCell++){
313 fCaloCells->GetCell(iCell, absId, ecell, tcell, mclabel, efrac);
314 if(name.Contains(
"Energy")){
317 else if(name.Contains(
"Time")){
virtual ~AliEmcalCorrectionComponent()
virtual Bool_t UserNotify()
virtual void UserCreateOutputObjects()
AliVCaloCells * fCaloCells
! Pointer to CaloCells
AliEMCALRecoUtils * fRecoUtils
Pointer to RecoUtils.
Base class for correction components in the EMCal correction framework.
static map_type * componentMap
Contains the map to all of the components.
std::map< std::string, AliEmcalCorrectionComponent *(*)()> map_type
Double_t fVertex[3]
! Event vertex
AliVEvent * fEvent
! Pointer to event
TList * fOutput
! List of output histograms
Enhanced TList-derived class that implements correct merging for pt_hard binned production.
static bool IsSharedValue(std::string &value)
Bool_t fGetPassFromFileName
Get fFilepass from file name.
virtual Bool_t Initialize()
ClassImp(AliAnalysisTaskCRC) AliAnalysisTaskCRC
AliEmcalCorrectionComponent()
void GetEtaPhiDiff(const AliVTrack *t, const AliVCluster *v, Double_t &phidiff, Double_t &etadiff)
TString fFilepass
Input data pass number.
bool GetProperty(std::string propertyName, T &property, bool requiredProperty=true, std::string correctionName="")
Retrieve property.