All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
Loading...
Searching...
No Matches
System.h File Reference

Platform-specific macros and data types. More...

Macros

#define VU_API   __attribute__((visibility("default")))
 Platform-specific preprocessor definitions.
 
#define VU_API_CALL
 Preprocessor definition for calling convention.
 
#define VU_ENUM(_type)
 Cross-platform macro for storing the value of the C++ language standard targeted by the compiler as an integer literal.
 
#define VU_CONST_INT(name, value)
 Macro for defining a compile-time integer constant.
 

Detailed Description

Platform-specific macros and data types.

Macro Definition Documentation

◆ VU_API

#define VU_API   __attribute__((visibility("default")))

Platform-specific preprocessor definitions.

Define exporting / importing of functions from module

◆ VU_ENUM

#define VU_ENUM ( _type)
Value:
typedef int32_t _type; \
enum

Cross-platform macro for storing the value of the C++ language standard targeted by the compiler as an integer literal.

Note
The MSVC compiler does not conform to the C++ standard regarding the __cplusplus macro. Unless the /Zc:__cplusplus compiler option is enabled in Visual Studio 2017 v15.7 or above, the __cplusplus macro always reports 199711L (C++98). The _MSVC_LANG macro stores the expected C++ language standard value in Visual Studio 2015 Update 3 and above.

Macro for defining enums

Note
In order to enforce the size of the enum type for ABI compatibility, use the underlying type feature of enums if the compiler is targeting C++11 and above, otherwise use int32_t for fixed size.

◆ VU_CONST_INT

#define VU_CONST_INT ( name,
value )
Value:
enum \
{ \
name = value \
}

Macro for defining a compile-time integer constant.