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();
26 AliTriggerDetector(const AliTriggerDetector & de );
28 virtual void AssignInputs(const TObjArray& inputs);
29 virtual void CreateInputs();
30 virtual void Trigger();
32 void AddInput( TObject * input ) { fInputs.AddLast( input ); }
33 void SetInput( TString & name );
34 void SetInput( const char * name );
36 TObjArray* GetInputs() { return &fInputs; }
37 Long_t GetMask() const { return fMask; }
39 AliTriggerInput* GetInput( TString & name ) {
40 return ((AliTriggerInput*)fInputs.FindObject( name.Data() ));
42 AliTriggerInput* GetInput( const char * name ) {
43 return ((AliTriggerInput*)fInputs.FindObject( name ));
45 virtual void Print( const Option_t* opt ="" ) const;
48 Long_t fMask; // Trigger Mask ( bitwise OR of trigger inputs )
49 TObjArray fInputs; // Array of Triggers Inputs (AliTriggerInput class)
52 AliTriggerDetector& operator=(const AliTriggerDetector& de);
54 ClassDef( AliTriggerDetector, 1 ) // Base Class for Detector specific Trigger