1 #ifndef __JOSCPROB__JOSCPROBINTERFACE__ 
    2 #define __JOSCPROB__JOSCPROBINTERFACE__ 
   70     template<
class ...Args>
 
   72                       const std::string&               name,
 
   74                       const Args&                   ...
args) :
 
   96                         const double          costh) 
const = 0;
 
  112                 const double            costh)
 const 
  114       this->
set(parameters);
 
  116       return getP(channel, E, costh);      
 
  131     double getP(
const std::string& name,
 
  135                 const double       costh)
 const 
  137       this->
set(name, value);
 
  139       return getP(channel, E, costh);
 
  151     template<
class ...Args>
 
  152     double getP(
const std::string& name,
 
  154                 const Args&     ...
args)
 const 
  156       this->
set(name, value);
 
  172                       const double          costh)
 const 
  174       return getP(channel, E, costh);
 
  191                       const double            costh)
 const 
  193       return getP(parameters, channel, E, costh);
 
  212                       const double       costh)
 const 
  214       return getP(name, value, channel, E, costh);
 
  226     template<
class ...Args>    
 
  229                       const Args&     ...
args)
 const 
Interface class for sets of oscillation parameters.
 
Low-level interface for oscillation probability calculators.
 
double operator()(const std::string &name, const double value, const JOscChannel &channel, const double E, const double costh) const
Get oscillation probability for a given oscillation parameter and a given oscillation channel.
 
double getP(const JOscParameters_t ¶meters, const JOscChannel &channel, const double E, const double costh) const
Get oscillation probability for a given set of oscillation parameters and a given oscillation channel...
 
JOscParametersInterface< double & > JOscParameterReferences_t
 
JOscProbInterface()
Default constructor.
 
JOscParametersHelper< double & > JOscParametersHelper_t
 
double operator()(const JOscParameters_t ¶meters, const JOscChannel &channel, const double E, const double costh) const
Get oscillation probability for a given set of oscillation parameters and a given oscillation channel...
 
double operator()(const std::string &name, const double value, const Args &...args) const
Get oscillation probability for a given set of oscillation parameters and a given oscillation channel...
 
virtual double getP(const JOscChannel &channel, const double E, const double costh) const =0
Get oscillation probability for a given oscillation channel.
 
double getP(const std::string &name, const double value, const JOscChannel &channel, const double E, const double costh) const
Get oscillation probability for a given oscillation parameter and a given oscillation channel.
 
virtual ~JOscProbInterface()
Virtual destructor.
 
JOscParametersInterface< double > JOscParameters_t
 
JOscProbInterface(const JOscParameterReferences_t ¶meters, const std::string &name, double &value, const Args &...args)
Constructor.
 
double operator()(const JOscChannel &channel, const double E, const double costh) const
Get oscillation probability for a given oscillation channel.
 
JOscParameters_t::JParameter_t JParameter_t
 
JOscParameters_t::JOscParameter_t JOscParameter_t
 
JOscProbInterface(const JOscParameterReferences_t ¶meters)
Constructor.
 
double getP(const std::string &name, const double value, const Args &...args) const
Get oscillation probability for a given set of oscillation parameters and a given oscillation channel...
 
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).
 
Template class for object cloning.
 
Auxiliary data structure for storing and calculating baselines.
 
Neutrino oscillation channel.
 
Abstract base class for oscillation parameter.
 
Helper class for oscillation parameters.
 
void set(const std::string &name, const value_type &value) const
Set value for a given oscillation parameter.