38 using namespace KM3NETDB;
39 using namespace JDBTRIGGERPARAMETERS;
41 JMultipleFileScanner<JDAQTimeslice> inputFile;
49 JParser<> zap(
"Auxiliary program to check trigger parameters in ROOT files against the DB value.");
52 zap[
'D'] =
make_field(detid) =
"D_ORCA002",
"D_ARCA001";
59 catch(
const exception& error) {
60 FATAL(error.what() << endl);
67 NOTICE(
"Get trigger parameters from input." << endl);
69 catch(
const JException& error) {
70 FATAL(
"No trigger parameters from input." << endl);
74 while (inputFile.hasNext()) {
80 FATAL(
"File does not contain a valid run number. Aborting" << endl);
87 detector_selector_stream >> detector_selector;
98 for (
unsigned int i = 0; i != rs.FieldCount(); ++i) {
99 run_column_map[rs.FieldName(i)] = i;
108 catch(
const exception& error) {
109 FATAL(error.what() << endl);
119 param_selector_stream >> param_selector;
125 for (
unsigned int i = 0; i != rs_allparams.FieldCount(); ++i) {
126 parameter_column_map[rs_allparams.FieldName(i)] = i;
128 while (rs_allparams.Next()) {
131 rs_allparams.GetString(parameter_column_map[ALL_PARAMETERS_TABLE_NAME_COLUMN]).erase(0, std::strlen(
DAQ_FILTER_STRING));
134 rs_allparams.Close();
136 catch(
const exception& error) {
137 FATAL(error.what() << endl);
145 run_setup_selector_stream >> run_setup_selector;
151 for (
unsigned int i = 0; i != rs_params.FieldCount(); ++i) {
152 rs_params_column_map[rs_params.FieldName(i)] = i;
154 while (rs_params.Next()) {
162 catch(
const exception& error) {
163 FATAL(error.what() << endl);
166 cout << buffer.str() << endl;
169 buffer >> parameters_from_db;
171 bool return_file_is_db;
172 return_file_is_db = parameters.
equals(parameters_from_db);
173 if (return_file_is_db)
NOTICE(
"The parameters for run " << runNumber <<
"are equivalent" << endl);
174 else NOTICE(
"The parameters for run " << runNumber <<
" are NOT equivalent." << endl);
175 return return_file_is_db;
Utility class to parse command line options.
const char * ALL_PARAMETERS_TABLE_NAME_COLUMN
Data structure for all trigger parameters.
const char * DB_TABLE_RUN_SETUP_PARAMETERS
const char * DAQ_FILTER_STRING
const char * DB_TABLE_RUNS
Auxiliary class for specifying selection of database data.
const char * DB_TABLE_ALL_PARAMETERS
const char * RUN_TABLE_RUN_COLUMN
void reset(JCLBInput &data, size_t size)
Reset CLB buffers.
const char * RUN_SETUP_OID_SELECTOR
int getRunNumber() const
Get run number.
const char * DETECTOR_SELECTOR
const char * RUN_TABLE_SETUPID_COLUMN
const char * DAQ_SELECTOR
T get(const JHead &head)
Get object from header.
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object
const char * RUN_SETUP_TABLE_VALUE_COLUMN
const char * ALL_PARAMETERS_TABLE_OID_COLUMN
const char * SELECTOR_SEPERATOR
bool equals(const JTriggerParameters ¶meters) const
Equality.
const char * RUN_SETUP_TABLE_PAR_OID_COLUMN
JTriggerParameters getTriggerParameters(const JMultipleFileScanner_t &file_list)
Get trigger parameters.