# bdm::logger Class Reference

Class for storing results (and semi-results) of an experiment. More...

`#include <libBM.h>`

List of all members.

## Public Member Functions
| logger ()
| Default constructor.
virtual int | add (const RV &rv, string prefix="")
virtual void | logit (int id, const vec &v)=0
| log this vector
virtual void | logit (int id, const double &d)=0
| log this double
virtual void | step ()=0
| Shifts storage position for another time step.
virtual void | finalize ()
| Finalize storing information.
virtual void | init ()
| Initialize the storage.
virtual string | to_string ()
| This method returns a basic info about the current instance.
virtual void | from_setting (const Setting &root)
| This method arrange instance properties according the data stored in the Setting structure.
virtual void | to_setting (Setting &root) const
| This method save all the instance properties into the Setting structure.
virtual void | validate ()
| This method TODO.
## Protected Attributes
Array< RV > | entries
| RVs of all logged variables.
Array< string > | names
| Names of logged quantities, e.g. names of algorithm variants.

## Detailed Description

Class for storing results (and semi-results) of an experiment.

This class abstracts logging of results from implementation. This class replaces direct logging of results (e.g. to files or to global variables) by calling methods of a logger. Specializations of this abstract class for specific storage method are designed.

## Member Function Documentation

virtual int bdm::logger::add | ( | const RV & | rv,
|  | string | prefix = `""` |
| ) |  |  | `[inline, virtual]`

returns an identifier which will be later needed for calling the `logit()` function For empty RV it returns -1, this entry will be ignored by `logit()`.

References bdm::RV::_dsize(), entries, and names.

Referenced by bdm::ArxDS::log_add(), bdm::BM::log_add(), and bdm::DS::log_add().

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

- libBM.h