Class filter_base#

Inheritance Relationships#

Derived Types#

Class Documentation#

class filter_base#

Subclassed by debias_lw, filter_template, goodison_undercatch, macdonald_undercatch, scale_wind_speed

Public Functions

inline filter_base(std::string name = "", config_file input_cfg = pt::basic_ptree<std::string, std::string>())#
inline virtual ~filter_base()#
inline virtual void init()#

Initializes the filter. Useful for obtaining configuration params and storing them locally

inline virtual void process(std::shared_ptr<station> &station)#

Apply the filter for one timestep for the given station

Parameters:

station – Station to operate on

inline void provides(const std::string &name)#

Denotes a new met variable that this filter provides. Must be used in the ctor of a filter prior to use

Parameters:

name – Name of the new meteorological variable

inline std::vector<std::string> provides()#

List of new meterological variables this filter provides

Returns:

inline bool is_nan(double variable)#

Determine if the variable value is a Nan. Checks for -9999, NaN, and Inf

Parameters:

variable

Returns:

True if is nan

Public Members

pt::ptree cfg#

Configuration file. If filter does not need one, then this will contain nothing

std::string ID#

ID of the module

std::vector<std::string> _provides#

List of new variables that are provided