All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PredictionExtrap.h
Go to the documentation of this file.
1 #pragma once
2 
4 
5 namespace ana
6 {
7  class IExtrap;
8 
9  /// Take the output of an extrapolation and oscillate it as required
11  {
12  public:
13  /// Takes ownership of \a extrap
14  PredictionExtrap(IExtrap* extrap);
15  virtual ~PredictionExtrap();
16 
17  virtual Spectrum Predict(osc::IOscCalc* calc) const override;
18 
20  Flavors::Flavors_t flav,
21  Current::Current_t curr,
22  Sign::Sign_t sign) const override;
23 
24  OscillatableSpectrum ComponentCC(int from, int to) const override;
25  // Spectrum ComponentNC() const override;
26 
27  virtual void SaveTo(TDirectory* dir) const override;
28  static std::unique_ptr<PredictionExtrap> LoadFrom(TDirectory* dir);
29 
30  PredictionExtrap() = delete;
31 
32  IExtrap* GetExtrap() const {return fExtrap;}
33  protected:
34 
36  };
37 }
virtual void SaveTo(TDirectory *dir) const override
virtual Spectrum PredictComponent(osc::IOscCalc *calc, Flavors::Flavors_t flav, Current::Current_t curr, Sign::Sign_t sign) const override
process_name opflashCryoW ana
Representation of a spectrum in any variable, with associated POT.
Definition: Spectrum.h:30
IExtrap * GetExtrap() const
tuple dir
Definition: dropbox.py:28
int sign(double val)
Definition: UtilFunc.cxx:104
Interface to extrapolation procedures.
Definition: IExtrap.h:8
OscillatableSpectrum ComponentCC(int from, int to) const override
Standard interface to all prediction techniques.
Definition: IPrediction.h:58
Take the output of an extrapolation and oscillate it as required.
static std::unique_ptr< PredictionExtrap > LoadFrom(TDirectory *dir)
Spectrum with true energy information, allowing it to be oscillated
virtual Spectrum Predict(osc::IOscCalc *calc) const override