Overview

This page describes the pre-amble in brahms-component.h.

Details

Inclusion Guard

The Component Interface is protected by an inclusion guard, and can thus only be included once.

Compiler specifics

  • You must define either __32BIT__ or __64BIT__. BRAHMS_ARCH_BITS will be set to 32 or 64 depending on which is defined.
  • The Component Interface is designed to compile correctly using the GNU C (or C++) Compiler or Microsoft C (or C++) Compiler. For other compilers, your mileage may vary - get in touch if you have specific support problems, and we will endeavour to add support for your compiler. The error message you will receive may be something like undefined symbol __int8.

Engine Version

The engine version is defined by the following constants. Each one resolves to a UINT16.

C API (Component Interface)
VERSION_ENGINE_MAJ VERSION_ENGINE_MIN VERSION_ENGINE_REL VERSION_ENGINE_REV

Namespace

If compiled with a C++ compiler, all of the Component Interface except the version constants and the Numeric Types is placed in the namespace brahms. Therefore, you will have to either (option 1) import the brahms namespace or (option 2) explicitly specify symbols within it to use them.

C++ Source Code (against 1199)
// include bindings (not Component Interface!) #include "brahms-1199.h" // option 1 using namespace brahms; BaseSamples b; ... // option 2 brahms::BaseSamples b; ...