#include "AliLog.h"
#include "AliESDEvent.h"
#include "AliAODJet.h"
+#include "AliAODEvent.h"
#include "AliStack.h"
#include "AliGenEventHeader.h"
#include "AliGenCocktailEventHeader.h"
Bool_t AliAnalysisHelperJetTasks::IsTriggerBitFired(const AliVEvent* aEv, Trigger trigger)
{
// checks if an event is fired using the trigger bits
-
- return IsTriggerBitFired(aEv->GetTriggerMask(), trigger);
+ // here we do a dirty hack to take also into account the
+ // missing trigger bits and Bunch crossing paatern for real data
+
+ if(aEv->InheritsFrom("AliESDEvent")){
+ const AliESDEvent *esd = (AliESDEvent*)aEv;
+ switch (trigger)
+ {
+ case kAcceptAll:
+ {
+ return kTRUE;
+ break;
+ }
+ case kMB1:
+ {
+ if(esd->GetFiredTriggerClasses().Contains("CINT1B-"))return kTRUE;
+ // does the same but without or'ed V0s
+ if(esd->GetFiredTriggerClasses().Contains("CSMBB"))return kTRUE;
+ // this is for simulated data
+ if(esd->GetFiredTriggerClasses().Contains("MB1"))return kTRUE;
+ break;
+ }
+ case kMB2:
+ {
+ if(esd->GetFiredTriggerClasses().Contains("MB2"))return kTRUE;
+ break;
+ }
+ case kMB3:
+ {
+ if(esd->GetFiredTriggerClasses().Contains("MB3"))return kTRUE;
+ break;
+ }
+ case kSPDGFO:
+ {
+ if(esd->GetFiredTriggerClasses().Contains("CSMBB"))return kTRUE;
+ if(esd->GetFiredTriggerClasses().Contains("GFO"))return kTRUE;
+ break;
+ }
+ default:
+ {
+ Printf("IsEventTriggered: ERROR: Trigger type %d not implemented in this method", (Int_t) trigger);
+ break;
+ }
+ }
+ }
+ else if(aEv->InheritsFrom("AliAODEvent")){
+ const AliAODEvent *aod = (AliAODEvent*)aEv;
+ switch (trigger)
+ {
+ case kAcceptAll:
+ {
+ return kTRUE;
+ break;
+ }
+ case kMB1:
+ {
+ if(aod->GetFiredTriggerClasses().Contains("CINT1B"))return kTRUE;
+ // does the same but without or'ed V0s
+ if(aod->GetFiredTriggerClasses().Contains("CSMBB"))return kTRUE;
+ // for sim data
+ if(aod->GetFiredTriggerClasses().Contains("MB1"))return kTRUE;
+ break;
+ }
+ case kMB2:
+ {
+ if(aod->GetFiredTriggerClasses().Contains("MB2"))return kTRUE;
+ break;
+ }
+ case kMB3:
+ {
+ if(aod->GetFiredTriggerClasses().Contains("MB3"))return kTRUE;
+ break;
+ }
+ case kSPDGFO:
+ {
+ if(aod->GetFiredTriggerClasses().Contains("CSMBB"))return kTRUE;
+ if(aod->GetFiredTriggerClasses().Contains("GFO"))return kTRUE;
+ break;
+ }
+ default:
+ {
+ Printf("IsEventTriggered: ERROR: Trigger type %d not implemented in this method", (Int_t) trigger);
+ break;
+ }
+ }
+ }
+ return kFALSE;
}
Bool_t AliAnalysisHelperJetTasks::IsTriggerBitFired(ULong64_t triggerMask, Trigger trigger)
// checks if an event is fired using the trigger bits
//
// this function needs the branch TriggerMask in the ESD
- Printf("Triggermask %d",triggerMask);
-
// definitions from p-p.cfg
ULong64_t spdFO = (1 << 14);