MLCCurveAnalyzer.hh

00001 
00069 #ifndef _M_LC_CURVE_ANALYZER_HH_
00070 #define _M_LC_CURVE_ANALYZER_HH_
00071 
00072 #include "QModule.hh"
00073 #include "QLoadCurve.hh"
00074 
00075 #include <string>
00076 
00077 class MLCCurveAnalyzer : public QModule {
00078 
00079     public:
00081    MLCCurveAnalyzer(QSequence* s);
00082    
00084    virtual ~MLCCurveAnalyzer();
00085    
00087    void Init();
00088    
00090    QEvent* Do(QEvent* ev);
00091    
00093    void Done();
00094 private:
00095    
00100    enum QLCCurveType_t {
00101       QLC_InitCurve_c,                     
00103       QLC_LoadCurve_c,                     
00104       QLC_HPCurve_c,                       
00105       QLC_DefaultCurve_c = QLC_InitCurve_c 
00106    };
00107    
00109    QLCCurveType_t fCurveType;
00110 
00112    std::string fDumpPath;
00113 
00115    std::map<unsigned int, QBaseLoadCurve*> fCurves;
00116 
00118    std::list<unsigned int> fChannelsWithHeater;
00119 
00124    unsigned int fNumNoisePerConfig;
00125 
00130    unsigned int fNumHPPerConfig;
00131    
00132    
00134    void GetChannelsWithHeater();
00135 
00144    void SetCurveType(const std::string& curveType);
00145    
00147    void AddNewCurve(unsigned int lg);
00148 
00150    void Dump();
00151 
00152 };
00153 #endif // _M_LC_CURVE_ANALYZER_HH_

Generated on Tue Nov 16 10:49:57 2010 for CUORE Software by  doxygen 1.5.6