.. _global: .. index:: pair: namespace; global Global Namespace ================ .. toctree:: :hidden: namespace_EE.rst namespace_std.rst Overview ~~~~~~~~ .. ref-code-block:: cpp :class: doxyrest-overview-code-block // namespaces namespace :ref:`EE`; namespace :ref:`EE::Audio`; namespace :ref:`EE::Graphics`; namespace :ref:`EE::Math`; namespace :ref:`EE::Math::easing`; namespace :ref:`EE::Network`; namespace :ref:`EE::Network::SSL`; namespace :ref:`EE::Scene`; namespace :ref:`EE::Scene::Actions`; namespace :ref:`EE::System`; namespace :ref:`EE::UI`; namespace :ref:`EE::UI::Abstract`; namespace :ref:`EE::UI::CSS`; namespace :ref:`EE::UI::Doc`; namespace :ref:`EE::UI::Models`; namespace :ref:`EE::UI::Tools`; namespace :ref:`EE::Window`; namespace :ref:`std`; // global functions template std::size_t :target:`hashCombine`(std::size_t h1, std::size_t h2, T... other); // macros #define :target:`AXIS_MAX` #define :target:`AXIS_MIN` #define :target:`EEPP_CODENAME` #define :target:`EEPP_COMPILEDVERSION` #define :target:`EEPP_MAJOR_VERSION` #define :target:`EEPP_MINOR_VERSION` #define :target:`EEPP_PATCH_LEVEL` #define :ref:`EEPP_VERSION`(x) #define :target:`EEPP_VERSIONNUM`(X, Y, Z) #define :target:`EEPP_VERSION_ATLEAST`(X, Y, Z) #define :target:`EE_180_PI` #define :target:`EE_1B` #define :target:`EE_1GB` #define :target:`EE_1KB` #define :target:`EE_1MB` #define :target:`EE_1TB` #define :target:`EE_360_PI` #define :target:`EE_API` #define :target:`EE_APPACTIVE` #define :target:`EE_APPINPUTFOCUS` #define :target:`EE_APPMOUSEFOCUS` #define :ref:`EE_BACKEND_SDL_ACTIVE` #define :target:`EE_BIG_ENDIAN` #define :target:`EE_BUTTON_MASK`(X) #define :target:`EE_DEBUG` #define :target:`EE_ENDIAN` #define :target:`EE_KEYS_NUM` #define :target:`EE_KEYS_SPACE` #define :target:`EE_LITTLE_ENDIAN` #define :target:`EE_MAIN_FUNC` #define :target:`EE_MAX_FINGERS` #define :target:`EE_MAX_PLANES` #define :target:`EE_MAX_TEXTURE_UNITS` #define :target:`EE_PI` #define :target:`EE_PI2` #define :target:`EE_PI_180` #define :target:`EE_PI_360` #define :target:`EE_PLATFORM_ANDROID` #define :target:`EE_PLATFORM_BSD` #define :target:`EE_PLATFORM_EMSCRIPTEN` #define :target:`EE_PLATFORM_HAIKU` #define :target:`EE_PLATFORM_IOS` #define :target:`EE_PLATFORM_LINUX` #define :target:`EE_PLATFORM_MACOS` #define :target:`EE_PLATFORM_SOLARIS` #define :target:`EE_PLATFORM_WIN` #define :target:`EE_SCREEN_KEYBOARD_ENABLED` #define :target:`EE_SHADERS_SUPPORTED` #define :target:`EE_SUPPORT_EXCEPTIONS` #define :target:`EE_TEXTURE_ATLAS_EXTENSION` #define :target:`EE_TEXTURE_ATLAS_MAGIC` #define :target:`EE_TEXT_INPUT_SIZE` #define :target:`GL_FP` #define :ref:`GL_MULTISAMPLE` #define :target:`HDR_HASH_SIZE` #define :target:`HDR_NAME_SIZE` #define :target:`HDR_TEXTUREREGION_FLAG_FLIPED` #define :target:`HDR_TEXTURE_ATLAS_ALLOW_FLIPPING` #define :target:`HDR_TEXTURE_ATLAS_POW_OF_TWO` #define :target:`HDR_TEXTURE_ATLAS_REMOVE_EXTENSION` #define :target:`HDR_TEXTURE_ATLAS_SCALABLE_SVG` #define :target:`HDR_TEXTURE_ATLAS_VERSION` #define :target:`KEYMOD_ALT` #define :target:`KEYMOD_COUNT` #define :target:`KEYMOD_CTRL` #define :target:`KEYMOD_CTRL_SHIFT_ALT_META` #define :target:`KEYMOD_DEFAULT_MODIFIER` #define :target:`KEYMOD_META` #define :target:`KEYMOD_SHIFT` #define :target:`KEY_SCANCODE_MASK` #define :target:`MAX_JOYSTICKS` #define :target:`MAX_KEYNAME` #define :target:`MAX_SUB_SYNTAXS` #define :target:`MAX_VALUEDATA` #define :target:`MAX_VALUENAME` #define :target:`SCANCODE_TO_KEYCODE`(X) #define :ref:`SINGLETON_DECLARE_HEADERS`(T) #define :target:`SINGLETON_DECLARE_IMPLEMENTATION`(T) #define :target:`SYNTAX_TOKENIZER_STATE_NONE` #define :target:`THREADS_AUTO` #define :target:`UI_HALIGN_LEFT` #define :target:`UI_HALIGN_MASK` #define :target:`UI_MESSAGE_BOX_DEFAULT_FLAGS` #define :target:`UI_VALIGN_MASK` #define :target:`UI_VALIGN_TOP` #define :target:`VERTEX_FLAGS_COUNT` #define :target:`VERTEX_FLAGS_COUNT_ARR` #define :ref:`VERTEX_FLAGS_DEFAULT` #define :ref:`VERTEX_FLAGS_PRIMITIVE` #define :target:`VERTEX_FLAG_GET`(X) #define :target:`VERTEX_FLAG_QUERY`(F, X) #define :target:`VERTEX_FLAG_SET`(F, X) #define :target:`eeARRAY_SIZE`(__array) #define :target:`eeASSERT`(expr) #define :target:`eeASSERTM`(expr, msg) #define :target:`eeCOMMA` #define :target:`eeDelete`(data) #define :target:`eeDeleteArray`(data) #define :target:`eeFree`(data) #define :target:`eeINDEX_NOT_FOUND` #define :target:`eeMalloc`(amount) #define :target:`eeNew`(classType, constructor) #define :target:`eeNewArray`(classType, amount) #define :target:`eeNewInPlace`(place, classType, constructor) #define :target:`eeNewTracked`(classType, constructor) #define :target:`eeRealloc`(ptr, amount) #define :target:`eeSAFE_DELETE`(p) #define :target:`eeSAFE_DELETE_ARRAY`(p) #define :target:`eeSAFE_FREE`(p) #define :target:`eeabs` #define :target:`eeacos` #define :target:`eeatan2` #define :target:`eeceil` #define :target:`eecos` #define :target:`eeexp` #define :target:`eefloor` #define :target:`eemod` #define :target:`eepow` #define :target:`eesin` #define :ref:`eesqrt` #define :target:`eetan` #define :target:`eevsnprintf`(str, size, format, args) #define :target:`likely`(x) #define :target:`unlikely`(x) .. _details-global: Detailed Documentation ~~~~~~~~~~~~~~~~~~~~~~ Macros ------ .. index:: pair: define; EEPP_VERSION .. _doxid-version_8hpp_1a9aa7586e6f6327ad5f788a2be30dba30: .. ref-code-block:: cpp :class: doxyrest-title-code-block #define EEPP_VERSION(x) The compiled version of the library .. index:: pair: define; EE_BACKEND_SDL_ACTIVE .. _doxid-config_8hpp_1ab0bd36de35fe6a85b72f1fefcfb93b71: .. ref-code-block:: cpp :class: doxyrest-title-code-block #define EE_BACKEND_SDL_ACTIVE Since :ref:`EE ` just use basic POSIX stuff, declare as POSIX some OS that are mostly POSIX-compliant. Activate at least one backend for the compilation .. index:: pair: define; GL_MULTISAMPLE .. _doxid-opengl_8hpp_1aa2b6486ff7ecee8bf04e3371f197527a: .. ref-code-block:: cpp :class: doxyrest-title-code-block #define GL_MULTISAMPLE GL2 and GL3 ( PC platform ) Wrap GLES2 functions Exclusive only when its compiling only for GLES2 Exclusive when its compiling only for GLES1 .. index:: pair: define; SINGLETON_DECLARE_HEADERS .. _doxid-singleton_8hpp_1a17739c169ed504b5cfe7bf990543a80e: .. ref-code-block:: cpp :class: doxyrest-title-code-block #define SINGLETON_DECLARE_HEADERS(T) Internally we gonna use the macro singleton because it works with the engine compiled as dynamic libraries .. index:: pair: define; VERTEX_FLAGS_DEFAULT .. _doxid-vertexbufferhelper_8hpp_1af2df98f5c1c12ae0480513e5cda28e51: .. ref-code-block:: cpp :class: doxyrest-title-code-block #define VERTEX_FLAGS_DEFAULT Vertex data will have position, color and texture UV. .. index:: pair: define; VERTEX_FLAGS_PRIMITIVE .. _doxid-vertexbufferhelper_8hpp_1a9aa9b1169d462e7b1a72dd97d1e42523: .. ref-code-block:: cpp :class: doxyrest-title-code-block #define VERTEX_FLAGS_PRIMITIVE Vertex data will have position and color. .. index:: pair: define; eesqrt .. _doxid-config_8hpp_1a3343da1532071f925bd14fbb65b89102: .. ref-code-block:: cpp :class: doxyrest-title-code-block #define eesqrt The internal floating point used on EE++. This can help to improve compatibility with some platforms. And helps for an easy change from single precision to double precision.