ReFRACtor
surface_temperature.h
Go to the documentation of this file.
1 #ifndef SURFACE_TEMPERATURE_H
2 #define SURFACE_TEMPERATURE_H
4 #include "observer.h"
6 #include "array_with_unit.h"
7 
8 namespace FullPhysics {
9 /****************************************************************/
18 class SurfaceTemperature : virtual public StateVectorObserver, public Observable<SurfaceTemperature> {
19 public:
20  virtual ~SurfaceTemperature() {}
21 
23  { add_observer_do(Obs, *this);}
24 
26  { remove_observer_do(Obs, *this);}
27 
28  //-----------------------------------------------------------------------
32  //-----------------------------------------------------------------------
33 
34  virtual AutoDerivativeWithUnit<double> surface_temperature(int channel_index) const = 0;
35 
36  //-----------------------------------------------------------------------
43  //-----------------------------------------------------------------------
44 
45  virtual boost::shared_ptr<SurfaceTemperature> clone() const = 0;
46 };
47 }
48 #endif
virtual void remove_observer(Observer< SurfaceTemperature > &Obs)
Remove an observer.
This is a AutoDerivative that also has units associated with it.
void add_observer_do(Observer< SurfaceTemperature > &Obs, SurfaceTemperature &t)
Add an observer.
Definition: observer.h:148
This is an observer of a StateVector.
void remove_observer_do(Observer< SurfaceTemperature > &Obs, SurfaceTemperature &t)
Remove an observer.
Definition: observer.h:173
This class represents the surface of the temperature under observation.
Mixin for a class that allows other classes to observe it state.
Definition: observer.h:12
virtual boost::shared_ptr< SurfaceTemperature > clone() const =0
Clone a SurfaceTemperature object.
virtual void add_observer(Observer< SurfaceTemperature > &Obs)
Add an observer.
Contains classes to abstract away details in various Spurr Radiative Transfer software.
Definition: doxygen_python.h:1
virtual AutoDerivativeWithUnit< double > surface_temperature(int channel_index) const =0
Return the temperature of the surface.

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