00001
00005 #ifndef _QDBANALYSIS_HH
00006 #define _QDBANALYSIS_HH
00007
00008
00009 #include <vector>
00010 #include "QDbDetector.hh"
00011 #include "QVector.hh"
00012 #include "QTime.hh"
00013 #include "QCuore.hh"
00014
00015
00016 namespace QDbAnalysis{
00017
00025 void FillAveragePulse(const char* ap_algo,int channel,time_t time_start,
00026 time_t time_stop, const Cuore::QVector& AvgPulse, const std::string& filename=Q_STRING_DEFAULT);
00027 Cuore::QVector GetAveragePulse(const char* ap_algo,int channel,const Cuore::QTime& evt_time,const std::string& filename=Q_STRING_DEFAULT);
00028
00029 struct tm GetStartDateOfRun(int run);
00030 struct tm GetStopDateOfRun(int run);
00031 time_t GetTimeSec(struct tm& t);
00032 time_t GetDurationOfRunSec(int run);
00034 void InsertTimeInterval(const char* ap_algo, int ap_version,
00035 const char* stab_algo, int stab_version, int channel,time_t start,
00036 time_t stop, int nParameters, double* param_b, double* params_t);
00037
00043 int DataSet(int run, int which=0);
00044
00048 void FillCalibration(char* calib_algo, int calib_set, time_t time_ins, int bolo_id,const Cuore::QVector& constants,const Cuore::QVector& err_constants, float chi2_fit, char* status_fit);
00052 void FillUsedStabilizations(char* calib_algo, int calib_set, time_t calib_time_ins, char* stab_algo, int stab_version,time_t stab_time_start, time_t stab_time_stop, time_t stab_time_ins, int bolo_id);
00057 int DaysFromCalib(int run);
00058
00063 std::vector<int> GetRunsInDataset(const int dataset,
00064 const bool onlyGoodRuns = false);
00065
00071 std::vector<int> GetRunsInDataset(const int dataset,
00072 QDbDetector::RunType runType,
00073 const bool onlyGoodRuns = false);
00074
00075 };
00076
00077 #endif