-/* This file is property of and copyright *\r
- * ALICE Experiment at CERN, All rights reserved. *\r
- * See cxx source for full Copyright notice */\r
-\r
-/// @file AliAnaConvCorrPhoton.h\r
-/// @author Svein Lindal\r
-/// @brief Base class for analysis of correlations between conversion particles and charged tracks\r
-\r
-#ifndef ALIANACONVCORRBASE_CXX\r
-#define ALIANACONVCORRBASE_CXX\r
-\r
-#include "Rtypes.h"\r
-#include "TMath.h"\r
-#include "TList.h"\r
-#include "TH1.h"\r
-#include <THnSparse.h>\r
-\r
-class AliAODConversionParticle;\r
-class TClonesArray;\r
-class TString;\r
-\r
-class AliAnaConvCorrBase : public TNamed {\r
-\r
-public:\r
-\r
- \r
-\r
- //Constructor / desctructor\r
- AliAnaConvCorrBase(TString name, TString title); \r
- virtual ~AliAnaConvCorrBase();\r
- \r
- //CreateHistograms\r
- void CreateBaseHistograms();\r
- //To be overrriden by children. Should always call CreateBaseHistograms()\r
- virtual void CreateHistograms();\r
- \r
- //Get list of histograms\r
- TList * GetHistograms() const { return fHistograms;}\r
-\r
- //Add histogram to list\r
- void AddHistogram(TH1 * histogram) { fHistograms->Add(dynamic_cast<TObject*>(histogram));}\r
-\r
- void AddAxis(TAxis * axis) { fAxesList.Add(axis); }\r
-\r
- ///Get the distance in phi between trigger particle and correlated particle\r
- Float_t GetDPhi(Float_t dPhi) { \r
- if ( dPhi < 3*TMath::PiOver2() && dPhi > - TMath::PiOver2() ) return dPhi;\r
- else return ( (dPhi>0)? dPhi - TMath::TwoPi() : dPhi + TMath::TwoPi() ); \r
- }\r
-\r
- void CorrelateWithTracks(AliAODConversionParticle * particle, TObjArray * tracks, const Int_t tIDs[4], Float_t cent, Float_t vtxz);\r
- void FillCounters(TObjArray * particles, TObjArray * tracks, Float_t cent, Float_t vtxz);\r
-\r
- TAxis& GetAxistPt() { return fAxistPt; }\r
- TAxis& GetAxiscPt() { return fAxiscPt; }\r
- TAxis& GetAxisdEta() { return fAxisdEta; }\r
- TAxis& GetAxisdPhi() { return fAxisdPhi; }\r
- TAxis& GetAxisIso() { return fAxisIso; }\r
- TAxis& GetAxisCent() { return fAxisCent; }\r
- TAxis& GetAxisZ() { return fAxisZ; }\r
- TAxis& GetAxisTrigEta() { return fAxisTrigEta; }\r
- TAxis& GetAxisAssEta() { return fAxisAssEta; }\r
- TAxis& GetAxisMEPhi() { return fAxisMEPhi; }\r
-\r
- TList& GetAxisList() { return fAxesList; }\r
- TList& GetTrackAxisList() { return fTrackAxisList; }\r
- TList& GetTrigAxisList() { return fTrigAxisList; }\r
-\r
-\r
-protected:\r
-\r
- THnSparseF * CreateSparse(TString name, TString title, TList * axes);\r
-\r
-private:\r
-\r
- void SetUpDefaultBins();\r
- \r
- //TString fName; //name of analysis\r
- TList * fHistograms; //List of histograms\r
- TList fAxesList; //List over axes to be used in sparse\r
- TList fTrigAxisList; //list\r
- TList fTrackAxisList; //list\r
-\r
- TAxis fAxistPt; //Pt axis\r
- TAxis fAxiscPt; //correlated particle pt axis\r
- TAxis fAxisdEta; //delta eta axis\r
- TAxis fAxisdPhi; //delta phi axis\r
- TAxis fAxisIso; //Isolated particle axis\r
- TAxis fAxisCent; //Centrality\r
- TAxis fAxisZ; //vtx\r
- \r
- TAxis fAxisTrigEta ; //Eta axis for ME\r
- TAxis fAxisAssEta ; //Eta axis for ME\r
- TAxis fAxisMEPhi ; //Phi axis for ME\r
-\r
- THnSparseF * fCorrSparse; // Sparse for corr\r
- THnSparseF * fTrigSparse; // ME Sparse\r
- THnSparseF * fTrackSparse; //Track Sparse\r
-\r
- //Default constructor prohibited\r
- AliAnaConvCorrBase(); //not implemented\r
- AliAnaConvCorrBase(const AliAnaConvCorrBase&); // not implemented\r
- AliAnaConvCorrBase& operator=(const AliAnaConvCorrBase&); // not implemented\r
-\r
- ClassDef(AliAnaConvCorrBase, 7); // example of analysis\r
-\r
-};\r
-\r
-#endif\r
+/* This file is property of and copyright *
+ * ALICE Experiment at CERN, All rights reserved. *
+ * See cxx source for full Copyright notice */
+
+/// @file AliAnaConvCorrPhoton.h
+/// @author Svein Lindal
+/// @brief Base class for analysis of correlations between conversion particles and charged tracks
+
+#ifndef ALIANACONVCORRBASE_CXX
+#define ALIANACONVCORRBASE_CXX
+
+#include "Rtypes.h"
+#include "TMath.h"
+#include "TList.h"
+#include "TH1.h"
+#include <THnSparse.h>
+
+class AliAODConversionParticle;
+class TClonesArray;
+class TString;
+
+class AliAnaConvCorrBase : public TNamed {
+
+public:
+
+
+
+ //Constructor / desctructor
+ AliAnaConvCorrBase(TString name, TString title);
+ virtual ~AliAnaConvCorrBase();
+
+ //CreateHistograms
+ void CreateBaseHistograms();
+ //To be overrriden by children. Should always call CreateBaseHistograms()
+ virtual void CreateHistograms();
+
+ //Get list of histograms
+ TList * GetHistograms() const { return fHistograms;}
+
+ //Add histogram to list
+ void AddHistogram(TH1 * histogram) { fHistograms->Add(dynamic_cast<TObject*>(histogram));}
+
+ void AddAxis(TAxis * axis) { fAxesList.Add(axis); }
+
+ ///Get the distance in phi between trigger particle and correlated particle
+ Float_t GetDPhi(Float_t dPhi) {
+ if ( dPhi < 3*TMath::PiOver2() && dPhi > - TMath::PiOver2() ) return dPhi;
+ else return ( (dPhi>0)? dPhi - TMath::TwoPi() : dPhi + TMath::TwoPi() );
+ }
+
+ void CorrelateWithTracks(AliAODConversionParticle * particle, TObjArray * tracks, const Int_t tIDs[4], Float_t cent, Float_t vtxz);
+ void FillCounters(TObjArray * particles, TObjArray * tracks, Float_t cent, Float_t vtxz);
+
+ TAxis& GetAxistPt() { return fAxistPt; }
+ TAxis& GetAxiscPt() { return fAxiscPt; }
+ TAxis& GetAxisdEta() { return fAxisdEta; }
+ TAxis& GetAxisdPhi() { return fAxisdPhi; }
+ TAxis& GetAxisIso() { return fAxisIso; }
+ TAxis& GetAxisCent() { return fAxisCent; }
+ TAxis& GetAxisZ() { return fAxisZ; }
+ TAxis& GetAxisTrigEta() { return fAxisTrigEta; }
+ TAxis& GetAxisAssEta() { return fAxisAssEta; }
+ TAxis& GetAxisMEPhi() { return fAxisMEPhi; }
+
+ TList& GetAxisList() { return fAxesList; }
+ TList& GetTrackAxisList() { return fTrackAxisList; }
+ TList& GetTrigAxisList() { return fTrigAxisList; }
+
+
+protected:
+
+ THnSparseF * CreateSparse(TString name, TString title, TList * axes);
+
+private:
+
+ void SetUpDefaultBins();
+
+ //TString fName; //name of analysis
+ TList * fHistograms; //List of histograms
+ TList fAxesList; //List over axes to be used in sparse
+ TList fTrigAxisList; //list
+ TList fTrackAxisList; //list
+
+ TAxis fAxistPt; //Pt axis
+ TAxis fAxiscPt; //correlated particle pt axis
+ TAxis fAxisdEta; //delta eta axis
+ TAxis fAxisdPhi; //delta phi axis
+ TAxis fAxisIso; //Isolated particle axis
+ TAxis fAxisCent; //Centrality
+ TAxis fAxisZ; //vtx
+
+ TAxis fAxisTrigEta ; //Eta axis for ME
+ TAxis fAxisAssEta ; //Eta axis for ME
+ TAxis fAxisMEPhi ; //Phi axis for ME
+
+ THnSparseF * fCorrSparse; // Sparse for corr
+ THnSparseF * fTrigSparse; // ME Sparse
+ THnSparseF * fTrackSparse; //Track Sparse
+
+ //Default constructor prohibited
+ AliAnaConvCorrBase(); //not implemented
+ AliAnaConvCorrBase(const AliAnaConvCorrBase&); // not implemented
+ AliAnaConvCorrBase& operator=(const AliAnaConvCorrBase&); // not implemented
+
+ ClassDef(AliAnaConvCorrBase, 7); // example of analysis
+
+};
+
+#endif