bt_comp.h File Reference

Compiler-dependent definitions and declarations. More...

This graph shows which files directly or indirectly include this file:


Defines

#define BT_ASSERT(x)
 Basis wrapper macro for assert().
#define BT_CDECL
#define BT_CONST   const
#define BT_CONST_CAST(t, e)   const_cast<t>(e)
 Convenience macro for casting.
#define BT_DYNAMIC_CAST(t, e)   dynamic_cast<t>(e)
 Convenience macro for casting.
#define BT_FASTCALL
#define BT_MUTABLE_CALL(t, o)   (*(o))
 Enables support for compilers that lack support for 'mutable'.
#define BT_MUTABLE_DECL   mutable
 Enables support for compilers that lack support for 'mutable'.
#define BT_MUTABLE_SETTER(t, m, v)   m = v
 Enables support for compilers that lack support for 'mutable'.
#define BT_NOGC
#define BT_REINTERPRET_CAST(t, e)   reinterpret_cast<t>(e)
 Convenience macro for casting.
#define BT_STATIC_CAST(t, e)   static_cast<t>(e)
 Convenience macro for casting.
#define BT_STD_API   BT_Result BT_CDECL
#define BT_TYPENAME   typename
 Enables compatibility for compilers that don't know about 'typename'.
#define BT_UNIX   1
#define HAS_FILEMAPPING   1
#define UNUSED(x)   (static_cast<void>(x))

Detailed Description

This file contains compiler and platform dependent declarations and macro definitions, including automatic platform/compiler feature detection.

Define Documentation

#define BT_CDECL

C calling convention declaration for Windows platforms. This is an empty string for UNIX platforms.

#define BT_CONST   const

Optionally define const. Avoids compiler warnings from non-standard compilers.

#define BT_CONST_CAST ( t,
 )     const_cast<t>(e)

Convenience macro for casting.

#define BT_DYNAMIC_CAST ( t,
 )     dynamic_cast<t>(e)

Convenience macro for casting.

#define BT_FASTCALL

'Fast' calling convention declaration for Windows platforms. This is an empty string for UNIX platforms.

#define BT_MUTABLE_CALL ( t,
 )     (*(o))

Enables support for compilers that lack support for 'mutable'. See file bt_comp.h for details

#define BT_MUTABLE_DECL   mutable

Enables support for compilers that lack support for 'mutable'. See file bt_comp.h for details

#define BT_MUTABLE_SETTER ( t,
m,
 )     m = v

Enables support for compilers that lack support for 'mutable'. See file bt_comp.h for details

#define BT_REINTERPRET_CAST ( t,
 )     reinterpret_cast<t>(e)

Convenience macro for casting.

#define BT_STATIC_CAST ( t,
 )     static_cast<t>(e)

Convenience macro for casting.

#define BT_STD_API   BT_Result BT_CDECL

Standard function signature preamble.

#define BT_TYPENAME   typename

Enables compatibility for compilers that don't know about 'typename'.

#define BT_UNIX   1

Since most of our platforms are UNIX based, undefine as needed. Note that we consider Cygwin to be a UNIX variant.

#define HAS_FILEMAPPING   1

All supported platforms support filemapping. Undefine if necessary

#define UNUSED (  )     (static_cast<void>(x))

Macro to avoid warnings for unused arguments.


Copyright © 2004-2008 Basis Technology Corporation. All Rights Reserved.