#define ALIVERTEXINGHFUTILS_H
-/* $Id: $ */
+/* $Id$ */
///////////////////////////////////////////////////////////////////
// //
// Class with functions useful for different D2H analyses //
// - event plane resolution //
// - <pt> calculation with side band subtraction //
-// - tracklet multiplcity calculation //
+// - tracklet multiplicity calculation //
// Origin: F.Prino, Torino, prino@to.infn.it //
// //
///////////////////////////////////////////////////////////////////
#include "TObject.h"
-#include "TH1F.h"
-#include "TH2F.h"
-#include "TF1.h"
+
+class AliAODMCParticle;
+class AliAODMCHeader;
+class TProfile;
+class TClonesArray;
+class TH1F;
+class TH2F;
+class TF1;
class AliVertexingHFUtils : public TObject{
public:
Int_t GetNumberOfTrackletsInEtaRange(AliAODEvent* ev) const {
return GetNumberOfTrackletsInEtaRange(ev,fMinEtaForTracklets,fMaxEtaForTracklets);
}
+ static Int_t GetGeneratedMultiplicityInEtaRange(TClonesArray* arrayMC, Double_t mineta, Double_t maxeta);
+ static Int_t GetGeneratedPrimariesInEtaRange(TClonesArray* arrayMC, Double_t mineta, Double_t maxeta);
+ static Int_t GetGeneratedPhysicalPrimariesInEtaRange(TClonesArray* arrayMC, Double_t mineta, Double_t maxeta);
// Functions for computing average pt
static void AveragePt(Float_t& averagePt, Float_t& errorPt, Float_t ptmin, Float_t ptmax, TH2F* hMassD, Float_t massFromFit, Float_t sigmaFromFit, TF1* funcB2, Float_t sigmaRangeForSig=2.5, Float_t sigmaRangeForBkg=4.5, Int_t rebin=4);
+ // Functions for computing true impact parameter of D meson
+ static Double_t GetTrueImpactParameterDzero(AliAODMCHeader *mcHeader, TClonesArray* arrayMC, AliAODMCParticle *partDp);
+ static Double_t GetTrueImpactParameterDplus(AliAODMCHeader *mcHeader, TClonesArray* arrayMC, AliAODMCParticle *partDp);
+
+ static Double_t GetCorrectedNtracklets(TProfile* estimatorAvg, Double_t uncorrectedNacc, Double_t vtxZ, Double_t refMult);
private: