Iguana
1.1.0
Implementation Guardian of Analysis Algorithms
Toggle main menu visibility
Loading...
Searching...
No Matches
RCDBReader.h
1
#pragma once
2
3
#include "Object.h"
4
#include <mutex>
5
6
#ifdef USE_RCDB
7
// workaround ODR violations from header-only RCDB:
8
// - forward declare RCDB classes here
9
// - include directives go in the .cc file
10
namespace
rcdb {
11
class
Connection;
12
}
13
#endif
14
15
namespace
iguana {
16
31
class
RCDBReader
:
public
Object
32
{
33
34
public
:
35
38
RCDBReader
(std::string_view name =
"rcdb"
,
Logger::Level
lev =
Logger::DEFAULT_LEVEL
);
39
41
~RCDBReader
();
42
45
double
GetBeamEnergy
(
int
const
runnum);
46
49
void
SetBeamEnergyOverride
(
double
const
beam_energy);
50
51
protected
:
52
54
std::string
const
m_default_url
=
"mysql://rcdb@clasdb.jlab.org/rcdb"
;
55
56
private
:
57
58
std::string m_url;
59
std::once_flag m_error_once;
60
62
double
m_beam_energy_override{-1};
63
64
#ifdef USE_RCDB
65
std::unique_ptr<rcdb::Connection> m_rcdb_connection;
66
#endif
67
};
68
}
iguana::Logger::Level
Level
Definition
Logger.h:32
iguana::Logger::DEFAULT_LEVEL
static Level const DEFAULT_LEVEL
The default log level.
Definition
Logger.h:43
iguana::Object::Object
Object(std::string_view name="", Logger::Level lev=Logger::DEFAULT_LEVEL)
iguana::RCDBReader::GetBeamEnergy
double GetBeamEnergy(int const runnum)
iguana::RCDBReader::m_default_url
std::string const m_default_url
default RCDB URL, used as a last resort
Definition
RCDBReader.h:54
iguana::RCDBReader::~RCDBReader
~RCDBReader()
destructor
iguana::RCDBReader::RCDBReader
RCDBReader(std::string_view name="rcdb", Logger::Level lev=Logger::DEFAULT_LEVEL)
iguana::RCDBReader::SetBeamEnergyOverride
void SetBeamEnergyOverride(double const beam_energy)
set the beam energy to a fixed value; GetBeamEnergy will return this energy
iguana_v1.1.0
src
iguana
services
RCDBReader.h
Generated by
1.18.0