ROOT logo
void runProofFwdDetsQA(const char * dataset = "/COMMON/COMMON/LHC09a4_run8101X",Long64_t nentries=100000, Long64_t firstentry=0)
{
  gSystem->Load("libANALYSIS");
  gSystem->Load("libANALYSISalice");
  gSystem->AddIncludePath("-I$ALICE_ROOT/include");

  // Connect to Proof
  gEnv->SetValue("XSec.GSI.DelegProxy","2");
  TProof::Open("cheshkov:PWG0@alicecaf");

  // Upload and enable packages: please use the correct version!
  gProof->UploadPackage("/afs/cern.ch/alice/caf/sw/ALICE/PARs/v4-16-Release/AF-v4-16");
  gProof->EnablePackage("/afs/cern.ch/alice/caf/sw/ALICE/PARs/v4-16-Release/AF-v4-16");

  // Create the analysis manager
  AliAnalysisManager *mgr = new AliAnalysisManager("AliAnaFwdDetsQA");

  AliVEventHandler* esdH = new AliESDInputHandler();
  mgr->SetInputEventHandler(esdH);

  // Enable MC event handler
  AliVEventHandler* handler = new AliMCEventHandler;
  mgr->SetMCtruthEventHandler(handler);

  // Create task

  gProof->Load(Form("%s/PWGPP/AliAnaFwdDetsQA.cxx++g",
		    gSystem->Getenv("ALICE_ROOT")));
  AliAnalysisTask *task = new AliAnaFwdDetsQA("AliAnaFwdDetsQA");

  // Add task
  mgr->AddTask(task);

  // Create containers for input/output
  AliAnalysisDataContainer *cinput = mgr->GetCommonInputContainer();
  AliAnalysisDataContainer *coutput = 
    mgr->CreateContainer("coutput", TList::Class(), 
    AliAnalysisManager::kOutputContainer, "FwdDetsQA.root");

  // Connect input/output
  mgr->ConnectInput(task, 0, cinput);
  mgr->ConnectOutput(task, 1, coutput);


  // Enable debug printouts
  mgr->SetDebugLevel(3);

  if (!mgr->InitAnalysis())
    return;

  mgr->PrintStatus();

  TFileCollection *proofColl = gProof->GetDataSet(dataset);
  TChain *chain = new TChain("esdTree");
  chain->AddFileInfoList((TCollection*)(proofColl->GetList()));
  mgr->StartAnalysis("proof", chain, nentries, firstentry);

    //  mgr->StartAnalysis("proof",dataset,nentries,firstentry);
}

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