1 #ifndef ALIANALYSISCUTS_H
2 #define ALIANALYSISCUTS_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
9 // Base class for analysis cuts
10 // Author Andreas Morsch
11 // andreas.morsch@cern.ch
17 class AliAnalysisCuts : public TNamed
21 AliAnalysisCuts(const char* name, const char* title);
22 AliAnalysisCuts(const AliAnalysisCuts& obj);
23 virtual ~AliAnalysisCuts() {;}
24 virtual Bool_t IsSelected(TObject* /* obj */) = 0;
25 virtual Bool_t IsSelected(TList* /* list */) = 0;
26 virtual void Init() {;}
27 virtual void SetFilterMask(UInt_t mask) {fFilterMask = mask;}
28 virtual UInt_t GetFilterMask() const {return fFilterMask;}
29 virtual void SetSelected(Bool_t dec) {fSelected = dec;}
30 virtual UInt_t Selected() const {return fSelected;}
31 virtual Long64_t Merge(TCollection* /* list */) { return 0; }
32 virtual TList* GetOutput() { return 0; }
34 UInt_t fFilterMask; // Mask to use one of the previous decisions inside a filter
35 Bool_t fSelected; // Final decision on selction
36 ClassDef(AliAnalysisCuts, 4); // Base class for filter decisions on ESD objects