Introducing Xrtti

Xrtti is a tool and accompanying C++ library which extends the standard runtime type system of C++ to provide a much richer set of reflection information about classes and methods to manipulate these classes and their members.

Getting Xrtti

Xrtti is available for download in both source and binary form. Currently pre-built packages are only available for Debian GNU/Linux and Fedora Core Linux 10; Arch Linux is also supported. Please see the download section for more details.

How to use Xrtti

Using Xrtti is as simple as running a tool (xrttigen) to process the class definitions of your program, compiling and linking the resulting generated code into your program, and then using the Xrtti API to reflect on the classes your program defines. You do not need to modify your class file definitions in any way to get the benefit of full reflection. See the documentation section for instructions, API documentation, and examples.

Further resources

A mailing list has been set up for discussion of and help with using Xrtti. Details are provided in support.

Terms of distribution

Xrtti is copyrighted by its author, Bryan Ischo, but is available for free via the terms of the GNU General Public License Version 2. This means that you can use the Xrtti system in any free software project, but cannot use it in any project (such as most commercial software) in which you will not abide by the terms of the GPLv2. If you would like to discuss other licensing terms, please contact me.


If you have any questions about Xrtti, or would like to report bugs, please contact either the mailing list or me directly.