Mirror reflection library 0.5.13

Mirror Auto-Reflection Engine

The manual registering process can be tedious and error-prone in some situations. Although the registering macros use auto-detection and many things do not have to be specified explicitly, some changes in the base-level classes, like adding or removing of a member variable, constructor or a whole class, etc. require changes in the registering code.

If no special tweaking in the reflection of the base-level constructs (like hiding certain members or constructors of a class or specifying of getter/setter functions for a member variable) is required, then support for automatic reflection is desirable. To provide this support is the aim of the MAuReEn (Mirror Auto-Reflection Engine) project.

This is only a short introduction and tutorial for the maureen utility. For more details consult its documentation and the command line help screen printed by the --help option.

Hosting and source repository

MAuReEn's sources are currently managed by git, hosted on Gitorious: git://gitorious.org/maureen/maureen.git.

Building

MAuReEn uses the cmake build system. To get information on how to build and install it you can consult the README and BUILDING files in the root directory of the source distribution.

Introduction

MAuReEn is invoked from shell by the maureen command with or without additional command-line options. Generally MAuReEn processes several input files containing base-level C++ declarations, typically header files and creates one or several output files containing C++ code for registering those base-level constructs with Mirror using the registering macros according to one or several pairs of input and output patterns. The patterns can be specified either by using command line options or read from special text files (referred to as MAREfiles, for Mirror Auto-Reflection Engine files).

Additional command line or MAREfile options may be used to specify things like pre-defined symbols for the C++ preprocessor, additional search paths for include files, etc.

The manual for the MAuReEn tool can be found here.


Copyright © 2006-2011 Matus Chochlik, University of Zilina, Zilina, Slovakia.
<matus.chochlik -at- fri.uniza.sk>
<chochlik -at -gmail.com>
Documentation generated on Fri Dec 16 2011 by Doxygen (version 1.7.3).
Important note: Although the 'boostified' version of Mirror uses the Boost C++ libraries Coding Guidelines and is implemented inside of the boost namespace, it IS NOT an officially reviewed and accepted Boost library. Mirror is being developed with the intention to be submitted for review for inclusion to the Boost C++ libraries.