MCheckTimeBehaviour.hh
Go to the documentation of this file.00001
00046 #ifndef __MCHECHTIMEBEHAVIOUR__
00047 #define __MCHECKTIMEBEHAVIOUR__
00048
00049 #include "QModule.hh"
00050 #include "QCuore.hh"
00051 #include <vector>
00052 #include <map>
00053 #include <ctime>
00054 #include "QOutputFileHandler.hh"
00055 #include "ChannelManager.hh"
00056 #include "QVector.hh"
00057
00058 class TH1F;
00059
00060 class MCheckTimeBehaviour: public QModule {
00061
00062 public:
00067 MCheckTimeBehaviour(QSequence*);
00068
00069
00070
00071
00072
00073 virtual ~MCheckTimeBehaviour();
00078 virtual void Init();
00083 virtual QEvent* Do(QEvent*);
00084
00085
00086
00087
00088 virtual void Done();
00089
00090 private:
00091
00092
00093
00094 int fMaxCoincidence;
00095 std::vector<time_t> fPreviousTimes;
00096 std::vector<time_t> fLastTimes;
00097 std::vector<time_t> fLastPartTimes;
00098 std::vector<int> fNumberOfPulses;
00099 std::vector<int> fGlobalTimeHole;
00100 std::vector<QVector> fTimes;
00101 std::map<int,double> fMaxDeltaTime;
00102 time_t fNominalDuration;
00103 time_t fMaxChTimeDifference;
00104 int fMaxTau;
00105 time_t fStartRunUnix;
00106 double fHoleWarningLevel;
00107 std::string fOutRootFileName;
00108 std::string fOutReferenceDir;
00109 QOutputFileHandler* fOutputHandler;
00110 void CreateReference();
00111 void SetReference(char * VariableName, const QVector & VariableValue);
00112 ChannelManager* fChannelManager;
00113 bool fFirstEvent;
00114 int fLastChannel;
00115 int fRun;
00116
00117
00118
00119
00120
00121 QVector fEvtRate;
00122
00123 };
00124 #endif
00125