ReFRACtor
spectrum_effect_imp_base.h
Go to the documentation of this file.
1 #ifndef SPECTRUM_EFFECT_IMP_BASE_H
2 #define SPECTRUM_EFFECT_IMP_BASE_H
3 #include "spectrum_effect.h"
5 
6 namespace FullPhysics {
7 /****************************************************************/
16 class SpectrumEffectImpBase: public SubStateVectorArray<SpectrumEffect> {
17 public:
19  virtual boost::shared_ptr<SpectrumEffect> clone() const = 0;
20 
21 //-----------------------------------------------------------------------
26 //-----------------------------------------------------------------------
27  virtual void print(std::ostream& Os, bool Short_form = false) const { Os << desc(); }
28 
29 //-----------------------------------------------------------------------
32 //-----------------------------------------------------------------------
33  virtual std::string desc() const { return "SpectrumEffectImpBase"; }
34 
35 protected:
36 
37 //-----------------------------------------------------------------------
40 //-----------------------------------------------------------------------
42 
43 //-----------------------------------------------------------------------
45 //-----------------------------------------------------------------------
46  SpectrumEffectImpBase(const blitz::Array<double, 1>& Coeff,
47  const blitz::Array<bool, 1>& Used_flag)
48  : SubStateVectorArray<SpectrumEffect>(Coeff, Used_flag) {}
49 
50 private:
51 };
52 }
53 #endif
virtual std::string desc() const
Description of object, to be printed to stream.
virtual boost::shared_ptr< SpectrumEffect > clone() const =0
Clone a SpectrumEffect object.
virtual void print(std::ostream &Os, bool Short_form=false) const
Print to stream.
As a design principle, we have each base class with the absolutely minimum interface needed for use f...
This class models models any effects that need to be applied to high resolution spectra after the rad...
SpectrumEffectImpBase()
Default constructor, derived class should call init if they use this constructor. ...
It is common to have a class that is an Observable with a set of coefficients, a subset of which are ...
Contains classes to abstract away details in various Spurr Radiative Transfer software.
Definition: doxygen_python.h:1
SpectrumEffectImpBase(const blitz::Array< double, 1 > &Coeff, const blitz::Array< bool, 1 > &Used_flag)
Constructor that sets the coefficient() and used_flag() values.

Copyright © 2017, California Institute of Technology.
ALL RIGHTS RESERVED.
U.S. Government Sponsorship acknowledged.
Generated Fri Aug 24 2018 15:44:10