MDetermineHeaterProperties.hh
Go to the documentation of this file.00001
00052 #ifndef __MDETHEATERPROP__
00053 #define __MDETHEATERPROP__
00054
00055 #include "QModule.hh"
00056 #include "QCuore.hh"
00057 #include <vector>
00058 #include "QVector.hh"
00059 #include "QOutputFileHandler.hh"
00060 #include "ChannelManager.hh"
00061 class TH1F;
00062
00063 class MDetermineHeaterProperties: public QModule {
00064
00065 public:
00070 MDetermineHeaterProperties(QSequence*);
00071
00072
00073
00074
00075
00076 virtual ~MDetermineHeaterProperties();
00081 virtual void Init();
00086 virtual QEvent* Do(QEvent*);
00087
00088
00089
00090
00091 virtual void Done();
00092
00093 private:
00094
00095
00096 TH1F* Get1DHistoFromVector(QVector&v, double mean, double rms);
00097
00105 std::string fHeaterType;
00106
00107
00108
00109
00110
00111 std::vector<QVector> fNonStabAmplitudes;
00112
00113
00114
00115
00116
00117 std::vector<QVector> fStabAmplitudes;
00118
00119
00120 void CreateHistograms();
00121
00122 void SaveHistograms();
00123
00124 void DeleteHistograms();
00125
00126 void CreateReference();
00127 void SetReference(char * VariableName, const QVector & VariableValue);
00128 double TruncatedRMS(const QVector & vector, double KeepRMS);
00129 QOutputFileHandler* fOutputHandler;
00130
00131 bool fFirstEvent;
00132
00133 std::string fOutRootFileName;
00134 std::string fOutReferenceDir;
00135 double fChiNDFMax;
00136 double fRisWarning;
00137 double fMinLHAmplitude;
00138 double fWarningLevel;
00139 int fExpectedNbHighHeaters;
00140 int fExpectedNbStabHeaters;
00141 ChannelManager* fChannelManager;
00142 TH1F* fAverageHighHeater;
00143 TH1F* fAverageLowHeater;
00144 TH1F* fAverageStabHeater;
00145 TH1F* fRMSHighHeater;
00146 TH1F* fRMSLowHeater;
00147 TH1F* fRMSStabHeater;
00148 TH1F* fAverageHighHeaterStabilized;
00149 TH1F* fAverageLowHeaterStabilized;
00150 TH1F* fAverageStabHeaterStabilized;
00151 TH1F* fRMSHighHeaterStabilized;
00152 TH1F* fRMSLowHeaterStabilized;
00153 TH1F* fRMSStabHeaterStabilized;
00154 int fLastChannel;
00155 QVector fStabRMSHeater;
00156 QVector fStabAverageHeater;
00157 QVector fNonStabAverageHeater;
00158 int fRun;
00159
00160 };
00161
00162 #endif
00163