ROOT logo
/* AddTask macro for class AliAnalysisTaskJetMatching
 * Redmer Alexander Bertens, rbertens@cern.ch
 * Utrecht University, Utrecht, Netherlands             */

AliAnalysisTaskJetMatching* AddTaskJetMatching(
        const char* sourceJets  = "SourceJets", // source jets
        const char* targetJets  = "TargetJets", // target jets
        const char* matchedJets = "MatchedJets",// matched jets
        UInt_t matchingScheme   = AliAnalysisTaskJetMatching::kGeoR,
        Bool_t matchConstituents= kTRUE,
        Float_t minFrReCon      = .3,
        Float_t minFrReConPt    = .5,
        const char *name        = "AliAnalysisTaskJetMatching",
        Bool_t cut              = kTRUE,
        const char*  sourceType = "TPC",
        Float_t sourceRadius    = 0.3,
        Float_t sourceAreaCut   = .557,
        Float_t sourcePtBias    = 10.,
        const char* targetType  = "TPC",
        Float_t targetRadius    = 0.3,
        Float_t targetAreaCut   = .557,
        Float_t targetPtBias    = 10.
  )
{ 
  AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
  if (!mgr)                             return 0x0;
  if (!mgr->GetInputEventHandler())     return 0x0;

  AliAnalysisTaskJetMatching* jetTask = new AliAnalysisTaskJetMatching(name);
  jetTask->SetDebugMode(-1);
  jetTask->SetMatchConstituents(matchConstituents);
  jetTask->SetMinFracRecoveredConstituents(minFrReCon);
  jetTask->SetMinFracRecoveredConstituentPt(minFrReConPt);
  jetTask->SetSourceJetsName(sourceJets);
  jetTask->SetTargetJetsName(targetJets);
  jetTask->SetMatchedJetsName(matchedJets);
  jetTask->SetMatchingScheme(matchingScheme);
  // if we want the jet package to cut on the source and target jets
  jetTask->SetUseEmcalBaseJetCuts(cut);
  if(cut) {
      AliJetContainer* sourceContainer = jetTask->AddJetContainer(sourceJets, sourceType, sourceRadius);
      if(sourceContainer) {
          sourceContainer->SetName("sourceJetContainer");
          sourceContainer->SetPercAreaCut(sourceAreaCut);
          sourceContainer->SetPtBiasJetTrack(sourcePtBias);
      }
      AliJetContainer* targetContainer = jetTask->AddJetContainer(targetJets, targetType, targetRadius);
      if(targetContainer) {
          targetContainer->SetName("targetJetContainer");
          targetContainer->SetPercAreaCut(targetAreaCut);
          targetContainer->SetPtBiasJetTrack(targetPtBias);
      }
  }
  
  mgr->AddTask(jetTask);
  // Create containers for input/output
  AliAnalysisDataContainer *cinput1  = mgr->GetCommonInputContainer()  ;
  TString contname(name);
  contname += "_histos";
  AliAnalysisDataContainer *coutput1 = mgr->CreateContainer(contname.Data(), 
							    TList::Class(),AliAnalysisManager::kOutputContainer,
							    Form("%s", AliAnalysisManager::GetCommonFileName()));
  mgr->ConnectInput  (jetTask, 0,  cinput1 );
  mgr->ConnectOutput (jetTask, 1, coutput1 );
  return jetTask;
}
 AddTaskJetMatching.C:1
 AddTaskJetMatching.C:2
 AddTaskJetMatching.C:3
 AddTaskJetMatching.C:4
 AddTaskJetMatching.C:5
 AddTaskJetMatching.C:6
 AddTaskJetMatching.C:7
 AddTaskJetMatching.C:8
 AddTaskJetMatching.C:9
 AddTaskJetMatching.C:10
 AddTaskJetMatching.C:11
 AddTaskJetMatching.C:12
 AddTaskJetMatching.C:13
 AddTaskJetMatching.C:14
 AddTaskJetMatching.C:15
 AddTaskJetMatching.C:16
 AddTaskJetMatching.C:17
 AddTaskJetMatching.C:18
 AddTaskJetMatching.C:19
 AddTaskJetMatching.C:20
 AddTaskJetMatching.C:21
 AddTaskJetMatching.C:22
 AddTaskJetMatching.C:23
 AddTaskJetMatching.C:24
 AddTaskJetMatching.C:25
 AddTaskJetMatching.C:26
 AddTaskJetMatching.C:27
 AddTaskJetMatching.C:28
 AddTaskJetMatching.C:29
 AddTaskJetMatching.C:30
 AddTaskJetMatching.C:31
 AddTaskJetMatching.C:32
 AddTaskJetMatching.C:33
 AddTaskJetMatching.C:34
 AddTaskJetMatching.C:35
 AddTaskJetMatching.C:36
 AddTaskJetMatching.C:37
 AddTaskJetMatching.C:38
 AddTaskJetMatching.C:39
 AddTaskJetMatching.C:40
 AddTaskJetMatching.C:41
 AddTaskJetMatching.C:42
 AddTaskJetMatching.C:43
 AddTaskJetMatching.C:44
 AddTaskJetMatching.C:45
 AddTaskJetMatching.C:46
 AddTaskJetMatching.C:47
 AddTaskJetMatching.C:48
 AddTaskJetMatching.C:49
 AddTaskJetMatching.C:50
 AddTaskJetMatching.C:51
 AddTaskJetMatching.C:52
 AddTaskJetMatching.C:53
 AddTaskJetMatching.C:54
 AddTaskJetMatching.C:55
 AddTaskJetMatching.C:56
 AddTaskJetMatching.C:57
 AddTaskJetMatching.C:58
 AddTaskJetMatching.C:59
 AddTaskJetMatching.C:60
 AddTaskJetMatching.C:61
 AddTaskJetMatching.C:62
 AddTaskJetMatching.C:63
 AddTaskJetMatching.C:64
 AddTaskJetMatching.C:65
 AddTaskJetMatching.C:66
 AddTaskJetMatching.C:67