ReFRACtor
radiative_transfer_retrievable.h
Go to the documentation of this file.
1 #ifndef RADIATIVE_TRANSFER_RETRIEVABLE_H
2 #define RADIATIVE_TRANSFER_RETRIEVABLE_H
3 
5 #include "observer.h"
6 #include "radiative_transfer.h"
7 
8 namespace FullPhysics {
9 /****************************************************************/
15  virtual public StateVectorObserver,
16  public Observable<RadiativeTransferRetrievable> {
17 public:
19 
21  { add_observer_do(Obs, *this);}
23  { remove_observer_do(Obs, *this);}
24 
25 //-----------------------------------------------------------------------
27 //-----------------------------------------------------------------------
28 
29  virtual void print(std::ostream& Os, bool Short_form = false) const
30  { Os << "RadiativeTransferRetrievable";}
31 
32 };
33 
34 }
35 #endif
Interface class for radiative transfer implementations that happen to have retrievable parameters...
virtual void add_observer(Observer< RadiativeTransferRetrievable > &Obs)
Add an observer.
void add_observer_do(Observer< RadiativeTransferRetrievable > &Obs, RadiativeTransferRetrievable &t)
Add an observer.
Definition: observer.h:148
This is an observer of a StateVector.
void remove_observer_do(Observer< RadiativeTransferRetrievable > &Obs, RadiativeTransferRetrievable &t)
Remove an observer.
Definition: observer.h:173
This runs a Radiative Transfer code to determine the reflectance for a given set of wavelengths...
Mixin for a class that allows other classes to observe it state.
Definition: observer.h:12
virtual void print(std::ostream &Os, bool Short_form=false) const
Print to stream.
Contains classes to abstract away details in various Spurr Radiative Transfer software.
Definition: doxygen_python.h:1
virtual void remove_observer(Observer< RadiativeTransferRetrievable > &Obs)
Remove an observer.

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