X-Git-Url: http://git.uio.no/git/?a=blobdiff_plain;f=PWG4%2FGammaConv%2FAliAnalysisTaskGammaConversion.h;h=91039dd8d4f8c1324da6fcdc5a3312f4dbf626a5;hb=6746e1e1c977330c0ea11714eeb43d05542c5abf;hp=e66820ff312d52362b388681f204e140cf4f9125;hpb=111d75df7e6d60571e374896e296b8ea08b07e87;p=u%2Fmrichter%2FAliRoot.git diff --git a/PWG4/GammaConv/AliAnalysisTaskGammaConversion.h b/PWG4/GammaConv/AliAnalysisTaskGammaConversion.h index e66820ff312..91039dd8d4f 100644 --- a/PWG4/GammaConv/AliAnalysisTaskGammaConversion.h +++ b/PWG4/GammaConv/AliAnalysisTaskGammaConversion.h @@ -14,7 +14,7 @@ #include #include "AliV0Reader.h" #include "AliGammaConversionBGHandler.h" -#include "TRandom.h" +//#include "TRandom3.h" //#include "AliCFManager.h" // for CF //#include "AliCFContainer.h" // for CF @@ -32,13 +32,16 @@ class AliMCEvent; class TList; class AliStack; class AliESDtrackCuts; +class AliTriggerAnalysis; class AliCFManager; // for CF class AliCFContainer; // for CF +class TRandom3; class AliAnalysisTaskGammaConversion : public AliAnalysisTaskSE { public: + typedef enum { kProcSD, kProcDD, kProcND, kProcUnknown, kNProcs } ProcType_t; AliAnalysisTaskGammaConversion(); AliAnalysisTaskGammaConversion(const char* name); virtual ~AliAnalysisTaskGammaConversion() ;// virtual destructor @@ -50,13 +53,14 @@ class AliAnalysisTaskGammaConversion : public AliAnalysisTaskSE virtual void UserExec(Option_t *option); virtual void Terminate(Option_t *option); //virtual void ConnectInputData(Option_t * option); - + void CheckMesonProcessTypeEventQuality(Int_t evtQ); + Int_t GetProcessType(const AliMCEvent * mcEvt) ; void ProcessMCData(); void ProcessV0sNoCut(); void ProcessV0s(); void ProcessGammasForNeutralMesonAnalysis(); void ProcessGammasForOmegaMesonAnalysis(); - void ProcessConvPHOSGammasForNeutralMesonAnalysis(); + // void ProcessConvPHOSGammasForNeutralMesonAnalysis(); void RecalculateV0ForGamma(); // for CF void SetCFManager(AliCFManager * const io) {fCFManager = io;}; @@ -70,7 +74,7 @@ class AliAnalysisTaskGammaConversion : public AliAnalysisTaskSE void FillAODWithConversionGammas(); // end AOD - static Bool_t IsGoodImpPar(AliESDtrack *const track); + static Bool_t IsGoodImpPar(const AliESDtrack *const track); // for GammaJetAnalysis void ProcessGammasForGammaJetAnalysis(); @@ -114,13 +118,13 @@ class AliAnalysisTaskGammaConversion : public AliAnalysisTaskSE void CalculateBackground(); void SetWriteNtuple(Bool_t writeNtuple){fWriteNtuple = writeNtuple;} void FillNtuple(); - Double_t GetMCOpeningAngle(TParticle* const daughter0, TParticle* const daughter1) const; + Double_t GetMCOpeningAngle(const TParticle* const daughter0,const TParticle* const daughter1) const; void CheckV0Efficiency(); void SetDeltaAODFileName(TString fn) { fKFDeltaAODFileName = fn; }; //////////////////Chi_c Analysis//////////////////////////// - void GetPID(AliESDtrack *track, Stat_t &pid, Stat_t &weight); - double GetSigmaToVertex(AliESDtrack* t); + void GetPID(const AliESDtrack *track, Stat_t &pid, Stat_t &weight); + double GetSigmaToVertex(const AliESDtrack* t); void ElectronBackground(TString hBg, TClonesArray e); void FillAngle(TString histoName,TClonesArray const tlVeNeg, TClonesArray const tlVePos); void FillElectronInvMass(TString histoName, TClonesArray const negativeElectron, TClonesArray const positiveElectron); @@ -136,27 +140,33 @@ class AliAnalysisTaskGammaConversion : public AliAnalysisTaskSE void SetMoveParticleAccordingToVertex(Bool_t flag){fMoveParticleAccordingToVertex = flag;} - void MoveParticleAccordingToVertex(AliKFParticle *particle,AliGammaConversionBGHandler::GammaConversionVertex *vertex); + void MoveParticleAccordingToVertex(AliKFParticle * particle,const AliGammaConversionBGHandler::GammaConversionVertex *vertex); void SetApplyChi2Cut(Bool_t flag){fApplyChi2Cut = flag;} void SetDoRotation(Bool_t flag){fDoRotation = flag;} - void SetPMDegreesBG(Int_t deg){nDegreesPMBackground=deg;} + void SetPMDegreesBG(Int_t deg){fNDegreesPMBackground=deg;} - void SetNumberOfRotationsBG(Int_t nRot){nRandomEventsForBG=nRot;} + void SetNumberOfRotationsBG(Int_t nRot){fNRandomEventsForBG=nRot;} void RotateKFParticle(AliKFParticle * kfParticle,Double_t angle); void SetCheckBGProbability(Bool_t flag){fCheckBGProbability = flag;} + void SetRemovePileUp(Bool_t removePileUp) { fRemovePileUp = removePileUp; } + + void SetSelectV0AND(Bool_t selectV0AND) { fSelectV0AND = selectV0AND; } + void SetUseMultiplicity(Int_t useMultiplicity) {fUseMultiplicity=useMultiplicity;} + void SetUseMultiplicityBin(Int_t useMultiplicityBin) {fUseMultiplicityBin=useMultiplicityBin;} + Int_t CalculateMultiplicityBin(); private: AliAnalysisTaskGammaConversion(const AliAnalysisTaskGammaConversion&); // Not implemented AliAnalysisTaskGammaConversion& operator=(const AliAnalysisTaskGammaConversion&); // Not implemented /// Add reconstructed pions to aod - void AddPionToAOD(AliKFParticle * pionkf, Double_t mass, Int_t daughter1, Int_t daughter2); - void AddOmegaToAOD(AliKFParticle * pionkf, Double_t mass, Int_t daughter1, Int_t daughter2); + void AddPionToAOD(const AliKFParticle * const pionkf, Double_t mass, Int_t daughter1, Int_t daughter2); + void AddOmegaToAOD(const AliKFParticle * const omegakf, Double_t mass, Int_t daughter1, Int_t daughter2); // for CF enum{ @@ -166,8 +176,8 @@ class AliAnalysisTaskGammaConversion : public AliAnalysisTaskSE kStepLikeSign = 3, kStepTPCRefit = 4, kStepKinks = 5, - kStepdEdx_electronselection = 6, - kStepdEdx_pionrejection = 7, + kStepdEdxElectronSelection = 6, + kStepdEdxPpionRejection = 7, kStepNContributors = 8, kStepTPCPID = 9, kStepR = 10, @@ -276,16 +286,21 @@ class AliAnalysisTaskGammaConversion : public AliAnalysisTaskSE Bool_t fKFForceAOD; //Set the Analysis Manager FillAOD variable to true every event TString fKFDeltaAODFileName; //! File name for delta AOD (if any) Bool_t fDoNeutralMesonV0MCCheck; //flag - Bool_t fUseTrackMultiplicityForBG; - Bool_t fMoveParticleAccordingToVertex; - Bool_t fApplyChi2Cut; - Int_t nRandomEventsForBG; - Int_t nDegreesPMBackground; - Bool_t fDoRotation; - Bool_t fCheckBGProbability; + Bool_t fUseTrackMultiplicityForBG; //flag + Bool_t fMoveParticleAccordingToVertex; //flag + Bool_t fApplyChi2Cut; //flag + Int_t fNRandomEventsForBG; //number of random events to use in rotation method + Int_t fNDegreesPMBackground; // number of degree window to rotate particles for rotation method + Bool_t fDoRotation; //flag + Bool_t fCheckBGProbability; //flag vectorfKFReconstructedGammasV0Index; // index of the reconstructed v0s - - ClassDef(AliAnalysisTaskGammaConversion, 12); // Analysis task for gamma conversions + Bool_t fRemovePileUp; // Remove Pile Up + Bool_t fSelectV0AND; // Select V0AND + AliTriggerAnalysis *fTriggerAnalysis; //! Trigger Analysis for Normalisation + Int_t fMultiplicity; + Int_t fUseMultiplicity; + Int_t fUseMultiplicityBin; + ClassDef(AliAnalysisTaskGammaConversion, 15); // Analysis task for gamma conversions }; #endif //ALIANALYSISTASKGAMMA_H