Jpp  17.3.0-rc.1
the software that should make you happy
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
Public Member Functions | Public Attributes | Static Public Attributes | Protected Attributes | Friends | List of all members
JDETECTOR::JPMTThresholdCalibration_t Struct Reference

Data structure for PMT threshold calibration. More...

#include <JDetectorCalibration.hh>

Inheritance diagram for JDETECTOR::JPMTThresholdCalibration_t:
JDATABASE::JUPI_t JDATABASE::JPBS_t std::vector< int >

Public Member Functions

 JPMTThresholdCalibration_t ()
 Default constructor. More...
 
 JPMTThresholdCalibration_t (const JUPI_t &upi, const std::string &result, const double threshold, const std::vector< int > &runNumbers=std::vector< int >(0))
 Constructor. More...
 
const JUPI_tgetUPI () const
 Get UPI. More...
 
const std::stringgetVariant () const
 Get variant. More...
 
int getVersion () const
 Get version. More...
 
int getNumber () const
 Get serial number. More...
 
std::string toString () const
 Convert UPI. More...
 
 ClassDefNV (JUPI_t, 1)
 
 ClassDefNV (JPBS_t, 1)
 
const JPBS_tgetPBS () const
 Get PBS. More...
 
bool is_valid () const
 Check validity. More...
 

Public Attributes

std::string result
 
double threshold
 
std::vector< int > runNumberList
 

Static Public Attributes

static const char SEPARATOR = '/'
 Separator between PBS, variant and version. More...
 
static const char DOT = '.'
 Separator between PBS values. More...
 

Protected Attributes

std::string variant
 
int version
 
int number
 

Friends

void to_json (json &js, const JPMTThresholdCalibration_t &object)
 Convert PMT threshold calibration to JSon. More...
 
void from_json (const json &js, JPMTThresholdCalibration_t &object)
 Convert JSon to PMT threshold calibration. More...
 

Detailed Description

Data structure for PMT threshold calibration.

Definition at line 416 of file JDetectorCalibration.hh.

Constructor & Destructor Documentation

JDETECTOR::JPMTThresholdCalibration_t::JPMTThresholdCalibration_t ( )
inline

Default constructor.

Definition at line 422 of file JDetectorCalibration.hh.

423  {}
JDETECTOR::JPMTThresholdCalibration_t::JPMTThresholdCalibration_t ( const JUPI_t upi,
const std::string result,
const double  threshold,
const std::vector< int > &  runNumbers = std::vector<int>(0) 
)
inline

Constructor.

Parameters
upiUPI
resultresult
thresholdthreshold
runNumbersrun numbers

Definition at line 434 of file JDetectorCalibration.hh.

437  :
438  JUPI_t (upi),
439  result (result),
441  runNumberList(runNumbers)
442  {}
JUPI_t()
Default constructor.
Definition: JUPI_t.hh:41

Member Function Documentation

const JUPI_t& JDATABASE::JUPI_t::getUPI ( ) const
inlineinherited

Get UPI.

Returns
UPI

Definition at line 97 of file JUPI_t.hh.

98  {
99  return static_cast<const JUPI_t&>(*this);
100  }
Universal product identifier (UPI).
Definition: JUPI_t.hh:29
const std::string& JDATABASE::JUPI_t::getVariant ( ) const
inlineinherited

Get variant.

Returns
variant

Definition at line 108 of file JUPI_t.hh.

109  {
110  return variant;
111  }
std::string variant
Definition: JUPI_t.hh:250
int JDATABASE::JUPI_t::getVersion ( ) const
inlineinherited

Get version.

Returns
version

Definition at line 119 of file JUPI_t.hh.

120  {
121  return version;
122  }
int JDATABASE::JUPI_t::getNumber ( ) const
inlineinherited

Get serial number.

Returns
serial number

Definition at line 130 of file JUPI_t.hh.

131  {
132  return number;
133  }
std::string JDATABASE::JUPI_t::toString ( ) const
inlineinherited

Convert UPI.

Returns
UPI

Definition at line 141 of file JUPI_t.hh.

142  {
143  std::ostringstream os;
144 
145  os << *this;
146 
147  return os.str();
148  }
JDATABASE::JUPI_t::ClassDefNV ( JUPI_t  ,
 
)
inherited
JDATABASE::JPBS_t::ClassDefNV ( JPBS_t  ,
 
)
inherited
const JPBS_t& JDATABASE::JPBS_t::getPBS ( ) const
inlineinherited

Get PBS.

Returns
PBS

Definition at line 101 of file JPBS_t.hh.

102  {
103  return static_cast<const JPBS_t&>(*this);
104  }
Product breakdown structure (PBS).
Definition: JPBS_t.hh:27
bool JDATABASE::JPBS_t::is_valid ( ) const
inlineinherited

Check validity.

Returns
true if valid; else false

Definition at line 112 of file JPBS_t.hh.

113  {
114  return !this->empty();
115  }

Friends And Related Function Documentation

void to_json ( json js,
const JPMTThresholdCalibration_t object 
)
friend

Convert PMT threshold calibration to JSon.

Parameters
jsjson
objectPMT threshold calibration

Definition at line 451 of file JDetectorCalibration.hh.

452  {
453  std::ostringstream os;
454 
455  os << object.getUPI();
456 
457  js[UPI_t] = os.str();
458  js[Test_t + Result_t] = object.result;
459  js[Test_t + Parameters_t][0] = json{ { Name_t, PMTThreshold_t },
460  { Unit_t, Unitless_t },
461  { Values_t, get_string_array(object.threshold) } };
462  js[Test_t + Parameters_t][2] = json{ { Name_t, RunNumber_t },
463  { Unit_t, Unitless_t },
464  { Values_t, object.runNumberList } };
465  }
static const std::string Name_t
static const std::string Parameters_t
static const std::string Unit_t
static const std::string UPI_t
static const std::string Values_t
static const std::string RunNumber_t
static const std::string Test_t
static const std::string Unitless_t
static const std::string PMTThreshold_t
static const std::string Result_t
nlohmann::json json
std::vector< std::string > get_string_array(T value)
Cast single value to array of strings, conform the DB-format.
void from_json ( const json js,
JPMTThresholdCalibration_t object 
)
friend

Convert JSon to PMT threshold calibration.

Parameters
jsjson
objectPMT threshold calibration

Definition at line 474 of file JDetectorCalibration.hh.

475  {
476  using namespace std;
477 
478  stringstream is(js.at(UPI_t).get<string>());
479 
480  is >> static_cast<JUPI_t&>(object);
481 
482  object.result = js.at(Test_t + Result_t).get<string>();
483  object.threshold = retrieve_value(js.at(Test_t + Parameters_t)[0].at(Values_t).get<vector<string>>());
484  object.runNumberList = js.at(Test_t + Parameters_t)[2].at(Values_t).get<vector<int>>();
485  }
static const std::string Parameters_t
double retrieve_value(std::vector< std::string > string_value_array)
Retrieve value from json array of strings.
is
Definition: JDAQCHSM.chsm:167
static const std::string UPI_t
static const std::string Values_t
JUPI_t()
Default constructor.
Definition: JUPI_t.hh:41
static const std::string Test_t
static const std::string Result_t

Member Data Documentation

std::string JDETECTOR::JPMTThresholdCalibration_t::result

Definition at line 487 of file JDetectorCalibration.hh.

double JDETECTOR::JPMTThresholdCalibration_t::threshold

Definition at line 488 of file JDetectorCalibration.hh.

std::vector<int> JDETECTOR::JPMTThresholdCalibration_t::runNumberList

Definition at line 489 of file JDetectorCalibration.hh.

const char JDATABASE::JUPI_t::SEPARATOR = '/'
staticinherited

Separator between PBS, variant and version.

Definition at line 35 of file JUPI_t.hh.

std::string JDATABASE::JUPI_t::variant
protectedinherited

Definition at line 250 of file JUPI_t.hh.

int JDATABASE::JUPI_t::version
protectedinherited

Definition at line 251 of file JUPI_t.hh.

int JDATABASE::JUPI_t::number
protectedinherited

Definition at line 252 of file JUPI_t.hh.

const char JDATABASE::JPBS_t::DOT = '.'
staticinherited

Separator between PBS values.

Definition at line 33 of file JPBS_t.hh.


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