1 #ifndef ALIANALYSISTASKSEDSTARSPECTRA_H
\r#define ALIANALYSISTASKSEDSTARSPECTRA_H
\r/**************************************************************************
\r * Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. *
\r * *
\r * Author: The ALICE Off-line Project. *
\r * Contributors are mentioned in the code where appropriate. *
\r * *
\r * Permission to use, copy, modify and distribute this software and its *
\r * documentation strictly for non-commercial purposes is hereby granted *
\r * without fee, provided that the above copyright notice appears in all *
\r * copies and that both the copyright notice and this permission notice *
\r * appear in the supporting documentation. The authors make no claims *
\r * about the suitability of this software for any purpose. It is *
\r * provided "as is" without express or implied warranty. *
\r **************************************************************************/
\r\r/* $Id$ */
\r\r#include <TH2F.h>
\r#include "TROOT.h"
\r#include "TSystem.h"
\r\r#include "AliAnalysisTaskSE.h"
\r#include "AliAODEvent.h"
\r#include "AliRDHFCutsDStartoKpipi.h"
\r#include "AliNormalizationCounter.h"
\r\rclass AliAnalysisTaskSEDStarSpectra : public AliAnalysisTaskSE
\r{
\r \r public:
\r \r AliAnalysisTaskSEDStarSpectra();
\r AliAnalysisTaskSEDStarSpectra(const Char_t* name,AliRDHFCutsDStartoKpipi* cuts);
\r virtual ~AliAnalysisTaskSEDStarSpectra();
\r\r // Implementation of interface methods
\r virtual void UserCreateOutputObjects();
\r virtual void Init();
\r virtual void LocalInit() {Init();}
\r virtual void UserExec(Option_t *option);
\r virtual void Terminate(Option_t *option);
\r \r\r //Background simulation
\r void SideBandBackground(AliAODRecoCascadeHF *part, AliRDHFCutsDStartoKpipi *cuts, TList *listout);
\r void WrongSignForDStar(AliAODRecoCascadeHF *part, AliRDHFCutsDStartoKpipi *cuts, TList *listout);
\r // histos
\r void FillSpectrum(AliAODRecoCascadeHF *part, Int_t isDStar, AliRDHFCutsDStartoKpipi *cuts, TList *listout);
\r void DefineHistograms();
\r // set analysis type
\r void SetAnalysisType(Int_t anaType) {fAnalysis = anaType;}
\r void PrintAnalysisType() {printf("Analysis type: %d\n(0: Heidelberg\t1: Utrecht)",fAnalysis);}
\r // set MC usage
\r void SetMC(Bool_t theMCon) {fUseMCInfo = theMCon;}
\r Bool_t GetMC() const {return fUseMCInfo;}
\r // set rare mesons
\r void SetRareSearch(Bool_t theRareOn) {fDoSearch = theRareOn;}
\r Bool_t GetRareSearch() const {return fDoSearch;}
\r \r private:
\r \r AliAnalysisTaskSEDStarSpectra(const AliAnalysisTaskSEDStarSpectra &source);
\r AliAnalysisTaskSEDStarSpectra& operator=(const AliAnalysisTaskSEDStarSpectra& source);
\r \r Int_t fEvents; // n. of events
\r Int_t fAnalysis; // 0: HD; 1: UU;
\r Double_t fD0Window; // select width on D0Mass
\r Double_t fPeakWindow; // select width on DstarMass
\r Bool_t fUseMCInfo; // Use MC info
\r Bool_t fDoSearch; // Rare mesons
\r TList *fOutput; //! User output
\r TList *fOutputAll; //! User output2
\r TList *fOutputPID; //! User output3
\r Int_t fNSigma; // n sigma for kaon PID
\r AliRDHFCutsDStartoKpipi *fCuts; // Cuts - sent to output slot 3
\r // define the histograms
\r TH1F *fCEvents; //!
\r TH2F *fTrueDiff2; //!
\r TH1F *fDeltaMassD1; //!
\r AliNormalizationCounter *fCounter;//!Counter for normalization slot 4
\r ClassDef(AliAnalysisTaskSEDStarSpectra,8); // class for D* spectra
\r};
\r\r#endif
\r\r