#include <LumiDetails.h>
Public Types | |
enum | Algos { kOCC1, kOCC2, kET, kPLT, kMaxNumAlgos } |
typedef unsigned int | AlgoType |
typedef std::pair< std::vector < float >::const_iterator, std::vector< float > ::const_iterator > | ErrorRange |
typedef std::pair< std::vector < short >::const_iterator, std::vector< short > ::const_iterator > | QualityRange |
typedef std::pair< std::vector < float >::const_iterator, std::vector< float > ::const_iterator > | ValueRange |
Public Member Functions | |
void | fill (AlgoType algo, std::vector< float > const &values, std::vector< float > const &errors, std::vector< short > const &qualities) |
void | fillBeamIntensities (std::vector< float > const &beam1Intensities, std::vector< float > const &beam2Intensities) |
bool | isProductEqual (LumiDetails const &lumiDetails) const |
bool | isValid () const |
std::vector< float > const & | lumiBeam1Intensities () const |
float | lumiBeam1Intensity (unsigned int bx) const |
std::vector< float > const & | lumiBeam2Intensities () const |
float | lumiBeam2Intensity (unsigned int bx) const |
LumiDetails () | |
LumiDetails (std::string const &lumiVersion) | |
float | lumiError (AlgoType algo, unsigned int bx) const |
ErrorRange | lumiErrorsForAlgo (AlgoType algo) const |
QualityRange | lumiQualitiesForAlgo (AlgoType algo) const |
short | lumiQuality (AlgoType algo, unsigned int bx) const |
float | lumiValue (AlgoType algo, unsigned int bx) const |
ValueRange | lumiValuesForAlgo (AlgoType algo) const |
std::string const & | lumiVersion () const |
void | setLumiVersion (std::string const &lumiVersion) |
~LumiDetails () | |
Static Public Member Functions | |
static std::vector < std::string > const & | algoNames () |
static std::vector < std::string > const & | dipalgoNames () |
Private Member Functions | |
void | checkAlgo (AlgoType algo) const |
void | checkAlgoAndBX (AlgoType algo, unsigned int bx) const |
Private Attributes | |
std::vector< unsigned int > | m_algoToFirstIndex |
std::vector< float > | m_allErrors |
std::vector< short > | m_allQualities |
std::vector< float > | m_allValues |
std::vector< float > | m_beam1Intensities |
std::vector< float > | m_beam2Intensities |
std::string | m_lumiVersion |
Static Private Attributes | |
static std::vector< std::string > | m_algoNames |
LumiDetails holds Details information: the lumi value, the error on this value, its quality, and 2 beam intensities for each bunch crossing (BX) in a given luminosity section (LS)
Definition at line 20 of file LumiDetails.h.
typedef unsigned int LumiDetails::AlgoType |
Definition at line 34 of file LumiDetails.h.
typedef std::pair<std::vector<float>::const_iterator, std::vector<float>::const_iterator> LumiDetails::ErrorRange |
Definition at line 36 of file LumiDetails.h.
typedef std::pair<std::vector<short>::const_iterator, std::vector<short>::const_iterator> LumiDetails::QualityRange |
Definition at line 37 of file LumiDetails.h.
typedef std::pair<std::vector<float>::const_iterator, std::vector<float>::const_iterator> LumiDetails::ValueRange |
Definition at line 35 of file LumiDetails.h.
enum LumiDetails::Algos |
Enumerator | |
---|---|
kOCC1 | |
kOCC2 | |
kET | |
kPLT | |
kMaxNumAlgos |
Definition at line 27 of file LumiDetails.h.
LumiDetails::LumiDetails | ( | ) |
Definition at line 10 of file LumiDetails.cc.
|
explicit |
Definition at line 21 of file LumiDetails.cc.
LumiDetails::~LumiDetails | ( | ) |
Definition at line 32 of file LumiDetails.cc.
|
static |
Definition at line 140 of file LumiDetails.cc.
References kMaxNumAlgos, and m_algoNames.
Referenced by operator<<().
|
private |
Definition at line 177 of file LumiDetails.cc.
References edm::hlt::Exception, kMaxNumAlgos, and edm::errors::LogicError.
Referenced by checkAlgoAndBX(), fill(), lumiErrorsForAlgo(), lumiQualitiesForAlgo(), and lumiValuesForAlgo().
|
private |
Definition at line 185 of file LumiDetails.cc.
References checkAlgo(), edm::hlt::Exception, edm::errors::LogicError, and m_algoToFirstIndex.
Referenced by lumiError(), lumiQuality(), and lumiValue().
|
static |
void LumiDetails::fill | ( | AlgoType | algo, |
std::vector< float > const & | values, | ||
std::vector< float > const & | errors, | ||
std::vector< short > const & | qualities | ||
) |
Definition at line 51 of file LumiDetails.cc.
References algo, checkAlgo(), edm::hlt::Exception, i, kMaxNumAlgos, edm::errors::LogicError, m_algoToFirstIndex, m_allErrors, m_allQualities, and m_allValues.
Referenced by ExpressLumiProducer::writeProductsForEntry(), and LumiProducer::writeProductsForEntry().
void LumiDetails::fillBeamIntensities | ( | std::vector< float > const & | beam1Intensities, |
std::vector< float > const & | beam2Intensities | ||
) |
Definition at line 74 of file LumiDetails.cc.
References m_beam1Intensities, and m_beam2Intensities.
Referenced by LumiProducer::writeProductsForEntry().
bool LumiDetails::isProductEqual | ( | LumiDetails const & | lumiDetails | ) | const |
Definition at line 162 of file LumiDetails.cc.
References m_algoToFirstIndex, m_allErrors, m_allQualities, m_allValues, m_beam1Intensities, m_beam2Intensities, and m_lumiVersion.
bool LumiDetails::isValid | ( | void | ) | const |
std::vector< float > const & LumiDetails::lumiBeam1Intensities | ( | ) | const |
Definition at line 130 of file LumiDetails.cc.
References m_beam1Intensities.
Referenced by operator<<().
float LumiDetails::lumiBeam1Intensity | ( | unsigned int | bx | ) | const |
std::vector< float > const & LumiDetails::lumiBeam2Intensities | ( | ) | const |
Definition at line 135 of file LumiDetails.cc.
References m_beam2Intensities.
Referenced by operator<<().
float LumiDetails::lumiBeam2Intensity | ( | unsigned int | bx | ) | const |
float LumiDetails::lumiError | ( | AlgoType | algo, |
unsigned int | bx | ||
) | const |
Definition at line 87 of file LumiDetails.cc.
References algo, checkAlgoAndBX(), m_algoToFirstIndex, and m_allErrors.
LumiDetails::ErrorRange LumiDetails::lumiErrorsForAlgo | ( | AlgoType | algo | ) | const |
Definition at line 116 of file LumiDetails.cc.
References algo, checkAlgo(), m_algoToFirstIndex, and m_allErrors.
Referenced by operator<<().
LumiDetails::QualityRange LumiDetails::lumiQualitiesForAlgo | ( | AlgoType | algo | ) | const |
Definition at line 123 of file LumiDetails.cc.
References algo, checkAlgo(), m_algoToFirstIndex, and m_allQualities.
Referenced by operator<<().
short LumiDetails::lumiQuality | ( | AlgoType | algo, |
unsigned int | bx | ||
) | const |
Definition at line 93 of file LumiDetails.cc.
References algo, checkAlgoAndBX(), m_algoToFirstIndex, and m_allQualities.
float LumiDetails::lumiValue | ( | AlgoType | algo, |
unsigned int | bx | ||
) | const |
Definition at line 81 of file LumiDetails.cc.
References algo, checkAlgoAndBX(), m_algoToFirstIndex, and m_allValues.
LumiDetails::ValueRange LumiDetails::lumiValuesForAlgo | ( | AlgoType | algo | ) | const |
Definition at line 109 of file LumiDetails.cc.
References algo, checkAlgo(), m_algoToFirstIndex, and m_allValues.
Referenced by operator<<().
std::string const & LumiDetails::lumiVersion | ( | ) | const |
Definition at line 41 of file LumiDetails.cc.
References m_lumiVersion.
Referenced by operator<<(), and setLumiVersion().
void LumiDetails::setLumiVersion | ( | std::string const & | lumiVersion | ) |
Definition at line 36 of file LumiDetails.cc.
References lumiVersion(), and m_lumiVersion.
Referenced by ExpressLumiProducer::writeProductsForEntry(), and LumiProducer::writeProductsForEntry().
|
staticprivate |
Definition at line 81 of file LumiDetails.h.
Referenced by algoNames(), and dipalgoNames().
|
private |
Definition at line 92 of file LumiDetails.h.
Referenced by checkAlgoAndBX(), fill(), isProductEqual(), lumiError(), lumiErrorsForAlgo(), lumiQualitiesForAlgo(), lumiQuality(), lumiValue(), and lumiValuesForAlgo().
|
private |
Definition at line 94 of file LumiDetails.h.
Referenced by fill(), isProductEqual(), lumiError(), and lumiErrorsForAlgo().
|
private |
Definition at line 95 of file LumiDetails.h.
Referenced by fill(), isProductEqual(), lumiQualitiesForAlgo(), and lumiQuality().
|
private |
Definition at line 93 of file LumiDetails.h.
Referenced by fill(), isProductEqual(), isValid(), lumiValue(), and lumiValuesForAlgo().
|
private |
Definition at line 96 of file LumiDetails.h.
Referenced by fillBeamIntensities(), isProductEqual(), lumiBeam1Intensities(), and lumiBeam1Intensity().
|
private |
Definition at line 97 of file LumiDetails.h.
Referenced by fillBeamIntensities(), isProductEqual(), lumiBeam2Intensities(), and lumiBeam2Intensity().
|
private |
Definition at line 83 of file LumiDetails.h.
Referenced by isProductEqual(), lumiVersion(), and setLumiVersion().