ATTPCROOT  0.3.0-alpha
A ROOT-based framework for analyzing data from active target detectors
AtFilterZero.h
Go to the documentation of this file.
1 #ifndef ATFILTERZERO_H
2 #define ATFILTERZERO_H
3 
4 #include "AtFilter.h"
5 
6 #include <cstdlib> // IWYU pragma: keep
7 class AtRawEvent;
8 class AtPad;
9 struct AtPadReference;
10 
17 class AtFilterZero : public AtFilter {
18 
19 private:
20  double fThreshold{1000};
21 
22 public:
23  void SetThreshold(double val) { fThreshold = std::abs(val); }
24 
25  virtual void Init() override{};
26  virtual void InitEvent(AtRawEvent *) override{};
27  virtual void Filter(AtPad *pad, AtPadReference *padReference) override;
28  virtual bool IsGoodEvent() override { return true; }
29 
30 private:
31  void fillMissingData(AtPad *pad, int start, int stop);
32  void fillMissingDataLine(AtPad *pad, int start, int stop);
33 };
34 
35 #endif //#ifndef ATFILTERZERO_H
AtFilterZero::Init
virtual void Init() override
Called at the init stage of the AtFilterTask.
Definition: AtFilterZero.h:25
AtRawEvent
Definition: AtRawEvent.h:34
AtFilter
Definition: AtFilter.h:13
AtFilterZero::IsGoodEvent
virtual bool IsGoodEvent() override
Called at the end of an event. Returns if filtering was successful.
Definition: AtFilterZero.h:28
AtFilterZero::Filter
virtual void Filter(AtPad *pad, AtPadReference *padReference) override
Called to filter each pad.
Definition: AtFilterZero.cxx:7
AtFilter.h
AtFilterZero
Definition: AtFilterZero.h:17
AtPad
Container class for AtPadBase objects.
Definition: AtPad.h:38
AtPadReference
Definition: AtPadReference.h:20
AtFilterZero::InitEvent
virtual void InitEvent(AtRawEvent *) override
Called once for each event at the start of the Exec phase.
Definition: AtFilterZero.h:26
AtFilterZero::SetThreshold
void SetThreshold(double val)
Definition: AtFilterZero.h:23