30 int main(
const int argc, 
const char * 
const argv[])
 
   47     JParser<> zap(
"Auxiliary program to set PMT thresholds according DAQ configuration of a given data taking run.");
 
   55     zap[
'P'] = 
make_field(pmtFile,    
"PMT parameters file")  =  
"";
 
   56     zap[
'F'] = 
make_field(formula,    
"transfer function")    =  
"((x * 1.0)/255.0 * 1.6 + 0.8 - 0.989) / 0.44"; 
 
   61   catch(
const exception& error) {
 
   62     FATAL(error.what() << endl);
 
   73   TF1 
f1(
"user", formula.c_str());
 
   76     FATAL(
"Formula <" << formula << 
"> invalid." << endl);
 
   82   JPMTThreshold getPMTThreshold;
 
   90     const int id = getDetector<int>(detid);
 
   92     getPMTThreshold.configure(
id, run);
 
   94     DEBUG(getPMTThreshold);
 
   96     ResultSet& rs = 
getResultSet(getTable<JDetectorIntegration>(), getSelector<JDetectorIntegration>(
id));
 
  104   catch(
const exception& error) {
 
  105     FATAL(error.what() << endl);
 
  111     if (
i->PMTID != -1) {
 
  115         const JPMTThreshold::result_type threshold = getPMTThreshold(
i->PMTUPI);
 
  117         const double value = 
f1.Eval((
double) threshold.value);
 
  121           cout << 
FILL(4,
'0') << 
i->DUID         << 
FILL() << 
'.'  
  122                << 
FILL(2,
'0') << 
i->FLOORID      << 
FILL() << 
'['  
  123                << 
FILL(2,
'0') << 
i->CABLEPOS     << 
FILL() << 
']' 
  125                << setw(3)     << threshold.value << 
' ' 
  126                << 
FIXED(5,2)  << value        << 
' ';
 
  128           if (threshold.is_default) {
 
  129             cout << 
"* (" << 
FIXED(5,2) << JPMTParameters().threshold << 
")";
 
  135         if (!threshold.is_default) {
 
  137           const JPMTIdentifier id(
i->DOMID, 
i->CABLEPOS);
 
  142       catch(
const exception& error) {
 
  144                 << 
FILL(4,
'0') << 
i->DUID         << 
FILL() << 
'.'  
  145                 << 
FILL(2,
'0') << 
i->FLOORID      << 
FILL() << 
'['  
  146                 << 
FILL(2,
'0') << 
i->CABLEPOS     << 
FILL() << 
']'  
  148                 << error.what() << endl);
 
Utility class to parse command line options. 
 
int main(int argc, char *argv[])
 
*fatal Wrong number of arguments esac JCookie sh typeset Z DETECTOR typeset Z SOURCE_RUN typeset Z TARGET_RUN set_variable PARAMETERS_FILE $WORKDIR parameters
 
Auxiliary data structure for floating point format specification. 
 
const JPolynome f1(1.0, 2.0, 3.0)
Function. 
 
#define make_field(A,...)
macro to convert parameter to JParserTemplateElement object 
 
General purpose messaging. 
 
Auxiliary data structure for sequence of same character. 
 
static JStat getFileStatus
Function object for file status. 
 
Utility class to parse command line options. 
 
ResultSet & getResultSet(const std::string &query)
Get result set. 
 
std::vector< JServer > getServernames()
Get list of names of available database servers. 
 
do set_variable DETECTOR_TXT $WORKDIR detector
 
#define DEBUG(A)
Message macros.