ROOT logo
// addtask macro for AliAnalysisTaskTTreeFilter
// author: redmer alexander bertens (rbertens@cern.ch)
//
// note that this addtask macro is not necessary to run
// the example macro in this folder, but is added for 
// clarity

AliAnalysisTaskTTreeFilter* AddTaskTTreeFilter(
        TString outfile = "myFilteredTree.root",
        UInt_t trigger = AliVEvent::kAnyINT
        ) 
{
    // check validity of framework setup 
    AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();
    if (!mgr) {
        ::Error("AddTaskTTreeFilter", "No analysis manager to connect to.");
        return NULL;
    }  
    if (!mgr->GetInputEventHandler())  {
        ::Error("AddTaskTTreeFilter", "This task requires an input event handler");
        return NULL;
    }
  

    // initialize task, connect it to the manager and return it
    AliAnalysisTaskTTreeFilter* filter = new AliAnalysisTaskTTreeFilter("filter");
    // add the task to the manager
    mgr->AddTask(filter);
    // set the trigger selection
    filter->SelectCollisionCandidates(trigger);

    // get the common input container from the analysis manager
    AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
  
    AliAnalysisDataContainer *coutput = mgr->CreateContainer(
        "Tree",
        TTree::Class(),
        AliAnalysisManager::kOutputContainer,
        outfile.Data());
    // connect the input data to the flow event task
    mgr->ConnectInput(filter, 0, cinput);
    // and connect the output to the flow event task
    mgr->ConnectOutput(filter, 1, coutput);

    return filter;
}
 AddTaskTTreeFilter.C:1
 AddTaskTTreeFilter.C:2
 AddTaskTTreeFilter.C:3
 AddTaskTTreeFilter.C:4
 AddTaskTTreeFilter.C:5
 AddTaskTTreeFilter.C:6
 AddTaskTTreeFilter.C:7
 AddTaskTTreeFilter.C:8
 AddTaskTTreeFilter.C:9
 AddTaskTTreeFilter.C:10
 AddTaskTTreeFilter.C:11
 AddTaskTTreeFilter.C:12
 AddTaskTTreeFilter.C:13
 AddTaskTTreeFilter.C:14
 AddTaskTTreeFilter.C:15
 AddTaskTTreeFilter.C:16
 AddTaskTTreeFilter.C:17
 AddTaskTTreeFilter.C:18
 AddTaskTTreeFilter.C:19
 AddTaskTTreeFilter.C:20
 AddTaskTTreeFilter.C:21
 AddTaskTTreeFilter.C:22
 AddTaskTTreeFilter.C:23
 AddTaskTTreeFilter.C:24
 AddTaskTTreeFilter.C:25
 AddTaskTTreeFilter.C:26
 AddTaskTTreeFilter.C:27
 AddTaskTTreeFilter.C:28
 AddTaskTTreeFilter.C:29
 AddTaskTTreeFilter.C:30
 AddTaskTTreeFilter.C:31
 AddTaskTTreeFilter.C:32
 AddTaskTTreeFilter.C:33
 AddTaskTTreeFilter.C:34
 AddTaskTTreeFilter.C:35
 AddTaskTTreeFilter.C:36
 AddTaskTTreeFilter.C:37
 AddTaskTTreeFilter.C:38
 AddTaskTTreeFilter.C:39
 AddTaskTTreeFilter.C:40
 AddTaskTTreeFilter.C:41
 AddTaskTTreeFilter.C:42
 AddTaskTTreeFilter.C:43
 AddTaskTTreeFilter.C:44
 AddTaskTTreeFilter.C:45
 AddTaskTTreeFilter.C:46
 AddTaskTTreeFilter.C:47