Map run number to trigger parameters.
More...
|
void | reset (const int run) |
| Remove all entries before given run.
|
|
bool | is_written (const int run) const |
| Check if trigger parameters have been written for given run.
|
|
void | read (const char *const data, const size_t size) |
| Read trigger parameters.
|
|
void | write (const int run, TFile *file) |
| Write trigger parameters for given run if not yet done.
|
|
Map run number to trigger parameters.
Definition at line 444 of file JDataWriter.cc.
◆ reset()
void KM3NETDAQ::JDataWriter::JRunDB::reset |
( |
const int | run | ) |
|
|
inline |
Remove all entries before given run.
- Parameters
-
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.
◆ is_written()
bool KM3NETDAQ::JDataWriter::JRunDB::is_written |
( |
const int | run | ) |
const |
|
inline |
Check if trigger parameters have been written for given run.
- Parameters
-
- 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 }
◆ read()
void KM3NETDAQ::JDataWriter::JRunDB::read |
( |
const char *const | data, |
|
|
const size_t | size ) |
|
inline |
Read trigger parameters.
- Parameters
-
Definition at line 478 of file JDataWriter.cc.
479 {
482
483
484 const string buffer(data, size);
485
487
490
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) {
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 }
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
std::vector< char > buffer
internal buffer for incoming data
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
◆ write()
void KM3NETDAQ::JDataWriter::JRunDB::write |
( |
const int | run, |
|
|
TFile * | file ) |
|
inline |
Write trigger parameters for given run if not yet done.
- Parameters
-
run | run number |
file | pointer to ROOT file |
Definition at line 524 of file JDataWriter.cc.
525 {
526 if (file != NULL) {
527
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 }
The documentation for this struct was generated from the following file: