]> git.uio.no Git - u/mrichter/AliRoot.git/commitdiff
Add the incomplete events identification, but not enable it for now (C.Cheskov)
authorzconesa <zconesa@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 16 May 2013 10:00:38 +0000 (10:00 +0000)
committerzconesa <zconesa@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 16 May 2013 10:00:38 +0000 (10:00 +0000)
ANALYSIS/AliTriggerAnalysis.cxx
ANALYSIS/AliTriggerAnalysis.h

index 580098ad10d925c9156c01ddf9cbe7d351062bb1..4ae640f1cd4c70c9f42fed7ff0cbc11d343f6779 100644 (file)
@@ -580,6 +580,12 @@ Int_t AliTriggerAnalysis::EvaluateTrigger(const AliESDEvent* aEsd, Trigger trigg
         AliFatal(Form("Online trigger not available for trigger %d", triggerNoFlags));
       return IsHVdipTPCEvent(aEsd);
     }
         AliFatal(Form("Online trigger not available for trigger %d", triggerNoFlags));
       return IsHVdipTPCEvent(aEsd);
     }
+    case kIncompleteEvent:
+    {
+      if (!offline)
+        AliFatal(Form("Online trigger not available for trigger %d", triggerNoFlags));
+      return IsIncompleteEvent(aEsd);
+    }
     case kCentral:
     {
       if (offline)
     case kCentral:
     {
       if (offline)
@@ -705,6 +711,19 @@ Bool_t AliTriggerAnalysis::IsHVdipTPCEvent(const AliESDEvent* esd) {
 
 }
 
 
 }
 
+Bool_t AliTriggerAnalysis::IsIncompleteEvent(const AliESDEvent* esd) 
+{
+  //
+  // Check whether the event is incomplete 
+  // (due to DAQ-HLT issues, it could be only part of the event was saved)
+  //
+  if ((esd->GetEventType() == 7) &&
+      (esd->GetDAQDetectorPattern() & (1<<4)) &&
+     !(esd->GetDAQAttributes() & (1<<7))) return kTRUE;
+
+  return kFALSE;
+}
+
 
 Bool_t AliTriggerAnalysis::IsOfflineTriggerFired(const AliESDEvent* aEsd, Trigger trigger)
 {
 
 Bool_t AliTriggerAnalysis::IsOfflineTriggerFired(const AliESDEvent* aEsd, Trigger trigger)
 {
index 4b8a4c795f2cbbdeb5522374165413fa13685574..85dc2d2534497e15269bc97e6a6dcab763e1529e 100644 (file)
@@ -30,6 +30,7 @@ class AliTriggerAnalysis : public TObject
                   kSPDGFOL0, kSPDGFOL1, kZDCTDCA, kZDCTDCC, kZDCTime, kCTPV0A, kCTPV0C, kTPCLaserWarmUp, kSPDClsVsTrkBG,
                   kCentral,kSemiCentral, kT0, kT0BG, kT0Pileup, kEMCAL,kTPCHVdip,
                   kTRDHCO, kTRDHJT, kTRDHSE, kTRDHQU, kTRDHEE,
                   kSPDGFOL0, kSPDGFOL1, kZDCTDCA, kZDCTDCC, kZDCTime, kCTPV0A, kCTPV0C, kTPCLaserWarmUp, kSPDClsVsTrkBG,
                   kCentral,kSemiCentral, kT0, kT0BG, kT0Pileup, kEMCAL,kTPCHVdip,
                   kTRDHCO, kTRDHJT, kTRDHSE, kTRDHQU, kTRDHEE,
+                  kIncompleteEvent,
                   kStartOfFlags = 0x0100, kOfflineFlag = 0x8000, kOneParticle = 0x10000, kOneTrack = 0x20000}; // MB1, MB2, MB3 definition from ALICE-INT-2005-025
     enum AliceSide { kASide = 1, kCSide, kCentralBarrel };
     enum V0Decision { kV0Invalid = -1, kV0Empty = 0, kV0BB, kV0BG, kV0Fake };
                   kStartOfFlags = 0x0100, kOfflineFlag = 0x8000, kOneParticle = 0x10000, kOneTrack = 0x20000}; // MB1, MB2, MB3 definition from ALICE-INT-2005-025
     enum AliceSide { kASide = 1, kCSide, kCentralBarrel };
     enum V0Decision { kV0Invalid = -1, kV0Empty = 0, kV0BB, kV0BG, kV0Fake };
@@ -71,8 +72,10 @@ class AliTriggerAnalysis : public TObject
     static const char* GetTriggerName(Trigger trigger);
     
     Bool_t IsLaserWarmUpTPCEvent(const AliESDEvent* esd);
     static const char* GetTriggerName(Trigger trigger);
     
     Bool_t IsLaserWarmUpTPCEvent(const AliESDEvent* esd);
-       Bool_t IsHVdipTPCEvent(const AliESDEvent* esd);
+    Bool_t IsHVdipTPCEvent(const AliESDEvent* esd);
     Bool_t TRDTrigger(const AliESDEvent* esd, Trigger trigger);
     Bool_t TRDTrigger(const AliESDEvent* esd, Trigger trigger);
+
+    Bool_t IsIncompleteEvent(const AliESDEvent* esd);
     
     void FillHistograms(const AliESDEvent* aEsd);
     void FillTriggerClasses(const AliESDEvent* aEsd);
     
     void FillHistograms(const AliESDEvent* aEsd);
     void FillTriggerClasses(const AliESDEvent* aEsd);
@@ -192,7 +195,7 @@ class AliTriggerAnalysis : public TObject
 
     Bool_t fTPCOnly;         // flag to set whether TPC only tracks have to be used for the offline trigger 
 
 
     Bool_t fTPCOnly;         // flag to set whether TPC only tracks have to be used for the offline trigger 
 
-    ClassDef(AliTriggerAnalysis, 21)
+    ClassDef(AliTriggerAnalysis, 22)
     
   private:
     AliTriggerAnalysis(const AliTriggerAnalysis&);
     
   private:
     AliTriggerAnalysis(const AliTriggerAnalysis&);