#include <TTree.h>
#include <TClonesArray.h>
#include <TParameter.h>
#include "AliLog.h"
#include "AliCDBManager.h"
#include "AliCDBEntry.h"
#include "AliCDBStorage.h"
#include "AliCDBId.h"
#include "AliVZEROTriggerData.h"
#include "AliVZEROLogicalSignal.h"
#include "AliVZEROTriggerSimulator.h"
#include "AliVZEROdigit.h"
#include "AliVZEROCalibData.h"
#include "AliVZEROConst.h"
#include "AliCTPTimeParams.h"
ClassImp(AliVZEROTriggerSimulator)
AliVZEROTriggerSimulator::AliVZEROTriggerSimulator(TTree * digitsTree, TClonesArray* digits) :
TObject(),fTriggerData(NULL),fDigitsTree(digitsTree),fDigits(digits),fTriggerWord(0)
{
fTriggerData = LoadTriggerData();
LoadClockOffset();
for(int i=0;i<64;i++) {
fBBFlags[i] = fBGFlags[i] = kFALSE;
fCharges[i] = 0.;
}
GenerateBBWindows();
GenerateBGWindows();
for (int i=0; i<AliVZEROTriggerData::kNCIUBoards; i++) {
fBBLatch[i] = new AliVZEROLogicalSignal(fTriggerData->GetLatchWin1(i),0);
fBGLatch[i] = new AliVZEROLogicalSignal(fTriggerData->GetLatchWin2(i),0);
fBBReset[i] = new AliVZEROLogicalSignal(fTriggerData->GetResetWin1(i),0);
fBGReset[i] = new AliVZEROLogicalSignal(fTriggerData->GetResetWin2(i),0);
}
}
AliVZEROTriggerSimulator::AliVZEROTriggerSimulator() :
TObject(),fTriggerData(NULL),fDigitsTree(NULL),fDigits(NULL),fTriggerWord(0)
{
fTriggerData = LoadTriggerData();
LoadClockOffset();
for(int i=0;i<64;i++) {
fBBFlags[i] = fBGFlags[i] = kFALSE;
fCharges[i] = 0;
}
GenerateBBWindows();
GenerateBGWindows();
for (int i=0; i<AliVZEROTriggerData::kNCIUBoards; i++) {
fBBLatch[i] = new AliVZEROLogicalSignal(fTriggerData->GetLatchWin1(i),0);
fBGLatch[i] = new AliVZEROLogicalSignal(fTriggerData->GetLatchWin2(i),0);
fBBReset[i] = new AliVZEROLogicalSignal(fTriggerData->GetResetWin1(i),0);
fBGReset[i] = new AliVZEROLogicalSignal(fTriggerData->GetResetWin2(i),0);
}
}
AliVZEROTriggerSimulator::~AliVZEROTriggerSimulator(){
for (Int_t i=0; i<AliVZEROTriggerData::kNCIUBoards; i++) {
delete fBBGate[i];
delete fBGGate[i];
delete fBBLatch[i];
delete fBBReset[i];
delete fBGLatch[i];
delete fBGReset[i];
}
}
void AliVZEROTriggerSimulator::GenerateBBWindows()
{
if (AreGatesOpen()) {
for (int i=0; i<AliVZEROTriggerData::kNCIUBoards; i++) {
fBBGate[i] = new AliVZEROLogicalSignal();
fBBGate[i]->SetStartTime(0.);
fBBGate[i]->SetStopTime(25.0);
}
}
else {
for (int i=0; i<AliVZEROTriggerData::kNCIUBoards; i++) {
AliVZEROLogicalSignal clk1BB(fTriggerData->GetClk1Win1(i),fTriggerData->GetDelayClk1Win1(i));
AliVZEROLogicalSignal clk2BB(fTriggerData->GetClk2Win1(i),fTriggerData->GetDelayClk2Win1(i));
fBBGate[i] = new AliVZEROLogicalSignal(clk1BB & clk2BB);
}
}
}
void AliVZEROTriggerSimulator::GenerateBGWindows()
{
if (AreGatesOpen()) {
for (int i=0; i<AliVZEROTriggerData::kNCIUBoards; i++) {
fBGGate[i] = new AliVZEROLogicalSignal();
fBGGate[i]->SetStartTime(0.);
fBGGate[i]->SetStopTime(25.0);
}
}
else {
for (int i=0; i<AliVZEROTriggerData::kNCIUBoards; i++) {
AliVZEROLogicalSignal clk1BG(fTriggerData->GetClk1Win2(i),fTriggerData->GetDelayClk1Win2(i));
AliVZEROLogicalSignal clk2BG(fTriggerData->GetClk2Win2(i),fTriggerData->GetDelayClk2Win2(i));
fBGGate[i] = new AliVZEROLogicalSignal(clk1BG & clk2BG);
if (i < 4) {
fBGGate[i]->SetStartTime(fBGGate[i]->GetStartTime()-25.0);
fBGGate[i]->SetStopTime(fBGGate[i]->GetStopTime()-25.0);
}
}
}
}
AliVZEROTriggerData * AliVZEROTriggerSimulator::LoadTriggerData() const
{
AliDebug(1,"Loading Trigger parameters");
AliCDBManager *man = AliCDBManager::Instance();
AliCDBEntry *entry=0;
entry = man->Get("VZERO/Trigger/Data");
if(!entry){
AliFatal("Load of trigger calibration data from default storage failed!");
return NULL;
}
AliVZEROTriggerData *triggerData = NULL;
if (entry) triggerData = (AliVZEROTriggerData*) entry->GetObject();
if (!triggerData) AliError("No Trigger data from database !");
return triggerData;
}
void AliVZEROTriggerSimulator::LoadClockOffset()
{
AliCDBEntry *entry0 = AliCDBManager::Instance()->Get("VZERO/Calib/Data");
if (!entry0) {
AliFatal("V0 Calib object is not found in OCDB !");
return;
}
AliVZEROCalibData *calibdata = (AliVZEROCalibData*) entry0->GetObject();
AliCDBEntry *entry = AliCDBManager::Instance()->Get("GRP/CTP/CTPtiming");
if (!entry) {
AliFatal("CTP timing parameters are not found in OCDB !");
return;
}
AliCTPTimeParams *ctpParams = (AliCTPTimeParams*)entry->GetObject();
Float_t l1Delay = (Float_t)ctpParams->GetDelayL1L0()*25.0;
AliCDBEntry *entry1 = AliCDBManager::Instance()->Get("GRP/CTP/TimeAlign");
if (!entry1) {
AliFatal("CTP time-alignment is not found in OCDB !");
return;
}
AliCTPTimeParams *ctpTimeAlign = (AliCTPTimeParams*)entry1->GetObject();
l1Delay += ((Float_t)ctpTimeAlign->GetDelayL1L0()*25.0);
for(Int_t board = 0; board < AliVZEROTriggerData::kNCIUBoards; ++board) {
fClockOffset[board] = (((Float_t)calibdata->GetRollOver(board)-
(Float_t)calibdata->GetTriggerCountOffset(board))*25.0-
l1Delay+
kV0Offset);
AliDebug(1,Form("Board %d Offset %f",board,fClockOffset[board]));
}
}
void AliVZEROTriggerSimulator::Run() {
Int_t nEntries = (Int_t)fDigitsTree->GetEntries();
for (Int_t ievt=0; ievt<nEntries; ievt++) {
fDigitsTree->GetEvent(ievt);
Int_t nDigits = fDigits->GetEntriesFast();
for (Int_t iDigit=0; iDigit<nDigits; iDigit++) {
AliVZEROdigit* digit = (AliVZEROdigit*)fDigits->At(iDigit);
Int_t integrator = digit->Integrator();
Int_t pmNumber = digit->PMNumber();
Int_t board = AliVZEROCalibData::GetBoardNumber(pmNumber);
Int_t channel = AliVZEROCalibData::GetFEEChannelNumber(pmNumber);
if (board < 0 || channel < 0) continue;
if(fTriggerData->GetEnableCharge(board,channel)) {
fCharges[pmNumber] = digit->ChargeADC(AliVZEROdigit::kNClocks/2);
if(fTriggerData->GetPedestalSubtraction(board)) {
if(fCharges[pmNumber]>=(Float_t) fTriggerData->GetPedestalCut(integrator,board,channel)){
fCharges[pmNumber] -= (Float_t) fTriggerData->GetPedestal(integrator,board,channel);
} else {
fCharges[pmNumber] = 0.;
}
}
} else {
fCharges[pmNumber] = 0.;
}
Float_t time = digit->Time();
time -= fClockOffset[board];
AliDebug(10,Form(" Digit: %f %d %d %d %d %d %d %d %d",digit->Time(),
digit->ChargeADC(8),digit->ChargeADC(9),digit->ChargeADC(10),
digit->ChargeADC(11),digit->ChargeADC(12),digit->ChargeADC(13),
digit->ChargeADC(14),digit->ChargeADC(15)));
AliDebug(10,Form(" PM nb : %d ; TDC= %f(%f) Enable Time %d charge %d inCoin %d charge %f",
pmNumber,time,digit->Time(),
fTriggerData->GetEnableTiming(board,channel),fTriggerData->GetEnableCharge(board,channel),
fBBGate[board]->IsInCoincidence(time),fCharges[pmNumber]));
fBBFlags[pmNumber] = fTriggerData->GetEnableTiming(board,channel) && fBBGate[board]->IsInCoincidence(time);
fBGFlags[pmNumber] = fTriggerData->GetEnableTiming(board,channel) && fBGGate[board]->IsInCoincidence(time);
}
}
Int_t nBBflagsV0A = 0;
Int_t nBBflagsV0C = 0;
Int_t nBGflagsV0A = 0;
Int_t nBGflagsV0C = 0;
Float_t chargeV0A = 0.;
Float_t chargeV0C = 0.;
Int_t aBBflagsV0A = 0;
Int_t aBBflagsV0C = 0;
Int_t aBGflagsV0A = 0;
Int_t aBGflagsV0C = 0;
for(int i=0;i<64;i++) {
if(i<32) {
nBBflagsV0C += fBBFlags[i];
nBGflagsV0C += fBGFlags[i];
chargeV0C += fCharges[i];
if (fBBFlags[i]) aBBflagsV0C |= (1 << i);
if (fBGFlags[i]) aBGflagsV0C |= (1 << i);
} else {
nBBflagsV0A += fBBFlags[i];
nBGflagsV0A += fBGFlags[i];
chargeV0A += fCharges[i];
if (fBBFlags[i]) aBBflagsV0A |= (1 << (i-32));
if (fBGFlags[i]) aBGflagsV0A |= (1 << (i-32));
}
}
fDigitsTree->GetUserInfo()->Add(new TParameter<int>("BBflagsV0A",aBBflagsV0A));
fDigitsTree->GetUserInfo()->Add(new TParameter<int>("BBflagsV0C",aBBflagsV0C));
fDigitsTree->GetUserInfo()->Add(new TParameter<int>("BGflagsV0A",aBGflagsV0A));
fDigitsTree->GetUserInfo()->Add(new TParameter<int>("BGflagsV0C",aBGflagsV0C));
if(nBBflagsV0A>=fTriggerData->GetBBAThreshold()) SetBBA();
if(nBBflagsV0C>=fTriggerData->GetBBCThreshold()) SetBBC();
if(GetBBA() && GetBBC()) SetBBAandBBC();
if(GetBBA() || GetBBC()) SetBBAorBBC();
if(nBGflagsV0A>=fTriggerData->GetBGAThreshold()) SetBGA();
if(nBGflagsV0C>=fTriggerData->GetBGCThreshold()) SetBGC();
if(nBBflagsV0C>=fTriggerData->GetBBCForBGThreshold() && GetBGA()) SetBGAandBBC();
if(nBBflagsV0A>=fTriggerData->GetBBAForBGThreshold() && GetBGC()) SetBGCandBBA();
if(chargeV0A>=fTriggerData->GetCentralityV0AThrLow() && chargeV0C>=fTriggerData->GetCentralityV0CThrLow()) SetCTA1andCTC1();
if(chargeV0A>=fTriggerData->GetCentralityV0AThrLow() || chargeV0C>=fTriggerData->GetCentralityV0CThrLow()) SetCTA1orCTC1();
if(chargeV0A>=fTriggerData->GetCentralityV0AThrHigh() && chargeV0C>=fTriggerData->GetCentralityV0CThrHigh()) SetCTA2andCTC2();
if(chargeV0A>=fTriggerData->GetCentralityV0AThrHigh() || chargeV0C>=fTriggerData->GetCentralityV0CThrHigh()) SetCTA2orCTC2();
if((nBBflagsV0A<=fTriggerData->GetMultV0AThrHigh() && nBBflagsV0A>=fTriggerData->GetMultV0AThrLow())
&& (nBBflagsV0C<=fTriggerData->GetMultV0CThrHigh() && nBBflagsV0C>=fTriggerData->GetMultV0CThrLow()) )
SetMTAandMTC();
if((nBBflagsV0A<=fTriggerData->GetMultV0AThrHigh() && nBBflagsV0A>=fTriggerData->GetMultV0AThrLow())
|| (nBBflagsV0C<=fTriggerData->GetMultV0CThrHigh() && nBBflagsV0C>=fTriggerData->GetMultV0CThrLow()) )
SetMTAorMTC();
if(GetBGA() || GetBGC()) SetBGAorBGC();
if(GetBGAandBBC() || GetBGCandBBA()) SetBeamGas();
}
Bool_t AliVZEROTriggerSimulator::AreGatesOpen() const {
for (int i=0; i<AliVZEROTriggerData::kNCIUBoards; i++) {
if (fTriggerData->GetDelayClk1Win1(i)!=0 ||
fTriggerData->GetDelayClk2Win1(i)!=0 ||
fTriggerData->GetDelayClk1Win2(i)!=0 ||
fTriggerData->GetDelayClk2Win2(i)!=0)
return kFALSE;
}
return kTRUE;
}
void AliVZEROTriggerSimulator::Print(Option_t* ) const
{
for (int i=0; i<AliVZEROTriggerData::kNCIUBoards; i++) {
std::cout << "Board=" << i << " BB (" << fBBGate[i]->GetStartTime() << " -> " << fBBGate[i]->GetStopTime() << ") BG (" << fBGGate[i]->GetStartTime() << " -> " << fBGGate[i]->GetStopTime() << ")" << std::endl;
}
std::cout << std::endl;
}
AliVZEROTriggerSimulator.cxx:1 AliVZEROTriggerSimulator.cxx:2 AliVZEROTriggerSimulator.cxx:3 AliVZEROTriggerSimulator.cxx:4 AliVZEROTriggerSimulator.cxx:5 AliVZEROTriggerSimulator.cxx:6 AliVZEROTriggerSimulator.cxx:7 AliVZEROTriggerSimulator.cxx:8 AliVZEROTriggerSimulator.cxx:9 AliVZEROTriggerSimulator.cxx:10 AliVZEROTriggerSimulator.cxx:11 AliVZEROTriggerSimulator.cxx:12 AliVZEROTriggerSimulator.cxx:13 AliVZEROTriggerSimulator.cxx:14 AliVZEROTriggerSimulator.cxx:15 AliVZEROTriggerSimulator.cxx:16 AliVZEROTriggerSimulator.cxx:17 AliVZEROTriggerSimulator.cxx:18 AliVZEROTriggerSimulator.cxx:19 AliVZEROTriggerSimulator.cxx:20 AliVZEROTriggerSimulator.cxx:21 AliVZEROTriggerSimulator.cxx:22 AliVZEROTriggerSimulator.cxx:23 AliVZEROTriggerSimulator.cxx:24 AliVZEROTriggerSimulator.cxx:25 AliVZEROTriggerSimulator.cxx:26 AliVZEROTriggerSimulator.cxx:27 AliVZEROTriggerSimulator.cxx:28 AliVZEROTriggerSimulator.cxx:29 AliVZEROTriggerSimulator.cxx:30 AliVZEROTriggerSimulator.cxx:31 AliVZEROTriggerSimulator.cxx:32 AliVZEROTriggerSimulator.cxx:33 AliVZEROTriggerSimulator.cxx:34 AliVZEROTriggerSimulator.cxx:35 AliVZEROTriggerSimulator.cxx:36 AliVZEROTriggerSimulator.cxx:37 AliVZEROTriggerSimulator.cxx:38 AliVZEROTriggerSimulator.cxx:39 AliVZEROTriggerSimulator.cxx:40 AliVZEROTriggerSimulator.cxx:41 AliVZEROTriggerSimulator.cxx:42 AliVZEROTriggerSimulator.cxx:43 AliVZEROTriggerSimulator.cxx:44 AliVZEROTriggerSimulator.cxx:45 AliVZEROTriggerSimulator.cxx:46 AliVZEROTriggerSimulator.cxx:47 AliVZEROTriggerSimulator.cxx:48 AliVZEROTriggerSimulator.cxx:49 AliVZEROTriggerSimulator.cxx:50 AliVZEROTriggerSimulator.cxx:51 AliVZEROTriggerSimulator.cxx:52 AliVZEROTriggerSimulator.cxx:53 AliVZEROTriggerSimulator.cxx:54 AliVZEROTriggerSimulator.cxx:55 AliVZEROTriggerSimulator.cxx:56 AliVZEROTriggerSimulator.cxx:57 AliVZEROTriggerSimulator.cxx:58 AliVZEROTriggerSimulator.cxx:59 AliVZEROTriggerSimulator.cxx:60 AliVZEROTriggerSimulator.cxx:61 AliVZEROTriggerSimulator.cxx:62 AliVZEROTriggerSimulator.cxx:63 AliVZEROTriggerSimulator.cxx:64 AliVZEROTriggerSimulator.cxx:65 AliVZEROTriggerSimulator.cxx:66 AliVZEROTriggerSimulator.cxx:67 AliVZEROTriggerSimulator.cxx:68 AliVZEROTriggerSimulator.cxx:69 AliVZEROTriggerSimulator.cxx:70 AliVZEROTriggerSimulator.cxx:71 AliVZEROTriggerSimulator.cxx:72 AliVZEROTriggerSimulator.cxx:73 AliVZEROTriggerSimulator.cxx:74 AliVZEROTriggerSimulator.cxx:75 AliVZEROTriggerSimulator.cxx:76 AliVZEROTriggerSimulator.cxx:77 AliVZEROTriggerSimulator.cxx:78 AliVZEROTriggerSimulator.cxx:79 AliVZEROTriggerSimulator.cxx:80 AliVZEROTriggerSimulator.cxx:81 AliVZEROTriggerSimulator.cxx:82 AliVZEROTriggerSimulator.cxx:83 AliVZEROTriggerSimulator.cxx:84 AliVZEROTriggerSimulator.cxx:85 AliVZEROTriggerSimulator.cxx:86 AliVZEROTriggerSimulator.cxx:87 AliVZEROTriggerSimulator.cxx:88 AliVZEROTriggerSimulator.cxx:89 AliVZEROTriggerSimulator.cxx:90 AliVZEROTriggerSimulator.cxx:91 AliVZEROTriggerSimulator.cxx:92 AliVZEROTriggerSimulator.cxx:93 AliVZEROTriggerSimulator.cxx:94 AliVZEROTriggerSimulator.cxx:95 AliVZEROTriggerSimulator.cxx:96 AliVZEROTriggerSimulator.cxx:97 AliVZEROTriggerSimulator.cxx:98 AliVZEROTriggerSimulator.cxx:99 AliVZEROTriggerSimulator.cxx:100 AliVZEROTriggerSimulator.cxx:101 AliVZEROTriggerSimulator.cxx:102 AliVZEROTriggerSimulator.cxx:103 AliVZEROTriggerSimulator.cxx:104 AliVZEROTriggerSimulator.cxx:105 AliVZEROTriggerSimulator.cxx:106 AliVZEROTriggerSimulator.cxx:107 AliVZEROTriggerSimulator.cxx:108 AliVZEROTriggerSimulator.cxx:109 AliVZEROTriggerSimulator.cxx:110 AliVZEROTriggerSimulator.cxx:111 AliVZEROTriggerSimulator.cxx:112 AliVZEROTriggerSimulator.cxx:113 AliVZEROTriggerSimulator.cxx:114 AliVZEROTriggerSimulator.cxx:115 AliVZEROTriggerSimulator.cxx:116 AliVZEROTriggerSimulator.cxx:117 AliVZEROTriggerSimulator.cxx:118 AliVZEROTriggerSimulator.cxx:119 AliVZEROTriggerSimulator.cxx:120 AliVZEROTriggerSimulator.cxx:121 AliVZEROTriggerSimulator.cxx:122 AliVZEROTriggerSimulator.cxx:123 AliVZEROTriggerSimulator.cxx:124 AliVZEROTriggerSimulator.cxx:125 AliVZEROTriggerSimulator.cxx:126 AliVZEROTriggerSimulator.cxx:127 AliVZEROTriggerSimulator.cxx:128 AliVZEROTriggerSimulator.cxx:129 AliVZEROTriggerSimulator.cxx:130 AliVZEROTriggerSimulator.cxx:131 AliVZEROTriggerSimulator.cxx:132 AliVZEROTriggerSimulator.cxx:133 AliVZEROTriggerSimulator.cxx:134 AliVZEROTriggerSimulator.cxx:135 AliVZEROTriggerSimulator.cxx:136 AliVZEROTriggerSimulator.cxx:137 AliVZEROTriggerSimulator.cxx:138 AliVZEROTriggerSimulator.cxx:139 AliVZEROTriggerSimulator.cxx:140 AliVZEROTriggerSimulator.cxx:141 AliVZEROTriggerSimulator.cxx:142 AliVZEROTriggerSimulator.cxx:143 AliVZEROTriggerSimulator.cxx:144 AliVZEROTriggerSimulator.cxx:145 AliVZEROTriggerSimulator.cxx:146 AliVZEROTriggerSimulator.cxx:147 AliVZEROTriggerSimulator.cxx:148 AliVZEROTriggerSimulator.cxx:149 AliVZEROTriggerSimulator.cxx:150 AliVZEROTriggerSimulator.cxx:151 AliVZEROTriggerSimulator.cxx:152 AliVZEROTriggerSimulator.cxx:153 AliVZEROTriggerSimulator.cxx:154 AliVZEROTriggerSimulator.cxx:155 AliVZEROTriggerSimulator.cxx:156 AliVZEROTriggerSimulator.cxx:157 AliVZEROTriggerSimulator.cxx:158 AliVZEROTriggerSimulator.cxx:159 AliVZEROTriggerSimulator.cxx:160 AliVZEROTriggerSimulator.cxx:161 AliVZEROTriggerSimulator.cxx:162 AliVZEROTriggerSimulator.cxx:163 AliVZEROTriggerSimulator.cxx:164 AliVZEROTriggerSimulator.cxx:165 AliVZEROTriggerSimulator.cxx:166 AliVZEROTriggerSimulator.cxx:167 AliVZEROTriggerSimulator.cxx:168 AliVZEROTriggerSimulator.cxx:169 AliVZEROTriggerSimulator.cxx:170 AliVZEROTriggerSimulator.cxx:171 AliVZEROTriggerSimulator.cxx:172 AliVZEROTriggerSimulator.cxx:173 AliVZEROTriggerSimulator.cxx:174 AliVZEROTriggerSimulator.cxx:175 AliVZEROTriggerSimulator.cxx:176 AliVZEROTriggerSimulator.cxx:177 AliVZEROTriggerSimulator.cxx:178 AliVZEROTriggerSimulator.cxx:179 AliVZEROTriggerSimulator.cxx:180 AliVZEROTriggerSimulator.cxx:181 AliVZEROTriggerSimulator.cxx:182 AliVZEROTriggerSimulator.cxx:183 AliVZEROTriggerSimulator.cxx:184 AliVZEROTriggerSimulator.cxx:185 AliVZEROTriggerSimulator.cxx:186 AliVZEROTriggerSimulator.cxx:187 AliVZEROTriggerSimulator.cxx:188 AliVZEROTriggerSimulator.cxx:189 AliVZEROTriggerSimulator.cxx:190 AliVZEROTriggerSimulator.cxx:191 AliVZEROTriggerSimulator.cxx:192 AliVZEROTriggerSimulator.cxx:193 AliVZEROTriggerSimulator.cxx:194 AliVZEROTriggerSimulator.cxx:195 AliVZEROTriggerSimulator.cxx:196 AliVZEROTriggerSimulator.cxx:197 AliVZEROTriggerSimulator.cxx:198 AliVZEROTriggerSimulator.cxx:199 AliVZEROTriggerSimulator.cxx:200 AliVZEROTriggerSimulator.cxx:201 AliVZEROTriggerSimulator.cxx:202 AliVZEROTriggerSimulator.cxx:203 AliVZEROTriggerSimulator.cxx:204 AliVZEROTriggerSimulator.cxx:205 AliVZEROTriggerSimulator.cxx:206 AliVZEROTriggerSimulator.cxx:207 AliVZEROTriggerSimulator.cxx:208 AliVZEROTriggerSimulator.cxx:209 AliVZEROTriggerSimulator.cxx:210 AliVZEROTriggerSimulator.cxx:211 AliVZEROTriggerSimulator.cxx:212 AliVZEROTriggerSimulator.cxx:213 AliVZEROTriggerSimulator.cxx:214 AliVZEROTriggerSimulator.cxx:215 AliVZEROTriggerSimulator.cxx:216 AliVZEROTriggerSimulator.cxx:217 AliVZEROTriggerSimulator.cxx:218 AliVZEROTriggerSimulator.cxx:219 AliVZEROTriggerSimulator.cxx:220 AliVZEROTriggerSimulator.cxx:221 AliVZEROTriggerSimulator.cxx:222 AliVZEROTriggerSimulator.cxx:223 AliVZEROTriggerSimulator.cxx:224 AliVZEROTriggerSimulator.cxx:225 AliVZEROTriggerSimulator.cxx:226 AliVZEROTriggerSimulator.cxx:227 AliVZEROTriggerSimulator.cxx:228 AliVZEROTriggerSimulator.cxx:229 AliVZEROTriggerSimulator.cxx:230 AliVZEROTriggerSimulator.cxx:231 AliVZEROTriggerSimulator.cxx:232 AliVZEROTriggerSimulator.cxx:233 AliVZEROTriggerSimulator.cxx:234 AliVZEROTriggerSimulator.cxx:235 AliVZEROTriggerSimulator.cxx:236 AliVZEROTriggerSimulator.cxx:237 AliVZEROTriggerSimulator.cxx:238 AliVZEROTriggerSimulator.cxx:239 AliVZEROTriggerSimulator.cxx:240 AliVZEROTriggerSimulator.cxx:241 AliVZEROTriggerSimulator.cxx:242 AliVZEROTriggerSimulator.cxx:243 AliVZEROTriggerSimulator.cxx:244 AliVZEROTriggerSimulator.cxx:245 AliVZEROTriggerSimulator.cxx:246 AliVZEROTriggerSimulator.cxx:247 AliVZEROTriggerSimulator.cxx:248 AliVZEROTriggerSimulator.cxx:249 AliVZEROTriggerSimulator.cxx:250 AliVZEROTriggerSimulator.cxx:251 AliVZEROTriggerSimulator.cxx:252 AliVZEROTriggerSimulator.cxx:253 AliVZEROTriggerSimulator.cxx:254 AliVZEROTriggerSimulator.cxx:255 AliVZEROTriggerSimulator.cxx:256 AliVZEROTriggerSimulator.cxx:257 AliVZEROTriggerSimulator.cxx:258 AliVZEROTriggerSimulator.cxx:259 AliVZEROTriggerSimulator.cxx:260 AliVZEROTriggerSimulator.cxx:261 AliVZEROTriggerSimulator.cxx:262 AliVZEROTriggerSimulator.cxx:263 AliVZEROTriggerSimulator.cxx:264 AliVZEROTriggerSimulator.cxx:265 AliVZEROTriggerSimulator.cxx:266 AliVZEROTriggerSimulator.cxx:267 AliVZEROTriggerSimulator.cxx:268 AliVZEROTriggerSimulator.cxx:269 AliVZEROTriggerSimulator.cxx:270 AliVZEROTriggerSimulator.cxx:271 AliVZEROTriggerSimulator.cxx:272 AliVZEROTriggerSimulator.cxx:273 AliVZEROTriggerSimulator.cxx:274 AliVZEROTriggerSimulator.cxx:275 AliVZEROTriggerSimulator.cxx:276 AliVZEROTriggerSimulator.cxx:277 AliVZEROTriggerSimulator.cxx:278 AliVZEROTriggerSimulator.cxx:279 AliVZEROTriggerSimulator.cxx:280 AliVZEROTriggerSimulator.cxx:281 AliVZEROTriggerSimulator.cxx:282 AliVZEROTriggerSimulator.cxx:283 AliVZEROTriggerSimulator.cxx:284 AliVZEROTriggerSimulator.cxx:285 AliVZEROTriggerSimulator.cxx:286 AliVZEROTriggerSimulator.cxx:287 AliVZEROTriggerSimulator.cxx:288 AliVZEROTriggerSimulator.cxx:289 AliVZEROTriggerSimulator.cxx:290 AliVZEROTriggerSimulator.cxx:291 AliVZEROTriggerSimulator.cxx:292 AliVZEROTriggerSimulator.cxx:293 AliVZEROTriggerSimulator.cxx:294 AliVZEROTriggerSimulator.cxx:295 AliVZEROTriggerSimulator.cxx:296 AliVZEROTriggerSimulator.cxx:297 AliVZEROTriggerSimulator.cxx:298 AliVZEROTriggerSimulator.cxx:299 AliVZEROTriggerSimulator.cxx:300 AliVZEROTriggerSimulator.cxx:301 AliVZEROTriggerSimulator.cxx:302 AliVZEROTriggerSimulator.cxx:303 AliVZEROTriggerSimulator.cxx:304 AliVZEROTriggerSimulator.cxx:305 AliVZEROTriggerSimulator.cxx:306 AliVZEROTriggerSimulator.cxx:307 AliVZEROTriggerSimulator.cxx:308 AliVZEROTriggerSimulator.cxx:309 AliVZEROTriggerSimulator.cxx:310 AliVZEROTriggerSimulator.cxx:311 AliVZEROTriggerSimulator.cxx:312 AliVZEROTriggerSimulator.cxx:313 AliVZEROTriggerSimulator.cxx:314 AliVZEROTriggerSimulator.cxx:315 AliVZEROTriggerSimulator.cxx:316 AliVZEROTriggerSimulator.cxx:317 AliVZEROTriggerSimulator.cxx:318 AliVZEROTriggerSimulator.cxx:319 AliVZEROTriggerSimulator.cxx:320 AliVZEROTriggerSimulator.cxx:321 AliVZEROTriggerSimulator.cxx:322 AliVZEROTriggerSimulator.cxx:323 AliVZEROTriggerSimulator.cxx:324 AliVZEROTriggerSimulator.cxx:325 AliVZEROTriggerSimulator.cxx:326 AliVZEROTriggerSimulator.cxx:327 AliVZEROTriggerSimulator.cxx:328 AliVZEROTriggerSimulator.cxx:329 AliVZEROTriggerSimulator.cxx:330 AliVZEROTriggerSimulator.cxx:331 AliVZEROTriggerSimulator.cxx:332 AliVZEROTriggerSimulator.cxx:333 AliVZEROTriggerSimulator.cxx:334 AliVZEROTriggerSimulator.cxx:335 AliVZEROTriggerSimulator.cxx:336 AliVZEROTriggerSimulator.cxx:337 AliVZEROTriggerSimulator.cxx:338 AliVZEROTriggerSimulator.cxx:339 AliVZEROTriggerSimulator.cxx:340 AliVZEROTriggerSimulator.cxx:341 AliVZEROTriggerSimulator.cxx:342 AliVZEROTriggerSimulator.cxx:343 AliVZEROTriggerSimulator.cxx:344 AliVZEROTriggerSimulator.cxx:345 AliVZEROTriggerSimulator.cxx:346 AliVZEROTriggerSimulator.cxx:347 AliVZEROTriggerSimulator.cxx:348 AliVZEROTriggerSimulator.cxx:349 AliVZEROTriggerSimulator.cxx:350 AliVZEROTriggerSimulator.cxx:351 AliVZEROTriggerSimulator.cxx:352 AliVZEROTriggerSimulator.cxx:353 AliVZEROTriggerSimulator.cxx:354 AliVZEROTriggerSimulator.cxx:355 AliVZEROTriggerSimulator.cxx:356 AliVZEROTriggerSimulator.cxx:357 AliVZEROTriggerSimulator.cxx:358 AliVZEROTriggerSimulator.cxx:359 AliVZEROTriggerSimulator.cxx:360 AliVZEROTriggerSimulator.cxx:361 AliVZEROTriggerSimulator.cxx:362 AliVZEROTriggerSimulator.cxx:363 AliVZEROTriggerSimulator.cxx:364 AliVZEROTriggerSimulator.cxx:365 AliVZEROTriggerSimulator.cxx:366 AliVZEROTriggerSimulator.cxx:367 AliVZEROTriggerSimulator.cxx:368 AliVZEROTriggerSimulator.cxx:369 AliVZEROTriggerSimulator.cxx:370 AliVZEROTriggerSimulator.cxx:371 AliVZEROTriggerSimulator.cxx:372 AliVZEROTriggerSimulator.cxx:373 AliVZEROTriggerSimulator.cxx:374 AliVZEROTriggerSimulator.cxx:375 AliVZEROTriggerSimulator.cxx:376 AliVZEROTriggerSimulator.cxx:377 AliVZEROTriggerSimulator.cxx:378 AliVZEROTriggerSimulator.cxx:379 AliVZEROTriggerSimulator.cxx:380 AliVZEROTriggerSimulator.cxx:381 AliVZEROTriggerSimulator.cxx:382 AliVZEROTriggerSimulator.cxx:383 AliVZEROTriggerSimulator.cxx:384 AliVZEROTriggerSimulator.cxx:385