28 #include <TClonesArray.h>
32 #include "AliVEvent.h"
33 #include "AliAODEvent.h"
34 #include "AliAODHandler.h"
35 #include "AliESDEvent.h"
37 #include "AliAnalysisTaskSE.h"
38 #include "AliAnalysisManager.h"
41 #include "AliESDUtils.h"
44 #include "AliInputEventHandler.h"
45 #include "AliPIDResponse.h"
56 fDeltaAODFileName(
"AliAOD.VertexingHF.root"),
60 fCharm3ProngTClArr(0),
61 fCharm4ProngTClArr(0),
64 fLikeSign2ProngTClArr(0),
65 fLikeSign3ProngTClArr(0),
76 fDeltaAODFileName(
"AliAOD.VertexingHF.root"),
80 fCharm3ProngTClArr(0),
81 fCharm4ProngTClArr(0),
84 fLikeSign2ProngTClArr(0),
85 fLikeSign3ProngTClArr(0),
90 DefineOutput(1,TList::Class());
111 if(fDebug > 1) printf(
"AnalysisTaskSEVertexingHF::Init() \n");
113 if(gROOT->LoadMacro(
"ConfigVertexingHF.C")) {
114 printf(
"AnalysisTaskSEVertexingHF::Init() \n Using $ALICE_PHYSICS/PWGHF/vertexingHF/ConfigVertexingHF.C\n");
115 gROOT->LoadMacro(
"$ALICE_PHYSICS/PWGHF/vertexingHF/ConfigVertexingHF.C");
128 AliAnalysisManager::GetAnalysisManager()->RegisterExtraFile(
fDeltaAODFileName.Data());
138 if(fDebug > 1) printf(
"AnalysisTaskSEVertexingHF::UserCreateOutPutData() \n");
141 if(!AliAnalysisManager::GetAnalysisManager()->GetOutputEventHandler()) {
142 Fatal(
"UserCreateOutputObjects",
"This task needs an AOD handler");
148 if(!IsStandardAOD() && AODEvent()) filename =
"";
150 printf(
"AnalysisTaskSEVertexingHF::UserCreateOutPutData() \n ERROR! no fvHF!\n");
183 fDstarTClArr =
new TClonesArray(
"AliAODRecoCascadeHF", 0);
210 AddAODBranch(
"AliAODHFUtil", &
fHFUtilInfo, filename);
223 AliVEvent *
event =
dynamic_cast<AliVEvent*
> (InputEvent());
226 if (AODEvent() && IsStandardAOD()) event = dynamic_cast<AliVEvent*> (AODEvent());
228 if (dynamic_cast<AliAODEvent*>(event)) {
229 AliAODHandler *aodhandler =
dynamic_cast<AliAODHandler*
>(AliAnalysisManager::GetAnalysisManager()->GetOutputEventHandler());
230 if (aodhandler) aodhandler->SetFillExtension(kTRUE);
234 AliInputEventHandler *inputHandler=(AliInputEventHandler*)mgr->GetInputEventHandler();
235 AliPIDResponse *pidResp=inputHandler->GetPIDResponse();
255 AliESDUtils::GetCorrV0(eventE,dummy,NULL,vChCorr);
269 if(fDebug > 1) printf(
"AnalysisTaskSEVertexingHF: Terminate() \n");
virtual ~AliAnalysisTaskSEVertexingHF()
TClonesArray * fCascadesTClArr
Array of D*->D0pi.
void SetPidResponse(AliPIDResponse *p)
TList * fListOfCuts
Vertexer heavy flavour.
virtual void UserExec(Option_t *option)
TClonesArray * fDstarTClArr
Array of D0->Kpipipi.
void SetVZERO(Float_t *pVzero)
TClonesArray * fLikeSign2ProngTClArr
Array of Cascades : V0 + track (lambda_c)
Bool_t GetD0toKpi() const
TClonesArray * fCharm4ProngTClArr
Array of D+,Ds,Lc.
TClonesArray * fD0toKpiTClArr
Array of heavy-flavour vertices.
TClonesArray * fJPSItoEleTClArr
Array of D0->Kpi.
virtual void Terminate(Option_t *option)
AliAnalysisTaskSEVertexingHF()
AliAnalysisVertexingHF * fVHF
Bool_t GetJPSItoEle() const
void FindCandidates(AliVEvent *event, TClonesArray *aodVerticesHFTClArr, TClonesArray *aodD0toKpiTClArr, TClonesArray *aodJPSItoEleTClArr, TClonesArray *aodCharm3ProngTClArr, TClonesArray *aodCharm4ProngTClArr, TClonesArray *aodDstarTClArr, TClonesArray *aodCascadesTClArr, TClonesArray *aodLikeSign2ProngTClArr, TClonesArray *aodLikeSign3ProngTClArr)
TString fDeltaAODFileName
AliAODHFUtil * fHFUtilInfo
Array of LikeSign3Prong.
Bool_t GetLikeSign() const
TClonesArray * fCharm3ProngTClArr
Array of Jpsi->ee.
ClassImp(AliAnalysisTaskCRC) AliAnalysisTaskCRC
TClonesArray * fLikeSign3ProngTClArr
Array of LikeSign2Prong.
Bool_t GetCascades() const
TClonesArray * fVerticesHFTClArr
Name of output file.
virtual void UserCreateOutputObjects()
Implementation of interface methods.