#include <THashList.h>
#include <TList.h>
#include "AliEMCalTriggerTracksAnalysisComponent.h"
#include "AliEMCalTriggerEventSelection.h"
#include "AliEMCalTriggerTaskGroup.h"
ClassImp(EMCalTriggerPtAnalysis::AliEMCalTriggerTaskGroup)
namespace EMCalTriggerPtAnalysis {
AliEMCalTriggerTaskGroup::AliEMCalTriggerTaskGroup() :
TNamed(),
fAnalysisComponents(NULL),
fEventSelection(NULL),
fBinning(NULL),
fKineCuts(NULL)
{
}
AliEMCalTriggerTaskGroup::AliEMCalTriggerTaskGroup(const char* name) :
TNamed(name, ""),
fAnalysisComponents(NULL),
fEventSelection(NULL),
fBinning(NULL),
fKineCuts(NULL)
{
fAnalysisComponents = new TObjArray();
fAnalysisComponents->SetOwner();
}
AliEMCalTriggerTaskGroup::~AliEMCalTriggerTaskGroup() {
if(fEventSelection) delete fEventSelection;
if(fAnalysisComponents) delete fAnalysisComponents;
}
TList *AliEMCalTriggerTaskGroup::InitialiseAnalysisComponents() {
TIter compIter(fAnalysisComponents);
AliEMCalTriggerTracksAnalysisComponent *ana(NULL);
TList *histlist = new TList;
TObject *htmp(NULL);
while((ana = dynamic_cast<AliEMCalTriggerTracksAnalysisComponent *>(compIter()))){
ana->SetBinning(fBinning);
ana->SetKineCuts(fKineCuts);
ana->CreateHistos();
TList *ltmp = ana->GetHistList();
TIter hiter(ltmp);
while((htmp = hiter())) histlist->Add(htmp);
}
return histlist;
}
void AliEMCalTriggerTaskGroup::Process(const AliEMCalTriggerEventData* const event) {
if(fEventSelection && !fEventSelection->IsEventSelected(event)) return;
TIter compIter(fAnalysisComponents);
AliEMCalTriggerTracksAnalysisComponent *ana(NULL);
while((ana = dynamic_cast<AliEMCalTriggerTracksAnalysisComponent *>(compIter())))
ana->Process(event);
}
void AliEMCalTriggerTaskGroup::AddAnalysisComponent(AliEMCalTriggerTracksAnalysisComponent * const analysis) {
fAnalysisComponents->Add(analysis);
}
void EMCalTriggerPtAnalysis::AliEMCalTriggerTaskGroup::SetTriggerDecision(
const AliEMCalTriggerAnaTriggerDecision* trigger) {
AliEMCalTriggerTracksAnalysisComponent *myana(NULL);
TIter compIter(fAnalysisComponents);
while((myana = dynamic_cast<AliEMCalTriggerTracksAnalysisComponent *>(compIter())))
myana->SetTriggerDecision(trigger);
}
}
AliEMCalTriggerTaskGroup.cxx:1 AliEMCalTriggerTaskGroup.cxx:2 AliEMCalTriggerTaskGroup.cxx:3 AliEMCalTriggerTaskGroup.cxx:4 AliEMCalTriggerTaskGroup.cxx:5 AliEMCalTriggerTaskGroup.cxx:6 AliEMCalTriggerTaskGroup.cxx:7 AliEMCalTriggerTaskGroup.cxx:8 AliEMCalTriggerTaskGroup.cxx:9 AliEMCalTriggerTaskGroup.cxx:10 AliEMCalTriggerTaskGroup.cxx:11 AliEMCalTriggerTaskGroup.cxx:12 AliEMCalTriggerTaskGroup.cxx:13 AliEMCalTriggerTaskGroup.cxx:14 AliEMCalTriggerTaskGroup.cxx:15 AliEMCalTriggerTaskGroup.cxx:16 AliEMCalTriggerTaskGroup.cxx:17 AliEMCalTriggerTaskGroup.cxx:18 AliEMCalTriggerTaskGroup.cxx:19 AliEMCalTriggerTaskGroup.cxx:20 AliEMCalTriggerTaskGroup.cxx:21 AliEMCalTriggerTaskGroup.cxx:22 AliEMCalTriggerTaskGroup.cxx:23 AliEMCalTriggerTaskGroup.cxx:24 AliEMCalTriggerTaskGroup.cxx:25 AliEMCalTriggerTaskGroup.cxx:26 AliEMCalTriggerTaskGroup.cxx:27 AliEMCalTriggerTaskGroup.cxx:28 AliEMCalTriggerTaskGroup.cxx:29 AliEMCalTriggerTaskGroup.cxx:30 AliEMCalTriggerTaskGroup.cxx:31 AliEMCalTriggerTaskGroup.cxx:32 AliEMCalTriggerTaskGroup.cxx:33 AliEMCalTriggerTaskGroup.cxx:34 AliEMCalTriggerTaskGroup.cxx:35 AliEMCalTriggerTaskGroup.cxx:36 AliEMCalTriggerTaskGroup.cxx:37 AliEMCalTriggerTaskGroup.cxx:38 AliEMCalTriggerTaskGroup.cxx:39 AliEMCalTriggerTaskGroup.cxx:40 AliEMCalTriggerTaskGroup.cxx:41 AliEMCalTriggerTaskGroup.cxx:42 AliEMCalTriggerTaskGroup.cxx:43 AliEMCalTriggerTaskGroup.cxx:44 AliEMCalTriggerTaskGroup.cxx:45 AliEMCalTriggerTaskGroup.cxx:46 AliEMCalTriggerTaskGroup.cxx:47 AliEMCalTriggerTaskGroup.cxx:48 AliEMCalTriggerTaskGroup.cxx:49 AliEMCalTriggerTaskGroup.cxx:50 AliEMCalTriggerTaskGroup.cxx:51 AliEMCalTriggerTaskGroup.cxx:52 AliEMCalTriggerTaskGroup.cxx:53 AliEMCalTriggerTaskGroup.cxx:54 AliEMCalTriggerTaskGroup.cxx:55 AliEMCalTriggerTaskGroup.cxx:56 AliEMCalTriggerTaskGroup.cxx:57 AliEMCalTriggerTaskGroup.cxx:58 AliEMCalTriggerTaskGroup.cxx:59 AliEMCalTriggerTaskGroup.cxx:60 AliEMCalTriggerTaskGroup.cxx:61 AliEMCalTriggerTaskGroup.cxx:62 AliEMCalTriggerTaskGroup.cxx:63 AliEMCalTriggerTaskGroup.cxx:64 AliEMCalTriggerTaskGroup.cxx:65 AliEMCalTriggerTaskGroup.cxx:66 AliEMCalTriggerTaskGroup.cxx:67 AliEMCalTriggerTaskGroup.cxx:68 AliEMCalTriggerTaskGroup.cxx:69 AliEMCalTriggerTaskGroup.cxx:70 AliEMCalTriggerTaskGroup.cxx:71 AliEMCalTriggerTaskGroup.cxx:72 AliEMCalTriggerTaskGroup.cxx:73 AliEMCalTriggerTaskGroup.cxx:74 AliEMCalTriggerTaskGroup.cxx:75 AliEMCalTriggerTaskGroup.cxx:76 AliEMCalTriggerTaskGroup.cxx:77 AliEMCalTriggerTaskGroup.cxx:78 AliEMCalTriggerTaskGroup.cxx:79 AliEMCalTriggerTaskGroup.cxx:80 AliEMCalTriggerTaskGroup.cxx:81 AliEMCalTriggerTaskGroup.cxx:82 AliEMCalTriggerTaskGroup.cxx:83 AliEMCalTriggerTaskGroup.cxx:84 AliEMCalTriggerTaskGroup.cxx:85 AliEMCalTriggerTaskGroup.cxx:86 AliEMCalTriggerTaskGroup.cxx:87 AliEMCalTriggerTaskGroup.cxx:88 AliEMCalTriggerTaskGroup.cxx:89 AliEMCalTriggerTaskGroup.cxx:90 AliEMCalTriggerTaskGroup.cxx:91 AliEMCalTriggerTaskGroup.cxx:92 AliEMCalTriggerTaskGroup.cxx:93 AliEMCalTriggerTaskGroup.cxx:94 AliEMCalTriggerTaskGroup.cxx:95 AliEMCalTriggerTaskGroup.cxx:96 AliEMCalTriggerTaskGroup.cxx:97 AliEMCalTriggerTaskGroup.cxx:98 AliEMCalTriggerTaskGroup.cxx:99 AliEMCalTriggerTaskGroup.cxx:100 AliEMCalTriggerTaskGroup.cxx:101 AliEMCalTriggerTaskGroup.cxx:102 AliEMCalTriggerTaskGroup.cxx:103 AliEMCalTriggerTaskGroup.cxx:104 AliEMCalTriggerTaskGroup.cxx:105 AliEMCalTriggerTaskGroup.cxx:106 AliEMCalTriggerTaskGroup.cxx:107 AliEMCalTriggerTaskGroup.cxx:108 AliEMCalTriggerTaskGroup.cxx:109 AliEMCalTriggerTaskGroup.cxx:110 AliEMCalTriggerTaskGroup.cxx:111 AliEMCalTriggerTaskGroup.cxx:112 AliEMCalTriggerTaskGroup.cxx:113 AliEMCalTriggerTaskGroup.cxx:114 AliEMCalTriggerTaskGroup.cxx:115 AliEMCalTriggerTaskGroup.cxx:116 AliEMCalTriggerTaskGroup.cxx:117 AliEMCalTriggerTaskGroup.cxx:118 AliEMCalTriggerTaskGroup.cxx:119 AliEMCalTriggerTaskGroup.cxx:120 AliEMCalTriggerTaskGroup.cxx:121 AliEMCalTriggerTaskGroup.cxx:122 AliEMCalTriggerTaskGroup.cxx:123 AliEMCalTriggerTaskGroup.cxx:124 AliEMCalTriggerTaskGroup.cxx:125 AliEMCalTriggerTaskGroup.cxx:126 AliEMCalTriggerTaskGroup.cxx:127 AliEMCalTriggerTaskGroup.cxx:128 AliEMCalTriggerTaskGroup.cxx:129 AliEMCalTriggerTaskGroup.cxx:130 AliEMCalTriggerTaskGroup.cxx:131 AliEMCalTriggerTaskGroup.cxx:132