genreflex(1) Generates the LCG dictionary file for each header file

SYNOPSIS

genreflex headerfile1.h [headerfile2.h] [options] [preprocesor options]

DESCRIPTION

Generates the LCG dictionary file for each header file

OPTIONS

-s file, --selection_file=file
Class selection file to specify for which classes the dictionary will be generated Format (XML):
<lcgdict>
  [<selection>]
    <class [name="classname"] [pattern="wildname"] 
           [file_name="filename"] [file_pattern="wildname"]
           [id="xxxx"] [type="vector"]/>
    <class name="classname" >
      <field name="m_transient" transient="true"/>
      <field name="m_anothertransient" transient="true"/>
      <properties prop1="value1" [prop2="value2"]/>
    </class>
    <function [name="funcname"] [pattern="wildname"] />
    <enum [name="enumname"] [patter="wildname"] />
    <variable [name="varname"] [patter="wildname"] />
  [</selection>]
  <exclusion>
    <class [name="classname"] [pattern="wildname"]>
      <method name="unwanted" />
    </class>
  </exclusion>
  ...
</lcgdict>
See also the section SELECTION FILE SYNTAX below.
-o file, --output file
Output file name. If an existing directory is specified instead of a file, then a filename will be build using the name of the input file and will be placed in the given directory. <headerfile>_rflx.cpp
--pool
Generate minimal dictionary required for POOL persistence
--deep
Generate dictionary for all dependend classes
--split (OBSOLETE)
Generate separate file for stub functions. Option sometimes needed on Windows.
--reflex (OBSOLETE)
Generate Reflex dictionaries.
--comments
Add end-of-line comments in data and functions members as a property called "comment"
--no_membertypedefs
Disable the definition of class member typedefs
--fail_on_warnings
The genreflex command fails (retuns the value 1) if any warning message is issued
--gccxmlpath=path
Path path where the gccxml(1) tool is installed. If not defined the standard PATH environ variable is used
-c file, --capabilities=file
Generate the capabilities file to be used by the SEAL Plugin Manager. This file lists the names of all classes for which the reflection is formation is provided.
--rootmap=file
Generate the rootmap file to be used by ROOT/CINT. This file lists the names of all classes for which the reflection is formation is provided.
--rootmap-lib=library
Library name for the rootmap file.
--debug
Print extra debug information while processing. Keep intermediate files
--quiet
No not print informational messages
-h, --help
Print help

Try "genreflex --help" for more information.

SELECTION FILE SYNTAX

<lcgdict>

Sub elements:
<selection> <exclusion> <class> <function>
Attributes:
none

The root element of the xml file. It has to be present.

<selection>

Sub elements:
<class> <function>
Attributes:
none

The selection element is only mandatory if the <exclusion> element is used in the same file. Otherwise all sub-elements of <lcgdict> are supposed to be included in the dictionary.

<exclusion>

Sub elements:
<class> <function>
Attributes:
none

If a <selection> element is present it is also possible to exclude types following the same patterns as for selection

<class>

Sub elements:
<field> <properties> <method>
Attributes:
name   
The exact name of the class to be filtered
pattern          A pattern matching a set of classes
file_name       
The exact file name to be filtered. All classes contained in the file
will be selected
file_pattern
A pattern matching a set of files
id      
The class ID (used for POOL persistence)
type    
The class type (used for POOL persistence)

All classes matching the patterns or names in the attributes will be selected. The name, pattern, file_name, and file_pattern attributes are mutual exclusive.

<function>

Sub elements:
none
Attributes:
name
The exact name of the function
pattern
A pattern matching a set of functions

All function matching the attributes of the function element will be selected and dictionaries will be created for them. The nameandpattern attributes are mutual exclusive.

<field>

Sub elements:
none
Attributes:
name
The exact name of the field
transient
If set to true a property (transient/true) will be set for this member (used for POOL persistence)

The <field> element is mainly used for POOL persistence to mark if some of the data members of a class shall be skipped when the class is written to a persistent medium

<method>

Sub elements:
none
Attributes:
name
The name of the method to be excluded

The <method> element is used to exclude the dictionary generation from classes which match the given attributes.

ORIGINAL AUTHORS

The ROOT team (see web page above):
Rene Brun and Fons Rademakers

COPYRIGHT

This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.

This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.

You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA

AUTHOR

This manual page was written by Christian Holm Christensen <[email protected]>, for the Debian GNU/Linux system (but may be used by others).