including the CTPData to the input objects of the HLTGlobalTriggerDecision
authorrichterm <richterm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 20 Aug 2009 14:19:16 +0000 (14:19 +0000)
committerrichterm <richterm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 20 Aug 2009 14:19:16 +0000 (14:19 +0000)
can be switched off by component argument '-skipctp'

HLT/trigger/AliHLTGlobalTriggerComponent.cxx

index 82d11f8c2497f93c51b6178f4117ef2b7847e4fa..733ddba9db5e63cea2478f8673ecdb895b3953e1 100644 (file)
@@ -28,6 +28,7 @@
 #include "AliHLTGlobalTrigger.h"
 #include "AliHLTGlobalTriggerConfig.h"
 #include "AliHLTTriggerMenu.h"
+#include "AliHLTCTPData.h"
 #include "AliCDBManager.h"
 #include "AliCDBStorage.h"
 #include "AliCDBEntry.h"
@@ -82,6 +83,7 @@ Int_t AliHLTGlobalTriggerComponent::DoInit(int argc, const char** argv)
   // Initialises the global trigger component.
   
   fDebugMode = false;
+  bool bSkipCTPCounters=false;
   const char* configFileName = NULL;
   const char* codeFileName = NULL;
   TString classname;
@@ -166,7 +168,14 @@ Int_t AliHLTGlobalTriggerComponent::DoInit(int argc, const char** argv)
       i += 2;
       continue;
     }
-    
+
+    if (strcmp(argv[i], "-skipctp") == 0)
+    {
+      HLTInfo("Skipping CTP counters in trigger decision");
+      bSkipCTPCounters=true;
+      continue;
+    }
+        
     HLTError("Unknown option '%s'.", argv[i]);
     return -EINVAL;
   } // for loop
@@ -242,7 +251,10 @@ Int_t AliHLTGlobalTriggerComponent::DoInit(int argc, const char** argv)
   
   fTrigger->FillFromMenu(*menu);
   fTrigger->ResetCounters(menu->NumberOfItems());
-  
+
+  // setup the CTP accounting in AliHLTComponent
+  if (!bSkipCTPCounters) SetupCTPData();
+
   // Set the default values from the trigger menu.
   SetDescription(menu->DefaultDescription());
   SetTriggerDomain(menu->DefaultTriggerDomain());
@@ -342,6 +354,8 @@ int AliHLTGlobalTriggerComponent::DoTrigger()
     obj = GetNextInputObject();
   }
 
+  if (CTPData()) decision.AddInputObject(CTPData());
+
   CreateEventDoneReadoutFilter(decision.TriggerDomain(), 3);
   CreateEventDoneReadoutFilter(decision.TriggerDomain(), 4);
   TriggerEvent(&decision);