00001 00060 #ifndef __MFindCDiscontinuities_HH_ 00061 #define __MFindCDiscontinuities_HH_ 00062 00063 #include <vector> 00064 #include "QCuore.hh" 00065 #include "QStabChannel.hh" 00066 #include "QModule.hh" 00067 #include "QEvent.hh" 00068 00069 using namespace Cuore; 00070 class TChain; 00071 00072 class MFindCDiscontinuities : public QModule { 00073 public: 00074 00079 MFindCDiscontinuities(QSequence*); 00084 virtual ~MFindCDiscontinuities(); 00090 virtual void Init(); 00095 virtual QEvent* Do(QEvent*); 00103 virtual void Done(); 00104 00105 void Dump(); 00106 00107 private: 00113 void SetupChannels(); 00114 00115 void CleanOutputFile(); 00120 std::vector<QStabChannel*> fChannels; 00125 int fNSamples; 00131 int fDebounce; 00136 double fNSigma; 00141 unsigned int fDerivDistance; 00147 double fAmplitudeTolerance; 00154 double fSkewnessTolerance; 00155 00160 bool fGraphicsOn; 00165 bool fUseThermometer; 00170 std::string fOutFileName; 00175 int fMinPoints; 00176 /* 00177 * @brief if true the stabilized amplitudes are processed 00178 * 00179 */ 00180 bool fUseCorrectedAmplitude; 00181 00182 }; 00183 00184 #endif 00185 00186