#include <HPDNoiseDataCatalog.h>
Public Member Functions | |
void | addHpd (const std::string &fName, float fDischargeRate, float fIonFeedbackFirstPeakRate, float fIonFeedbackSecondPeakRate, float fElectronEmissionRate) |
add new HPD instance to the catalog | |
const std::vector< std::string > & | allNames () const |
all HPD instance names | |
float | getDischargeRate (size_t i) const |
get noise rate for the HPD instance | |
float | getElectronEmissionRate (size_t i) const |
get thermal electron emission noise rate for the HPD instance | |
float | getIonFeedbackFirstPeakRate (size_t i) const |
get ion feedback noise rate for the HPD instance | |
float | getIonFeedbackSecondPeakRate (size_t i) const |
const std::string & | getName (size_t i) const |
get name of the instance | |
HPDNoiseDataCatalog () | |
void | setRate (const std::string &fName, float fDischargeRate, float fIonFeedbackFirstPeakRate, float fIonFeedbackSecondPeakRate, float fElectronEmissionRate) |
set discharge/IonFeedback/Electron emission noise rates | |
size_t | size () const |
total number | |
virtual | ~HPDNoiseDataCatalog () |
Static Public Member Functions | |
static const char * | className () |
class name | |
static const char * | objectName () |
object name | |
Private Attributes | |
std::vector< float > | mDischargeRate |
std::vector< float > | mElectronEmissionRate |
std::vector< std::string > | mHpdName |
std::vector< float > | mIonFeedbackFirstPeakRate |
std::vector< float > | mIonFeedbackSecondPeakRate |
Definition at line 15 of file HPDNoiseDataCatalog.h.
HPDNoiseDataCatalog::HPDNoiseDataCatalog | ( | ) | [inline] |
Definition at line 17 of file HPDNoiseDataCatalog.h.
{}
HPDNoiseDataCatalog::~HPDNoiseDataCatalog | ( | ) | [virtual] |
Definition at line 10 of file HPDNoiseDataCatalog.cc.
{}
void HPDNoiseDataCatalog::addHpd | ( | const std::string & | fName, |
float | fDischargeRate, | ||
float | fIonFeedbackFirstPeakRate, | ||
float | fIonFeedbackSecondPeakRate, | ||
float | fElectronEmissionRate | ||
) | [inline] |
add new HPD instance to the catalog
Definition at line 21 of file HPDNoiseDataCatalog.h.
References mDischargeRate, mElectronEmissionRate, mHpdName, mIonFeedbackFirstPeakRate, and mIonFeedbackSecondPeakRate.
Referenced by HPDNoiseMaker::addHpd().
{ mHpdName.push_back (fName), mDischargeRate.push_back (fDischargeRate), mIonFeedbackFirstPeakRate.push_back(fIonFeedbackFirstPeakRate), mIonFeedbackSecondPeakRate.push_back(fIonFeedbackSecondPeakRate), mElectronEmissionRate.push_back(fElectronEmissionRate); }
const std::vector<std::string>& HPDNoiseDataCatalog::allNames | ( | ) | const [inline] |
all HPD instance names
Definition at line 30 of file HPDNoiseDataCatalog.h.
References mHpdName.
Referenced by HPDNoiseReader::HPDNoiseReader().
{return mHpdName;}
static const char* HPDNoiseDataCatalog::className | ( | ) | [inline, static] |
float HPDNoiseDataCatalog::getDischargeRate | ( | size_t | i | ) | const [inline] |
get noise rate for the HPD instance
Definition at line 32 of file HPDNoiseDataCatalog.h.
References mDischargeRate.
Referenced by HPDNoiseReader::HPDNoiseReader(), and operator<<().
{return (i < mDischargeRate.size()) ? mDischargeRate[i] : 0.;}
float HPDNoiseDataCatalog::getElectronEmissionRate | ( | size_t | i | ) | const [inline] |
get thermal electron emission noise rate for the HPD instance
Definition at line 37 of file HPDNoiseDataCatalog.h.
References mElectronEmissionRate.
Referenced by HPDNoiseReader::HPDNoiseReader(), and operator<<().
{return (i < mElectronEmissionRate.size()) ? mElectronEmissionRate[i] : 0.;}
float HPDNoiseDataCatalog::getIonFeedbackFirstPeakRate | ( | size_t | i | ) | const [inline] |
get ion feedback noise rate for the HPD instance
Definition at line 34 of file HPDNoiseDataCatalog.h.
References mIonFeedbackFirstPeakRate.
Referenced by HPDNoiseReader::HPDNoiseReader(), and operator<<().
{return (i < mIonFeedbackFirstPeakRate.size()) ? mIonFeedbackFirstPeakRate[i] : 0.;}
float HPDNoiseDataCatalog::getIonFeedbackSecondPeakRate | ( | size_t | i | ) | const [inline] |
Definition at line 35 of file HPDNoiseDataCatalog.h.
References mIonFeedbackSecondPeakRate.
Referenced by HPDNoiseReader::HPDNoiseReader(), and operator<<().
{return (i < mIonFeedbackSecondPeakRate.size()) ? mIonFeedbackSecondPeakRate[i] : 0.;}
const std::string& HPDNoiseDataCatalog::getName | ( | size_t | i | ) | const [inline] |
get name of the instance
Definition at line 39 of file HPDNoiseDataCatalog.h.
Referenced by operator<<().
static const char* HPDNoiseDataCatalog::objectName | ( | ) | [inline, static] |
object name
Definition at line 45 of file HPDNoiseDataCatalog.h.
Referenced by HPDNoiseReader::HPDNoiseReader(), and HPDNoiseMaker::~HPDNoiseMaker().
{return "catalog";}
void HPDNoiseDataCatalog::setRate | ( | const std::string & | fName, |
float | fDischargeRate, | ||
float | fIonFeedbackFirstPeakRate, | ||
float | fIonFeedbackSecondPeakRate, | ||
float | fElectronEmissionRate | ||
) |
set discharge/IonFeedback/Electron emission noise rates
Definition at line 12 of file HPDNoiseDataCatalog.cc.
References i, mDischargeRate, mElectronEmissionRate, mHpdName, mIonFeedbackFirstPeakRate, and mIonFeedbackSecondPeakRate.
Referenced by HPDNoiseMaker::setRate().
{ for (size_t i = 0; i < mHpdName.size(); ++i) { if (fName == mHpdName[i]){ mDischargeRate[i] = fDischargeRate; mIonFeedbackFirstPeakRate[i] = fIonFeedbackFirstPeakRate; mIonFeedbackSecondPeakRate[i] = fIonFeedbackSecondPeakRate; mElectronEmissionRate[i] = fElectronEmissionRate; } } }
size_t HPDNoiseDataCatalog::size | ( | void | ) | const [inline] |
total number
Definition at line 28 of file HPDNoiseDataCatalog.h.
References mDischargeRate.
Referenced by operator<<().
{return mDischargeRate.size();}
std::vector<float> HPDNoiseDataCatalog::mDischargeRate [private] |
Definition at line 48 of file HPDNoiseDataCatalog.h.
Referenced by addHpd(), getDischargeRate(), setRate(), and size().
std::vector<float> HPDNoiseDataCatalog::mElectronEmissionRate [private] |
Definition at line 51 of file HPDNoiseDataCatalog.h.
Referenced by addHpd(), getElectronEmissionRate(), and setRate().
std::vector<std::string> HPDNoiseDataCatalog::mHpdName [private] |
Definition at line 47 of file HPDNoiseDataCatalog.h.
Referenced by addHpd(), allNames(), getName(), and setRate().
std::vector<float> HPDNoiseDataCatalog::mIonFeedbackFirstPeakRate [private] |
Definition at line 49 of file HPDNoiseDataCatalog.h.
Referenced by addHpd(), getIonFeedbackFirstPeakRate(), and setRate().
std::vector<float> HPDNoiseDataCatalog::mIonFeedbackSecondPeakRate [private] |
Definition at line 50 of file HPDNoiseDataCatalog.h.
Referenced by addHpd(), getIonFeedbackSecondPeakRate(), and setRate().