1 #ifndef ALICENTRALTRIGGER_H
2 #define ALICENTRALTRIGGER_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
9 ///////////////////////////////////////////////////////////////////////////////
11 // This class for running the Central Trigger Processor //
14 // Load Descriptors //
15 // Make a list the trigger detectors involve from the descriptors //
16 // For the each event //
17 // Run the Trigger for the each detector //
19 // Check the condition classes //
20 // Create the class mask //
23 ///////////////////////////////////////////////////////////////////////////////
26 #include <TObjArray.h>
31 class AliCentralTrigger : public TObject {
35 AliCentralTrigger( TString & descriptor );
36 AliCentralTrigger( const AliCentralTrigger& ctp );
37 virtual ~AliCentralTrigger();
39 Bool_t LoadDescriptor( TString & descriptor );
40 Bool_t RunTrigger( AliRunLoader * runloader );
41 ULong64_t CheckConditions();
43 void DeleteDescriptors();
44 void MakeBranch( TString name, TTree * tree );
46 TString GetDetectors();
47 ULong64_t GetClassMask() const { return fClassMask; }
48 UChar_t GetClusterMask();
49 TObjArray* GetLoadedDescriptors() { return &fDescriptors; }
50 TObjArray* GetResultConditions();
51 void Print( const Option_t* opt ="" ) const;
53 // TString fRunCondition; // Running modes Ej. Pb-Pb, p-p, p-A
54 ULong64_t fClassMask; // UID ( bitwise OR of conditions mask )
55 TObjArray fDescriptors; // Array of Trigger Descriptors (AliTriggerDescriptor)
56 TObjArray fInputs; //! Array of Trigger Inputs
59 Bool_t IsSelected( TString detName, TString& detectors ) const;
61 ClassDef( AliCentralTrigger, 1 ) // class for running the Central Trigger Processor