# bdm::Controller Class Reference

`#include <ctrlbase.h>`

List of all members.

## Public Member Functions
virtual void | adapt (const vec &data)
| function processing new observations and adapting control strategy accordingly
virtual vec | ctrlaction (const vec &data)
| returns designed control action
void | from_setting (const Setting &set)
| This method arrange instance properties according the data stored in the Setting structure.
const RV & | _urv ()
| access function
const RV & | _yrv ()
| access function
const RV & | _drv ()
| access function
virtual void | log_add (logger &L, const string &name="")
| register this controller with given datasource under name "name"
virtual void | logit (logger &L)
| write requested values into the logger
virtual string | to_string ()
| This method returns a basic info about the current instance.
virtual void | to_setting (Setting &set) const
| This method save all the instance properties into the Setting structure.
virtual void | validate ()
| This method TODO.
## Protected Attributes
RV | yrv
| identifier of the system output;
RV | urv
| identifier of the system input;
RV | drv
| description of data needed for `ctrlaction` , required for automatic connection to DS
ivec | LIDs
| vector of logger IDs

## Detailed Description

Base class for adaptive controllers The base class is however non-adaptive, method `adapt()` is empty.

Note:
  advanced Controllers will probably include estimator as their internal attribute (e.g. dual controllers)

The documentation for this class was generated from the following file:

- ctrlbase.h