]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - PWGJE/EMCALJetTasks/macros/AddTaskJetMatching.C
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGJE / EMCALJetTasks / macros / AddTaskJetMatching.C
... / ...
CommitLineData
1/* AddTask macro for class AliAnalysisTaskJetMatching
2 * Redmer Alexander Bertens, rbertens@cern.ch
3 * Utrecht University, Utrecht, Netherlands */
4
5AliAnalysisTaskJetMatching* AddTaskJetMatching(
6 const char* sourceJets = "SourceJets", // source jets
7 const char* targetJets = "TargetJets", // target jets
8 const char* matchedJets = "MatchedJets",// matched jets
9 UInt_t matchingScheme = AliAnalysisTaskJetMatching::kGeoR,
10 Bool_t matchConstituents= kTRUE,
11 Float_t minFrReCon = .3,
12 Float_t minFrReConPt = .5,
13 const char *name = "AliAnalysisTaskJetMatching",
14 Bool_t cut = kTRUE,
15 const char* sourceType = "TPC",
16 Float_t sourceRadius = 0.3,
17 Float_t sourceAreaCut = .557,
18 Float_t sourcePtBias = 10.,
19 const char* targetType = "TPC",
20 Float_t targetRadius = 0.3,
21 Float_t targetAreaCut = .557,
22 Float_t targetPtBias = 10.
23 )
24{
25 AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
26 if (!mgr) return 0x0;
27 if (!mgr->GetInputEventHandler()) return 0x0;
28
29 AliAnalysisTaskJetMatching* jetTask = new AliAnalysisTaskJetMatching(name);
30 jetTask->SetDebugMode(-1);
31 jetTask->SetMatchConstituents(matchConstituents);
32 jetTask->SetMinFracRecoveredConstituents(minFrReCon);
33 jetTask->SetMinFracRecoveredConstituentPt(minFrReConPt);
34 jetTask->SetSourceJetsName(sourceJets);
35 jetTask->SetTargetJetsName(targetJets);
36 jetTask->SetMatchedJetsName(matchedJets);
37 jetTask->SetMatchingScheme(matchingScheme);
38 // if we want the jet package to cut on the source and target jets
39 jetTask->SetUseEmcalBaseJetCuts(cut);
40 if(cut) {
41 AliJetContainer* sourceContainer = jetTask->AddJetContainer(sourceJets, sourceType, sourceRadius);
42 if(sourceContainer) {
43 sourceContainer->SetName("sourceJetContainer");
44 sourceContainer->SetPercAreaCut(sourceAreaCut);
45 sourceContainer->SetPtBiasJetTrack(sourcePtBias);
46 }
47 AliJetContainer* targetContainer = jetTask->AddJetContainer(targetJets, targetType, targetRadius);
48 if(targetContainer) {
49 targetContainer->SetName("targetJetContainer");
50 targetContainer->SetPercAreaCut(targetAreaCut);
51 targetContainer->SetPtBiasJetTrack(targetPtBias);
52 }
53 }
54
55 mgr->AddTask(jetTask);
56 // Create containers for input/output
57 AliAnalysisDataContainer *cinput1 = mgr->GetCommonInputContainer() ;
58 TString contname(name);
59 contname += "_histos";
60 AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(contname.Data(),
61 TList::Class(),AliAnalysisManager::kOutputContainer,
62 Form("%s", AliAnalysisManager::GetCommonFileName()));
63 mgr->ConnectInput (jetTask, 0, cinput1 );
64 mgr->ConnectOutput (jetTask, 1, coutput1 );
65 return jetTask;
66}