1 #ifndef ALITRIGGERDETECTOR_H
2 #define ALITRIGGERDETECTOR_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
9 ///////////////////////////////////////////////////////////////////////////////
11 // Base Class for Detector specific Trigger // //
13 ///////////////////////////////////////////////////////////////////////////////
15 #include <TObjArray.h>
18 class AliTriggerInput;
21 class AliTriggerDetector : public TNamed {
25 virtual ~AliTriggerDetector() { fInputs.SetOwner(); fInputs.Delete(); }
27 virtual void CreateInputs();
28 virtual void Trigger();
30 void AddInput( TObject * input ) { fInputs.AddLast( input ); }
31 void SetInput( TString & name );
32 void SetInput( const char * name );
33 void SetInput( Int_t mask );
35 TObjArray* GetInputs() { return &fInputs; }
36 Long_t GetMask() const { return fMask; }
38 AliTriggerInput* GetInput( TString & name ) {
39 return ((AliTriggerInput*)fInputs.FindObject( name.Data() ));
41 AliTriggerInput* GetInput( const char * name ) {
42 return ((AliTriggerInput*)fInputs.FindObject( name ));
44 virtual void Print( const Option_t* opt ="" ) const;
47 Long_t fMask; // Trigger Mask ( bitwise OR of trigger inputs )
48 TObjArray fInputs; // Array of Triggers Inputs (AliTriggerInput class)
50 ClassDef( AliTriggerDetector, 1 ) // Base Class for Detector specific Trigger