]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ANALYSIS/AliAnalysisCuts.h
adding common functionality for the magnetic field to the component interface
[u/mrichter/AliRoot.git] / ANALYSIS / AliAnalysisCuts.h
1 #ifndef ALIANALYSISCUTS_H
2 #define ALIANALYSISCUTS_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 // Base class for analysis cuts
10 // Author Andreas Morsch
11 // andreas.morsch@cern.ch
12
13 #include <TNamed.h>
14 class TList;
15
16 class AliAnalysisCuts : public TNamed
17 {
18  public:
19     AliAnalysisCuts();
20     AliAnalysisCuts(const char* name, const char* title);
21     AliAnalysisCuts(const AliAnalysisCuts& obj);  
22     virtual ~AliAnalysisCuts() {;}
23     virtual Bool_t IsSelected(TObject* obj)  = 0;
24     virtual Bool_t IsSelected(TList*  list)  = 0;
25     virtual void   Init() {;}
26     virtual void   SetFilterMask(UInt_t mask) {fFilterMask = mask;}
27     virtual UInt_t GetFilterMask()   const    {return fFilterMask;}
28     virtual void   SetSelected(Bool_t dec)    {fSelected = dec;}
29     virtual UInt_t Selected()        const    {return fSelected;}           
30  private:
31     UInt_t fFilterMask; // Mask to use one of the previous decisions inside a filter
32     Bool_t fSelected;   // Final decision on selction
33     ClassDef(AliAnalysisCuts, 4); // Base class for filter decisions on ESD objects
34 };
35  
36 #endif