bdm::UI Class Reference

UI is an abstract class and it is intended for internal purposes only. More...

#include <user_info.h>

List of all members.

Classes

class  MappedUI

Static Public Member Functions

Initialization of classes
The type T has to be a root descendant class

template<class T >
static T * build (const Setting &element, const string &name)
 The new instance of type T* is constructed and initialized with values stored in the Setting element[name].
template<class T >
static T * build (const Setting &element, const int index)
 The new instance of type T* is constructed and initialized with values stored in the Setting element[index].
template<class T >
static T * build (const Setting &element)
 The new instance of type T* is constructed and initialized with values stored in the Setting element.
Initialization of structures
The type T has to be int, double, string, vec, ivec or mat.

template<class T >
static void get (T &instance, const Setting &element, const string &name)
 The existing instance of type T is initialized with values stored in the Setting element[name].
template<class T >
static void get (T &instance, const Setting &element, const int index)
 The existing instance of type T is initialized with values stored in the Setting element[index].
template<class T >
static void get (T &instance, const Setting &element)
 The existing instance of type T is initialized with values stored in the Setting element directly.
Initialization of arrays Array<T>
The type T has to be int, double, string, vec, ivec or mat, or pointer to any root descendant.

template<class T >
static void get (Array< T > &array_to_load, const Setting &element, const string &name)
 The existing array of type T is initialized with values stored in the Setting element[name].
template<class T >
static void get (Array< T > &array_to_load, const Setting &element, const int index)
 The existing array of type T is initialized with values stored in the Setting element[index].
template<class T >
static void get (Array< T > &array_to_load, const Setting &element)
 The existing array of type T is initialized with values stored in the Setting element.
Serialization of objects and structures into a new Setting
The new child Setting can be accessed either by its name - if some name is passed as a parameter - or by its integer index. In that case, the new element is added at the very end of the current list of child Settings.

template<class T >
static void save (const T *const instance, Setting &element, const string &name="")
 A root descendant instance is stored in the new child Setting appended to the passed element.
template<class T >
static void save (const Array< T > &array_to_save, Setting &element, const string &name="")
 An Array<T> instance is stored in the new child Setting appended to the passed element.
static void save (const mat &matrix, Setting &element, const string &name="")
 A matrix(of type mat) is stored in the new child Setting appended to the passed element.
static void save (const ivec &vec, Setting &element, const string &name="")
 An integer vector (of type ivec) is stored in the new child Setting appended to the passed element.
static void save (const vec &vector, Setting &element, const string &name="")
 A double vector (of type vec) is stored in the new child Setting appended to the passed element.
static void save (const string &str, Setting &element, const string &name="")
 A string is stored in the new child Setting appended to the passed element.
static void save (const int &integer, Setting &element, const string &name="")
 An integer is stored in the new child Setting appended to the passed element.
static void save (const double &real, Setting &element, const string &name="")
 A double is stored in the new child Setting appended to the passed element.

Protected Member Functions

 UI (const string &class_name, const type_info *const class_type_info)
 Default constructor for internal use only, see.


Detailed Description

UI is an abstract class and it is intended for internal purposes only.

This class exists mainly to allow pointers to its templated descendant ParticularUI<T>. Next, it collects all the auxiliary functions useful to prepare some concret user-infos, see static methods 'build', 'get' and 'save'.


Constructor & Destructor Documentation

bdm::UI::UI ( const string &  class_name,
const type_info *const   class_type_info 
) [inline, protected]

Default constructor for internal use only, see.

See also:
ParticularUI<T>


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

Generated on Wed Jul 1 13:05:57 2009 for mixpp by  doxygen 1.5.8