Diana Software
MDecorrelator.hh
Go to the documentation of this file.
1 #ifndef _M_DECORRELATOR_HH_
2 #define _M_DECORRELATOR_HH_
3 
62 #include "QModule.hh"
63 #include "QChannelCovariance.hh"
65 
66 class MDecorrelator : public Diana::QModule {
67 
68  public:
69 
71  void Init(Diana::QEvent& ev);
72 
74  void Do(Diana::QEvent& ev, const Diana::QEventList& neighbours);
75 
77  void Done();
78 
79  struct ChannelInfo {
81  bool fUsed;
82  };
83 private:
84 
85  const Diana::QVector& GetNeighbourSamples(const int channel, const Diana::QEventList& neighbours);
87  std::map<int,ChannelInfo> fDecorrelators;
88  Diana::QVector fEmpty;
89  bool fFirstCall;
90  bool fUseOF;
91 
92 };
93 
94 
95 #endif
96 
const int channel
class to perform multichannel complex decorrelation of single channel waveforms
noise decorrelation using side pulses
const Diana::QVector & GetNeighbourSamples(const int channel, const Diana::QEventList &neighbours)
void Done()
Done method.
QChannelCovariance fCovariance
std::map< int, ChannelInfo > fDecorrelators
Diana::QVector fEmpty
void Init(Diana::QEvent &ev)
Init method.
void Do(Diana::QEvent &ev, const Diana::QEventList &neighbours)
Do method.
Complex covariance matrix of an array of bolometers.
QMultiChannelDecorrelator * fDecorrelator