AliPhysics  master (3d17d9d)
AliAnalysisTaskRhoMassBase.h
Go to the documentation of this file.
1 /************************************************************************************
2  * Copyright (C) 2014, Copyright Holders of the ALICE Collaboration *
3  * All rights reserved. *
4  * *
5  * Redistribution and use in source and binary forms, with or without *
6  * modification, are permitted provided that the following conditions are met: *
7  * * Redistributions of source code must retain the above copyright *
8  * notice, this list of conditions and the following disclaimer. *
9  * * Redistributions in binary form must reproduce the above copyright *
10  * notice, this list of conditions and the following disclaimer in the *
11  * documentation and/or other materials provided with the distribution. *
12  * * Neither the name of the <organization> nor the *
13  * names of its contributors may be used to endorse or promote products *
14  * derived from this software without specific prior written permission. *
15  * *
16  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND *
17  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED *
18  * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE *
19  * DISCLAIMED. IN NO EVENT SHALL ALICE COLLABORATION BE LIABLE FOR ANY *
20  * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES *
21  * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; *
22  * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND *
23  * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT *
24  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS *
25  * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. *
26  ************************************************************************************/
27 #ifndef ALIANALYSISTASKRHOMASSBASE_H
28 #define ALIANALYSISTASKRHOMASSBASE_H
29 
30 class TString;
31 class TF1;
32 class TH1F;
33 class TH2F;
34 class AliRhoParameter;
35 
37 
49  public:
54 
60  AliAnalysisTaskRhoMassBase(const char *name, Bool_t histo=kFALSE);
61 
67 
72 
73  void SetOutRhoMassName(const char *name) { fOutRhoMassName = name ;
74  fOutRhoMassScaledName = Form("%s_Scaled",name) ; }
75  void SetCompareRhoMassName(const char *name) { fCompareRhoMassName = name ; }
76  void SetCompareRhoMassScaledName(const char *name) { fCompareRhoMassScaledName = name ; }
77  void SetScaleFunction(TF1* sf) { fScaleFunction = sf ; }
78  void SetRhoMassFunction(TF1* rf) { fRhoMassFunction = rf ; }
80  void SetSmallSystem(Bool_t setter = kTRUE) {fIsPbPb = !setter; }
81 
82 
83  const TString& GetOutRhoMassName() const { return fOutRhoMassName; }
85 
86  protected:
87 
91  void ExecOnce();
92 
97  Bool_t Run();
98 
104 
110  virtual Double_t GetRhoMassFactor(Double_t cent);
111 
117  virtual Double_t GetScaleFactor(Double_t cent);
118 
127 
132 
138 
143 
146 
148 
149  AliAnalysisTaskRhoMassBase(const AliAnalysisTaskRhoMassBase&); // not implemented
151 
152  ClassDef(AliAnalysisTaskRhoMassBase, 2); // Rho mass base task
153 };
154 #endif
AliRhoParameter * fCompareRhoMass
! rho object to compare
TH2F * fHistDeltaRhoMassvsNtrack
! delta rho mass vs. no. of tracks
TString fOutRhoMassScaledName
name of output scaled rho mass object
TH2F * fHistRhoMassvsNcluster
! rho mass vs. no. of clusters
AliRhoParameter * fCompareRhoMassScaled
! scaled rho object to compare
Bool_t fAttachToEvent
whether or not attach rho mass to the event objects list
double Double_t
Definition: External.C:58
Definition: External.C:236
TH2F * fHistDeltaRhoMassvsCent
! delta rho mass vs. centrality
Bool_t fIsPbPb
different histogram ranges for pp/pPb and PbPb
Bool_t FillHistograms()
Fill histograms.
TString fCompareRhoMassScaledName
name of scaled rho mass object to compare
virtual Double_t GetScaleFactor(Double_t cent)
Get scale factor.
TF1 * fRhoMassFunction
pre-computed rho mass as a function of centrality
AliRhoParameter * fOutRhoMassScaled
! output scaled rho object
TH2F * fHistRhoMassvsCent
! rho mass vs. centrality
TString fCompareRhoMassName
name of rho mass object to compare
const TString & GetOutRhoMassScaledName() const
virtual Double_t GetRhoMassFactor(Double_t cent)
Return rho per centrality.
void SetSmallSystem(Bool_t setter=kTRUE)
TF1 * fScaleFunction
pre-computed scale factor as a function of centrality
const TString & GetOutRhoMassName() const
TH2F * fHistDeltaRhoMassScalevsCent
! delta rho mass scaled vs. centrality
void SetOutRhoMassName(const char *name)
TString fOutRhoMassName
name of output rho mass object
void UserCreateOutputObjects()
User create output objects, called at the beginning of the analysis.
TH2F * fHistRhoMassScaledvsNcluster
! rho mass scaled vs. no. of clusters
TH2F * fHistGammaVsNtrack
! Gamma(<E>/<M>) vs Ntrack
void SetCompareRhoMassName(const char *name)
TH2F * fHistRhoMassScaledvsNtrack
! rho mass scaled vs. no. of tracks
AliAnalysisTaskRhoMassBase & operator=(const AliAnalysisTaskRhoMassBase &)
TH2F * fHistDeltaRhoMassScalevsNtrack
! delta rho mass scaled vs. no. of tracks
Base class for rho mass calculation.
AliRhoParameter * fOutRhoMass
! output rho object
Base task in the EMCAL jet framework.
void SetCompareRhoMassScaledName(const char *name)
TH2F * fHistRhoMassScaledvsCent
! rho mass scaled vs. centrality
TH2F * fHistRhoMassvsNtrack
! rho mass vs. no. of tracks
bool Bool_t
Definition: External.C:53
TH2F * fHistJetMassvsCent
! jet mass vs. centrality
virtual ~AliAnalysisTaskRhoMassBase()
Destructor.