1 #ifndef __JDETECTOR__JPMTPARAMETERS__ 
    2 #define __JDETECTOR__JPMTPARAMETERS__ 
   18 namespace JDETECTOR {}
 
   19 namespace JPP { 
using namespace JDETECTOR; }
 
  119       if (this->
QE         < 0.0 ||
 
  139       return in >> 
object.QE
 
  142                 >> 
object.riseTime_ns
 
  159       out << 
FIXED(5,3) << 
object.QE          << 
' ' 
  160           << 
FIXED(5,3) << 
object.gain        << 
' ' 
  161           << 
FIXED(5,3) << 
object.gainSpread  << 
' ' 
  162           << 
FIXED(5,2) << 
object.riseTime_ns << 
' ' 
  163           << 
FIXED(5,2) << 
object.TTS_ns      << 
' ' 
  164           << 
FIXED(5,3) << 
object.threshold;
 
  240       template<
class JPMTParameters_t>
 
friend std::istream & operator>>(std::istream &in, JPMTParameters &object)
Stream input of PMT parameters. 
 
void setPMTParameters(const JPMTParameters ¶meters)
Set PMT parameters. 
 
static void setEquationParameters(const JEquationParameters &equation)
Set equation parameters. 
 
#define gmake_property(A)
macro to convert (template) parameter to JPropertiesElement object 
 
double gainSpread
gain spread [unit] 
 
Utility class to parse parameter values. 
 
const JPMTParameters & getPMTParameters() const 
Get PMT parameters. 
 
Simple data structure to support I/O of equations (see class JLANG::JEquation). 
 
Auxiliary class for I/O of PMT parameters. 
 
double threshold
threshold [npe] 
 
Auxiliary data structure for floating point format specification. 
 
JProperties getProperties(const JEquationParameters &equation=JPMTParameters::getEquationParameters())
Get properties of this class. 
 
Utility class to parse parameter values. 
 
double riseTime_ns
rise time of analogue pulse [ns] 
 
bool slewing
time slewing of analogue signal 
 
I/O formatting auxiliaries. 
 
JPMTParametersHelper(JPMTParameters_t &object, const JEquationParameters &equation)
Constructor. 
 
JPMTParameters()
Default constructor. 
 
JPMTParameters(const double QE, const double gain, const double gainSpread, const double riseTime_ns, const double TTS_ns, const double threshold, const double slope, const double saturation, const bool slewing=true)
Constructor. 
 
JProperties getProperties(const JEquationParameters &equation=JPMTParameters::getEquationParameters()) const 
Get properties of this class. 
 
friend std::ostream & operator<<(std::ostream &out, const JPMTParameters &object)
Stream output of PMT parameters. 
 
bool is_valid() const 
Check validity of PMT parameters. 
 
static JEquationParameters & getEquationParameters()
Get equation parameters. 
 
double TTS_ns
transition time spread [ns] 
 
Data structure for PMT parameters. 
 
double saturation
saturation [ns] 
 
double QE
relative quantum efficiency 
 
Auxiliary class to temporarily modify format specifications. 
 
double slope
slope [ns/npe]