MStabDbWriter.hh

Go to the documentation of this file.
00001 
00060 #ifndef __MStabDbWriter_HH_
00061 #define __MStabDbWriter_HH_
00062 
00063 #include "QModule.hh"
00064 #include "QCuore.hh"
00065 
00066 #include <vector>
00067 #include <map>
00068 #include <string>
00069 
00070 using namespace Cuore;
00071 
00072 class MStabDbWriter: public QModule{
00073 
00074         public:
00079                 MStabDbWriter(QSequence*);
00080                 /*
00081                  *
00082                  *@ brief Destructor
00083                  *
00084                  */
00085                 virtual ~MStabDbWriter();
00090                 virtual void Init();
00095                 virtual QEvent* Do(QEvent*);
00096                 /* 
00097                  * brief Done method:  
00098                  * 
00099                  */
00100                 virtual void Done();
00101 
00102         private:
00103 
00104                 std::map< int,std::vector<int> > Sort(std::vector< std::map< int,std::vector<int> > >&);        
00105                 void Sort(std::map< int,std::vector<int> >&, 
00106                                 std::map< int,std::vector<int> >&, 
00107                                 std::map< int,std::vector<int> >& );    
00108                 int DetermineInterval(time_t, time_t,std::vector<int>&);
00109                 int fNumberOfIterations;
00110                 std::vector<std::string> fTimeBFiles;
00111                 std::vector<std::string> fTimeTFiles;
00112                 std::vector<std::string> fParametersBFiles;
00113                 std::vector<std::string> fParametersTFiles;
00114                 std::string fStabAlgo;
00115                 std::string fAmpAlgo;
00116                 int fStabVersion;
00117                 int fAmpVersion;
00118                 int fStartTime;
00119                 int fStopTime;
00120                 bool fFirstEvent;
00121                 int fParametersMax;
00122                 /*
00123                  * the index of the stl vector is the iteration number
00124                  * the columns of the matrix are the channels
00125                  * the raws are the times.
00126                  * the intervals here are those determined in the baseline stabilization sequence
00127                  */
00128                 std::vector< std::map< int,std::vector<int> > > fTimesIterationsB;
00129                 /*
00130                  * the index of the stl vector is the iteration number
00131                  * the columns of the matrix are the channels
00132                  * the raws are the times
00133                  * the intervals here are those determined in the time stabilization sequence
00134                  */
00135                 std::vector< std::map< int,std::vector<int> > > fTimesIterationsT;
00136 
00137                 /*
00138                  * the columns of the matrix are the channels
00139                  * the raws are the times
00140                  * this variable doesn't distinguish between iterations
00141                  */
00142                 std::map< int,std::vector<int> > fTimes;
00143 
00144                 int fRun;
00145 
00146 
00147 };
00148 #endif

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