1 /*************************************************************************
2 * Copyright(c) 1998-2009, ALICE Experiment at CERN, All rights reserved. *
4 * Author: The ALICE Off-line Project. *
5 * Contributors are mentioned in the code where appropriate. *
7 * Permission to use, copy, modify and distribute this software and its *
8 * documentation strictly for non-commercial purposes is hereby granted *
9 * without fee, provided that the above copyright notice appears in all *
10 * copies and that both the copyright notice and this permission notice *
11 * appear in the supporting documentation. The authors make no claims *
12 * about the suitability of this software for any purpose. It is *
13 * provided "as is" without express or implied warranty. *
14 **************************************************************************/
16 ///////////////////////////////////////////////////////////////////////////
18 // Basic Analysis Task //
19 // for Dielectron Analysis //
21 ///////////////////////////////////////////////////////////////////////////
25 #include <AliCFContainer.h>
26 #include <AliVEvent.h>
28 #include "AliDielectron.h"
29 #include "AliDielectronHistos.h"
30 #include "AliDielectronCF.h"
31 #include "AliAnalysisTaskDielectronSE.h"
33 ClassImp(AliAnalysisTaskDielectronSE)
35 //_________________________________________________________________________________
36 AliAnalysisTaskDielectronSE::AliAnalysisTaskDielectronSE() :
45 //_________________________________________________________________________________
46 AliAnalysisTaskDielectronSE::AliAnalysisTaskDielectronSE(const char *name) :
47 AliAnalysisTaskSE(name),
53 DefineInput(0,TChain::Class());
54 DefineOutput(1, THashList::Class());
55 DefineOutput(2, AliCFContainer::Class());
58 //_________________________________________________________________________________
59 void AliAnalysisTaskDielectronSE::UserCreateOutputObjects()
62 // Initialise the framework objects
65 AliError("No Dielectron framework object set !!!");
71 //_________________________________________________________________________________
72 void AliAnalysisTaskDielectronSE::UserExec(Option_t *)
75 // Main loop. Called for every event
78 if (!fDielectron) return;
81 Double_t bz = InputEvent()->GetMagneticField();
82 AliKFParticle::SetField( bz );
84 fDielectron->Process(InputEvent());
85 fDielectron->FillHistograms();
87 if (fDielectron->GetHistogramList()){
88 PostData(1, const_cast<THashList*>(fDielectron->GetHistogramList()));
90 if (fDielectron->GetCFManagerPair()){
91 PostData(2, const_cast<AliCFContainer*>(fDielectron->GetCFManagerPair()->GetContainer()));