else if (op == '|') tcl =tcl || inpnext;
else {
AliError(Form("Syntax error in %s", tclass));
- tcltokens->Delete();
+ delete tcltokens;
+ tcltokens = 0;
+ // tcltokens->Delete();
return kFALSE;
}
}
- tcltokens->Delete();
+ delete tcltokens;
+ tcltokens = 0;
+ // tcltokens->Delete();
return tcl;
}
if(layer == 2)
firstChip = 400;
- for (Int_t i=0; i<1200; i++)
+ for (Int_t i=firstChip; i<lastChip; i++)
{
if (mult->TestFastOrFiredChips(i) == kTRUE)
{
// It can be used in order to eliminate
// parasitic collisions
Bool_t zdcAccept = kFALSE;
-
AliESDZDC *esdZDC = aEsd->GetESDZDC();
- const Float_t refSum = -568.5;
- const Float_t refDelta = -2.1;
- const Float_t sigmaSum = 3.25;
- const Float_t sigmaDelta = 2.25;
- for(Int_t i = 0; i < 4; ++i) {
- if (esdZDC->GetZDCTDCData(10,i) != 0) {
- Float_t tdcC = 0.025*(esdZDC->GetZDCTDCData(10,i)-esdZDC->GetZDCTDCData(14,i));
- for(Int_t j = 0; j < 4; ++j) {
- if (esdZDC->GetZDCTDCData(12,j) != 0) {
- Float_t tdcA = 0.025*(esdZDC->GetZDCTDCData(12,j)-esdZDC->GetZDCTDCData(14,j));
- if(fillHists) fHistTimeZDC->Fill(tdcC-tdcA,tdcC+tdcA);
- if (((tdcC-tdcA-refDelta)*(tdcC-tdcA-refDelta)/(sigmaDelta*sigmaDelta) +
- (tdcC+tdcA-refSum)*(tdcC+tdcA-refSum)/(sigmaSum*sigmaSum))< 1.0)
- zdcAccept = kTRUE;
+ if(fMC) {
+ UInt_t esdFlag = esdZDC->GetESDQuality();
+
+ Bool_t znaFired=kFALSE, zpaFired=kFALSE;
+ Bool_t zem1Fired=kFALSE, zem2Fired=kFALSE;
+ Bool_t zncFired=kFALSE, zpcFired=kFALSE;
+ //
+ // **** Trigger patterns
+ if((esdFlag & 0x00000001) == 0x00000001) znaFired=kTRUE;
+ if((esdFlag & 0x00000002) == 0x00000002) zpaFired=kTRUE;
+ if((esdFlag & 0x00000004) == 0x00000004) zem1Fired=kTRUE;
+ if((esdFlag & 0x00000008) == 0x00000008) zem2Fired=kTRUE;
+ if((esdFlag & 0x00000010) == 0x00000010) zncFired=kTRUE;
+ if((esdFlag & 0x00000020) == 0x00000020) zpcFired=kTRUE;
+ zdcAccept = (znaFired | zncFired);
+ }
+ else {
+ const Float_t refSum = -568.5;
+ const Float_t refDelta = -2.1;
+ const Float_t sigmaSum = 3.25;
+ const Float_t sigmaDelta = 2.25;
+ for(Int_t i = 0; i < 4; ++i) {
+ if (esdZDC->GetZDCTDCData(10,i) != 0) {
+ Float_t tdcC = 0.025*(esdZDC->GetZDCTDCData(10,i)-esdZDC->GetZDCTDCData(14,i));
+ for(Int_t j = 0; j < 4; ++j) {
+ if (esdZDC->GetZDCTDCData(12,j) != 0) {
+ Float_t tdcA = 0.025*(esdZDC->GetZDCTDCData(12,j)-esdZDC->GetZDCTDCData(14,j));
+ if(fillHists) fHistTimeZDC->Fill(tdcC-tdcA,tdcC+tdcA);
+ if (((tdcC-tdcA-refDelta)*(tdcC-tdcA-refDelta)/(sigmaDelta*sigmaDelta) +
+ (tdcC+tdcA-refSum)*(tdcC+tdcA-refSum)/(sigmaSum*sigmaSum))< 1.0)
+ zdcAccept = kTRUE;
+ }
}
}
}
}
-
return zdcAccept;
}
TObjString* obj2 = 0;
while ((obj2 = dynamic_cast<TObjString*> (iter2->Next())))
{
- TParameter<Long64_t>* param2 = dynamic_cast<TParameter<Long64_t>*> (entry->fTriggerClasses->GetValue(obj2));
+ TParameter<Long64_t>* param2 = static_cast<TParameter<Long64_t>*> (entry->fTriggerClasses->GetValue(obj2));
TParameter<Long64_t>* param1 = dynamic_cast<TParameter<Long64_t>*> (fTriggerClasses->GetValue(obj2));
if (param1)
fHistV0C->Merge(&collections[n++]);
fHistZDC->Merge(&collections[n++]);
fHistTDCZDC->Merge(&collections[n++]);
- fHistTimeZDC->Merge(&collections[n++]);
+ if (fHistTimeZDC)
+ fHistTimeZDC->Merge(&collections[n++]);
+ else
+ n++;
fHistFMDA->Merge(&collections[n++]);
fHistFMDC->Merge(&collections[n++]);
fHistFMDSingle->Merge(&collections[n++]);
if (fHistFMDSum) fHistFMDSum->Write();
else Printf("Cannot save fHistFMDSum");
if (fSPDGFOEfficiency) fSPDGFOEfficiency->Write("fSPDGFOEfficiency");
- else Printf("Cannot save fSPDGFOEfficiency");
+ // else Printf("Cannot save fSPDGFOEfficiency");
fTriggerClasses->Write("fTriggerClasses", TObject::kSingleKey);
}