Inheritance diagram for QFilter:
Filter modules are designed to flag or skip (dangerous practice!) events inside a QSequence. Inheriting modules have to implement only the two pure virtual methods GetCuts(), called inside the Init(), and Filter() called inside the Do(). On the other hand inheriting modules must not implement Init(), Do() and Done().
filter My0nuDBDKiller # mandatory parameters verbosity = info enable = true # QFilter parameters SkipEvents = false Logic = AND AuxDataName = MyGoodEvents # Specific filter module parameters NoiseMax = 0.2 AmpMin = 10 ... endmod
Public Member Functions | |
QFilter (const std::string &name, QSequence *s) | |
constructor | |
virtual | ~QFilter () |
destructor | |
Protected Member Functions | |
virtual void | GetCuts ()=0 |
Initialize all cuts, possibly from config file. | |
virtual bool | Filter (const QEvent *ev)=0 |
return true when ev passes the cuts, false otherwise | |
Private Types | |
enum | { AND, CASE, OR } |
Private Member Functions | |
void | Begin () |
QEvent * | Process (QEvent *ev) |
void | End () |
Private Attributes | |
bool | fSkipEvents |
if true subsequent modules in the sequence will be skipped | |
enum QFilter:: { ... } | fLogicFlag |
unsigned long long | fTotEvents |
unsigned long long | fSelEvents |
std::string | fAuxDataName |