997ee2455a1859127e6f1dbf9106d2a26e045921
[u/mrichter/AliRoot.git] / PWG1 / TRD / macros / AddTRDinfoGen.C
1 #if ! defined (__CINT__) || defined (__MAKECINT__)
2 #include "AliLog.h"
3 #include "AliAnalysisManager.h"
4 #include "AliAnalysisDataContainer.h"
5 #include "PWG1/TRD/AliTRDinfoGen.h"
6 #include "PWG1/TRD/info/AliTRDeventInfo.h"
7 #include "PWG1/TRD/macros/AliTRDperformanceTrain.h"
8 #endif
9
10 void AddTRDinfoGen(AliAnalysisManager *mgr, Int_t /*map*/, AliAnalysisDataContainer **/*ci*/, AliAnalysisDataContainer **co)
11 {
12   Bool_t mc(mgr->GetMCtruthEventHandler()?kTRUE:kFALSE);
13   //AliLog::SetClassDebugLevel("AliTRDinfoGen", 2);
14   AliTRDinfoGen *info(NULL);
15   mgr->AddTask(info = new AliTRDinfoGen((char*)"TRDinfoGen"));
16   info->SetDebugLevel(0);
17   info->SetMCdata(mc);
18   info->SetLocalTrkSelection();
19   info->SetOCDB("alien://folder=/alice/data/2010/OCDB");
20   // settings for collisions
21   info->SetCollision(/*kFALSE*/);
22   if(info->IsCollision()){
23     if(!mc) info->SetTrigger(
24       "CINT1B-ABCE-NOPF-ALL"
25       " CINT1WU-B-NOPF-ALL"
26       " CSCO1-ABCE-NOPF-CENT" // cosmic SPD trigger
27     );
28     info->SetLocalEvSelection();
29   }
30   
31   // Connect IO slots
32   mgr->ConnectInput (info, 0, mgr->GetCommonInputContainer());
33   co[kEventInfo] = mgr->CreateContainer("eventInfo", AliTRDeventInfo::Class(), AliAnalysisManager::kExchangeContainer);
34   co[kTracksBarrel] = mgr->CreateContainer("tracksBarrel", TObjArray::Class(), AliAnalysisManager::kExchangeContainer);
35   co[kTracksSA] = mgr->CreateContainer("tracksSA", TObjArray::Class(), AliAnalysisManager::kExchangeContainer);
36   co[kTracksKink] = mgr->CreateContainer("tracksKink", TObjArray::Class(), AliAnalysisManager::kExchangeContainer);
37   co[kV0List] = mgr->CreateContainer("v0List", TObjArray::Class(), AliAnalysisManager::kExchangeContainer);
38   for(Int_t ios(1);ios<kNOutSlots-1;ios++) mgr->ConnectOutput(info, ios, co[ios]);
39   
40   // add last monitor container
41   AliAnalysisDataContainer *mon=mgr->CreateContainer(info->GetName(), TObjArray::Class(), AliAnalysisManager::kOutputContainer, Form("%s:TRD_Performance",mgr->GetCommonFileName()));
42   mgr->ConnectOutput(info, kNOutSlots-1, mon);
43 }
44