8 #include "dbclient/KM3NeTDBClient.h"
12 #include "JDB/JDBincludes.hh"
33 int main(
int argc,
char **argv)
50 JParser<> zap(
"Program to create input data for HV-tuning.");
55 zap[
'f'] =
make_field(inputFiles,
"map of run numbers to file names (i.e. to the output of JFitToT)");
56 zap[
'a'] =
make_field(detectorFile,
"detector file");
62 catch(
const exception &error) {
63 FATAL(error.what() << endl);
81 const int runNr = fileIt->first;
83 NOTICE(
"Extracting Gain-/HV-data for run " << runNr << endl);
86 TFile fitData(fileIt->second.c_str(),
"READ");
89 ResultSet& rs =
getResultSet(getTable<JPMTHVRunSettings>(), selector);
93 const int domID =
detector.getModule(
JLocation(table.DUID, table.FLOORID)).getID();
94 const string pmtID =
MAKE_STRING(right << domID <<
'.' <<
FILL(2,
'0') << table.PMTINTID);
97 const TF1* f1 = (h1 != NULL ? h1->GetFunction(
FITTOT_FNAME.c_str()) : NULL);
105 const double gain = f1->GetParameter(Ngain);
106 const double gainError = f1->GetParError (Ngain);
108 interpolator.
AddPoint(table.HV_VALUE, gain, gainError);
116 }
catch (
const exception& error) {
118 FATAL(error.what() << endl);
Utility class to parse command line options.
int main(int argc, char *argv[])
#define MAKE_CSTRING(A)
Make C-string.
then for HISTOGRAM in h0 h1
Dynamic ROOT object management.
Auxiliary class for specifying selection of database data.
Data structure for detector geometry and calibration.
#define MAKE_STRING(A)
Make string.
static const std::string FITTOT_SUFFIX
JDetectorsHelper getDetector
Function object for mapping serial number to object identifier of detector and vice versa...
static const char * FITTOT_GAIN_PARNAME
Auxiliary class to manage set of compatible ROOT objects (e.g. histograms) using unique keys...
I/O formatting auxiliaries.
Logical location of module.
Auxiliary data structure to store high-voltage versus gain data and interpolate the nominal high-volt...
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
General purpose messaging.
Auxiliary data structure for sequence of same character.
then $JPP_DIR examples JDetector JToT o $OUTPUT_FILE n N $NPE P gain
void load(const std::string &file_name, JDetector &detector)
Load detector from input file.
Utility class to parse command line options.
ResultSet & getResultSet(const std::string &query)
Get result set.
do set_variable DETECTOR_TXT $WORKDIR detector
Template definition for getting table specific selector.
static const std::string FITTOT_FNAME
void AddPoint(Double_t HV, Double_t gain, Double_t gainError)
Add point to diagram.
bool putObject(TDirectory *dir, const T &object)
Write object to ROOT directory.