Run Control Parameters

Run control parameters (rc params, for short) determine how xdress is run in and allow the user to customize execution for their project or their system. Typically each project will have an xdressrc.py file in the directory where they intend to run xdress. Alternative paths to this file may be specified on the command line with --rc option. This file is simply a python file whose module-level variables are the run control parameters. See below for information on specific parameters and their effects.

Additionally, it is sometimes useful to be able to set global run control parameters on a system. XDress will search the following files in order of increasing precedence.

  • $HOME/.xdressrc
  • $HOME/.xdressrc.py
  • $HOME/.config/xdressrc
  • $HOME/.config/xdressrc.py

$HOME is the user’s home directory. Settings in the project run control file take precedence over the values here.

xdress.base

bash_completion:
 Flag for enabling / disabling BASH completion. This is only relevant when using argcomplete., default: True.
builddir:Path to build directory, default: ‘build’.
debug:Build in debugging mode, default: False.
dtypes_module:Module name for numpy dtype wrappers., default: ‘dtypes’.
dumpdesc:Print the description cache, default: False.
package:The Python package name for the generated wrappers, default: NotSpecified.
packagedir:Path to package directory, same as ‘package’ if not specified, default: NotSpecified.
plugins:Plugins to include, default: (‘xdress.autoall’, ‘xdress.cythongen’, ‘xdress.stlwrap’).
rc:Path to run control file, default: ‘xdressrc.py’.
sourcedir:Path to source directory (deprecated), default: NotSpecified.
stlcontainers_module:
 Module name for C++ standard library container wrappers., default: ‘stlcontainers’.
testdir:Path to root directory for tests (tests are placed in root/tests), same as ‘package’ if not specified, default: NotSpecified.
ts:The xdress type system., default: xdress.types.system.TypeSystem instance.
verbose:Print more output., default: False.
version:Print version information., default: False.

xdress.autoall

clang_includes:clang-specific include paths, default: ().
classes:A list of class names in sequence, mapping, or apiname format, default: ().
clear_parser_cache_period:
 Number of parser calls to perform before clearing the internal cache. This prevents nasty memory overflow issues., default: 50.
defines:Set additional macro definitions, default: [‘XDRESS’].
dumpast:Prints the abstract syntax tree of a file., default: NotSpecified.
extra_parser_args:
 Further command line arguments to pass to the parser, default: ().
functions:A list of function names in sequence, mapping, or apiname format, default: ().
includes:Additional include directories, default: [‘.’].
parsers:Parser(s) name, list, or dict, Options include c: [‘pycparser’, ‘clang’, ‘gccxml’] c++:[‘clang’, ‘gccxml’, ‘pycparser’], default: {‘c’: [‘pycparser’, ‘clang’, ‘gccxml’], ‘c++’: [‘clang’, ‘gccxml’, ‘pycparser’]}.
undefines:Unset additional macro definitions, default: [].
variables:A list of variable names in sequence, mapping, or apiname format, default: ().

xdress.autodescribe

clang_includes:clang-specific include paths, default: ().
classes:A list of class names in sequence, mapping, or apiname format, default: ().
clear_parser_cache_period:
 Number of parser calls to perform before clearing the internal cache. This prevents nasty memory overflow issues., default: 50.
defines:Set additional macro definitions, default: [‘XDRESS’].
dumpast:Prints the abstract syntax tree of a file., default: NotSpecified.
env:The target environment computed by the autodescriber., default: {}.
extra_parser_args:
 Further command line arguments to pass to the parser, default: ().
functions:A list of function names in sequence, mapping, or apiname format, default: ().
includes:Additional include directories, default: [‘.’].
parsers:Parser(s) name, list, or dict, Options include c: [‘pycparser’, ‘clang’, ‘gccxml’] c++:[‘clang’, ‘gccxml’, ‘pycparser’], default: {‘c’: [‘pycparser’, ‘clang’, ‘gccxml’], ‘c++’: [‘clang’, ‘gccxml’, ‘pycparser’]}.
undefines:Unset additional macro definitions, default: [].
variables:A list of variable names in sequence, mapping, or apiname format, default: ().

xdress.cythongen

max_callbacks:The maximum number of callbacks for function pointers, default: 8.

xdress.descfilter

includemethods:Method names to be wrapped (dict, keys are class names), default: NotSpecified.
skipattrs:Method names to filter out from being wrapped, default: NotSpecified.
skipauto:Try and skip anything that uses an unknown type, default: NotSpecified.
skipmethods:Method names to filter out from being wrapped, default: NotSpecified.
skiptypes:The types to filter out from being wrapped, default: NotSpecified.

xdress.doxygen

dox_template_ids:
 Template argument names to hint to doxygen., default: [‘T’, ‘S’].
doxyfile_name:The dOxygen configuration file name, default: ‘doxyfile’.
doxygen_config:A dictionary representation of a dOxygen configuration, default: __builtin__.dict instance.

xdress.extratypes

extra_types:Module and header file name for xdress extra types., default: ‘xdress_extra_types’.
make_extra_types:
 Flag to enable / disable making the extra types module, default: True.

xdress.dtypes

dtypes:List of types to create numpy dtypes for., default: [].
make_dtypes:Flag for enabling / disabling the generation of numpy dtype wrappers., default: True.

xdress.stlwrap

make_stlcontainers:
 Flag for enabling / disabling creating the C++ standard library container wrappers., default: True.
stlcontainers:List of C++ standard library containers to wrap., default: [].