Public Member Functions | Private Attributes | List of all members
protoana::ThinSliceSystematic Class Reference

#include <ThinSliceSystematic.h>

Public Member Functions

 ThinSliceSystematic (const fhicl::ParameterSet &pset)
 
 ThinSliceSystematic ()
 
 ~ThinSliceSystematic ()
 
const double GetValue () const
 
const double GetCentral () const
 
const double GetUpperLimit () const
 
const double GetThrowLimit () const
 
const double GetThrowLimitUp () const
 
const double GetGenThrowLimit () const
 
const double GetGenThrowLimitUp () const
 
const double GetLowerLimit () const
 
const std::string GetName () const
 
void SetValue (double v)
 
void SetToNSigma (int n=1)
 
void SetToCentral ()
 
template<typename T >
const T GetOption (std::string name) const
 

Private Attributes

std::string fType
 
double fVal
 
double fCentral
 
double fUpperLimit
 
double fLowerLimit
 
double fThrowLimit
 
double fThrowLimitUp
 
double fGenThrowLimit
 
double fGenThrowLimitUp
 
double fSigma
 
fhicl::ParameterSet fOptions
 
std::string fName
 

Detailed Description

Definition at line 5 of file ThinSliceSystematic.h.

Constructor & Destructor Documentation

protoana::ThinSliceSystematic::ThinSliceSystematic ( const fhicl::ParameterSet pset)
inline

Definition at line 7 of file ThinSliceSystematic.h.

8  : fType(pset.get<std::string>("Name")),
9  fVal(pset.get<double>("Central")),
10  fCentral(pset.get<double>("Central")),
11  fUpperLimit(pset.get<double>("UpperLimit")),
12  fLowerLimit(pset.get<double>("LowerLimit")),
13  fThrowLimit(pset.get<double>("ThrowLimit")),
14  fThrowLimitUp(pset.get<double>("ThrowLimitUp")),
15  fGenThrowLimit(pset.get<double>("GenThrowLimit")),
16  fGenThrowLimitUp(pset.get<double>("GenThrowLimitUp")),
17  fSigma(pset.get<double>("Sigma", 1.)),
18  fOptions(pset.get<fhicl::ParameterSet>("Options")) {
19  fName = "par_" + fType + "_syst";
20  };
std::string string
Definition: nybbler.cc:12
T get(std::string const &key) const
Definition: ParameterSet.h:271
protoana::ThinSliceSystematic::ThinSliceSystematic ( )
inline

Definition at line 22 of file ThinSliceSystematic.h.

22 {};
protoana::ThinSliceSystematic::~ThinSliceSystematic ( )
inline

Definition at line 24 of file ThinSliceSystematic.h.

24 {};

Member Function Documentation

const double protoana::ThinSliceSystematic::GetCentral ( ) const
inline

Definition at line 30 of file ThinSliceSystematic.h.

30  {
31  return fCentral;
32  };
const double protoana::ThinSliceSystematic::GetGenThrowLimit ( ) const
inline

Definition at line 45 of file ThinSliceSystematic.h.

45  {
46  return fGenThrowLimit;
47  };
const double protoana::ThinSliceSystematic::GetGenThrowLimitUp ( ) const
inline

Definition at line 48 of file ThinSliceSystematic.h.

48  {
49  return fGenThrowLimitUp;
50  };
const double protoana::ThinSliceSystematic::GetLowerLimit ( ) const
inline

Definition at line 52 of file ThinSliceSystematic.h.

52  {
53  return fLowerLimit;
54  };
const std::string protoana::ThinSliceSystematic::GetName ( void  ) const
inline

Definition at line 56 of file ThinSliceSystematic.h.

56  {
57  return fName;
58  };
template<typename T >
const T protoana::ThinSliceSystematic::GetOption ( std::string  name) const
inline

Definition at line 72 of file ThinSliceSystematic.h.

72  {
73  return fOptions.get<T>(name);
74  }
static QCString name
Definition: declinfo.cpp:673
T get(std::string const &key) const
Definition: ParameterSet.h:271
const double protoana::ThinSliceSystematic::GetThrowLimit ( ) const
inline

Definition at line 38 of file ThinSliceSystematic.h.

38  {
39  return fThrowLimit;
40  };
const double protoana::ThinSliceSystematic::GetThrowLimitUp ( ) const
inline

Definition at line 41 of file ThinSliceSystematic.h.

41  {
42  return fThrowLimitUp;
43  };
const double protoana::ThinSliceSystematic::GetUpperLimit ( ) const
inline

Definition at line 34 of file ThinSliceSystematic.h.

34  {
35  return fUpperLimit;
36  };
const double protoana::ThinSliceSystematic::GetValue ( ) const
inline

Definition at line 26 of file ThinSliceSystematic.h.

26  {
27  return fVal;
28  };
void protoana::ThinSliceSystematic::SetToCentral ( )
inline

Definition at line 68 of file ThinSliceSystematic.h.

void protoana::ThinSliceSystematic::SetToNSigma ( int  n = 1)
inline

Definition at line 64 of file ThinSliceSystematic.h.

64  {
65  SetValue(n*fSigma);
66  }
std::void_t< T > n
void protoana::ThinSliceSystematic::SetValue ( double  v)
inline

Definition at line 60 of file ThinSliceSystematic.h.

60  {
61  fVal = v;
62  };

Member Data Documentation

double protoana::ThinSliceSystematic::fCentral
private

Definition at line 80 of file ThinSliceSystematic.h.

double protoana::ThinSliceSystematic::fGenThrowLimit
private

Definition at line 85 of file ThinSliceSystematic.h.

double protoana::ThinSliceSystematic::fGenThrowLimitUp
private

Definition at line 86 of file ThinSliceSystematic.h.

double protoana::ThinSliceSystematic::fLowerLimit
private

Definition at line 82 of file ThinSliceSystematic.h.

std::string protoana::ThinSliceSystematic::fName
private

Definition at line 91 of file ThinSliceSystematic.h.

fhicl::ParameterSet protoana::ThinSliceSystematic::fOptions
private

Definition at line 89 of file ThinSliceSystematic.h.

double protoana::ThinSliceSystematic::fSigma
private

Definition at line 87 of file ThinSliceSystematic.h.

double protoana::ThinSliceSystematic::fThrowLimit
private

Definition at line 83 of file ThinSliceSystematic.h.

double protoana::ThinSliceSystematic::fThrowLimitUp
private

Definition at line 84 of file ThinSliceSystematic.h.

std::string protoana::ThinSliceSystematic::fType
private

Definition at line 78 of file ThinSliceSystematic.h.

double protoana::ThinSliceSystematic::fUpperLimit
private

Definition at line 81 of file ThinSliceSystematic.h.

double protoana::ThinSliceSystematic::fVal
private

Definition at line 79 of file ThinSliceSystematic.h.


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