- special constructor to be used with AliTRDinfoGen
{
// Documentation to come
{
// Documentation to come
- AliTRDrecoTask::Exec(opt);
+ AliTRDrecoTask::UserExec(opt);
// Filling TRD quality histos
//
if(!HasMCdata() && fEventInfo->GetEventHeader()->GetEventType() != 7) return; // For real data we select only physical events
// Filling TRD quality histos
//
if(!HasMCdata() && fEventInfo->GetEventHeader()->GetEventType() != 7) return; // For real data we select only physical events
- AliTRDrecoTask::Exec(opt);
+ AliTRDrecoTask::UserExec(opt);
Int_t nTracks = 0; // Count the number of tracks per event
Int_t triggermask = fEventInfo->GetEventHeader()->GetTriggerMask();
TString triggername = fEventInfo->GetRunInfo()->GetFiredTriggerClasses(triggermask);
Int_t nTracks = 0; // Count the number of tracks per event
Int_t triggermask = fEventInfo->GetEventHeader()->GetTriggerMask();
TString triggername = fEventInfo->GetRunInfo()->GetFiredTriggerClasses(triggermask);
- AliTRDrecoTask::Exec(opt);
+ AliTRDrecoTask::UserExec(opt);
//____________________________________________________________________
AliTRDinfoGen::AliTRDinfoGen(char* name)
//____________________________________________________________________
AliTRDinfoGen::AliTRDinfoGen(char* name)
- :AliTRDrecoTask(name, "MC-REC TRD-track list generator")
,fEvTrigger("")
,fESDev(NULL)
,fMCev(NULL)
,fEvTrigger("")
,fESDev(NULL)
,fMCev(NULL)
//
// Create Output Containers (TObjectArray containing 1D histograms)
//
//
// Create Output Containers (TObjectArray containing 1D histograms)
//
fTrackInfo = new AliTRDtrackInfo();
fEventInfo = new AliTRDeventInfo();
fV0Info = new AliTRDv0Info();
fTrackInfo = new AliTRDtrackInfo();
fEventInfo = new AliTRDeventInfo();
fV0Info = new AliTRDv0Info();
//
// Run the Analysis
//
//
// Run the Analysis
//
printf("AliTRDinfoGen::UserExec : ESD[%p] MC[%p]\n", (void*)fESDev, (void*)fMCev);
fESDev = dynamic_cast<AliESDEvent*>(InputEvent());
printf("AliTRDinfoGen::UserExec : ESD[%p] MC[%p]\n", (void*)fESDev, (void*)fMCev);
fESDev = dynamic_cast<AliESDEvent*>(InputEvent());
fContainer->Add(new AliTRDtrackInfo(*fTrackInfo));
fTrackInfo->Delete("");
}
fContainer->Add(new AliTRDtrackInfo(*fTrackInfo));
fTrackInfo->Delete("");
}
AliDebug(2, Form("%3d Tracks: TPCout[%d] TRDin[%d] TRDout[%d]\n", (Int_t)AliAnalysisManager::GetAnalysisManager()->GetCurrentEntry(), nTPC, nTRDin, nTRDout));
// AliESDv0 *v0 = NULL;
AliDebug(2, Form("%3d Tracks: TPCout[%d] TRDin[%d] TRDout[%d]\n", (Int_t)AliAnalysisManager::GetAnalysisManager()->GetCurrentEntry(), nTPC, nTRDin, nTRDout));
// AliESDv0 *v0 = NULL;
void UserCreateOutputObjects();
void UserExec(Option_t *);
void UserCreateOutputObjects();
void UserExec(Option_t *);
+ void ConnectInputData(Option_t *opt) {AliAnalysisTaskSE::ConnectInputData(opt);}
static Float_t GetTPCx() { return fgkTPC;}
static Float_t GetTOFx() { return fgkTOF;}
static Float_t GetTPCx() { return fgkTPC;}
static Float_t GetTOFx() { return fgkTOF;}
DefineOutput(1, TObjArray::Class());
}
DefineOutput(1, TObjArray::Class());
}
+AliTRDrecoTask::AliTRDrecoTask(const char *name)
+ : AliAnalysisTaskSE(name)
+ ,fNRefFigures(0)
+ ,fContainer(NULL)
+ ,fTracks(NULL)
+ ,fkTrack(NULL)
+ ,fkMC(NULL)
+ ,fkESD(NULL)
+ ,fDebugLevel(0)
+ ,fPlotFuncList(NULL)
+{
+ DefineOutput(1, TObjArray::Class());
+}
+
//_______________________________________________________
AliTRDrecoTask::~AliTRDrecoTask()
{
//_______________________________________________________
AliTRDrecoTask::~AliTRDrecoTask()
{
virtual void Terminate(Option_t *);
protected:
virtual void Terminate(Option_t *);
protected:
+ AliTRDrecoTask(const char *name);
static TTreeSRedirector* DebugStream() { return fgDebugStream;}
void InitFunctorList();
void Adjust(TF1 *f, TH1 * const h);
static TTreeSRedirector* DebugStream() { return fgDebugStream;}
void InitFunctorList();
void Adjust(TF1 *f, TH1 * const h);
fMCcl->Delete();
fMCtrklt->Delete();
fMCcl->Delete();
fMCtrklt->Delete();
- AliTRDrecoTask::Exec(opt);
+ AliTRDrecoTask::UserExec(opt);
PostData(1, fCl);
PostData(2, fTrklt);
PostData(1, fCl);
PostData(2, fTrklt);
mgr->AddTask(info = new AliTRDinfoGen((char*)"genInfo"));
info->SetDebugLevel(0);
info->SetMCdata(mgr->GetMCtruthEventHandler());
mgr->AddTask(info = new AliTRDinfoGen((char*)"genInfo"));
info->SetDebugLevel(0);
info->SetMCdata(mgr->GetMCtruthEventHandler());
- AliAnalysisDataContainer* cin = mgr->CreateContainer("dummy", TObjArray::Class(), AliAnalysisManager::kInputContainer);
-
- mgr->ConnectInput( info, 0, mgr->GetCommonInputContainer());
// settings for collisions
info->SetCollision(kFALSE);
if(info->IsCollision()){
// settings for collisions
info->SetCollision(kFALSE);
if(info->IsCollision()){
co[2] = mgr->CreateContainer("v0Info", TObjArray::Class(), AliAnalysisManager::kExchangeContainer);
mgr->ConnectInput (info, 0, mgr->GetCommonInputContainer());
co[2] = mgr->CreateContainer("v0Info", TObjArray::Class(), AliAnalysisManager::kExchangeContainer);
mgr->ConnectInput (info, 0, mgr->GetCommonInputContainer());
- mgr->ConnectInput (info, 1, cin ); // Dummy to avoid orphan
mgr->ConnectOutput(info, 1, co[0]);
mgr->ConnectOutput(info, 2, co[1]);
mgr->ConnectOutput(info, 3, co[2]);
mgr->ConnectOutput(info, 1, co[0]);
mgr->ConnectOutput(info, 2, co[1]);
mgr->ConnectOutput(info, 3, co[2]);