Jpp  19.0.0
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | List of all members
KM3NETDAQ::JDataWriter::JRunDB Struct Reference

Map run number to trigger parameters. More...

Inheritance diagram for KM3NETDAQ::JDataWriter::JRunDB:
std::map< int, JValue_t >

Public Member Functions

void reset (const int run)
 Remove all entries before given run. More...
 
bool is_written (const int run) const
 Check if trigger parameters have been written for given run. More...
 
void read (const char *const data, const size_t size)
 Read trigger parameters. More...
 
void write (const int run, TFile *file)
 Write trigger parameters for given run if not yet done. More...
 

Detailed Description

Map run number to trigger parameters.

Definition at line 444 of file JDataWriter.cc.

Member Function Documentation

void KM3NETDAQ::JDataWriter::JRunDB::reset ( const int  run)
inline

Remove all entries before given run.

Parameters
runrun number

Definition at line 452 of file JDataWriter.cc.

453  {
454  while (!this->empty() && this->begin()->first < run) {
455  this->erase(this->begin());
456  }
457  }
void run()
Run as run control client following command messages via JNET::JControlHost.
Definition: JDAQClient.hh:690
then echo The file $DIR KM3NeT_00000001_00000000 root already please rename or remove it first
bool KM3NETDAQ::JDataWriter::JRunDB::is_written ( const int  run) const
inline

Check if trigger parameters have been written for given run.

Parameters
runrun number
Returns
true if written; else false.

Definition at line 465 of file JDataWriter.cc.

466  {
467  const_iterator p = this->find(run);
468 
469  return p != this->end() && p->second.is_written;
470  }
void run()
Run as run control client following command messages via JNET::JControlHost.
Definition: JDAQClient.hh:690
void KM3NETDAQ::JDataWriter::JRunDB::read ( const char *const  data,
const size_t  size 
)
inline

Read trigger parameters.

Parameters
datadata
sizesize

Definition at line 478 of file JDataWriter.cc.

479  {
480  using namespace std;
481  using namespace JPP;
482 
483 
484  const string buffer(data, size);
485 
486  istringstream in(buffer);
487 
488  int run = -1;
490 
491  in >> run;
492 
493  if (!in) {
494  THROW(JIOException, "Error reading run number for trigger parameters " << run << endl << in.rdbuf());
495  }
496 
497  in >> parameters;
498 
499  in.clear(std::ios::eofbit);
500 
501  if (!in) {
502  THROW(JIOException, "Error reading trigger parameters " << in.rdbuf());
503  }
504 
505  JValue_t& value = (*this)[run];
506 
507  if (value.count == 0) {
508  value.parameters = parameters;
509  }
510 
511  value.count += 1;
512 
513  if (!parameters.equals(value.parameters)) {
514  THROW(JException, "Inconsistent trigger parameters " << endl << value.parameters << " != " << endl << parameters);
515  }
516  }
General exception.
Definition: JException.hh:24
std::vector< char > buffer
internal buffer for incoming data
Definition: JDataWriter.cc:420
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
Definition: JException.hh:712
*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
Definition: diff-Tuna.sh:38
void run()
Run as run control client following command messages via JNET::JControlHost.
Definition: JDAQClient.hh:690
then fatal The output file must have the wildcard in the e g root fi eval JPrintDetector a $DETECTOR O IDENTIFIER eval JPrintDetector a $DETECTOR O SUMMARY JAcoustics sh $DETECTOR_ID source JAcousticsToolkit sh CHECK_EXIT_CODE typeset A EMITTERS get_tripods $WORKDIR tripod txt EMITTERS get_transmitters $WORKDIR transmitter txt EMITTERS for EMITTER in
Definition: JCanberra.sh:48
Exception for I/O.
Definition: JException.hh:340
void KM3NETDAQ::JDataWriter::JRunDB::write ( const int  run,
TFile *  file 
)
inline

Write trigger parameters for given run if not yet done.

Parameters
runrun number
filepointer to ROOT file

Definition at line 524 of file JDataWriter.cc.

525  {
526  if (file != NULL) {
527 
528  iterator p = this->find(run);
529 
530  if (p != this->end() && p->second.count != 0 && !p->second.is_written) {
531 
532  file->WriteTObject(&p->second.parameters);
533 
534  p->second.is_written = true;
535  }
536  }
537  }
then usage $script[< detector identifier >< run range >]< QA/QCfile > nExample script to produce data quality plots nWhen a detector identifier and run range are data are downloaded from the database nand subsequently stored in the given QA QC file
Definition: JDataQuality.sh:19
void run()
Run as run control client following command messages via JNET::JControlHost.
Definition: JDAQClient.hh:690

The documentation for this struct was generated from the following file: