#include "AliTriggerCluster.h"
#include "AliEventplane.h"
-
ClassImp(AliESDEvent)
-
-
// here we define the names, some classes are no TNamed, therefore the classnames
// are the Names
const char* AliESDEvent::fgkESDListName[kESDListN] = {"AliESDRun",
fCosmicTracks(0),
fESDTOFClusters(0),
fESDTOFHits(0),
- fESDTOFMatchess(0),
+ fESDTOFMatches(0),
fErrorLogs(0),
fOldMuonStructure(kFALSE),
fESDOld(0),
fCosmicTracks(new TClonesArray(*esd.fCosmicTracks)),
fESDTOFClusters(esd.fESDTOFClusters ? new TClonesArray(*esd.fESDTOFClusters) : 0),
fESDTOFHits(esd.fESDTOFHits ? new TClonesArray(*esd.fESDTOFHits) : 0),
- fESDTOFMatchess(esd.fESDTOFMatchess ? new TClonesArray(*esd.fESDTOFMatchess) : 0),
+ fESDTOFMatches(esd.fESDTOFMatches ? new TClonesArray(*esd.fESDTOFMatches) : 0),
fErrorLogs(new TClonesArray(*esd.fErrorLogs)),
fOldMuonStructure(esd.fOldMuonStructure),
fESDOld(esd.fESDOld ? new AliESD(*esd.fESDOld) : 0),
AddObject(fCosmicTracks);
AddObject(fESDTOFClusters);
AddObject(fESDTOFHits);
- AddObject(fESDTOFMatchess);
+ AddObject(fESDTOFMatches);
AddObject(fErrorLogs);
AddObject(fESDACORDE);
AddObject(fESDAD);
AddObject(fMuonPads);
GetStdContent();
ConnectTracks();
+
}
//______________________________________________________________________________
if(fCosmicTracks)fCosmicTracks->Delete();
if(fESDTOFClusters)fESDTOFClusters->Clear();
if(fESDTOFHits)fESDTOFHits->Clear();
- if(fESDTOFMatchess)fESDTOFMatchess->Clear();
+ if(fESDTOFMatches)fESDTOFMatches->Clear();
if(fErrorLogs) fErrorLogs->Delete();
// don't reset fconnected fConnected and the list
// Check if a given detector was read-out in the analyzed event
const TObjArray& classesArray=trigConf->GetClasses();
ULong64_t trigMask=GetTriggerMask();
+ ULong64_t trigMaskNext50=GetTriggerMaskNext50();
Int_t nclasses = classesArray.GetEntriesFast();
for(Int_t iclass=0; iclass < nclasses; iclass++ ) {
AliTriggerClass* trclass = (AliTriggerClass*)classesArray.At(iclass);
- Int_t classMask=trclass->GetMask();
+ ULong64_t classMask=trclass->GetMask();
+ ULong64_t classMaskNext50=trclass->GetMaskNext50();
if(trigMask & classMask){
TString detList=trclass->GetCluster()->GetDetectorsInCluster();
if(detList.Contains(detector.Data())){
return kTRUE;
}
}
+ if(trigMaskNext50 & classMaskNext50){
+ TString detList=trclass->GetCluster()->GetDetectorsInCluster();
+ if(detList.Contains(detector.Data())){
+ return kTRUE;
+ }
+ }
}
return kFALSE;
}
// Print header information of the event
//
printf("ESD run information\n");
- printf("Event # in file %d Bunch crossing # %d Orbit # %d Period # %d Run # %d Trigger %lld Magnetic field %f \n",
+ printf("Event # in file %d Bunch crossing # %d Orbit # %d Period # %d Run # %d Trigger %lld %lld Magnetic field %f \n",
GetEventNumberInFile(),
GetBunchCrossNumber(),
GetOrbitNumber(),
GetPeriodNumber(),
GetRunNumber(),
GetTriggerMask(),
+ GetTriggerMaskNext50(),
GetMagneticField() );
if (fPrimaryVertex)
printf("Vertex: (%.4f +- %.4f, %.4f +- %.4f, %.4f +- %.4f) cm\n",
- fPrimaryVertex->GetXv(), fPrimaryVertex->GetXRes(),
- fPrimaryVertex->GetYv(), fPrimaryVertex->GetYRes(),
- fPrimaryVertex->GetZv(), fPrimaryVertex->GetZRes());
+ fPrimaryVertex->GetX(), fPrimaryVertex->GetXRes(),
+ fPrimaryVertex->GetY(), fPrimaryVertex->GetYRes(),
+ fPrimaryVertex->GetZ(), fPrimaryVertex->GetZRes());
printf("Mean vertex in RUN: X=%.4f Y=%.4f Z=%.4f cm\n",
GetDiamondX(),GetDiamondY(),GetDiamondZ());
if(fSPDMult)
}
- AliESDfriend *fr = (AliESDfriend*)(const_cast<AliESDEvent*>(this)->FindListObject("AliESDfriend"));
+ AliESDfriend *fr = (AliESDfriend*)(const_cast<AliESDEvent*>(this)->FindFriend());
if (fr) ev->SetVZEROfriend(fr->GetVZEROfriend());
}
fCosmicTracks = (TClonesArray*)fESDObjects->FindObject(fgkESDListName[kCosmicTracks]);
fESDTOFClusters = (TClonesArray*)fESDObjects->FindObject(fgkESDListName[kTOFclusters]);
fESDTOFHits = (TClonesArray*)fESDObjects->FindObject(fgkESDListName[kTOFhit]);
- fESDTOFMatchess = (TClonesArray*)fESDObjects->FindObject(fgkESDListName[kTOFmatch]);
+ fESDTOFMatches = (TClonesArray*)fESDObjects->FindObject(fgkESDListName[kTOFmatch]);
}
//______________________________________________________________________________
// trigExpr can be any logical expression
// of the trigger classes defined in AliESDRun
// In case of wrong syntax return kTRUE.
+ // Modified by rl for 100 classes - to be tested
TString expr(trigExpr);
if (expr.IsNull()) return kTRUE;
ULong64_t mask = GetTriggerMask();
- for(Int_t itrig = 0; itrig < AliESDRun::kNTriggerClasses; itrig++) {
+ for(Int_t itrig = 0; itrig < AliESDRun::kNTriggerClasses/2; itrig++) {
if (mask & (1ull << itrig)) {
expr.ReplaceAll(GetESDRun()->GetTriggerClass(itrig),"1");
}
expr.ReplaceAll(GetESDRun()->GetTriggerClass(itrig),"0");
}
}
+ ULong64_t maskNext50 = GetTriggerMaskNext50();
+ for(Int_t itrig = 0; itrig < AliESDRun::kNTriggerClasses/2; itrig++) {
+ if (maskNext50 & (1ull << itrig)) {
+ expr.ReplaceAll(GetESDRun()->GetTriggerClass(itrig+50),"1");
+ }
+ else {
+ expr.ReplaceAll(GetESDRun()->GetTriggerClass(itrig+50),"0");
+ }
+ }
Int_t error;
if ((gROOT->ProcessLineFast(expr.Data(),&error) == 0) &&
fTracksConnected = kTRUE;
//
}
+
+//______________________________________________________________________________
+AliESDfriend* AliESDEvent::FindFriend() const
+{
+ return static_cast<AliESDfriend*>(FindListObject("AliESDfriend"));
+}
+
+AliVEvent::EDataLayoutType AliESDEvent::GetDataLayoutType() const {return AliVEvent::kESD;}
+