]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/AliTriggerDetector.h
correct: no newline at end of file
[u/mrichter/AliRoot.git] / STEER / AliTriggerDetector.h
CommitLineData
a5a091ce 1#ifndef ALITRIGGERDETECTOR_H
2#define ALITRIGGERDETECTOR_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
6
7/* $Id$ */
8
9///////////////////////////////////////////////////////////////////////////////
10// //
11// Base Class for Detector specific Trigger // //
12// //
13///////////////////////////////////////////////////////////////////////////////
14
15#include <TObjArray.h>
bacbe0fd 16#include <TNamed.h>
a5a091ce 17class TString;
18class AliTriggerInput;
19
20
21class AliTriggerDetector : public TNamed {
22
23public:
24 AliTriggerDetector();
25 virtual ~AliTriggerDetector() { fInputs.SetOwner(); fInputs.Delete(); }
26
27 virtual void CreateInputs();
28 virtual void Trigger();
29 // Setters
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 );
34 // Getters
35 TObjArray* GetInputs() { return &fInputs; }
36 Long_t GetMask() const { return fMask; }
37
38 AliTriggerInput* GetInput( TString & name ) {
39 return ((AliTriggerInput*)fInputs.FindObject( name.Data() ));
40 }
41 AliTriggerInput* GetInput( const char * name ) {
42 return ((AliTriggerInput*)fInputs.FindObject( name ));
43 }
bacbe0fd 44 virtual void Print( const Option_t* opt ="" ) const;
45
a5a091ce 46protected:
47 Long_t fMask; // Trigger Mask ( bitwise OR of trigger inputs )
48 TObjArray fInputs; // Array of Triggers Inputs (AliTriggerInput class)
49
50 ClassDef( AliTriggerDetector, 1 ) // Base Class for Detector specific Trigger
51};
52
53#endif