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);
 
  158      return getP(args...);
 
 
  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 
  231      return getP(name, value, args...);
 
 
 
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...
 
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...
 
JOscParameters_t::JOscParameter_t JOscParameter_t
 
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.
 
JOscProbInterface(const JOscParameterReferences_t ¶meters, const std::string &name, double &value, const Args &...args)
Constructor.
 
JOscParametersInterface< double & > JOscParameterReferences_t
 
JOscParameters_t::JParameter_t JParameter_t
 
double operator()(const JOscChannel &channel, const double E, const double costh) const
Get oscillation probability for a given oscillation channel.
 
JOscParametersInterface< double > JOscParameters_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