user_info.h File Reference

UI (user info) class for loading/saving objects from/to configuration files. It is designed with use of libconfig C/C++ Configuration File Library User Infos and their use. More...

#include <stdio.h>
#include <string>
#include <typeinfo>
#include <map>
#include <stdexcept>
#include "libconfig/libconfig.h++"
#include "../bdmroot.h"
#include "../shared_ptr.h"
#include "itpp/itbase.h"

Go to the source code of this file.

Classes

class  bdm::UIException
class  bdm::UISettingException
class  bdm::UIClassException
class  bdm::UIFile
 This class serves to load and/or save user-infos into/from configuration files stored on a hard-disk. More...
class  bdm::SettingResolver
 This class serves to expand links used within configuration files. More...
class  bdm::UI
 UI is an abstract class which collects all the auxiliary functions useful to prepare some concrete user-infos. More...
class  bdm::UI::MappedUI
class  bdm::ParticularUI< T >

Defines

#define UIREGISTER(class_name)   static bdm::ParticularUI<class_name> UI##class_name(#class_name)
 Macro for registration of class into map of user-infos, registered class is scriptable using UI static methods.
#define QUOTEME(x)   #x
 Instrumental macro for UIREGISTER2.
#define UIREGISTER2(class_name, temp_name)   static bdm::ParticularUI<class_name<temp_name> > UI##class_name##_##temp_name( QUOTEME(class_name<temp_name>) )
 Variant of UIREGISTER for templated classes.

Detailed Description

UI (user info) class for loading/saving objects from/to configuration files. It is designed with use of libconfig C/C++ Configuration File Library User Infos and their use.

Author:
Vaclav Smidl.

----------------------------------- BDM++ - C++ library for Bayesian Decision Making under Uncertainty

Using IT++ for numerical operations -----------------------------------


Define Documentation

#define UIREGISTER ( class_name   )     static bdm::ParticularUI<class_name> UI##class_name(#class_name)

Macro for registration of class into map of user-infos, registered class is scriptable using UI static methods.

Argument class_name has to be a descendant of root class and also to have a default constructor. This macro should be used in header file, immediately after a class declaration.

User Infos and their use

#define UIREGISTER2 ( class_name,
temp_name   )     static bdm::ParticularUI<class_name<temp_name> > UI##class_name##_##temp_name( QUOTEME(class_name<temp_name>) )

Variant of UIREGISTER for templated classes.

Technical meann of registering UIREGISTER(class_name<template_name>).

User Infos and their use


Generated on Wed Sep 16 22:33:31 2009 for mixpp by  doxygen 1.6.1