18#ifndef EMCAL_CHANNEL_SCALE_FACTORS_H_ 
   19#define EMCAL_CHANNEL_SCALE_FACTORS_H_ 
   48  const 
char* 
what() const noexcept final { 
return mMessage.c_str(); }
 
 
   80    LOG(
debug) << 
"EMCALChannelScaleFactors::EnergyIntervals::IsInInterval: Checking if " << E << 
" is in the interval " << Elow << 
" - " << Ehigh;
 
   81    if (E >= Elow && E < Ehigh) {
 
 
   91    if (std::abs(Elow - 
other.Elow) < FLT_EPSILON && std::abs(Ehigh - 
other.Ehigh) < FLT_EPSILON) {
 
 
   99    if (std::abs(Elow - 
other.Elow) < FLT_EPSILON && std::abs(Ehigh - 
other.Ehigh) < FLT_EPSILON) {
 
 
  107    if (Elow < 
other.Elow) {
 
 
  115    if (Elow > 
other.Elow) {
 
 
 
  140  void insertVal(
unsigned int cellID, 
float E_min, 
float E_max, 
float scale);
 
  148  float getScaleVal(
unsigned int cellID, 
float E) 
const;
 
  151  static constexpr int NCells = 17664;                               
 
  152  std::array<std::map<EnergyIntervals, float>, NCells> ScaleFactors; 
 
 
void insertVal(unsigned int cellID, float E_min, float E_max, float scale)
float getScaleVal(unsigned int cellID, float E) const
bool isInInterval(float E) const
~EnergyIntervals()=default
EnergyIntervals(float min, float max)
bool operator==(const EnergyIntervals &other) const
declare operator ==, !=, <, >
EnergyIntervals()=default
bool operator<(const EnergyIntervals &other) const
bool operator>(const EnergyIntervals &other) const
bool operator!=(const EnergyIntervals &other) const
void setEnergy(float min, float max)
InvalidEnergyIntervalException(float E, unsigned int cellID)
Constructor.
const char * what() const noexcept final
Access to error message.
~InvalidEnergyIntervalException() noexcept final=default
Destructor.
a couple of static helper functions to create timestamp values for CCDB queries or override obsolete ...
Defining DataPointCompositeObject explicitly as copiable.
std::string to_string(gsl::span< T, Size > span)
VectorOfTObjectPtrs other
LOG(info)<< "Compressed in "<< sw.CpuTime()<< " s"