ROOT logo
const TString kInputData = "AOD";
const TString kJCORRANInputFormat = "AOD"; // ESD, AODout, AODin

//_____________________________________________________________________
AliAnalysisTask *AddTaskJCORRANFilter(Bool_t IsMC = kFALSE, Int_t beamtype = 1){
    // Load Custom Configuration and parameters
    // override values with parameters
	cout <<"AddTaskJCORRANFilter:: IsMC = "<< IsMC <<"\t beamtype = "<< beamtype <<endl;
    UInt_t triggerSelection;

    AliAnalysisManager *mgr = AliAnalysisManager::GetAnalysisManager();

    // AOD handler
    AliAODInputHandler *aodHandler = new AliAODInputHandler();
    mgr->SetInputEventHandler(aodHandler);

    //================================================
    // TASKS
    //================================================

    // set the trigger selection
    triggerSelection =  AliVEvent::kAny;
    //										| AliVEvent::kHighMult 
    //										| AliVEvent::kEMCEGA;
    //										| AliVEvent::kEMCEJE
    //										| AliVEvent::kEMC1
    //										| AliVEvent::kEMC7
    //                    | AliVEvent::kCentral
    //                    | AliVEvent::kSemiCentral; 
    //============================
    //   JCORRANTask
    //===========================

    //==== JCORRAN TASK
    AliJCORRANTask *jctask = new AliJCORRANTask("PWGCFJCORRANTask",kJCORRANInputFormat);
    jctask->SetDebugLevel(0);

    AliJRunHeader * hdr = new AliJRunHeader;
    hdr->SetIsMC( IsMC );
    hdr->SetBeamTypeI( beamtype ); // 0:pp 1:PbPb
    hdr->SetWithoutSDD(false);
    hdr->SetRunType("LHC13c");
    hdr->SetInputFormat( 1 ); // 0: ESD;
    hdr->SetRefitESDVertexTracks(kFALSE);
    hdr->SetStoreEventPlaneSource(kFALSE);
    hdr->SetStoreTPCTrackBitMask( 1<<7 ); // TODO : For what?
    hdr->SetStoreGCGTrackBitMask( 2^30-1 );
    hdr->SetStoreEMCalInfo( kFALSE ); // error with lego now.


    jctask->SetJRunHeader( hdr );

    AliJFilter *jfilter = jctask->GetFilter();
    jfilter->SetAliJRunHeader( hdr );
    jfilter->SetClusterThreshold( 0 );
    jfilter->SetTrackThreshold( 0 );

    //==event selection
    jctask->SelectCollisionCandidates( triggerSelection );  //Apply offline trigger selection by AliPhysicsSelectionTask

    mgr->AddTask((AliAnalysisTask*) jctask);

    //==== Create containers for input/output
    AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
    AliAODHandler* aodoutHandler   = new AliAODHandler();
    aodoutHandler->SetCreateNonStandardAOD();
    mgr->SetOutputEventHandler(aodoutHandler);

// Connect input/output
	mgr->ConnectInput(jctask, 0, cinput);

	return jctask;
}

 AddTaskJCORRANFilter.C:1
 AddTaskJCORRANFilter.C:2
 AddTaskJCORRANFilter.C:3
 AddTaskJCORRANFilter.C:4
 AddTaskJCORRANFilter.C:5
 AddTaskJCORRANFilter.C:6
 AddTaskJCORRANFilter.C:7
 AddTaskJCORRANFilter.C:8
 AddTaskJCORRANFilter.C:9
 AddTaskJCORRANFilter.C:10
 AddTaskJCORRANFilter.C:11
 AddTaskJCORRANFilter.C:12
 AddTaskJCORRANFilter.C:13
 AddTaskJCORRANFilter.C:14
 AddTaskJCORRANFilter.C:15
 AddTaskJCORRANFilter.C:16
 AddTaskJCORRANFilter.C:17
 AddTaskJCORRANFilter.C:18
 AddTaskJCORRANFilter.C:19
 AddTaskJCORRANFilter.C:20
 AddTaskJCORRANFilter.C:21
 AddTaskJCORRANFilter.C:22
 AddTaskJCORRANFilter.C:23
 AddTaskJCORRANFilter.C:24
 AddTaskJCORRANFilter.C:25
 AddTaskJCORRANFilter.C:26
 AddTaskJCORRANFilter.C:27
 AddTaskJCORRANFilter.C:28
 AddTaskJCORRANFilter.C:29
 AddTaskJCORRANFilter.C:30
 AddTaskJCORRANFilter.C:31
 AddTaskJCORRANFilter.C:32
 AddTaskJCORRANFilter.C:33
 AddTaskJCORRANFilter.C:34
 AddTaskJCORRANFilter.C:35
 AddTaskJCORRANFilter.C:36
 AddTaskJCORRANFilter.C:37
 AddTaskJCORRANFilter.C:38
 AddTaskJCORRANFilter.C:39
 AddTaskJCORRANFilter.C:40
 AddTaskJCORRANFilter.C:41
 AddTaskJCORRANFilter.C:42
 AddTaskJCORRANFilter.C:43
 AddTaskJCORRANFilter.C:44
 AddTaskJCORRANFilter.C:45
 AddTaskJCORRANFilter.C:46
 AddTaskJCORRANFilter.C:47
 AddTaskJCORRANFilter.C:48
 AddTaskJCORRANFilter.C:49
 AddTaskJCORRANFilter.C:50
 AddTaskJCORRANFilter.C:51
 AddTaskJCORRANFilter.C:52
 AddTaskJCORRANFilter.C:53
 AddTaskJCORRANFilter.C:54
 AddTaskJCORRANFilter.C:55
 AddTaskJCORRANFilter.C:56
 AddTaskJCORRANFilter.C:57
 AddTaskJCORRANFilter.C:58
 AddTaskJCORRANFilter.C:59
 AddTaskJCORRANFilter.C:60
 AddTaskJCORRANFilter.C:61
 AddTaskJCORRANFilter.C:62
 AddTaskJCORRANFilter.C:63
 AddTaskJCORRANFilter.C:64
 AddTaskJCORRANFilter.C:65
 AddTaskJCORRANFilter.C:66
 AddTaskJCORRANFilter.C:67
 AddTaskJCORRANFilter.C:68
 AddTaskJCORRANFilter.C:69
 AddTaskJCORRANFilter.C:70
 AddTaskJCORRANFilter.C:71
 AddTaskJCORRANFilter.C:72
 AddTaskJCORRANFilter.C:73
 AddTaskJCORRANFilter.C:74
 AddTaskJCORRANFilter.C:75