ROOT logo
#ifndef ALIANALYSISTASKRHOMASSSCALE_H
#define ALIANALYSISTASKRHOMASSSCALE_H

class TH1;
class TH2;
class TH3;
class TH3F;
class THnSparse;
class TClonesArray;
class TArrayI;
class AliAnalysisManager;
class AliJetContainer;
class AliRhoParameter;

#include "AliAnalysisTaskEmcalJet.h"

class AliAnalysisTaskRhoMassScale : public AliAnalysisTaskEmcalJet {
 public:
  AliAnalysisTaskRhoMassScale();
  AliAnalysisTaskRhoMassScale(const char *name);
  virtual ~AliAnalysisTaskRhoMassScale();

  void                                UserCreateOutputObjects();
  void                                Terminate(Option_t *option);

  //Setters
  void SetJetContainerNeutral(Int_t c)                { fContainerNeutral     = c   ; }
  void SetJetContainerCharged(Int_t c)                { fContainerCharged     = c   ; }

  void SetRhoMNeutralName(const char *n)              { fRhoMNeutralName = n ; }
  void SetRhoMChargedEmcalName(const char *n)         { fRhoMChargedEmcalName = n ; }
  void SetRhoMCharged2xEmcalName(const char *n)       { fRhoMCharged2xEmcalName = n ; }

 protected:
  Bool_t                              RetrieveEventObjects();
  Bool_t                              Run();
  Bool_t                              FillHistograms();

 private:
  Int_t                               fContainerNeutral;              // particle level jets
  Int_t                               fContainerCharged;              // detector level jets
  TString                             fRhoMNeutralName;               // Name of neutral rho mass object
  TString                             fRhoMChargedEmcalName;          // Name of charged rho mass object in EMCal acceptance
  TString                             fRhoMCharged2xEmcalName;        // Name of charged rho mass object in two times EMCal acceptance
  AliRhoParameter                    *fRhoMNeutral;                   //!neutral rho_m
  AliRhoParameter                    *fRhoMChargedEmcal;              //!charged rho_m in EMCal acceptance
  AliRhoParameter                    *fRhoMCharged2xEmcal;            //!charged rho_m in two times EMCal acceptance

  TH2                                *fHistScaleEmcalvsCent;          //!scale factor 1xEmcal vs centrality
  TH2                                *fHistScale2EmcalvsCent;         //!scale factor 2xEmcal vs centrality
  TH2                                *fHistDeltaScale2EmcalvsCent;    //!difference between scale factors vs centrality

  TH2                                *fHistScaleEmcalvsMult;          //!scale factor 1xEmcal vs track multiplicity
  TH2                                *fHistScale2EmcalvsMult;         //!scale factor 2xEmcal vs track multiplicity
  TH2                                *fHistDeltaScale2EmcalvsMult;    //!difference between scale factors vs track multiplicity

  AliAnalysisTaskRhoMassScale(const AliAnalysisTaskRhoMassScale&);            // not implemented
  AliAnalysisTaskRhoMassScale &operator=(const AliAnalysisTaskRhoMassScale&); // not implemented

  ClassDef(AliAnalysisTaskRhoMassScale, 1)
};
#endif

 AliAnalysisTaskRhoMassScale.h:1
 AliAnalysisTaskRhoMassScale.h:2
 AliAnalysisTaskRhoMassScale.h:3
 AliAnalysisTaskRhoMassScale.h:4
 AliAnalysisTaskRhoMassScale.h:5
 AliAnalysisTaskRhoMassScale.h:6
 AliAnalysisTaskRhoMassScale.h:7
 AliAnalysisTaskRhoMassScale.h:8
 AliAnalysisTaskRhoMassScale.h:9
 AliAnalysisTaskRhoMassScale.h:10
 AliAnalysisTaskRhoMassScale.h:11
 AliAnalysisTaskRhoMassScale.h:12
 AliAnalysisTaskRhoMassScale.h:13
 AliAnalysisTaskRhoMassScale.h:14
 AliAnalysisTaskRhoMassScale.h:15
 AliAnalysisTaskRhoMassScale.h:16
 AliAnalysisTaskRhoMassScale.h:17
 AliAnalysisTaskRhoMassScale.h:18
 AliAnalysisTaskRhoMassScale.h:19
 AliAnalysisTaskRhoMassScale.h:20
 AliAnalysisTaskRhoMassScale.h:21
 AliAnalysisTaskRhoMassScale.h:22
 AliAnalysisTaskRhoMassScale.h:23
 AliAnalysisTaskRhoMassScale.h:24
 AliAnalysisTaskRhoMassScale.h:25
 AliAnalysisTaskRhoMassScale.h:26
 AliAnalysisTaskRhoMassScale.h:27
 AliAnalysisTaskRhoMassScale.h:28
 AliAnalysisTaskRhoMassScale.h:29
 AliAnalysisTaskRhoMassScale.h:30
 AliAnalysisTaskRhoMassScale.h:31
 AliAnalysisTaskRhoMassScale.h:32
 AliAnalysisTaskRhoMassScale.h:33
 AliAnalysisTaskRhoMassScale.h:34
 AliAnalysisTaskRhoMassScale.h:35
 AliAnalysisTaskRhoMassScale.h:36
 AliAnalysisTaskRhoMassScale.h:37
 AliAnalysisTaskRhoMassScale.h:38
 AliAnalysisTaskRhoMassScale.h:39
 AliAnalysisTaskRhoMassScale.h:40
 AliAnalysisTaskRhoMassScale.h:41
 AliAnalysisTaskRhoMassScale.h:42
 AliAnalysisTaskRhoMassScale.h:43
 AliAnalysisTaskRhoMassScale.h:44
 AliAnalysisTaskRhoMassScale.h:45
 AliAnalysisTaskRhoMassScale.h:46
 AliAnalysisTaskRhoMassScale.h:47
 AliAnalysisTaskRhoMassScale.h:48
 AliAnalysisTaskRhoMassScale.h:49
 AliAnalysisTaskRhoMassScale.h:50
 AliAnalysisTaskRhoMassScale.h:51
 AliAnalysisTaskRhoMassScale.h:52
 AliAnalysisTaskRhoMassScale.h:53
 AliAnalysisTaskRhoMassScale.h:54
 AliAnalysisTaskRhoMassScale.h:55
 AliAnalysisTaskRhoMassScale.h:56
 AliAnalysisTaskRhoMassScale.h:57
 AliAnalysisTaskRhoMassScale.h:58
 AliAnalysisTaskRhoMassScale.h:59
 AliAnalysisTaskRhoMassScale.h:60
 AliAnalysisTaskRhoMassScale.h:61
 AliAnalysisTaskRhoMassScale.h:62
 AliAnalysisTaskRhoMassScale.h:63