MOBComputeWeights.hh

00001 
00047 #ifndef _M_OB_COMPUTE_WEIGHTS_HH_
00048 #define _M_OB_COMPUTE_WEIGHTS_HH_
00049 
00050 #include "QModule.hh"
00051 #include "QMatrix.hh"
00052 #include "QOffset.hh"
00053 #include "QVector.hh"
00054 #include <map>
00055 #include <set>
00056 #include <string>
00057 
00058 namespace Cuore {class QTime;}
00059 
00060 class MOBComputeWeights : public QModule {
00061 
00062     public:
00063         MOBComputeWeights(QSequence* s);
00064 
00065         virtual ~MOBComputeWeights();
00066 
00067         // Init method is called before event loop
00068         void Init();
00069 
00070         // Do method is called for each event, getting the event as argument
00071         QEvent* Do( QEvent* ev);
00072 
00073         // Done method is called after event loop
00074         void Done();
00075 
00076     private:
00078         void SetUpIdealPulse(const int channel, const QTime& evTime);
00079         
00082         std::map<int, QMatrix> fAvgProduct;
00083         
00086         std::set<int> fBadChannels;
00087         
00089         std::map<int, int> fCount;
00090         
00092         std::map<int, QVector> fIdealPulse;
00093         
00095         std::string fIdealPulseFilename;
00096         
00098         std::map<int, double> fIdealPulseMaxMinusBaseline;
00099         
00101         unsigned int fNumFreq;
00102         
00104         std::map<int, QOffset> fOffsetAnalyzer;
00105         
00107         std::map<int, QVector> fResampledIdealPulse;
00108 
00109 };
00110 
00111 #endif

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