adding new functionality to component base class
authorrichterm <richterm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 8 Apr 2010 22:06:08 +0000 (22:06 +0000)
committerrichterm <richterm@f7af4fe6-9843-0410-8265-dc069ae4e863>
Thu, 8 Apr 2010 22:06:08 +0000 (22:06 +0000)
  /**
   * Check state of a trigger class.
   * If the class name is not part of the current trigger setup (i.e. ECS parameter
   * does not contain a trigger definition for this class name) the function
   * returns -1
   * @note the function requires the setup of the CTP handling for the component by
   * invoking SetupCTPData() from DoInit()
   * @return -1 class name not initialized,
   *          0 trigger not active
   *          1 trigger active
   */
  int CheckCTPTrigger(const char* name) const;

HLT/BASE/AliHLTComponent.cxx
HLT/BASE/AliHLTComponent.h

index dbcb9b3..ed5898e 100644 (file)
@@ -2518,6 +2518,19 @@ bool AliHLTComponent::EvaluateCTPTriggerClass(const char* expression, AliHLTComp
   return fpCTPData->EvaluateCTPTriggerClass(expression, trigData);
 }
 
+int AliHLTComponent::CheckCTPTrigger(const char* name) const
+{
+  // see header file for function documentation
+  if (!fpCTPData) {
+    static bool bWarningThrown=false;
+    if (!bWarningThrown) HLTError("Trigger classes not initialized, use SetupCTPData from DoInit()");
+    bWarningThrown=true;
+    return false;
+  }
+
+  return fpCTPData->CheckTrigger(name);
+}
+
 Double_t AliHLTComponent::GetBz()
 {
   // Returns Bz.
index adf1a2c..6d8dc18 100644 (file)
@@ -1409,12 +1409,27 @@ class AliHLTComponent : public AliHLTLogging {
    * Check whether a combination of trigger classes is fired.
    * The expression can contain trigger class ids and logic operators
    * like &&, ||, !, and ^, and may be grouped by parentheses.
+   * @note the function requires the setup of the CTP handling for the component by
+   * invoking SetupCTPData() from DoInit()
    * @param expression     a logic expression of trigger class ids
    * @param trigData       the trigger data data
    */
   bool EvaluateCTPTriggerClass(const char* expression, AliHLTComponentTriggerData& trigData) const;
 
   /**
+   * Check state of a trigger class.
+   * If the class name is not part of the current trigger setup (i.e. ECS parameter
+   * does not contain a trigger definition for this class name) the function
+   * returns -1
+   * @note the function requires the setup of the CTP handling for the component by
+   * invoking SetupCTPData() from DoInit()
+   * @return -1 class name not initialized, 
+   *          0 trigger not active
+   *          1 trigger active
+   */
+  int CheckCTPTrigger(const char* name) const;
+
+  /**
    * Get the overall solenoid field.
    */
   Double_t GetBz();