source: trunk/Mars/mbase/MFilter.h@ 10107

Last change on this file since 10107 was 6892, checked in by tbretz, 20 years ago
*** empty log message ***
File size: 793 bytes
Line 
1#ifndef MARS_MFilter
2#define MARS_MFilter
3
4#ifndef MARS_MTask
5#include "MTask.h"
6#endif
7
8class MParList;
9
10class MFilter : public MTask
11{
12private:
13 Bool_t fInverted;
14
15 virtual Bool_t IsExpressionTrue() const = 0;
16
17public:
18 MFilter(const char *name=NULL, const char *title=NULL);
19
20 virtual TString GetRule() const;
21 virtual TString GetDataMember() const { return ""; }
22
23 Bool_t IsConditionTrue() const { return fInverted ? !IsExpressionTrue() : IsExpressionTrue(); }
24
25 void SetInverted(Bool_t i=kTRUE) { fInverted=i; }
26 Bool_t IsInverted() const { return fInverted; }
27
28 void PrintSkipped(UInt_t n, const char *str);
29
30 Int_t ReadEnv(const TEnv &env, TString prefix, Bool_t print=kFALSE);
31
32 ClassDef(MFilter, 1) // Abstract base class for the filters
33};
34
35#endif
Note: See TracBrowser for help on using the repository browser.