1 #ifndef ALITRIGGERCONDITION_H
2 #define ALITRIGGERCONDITION_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
9 ///////////////////////////////////////////////////////////////////////////////
11 // Class to define a Trigger Condition
13 // A Trigger condition is defined from logical combination of trigger
14 // inputs names (boolean expression)
16 ///////////////////////////////////////////////////////////////////////////////
22 class AliTriggerCondition : public TNamed {
25 AliTriggerCondition();
26 AliTriggerCondition( const AliTriggerCondition &cond );
27 AliTriggerCondition( TString & condition, TString & name,
28 TString & description, Long_t mask );
29 virtual ~AliTriggerCondition() {}
30 AliTriggerCondition& operator=(const AliTriggerCondition& rhs);
32 void Trigger( TObjArray & inputs );
33 Bool_t CheckInputs( TObjArray & inputs );
35 void Reset() { fStatus = kFALSE; }
37 Long_t GetValue() const { return (fStatus) ? fClassMask : 0; }
38 Bool_t GetStatus() const { return fStatus; }
39 virtual void Print( const Option_t* opt ="" ) const;
41 Long_t fClassMask; // UID "class mask" should set only 1 bit from the position 0 to 50
42 TString fCondition; // Definition of the condition
43 Bool_t fStatus; // true = Condition has been satisfied after Trigger
45 ClassDef( AliTriggerCondition, 1 ) // Define a Trigger Condition