Namespaces | Macros | Typedefs | Enumerations
Bentley.h File Reference

Defines typedefs and constants that can be used across other namespaces. All Bentley-authored C++ source files must include Bentley.h (Bentley/Bentley.h). More...

#include "suppress_warnings.h"
#include <limits.h>
#include "Bentley.r.h"

Go to the source code of this file.

Namespaces

 Bentley
 The Bentley namespace contains types defined by the Bentley Library.
 

Macros

#define BENTLEY_WIN32
 
#define BENTLEYCONFIG_GRAPHICS_DIRECTX
 
#define DLLPUBLIC_ATTRIBUTE
 
#define EXPORT_ATTRIBUTE   __declspec(dllexport)
 
#define IMPORT_ATTRIBUTE   __declspec(dllimport)
 
#define DLLLOCAL_ATTRIBUTE   /* For MSVC, a symbol is not visible outside of the DLL unless it is marked as EXPORT_ATTRIBUTE. */
 
#define DLLPUBLIC_ATTRIBUTE   /* DLLPUBLIC_ATTRIBUTE is a GCC concept. For MSVC, we let EXPORT_ATTRIBUTE identify the members that must be exported */
 
#define EXPORT_VTABLE_ATTRIBUTE   /* This is a GCC concept. In MSVC, it appears that the vtable and typeinfo of a class are always exported if the class contains any exported methods. */
 
#define CDECL_ATTRIBUTE   __cdecl
 
#define STDCALL_ATTRIBUTE   __stdcall
 
#define ENUM_UNDERLYING_TYPE(T)   : T
 
#define INTPTR_MIN   _I32_MIN
 
#define INTPTR_MAX   _I32_MAX
 
#define UINTPTR_MAX   _UI32_MAX
 
#define HAVE_TR1
 
#define STD_TR1   std::tr1
 
#define DECLARE_KEY_METHOD
 
#define INT32_MAX   INT_MAX
 
#define UINT32_MAX   UINT_MAX
 
#define INT64_MAX   LLONG_MAX
 
#define UINT64_MAX   ULLONG_MAX
 
#define INT32_MIN   INT_MIN
 
#define INT64_MIN   LLONG_MIN
 
#define USING_NAMESPACE_BENTLEY   using namespace BENTLEY_NAMESPACE_NAME;
 
#define DEFINE_POINTER_SUFFIX_TYPEDEFS(_structname_)
 
#define ADD_BENTLEY_TYPEDEFS1(_namespace_, _sourceName_, _name_, structclass)
 
#define ADD_BENTLEY_TYPEDEFS(_namespace_, _name_)   ADD_BENTLEY_TYPEDEFS1(_namespace_,_name_,_name_,struct)
 
#define ADD_BENTLEY_ENUM_TYPEDEF(_namespace_, _name_, _tEnum_)   namespace BENTLEY_NAMESPACE_NAME {typedef enum _namespace_ :: _name_ _tEnum_;}
 
#define BENTLEY_TYPEDEF(t, tP)   namespace BENTLEY_NAMESPACE_NAME {struct t; typedef struct BENTLEY_NAMESPACE_NAME::t* tP;}
 
#define BENTLEY_TYPEDEFS(_name_)   namespace BENTLEY_NAMESPACE_NAME {struct _name_;} ADD_BENTLEY_TYPEDEFS(BENTLEY_NAMESPACE_NAME,_name_)
 
#define BENTLEY_REF_COUNTED_PTR(_sname_)   namespace BENTLEY_NAMESPACE_NAME {struct _sname_; typedef RefCountedPtr<_sname_> _sname_##Ptr;}
 
#define NULL   0
 
#define Public
 
#define BEGIN_EXTERN_C   extern "C" {
 
#define END_EXTERN_C   }
 
#define ALLOW_NULL_OUTPUT(var, out)   _t_##var, &var(out?*out:_t_##var)
 
#define DEFINE_T_SUPER(B)   private: typedef B T_Super; public:
 
#define NOGDI
 NOTE: This is here because the Windows header file WinGDI.h defines ERROR to 0, which is a disaster for Bentley APIs where 0 means SUCCESS. More...
 
#define BENTLEYDLL_EXPORT   IMPORT_ATTRIBUTE
 

Typedefs

typedef __w64 unsigned long ULONG_PTR
 
typedef int StatusInt
 
typedef wchar_t WChar
 
typedef wchar_t const * WCharCP
 
typedef wchar_tWCharP
 
typedef char const * CharCP
 
typedef char * CharP
 
typedef Utf8CharUtf8P
 
typedef Utf8Char const * Utf8CP
 
typedef Utf16CharUtf16P
 
typedef Utf16Char const * Utf16CP
 
typedef void * UserDataP
 
typedef void const * UserDataCP
 
typedef void * CallbackArgP
 
typedef struct Bentley::WStringWStringP
 
typedef struct Bentley::WStringWStringR
 
typedef struct
Bentley::WString const * 
WStringCP
 
typedef struct
Bentley::WString const & 
WStringCR
 
typedef struct Bentley::AStringAStringP
 
typedef struct Bentley::AStringAStringR
 
typedef struct
Bentley::AString const * 
AStringCP
 
typedef struct
Bentley::AString const & 
AStringCR
 
typedef struct
Bentley::Utf8String
Utf8StringP
 
typedef struct
Bentley::Utf8String
Utf8StringR
 
typedef struct
Bentley::Utf8String const * 
Utf8StringCP
 
typedef struct
Bentley::Utf8String const & 
Utf8StringCR
 
typedef struct
Bentley::BeFileName * 
BeFileNameP
 
typedef struct
Bentley::BeFileName & 
BeFileNameR
 
typedef struct
Bentley::BeFileName const * 
BeFileNameCP
 
typedef struct
Bentley::BeFileName const & 
BeFileNameCR
 
typedef struct
Bentley::BeTextFile
BeTextFileP
 
typedef struct
Bentley::BeTextFile
BeTextFileR
 
typedef struct
Bentley::BeTextFile const * 
BeTextFileCP
 
typedef struct
Bentley::BeTextFile const & 
BeTextFileCR
 
typedef struct Bentley::BeIcon * BeIconP
 
typedef struct Bentley::BeIcon & BeIconR
 
typedef struct Bentley::BeIcon
const * 
BeIconCP
 
typedef struct Bentley::BeIcon
const & 
BeIconCR
 

Enumerations

enum  BentleyTrueFalse { TRUE = 1, FALSE = 0 }
 
enum  BentleyStatus { SUCCESS = 0, BSISUCCESS = 0, ERROR = 0x8000, BSIERROR = 0x8000 }
 
enum  BentleyCharEncoding { Locale = 0, Utf8 = 1 }
 

Detailed Description

Defines typedefs and constants that can be used across other namespaces. All Bentley-authored C++ source files must include Bentley.h (Bentley/Bentley.h).


Copyright © 2017 Bentley Systems, Incorporated. All rights reserved.