diff --git a/third_party/glm_test/.gitignore b/third_party/glm_test/.gitignore new file mode 100644 index 0000000000000..ec55f089550ed --- /dev/null +++ b/third_party/glm_test/.gitignore @@ -0,0 +1,54 @@ +# Compiled Object files +*.slo +*.lo +*.o +*.obj + +# Precompiled Headers +*.gch +*.pch + +# Compiled Dynamic libraries +*.so +*.dylib +*.dll + +# Fortran module files +*.mod + +# Compiled Static libraries +*.lai +*.la +*.a +*.lib + +# Executables +*.exe +*.out +*.app + +# CMake +CMakeCache.txt +CMakeFiles +cmake_install.cmake +install_manifest.txt +*.cmake +# ^ May need to add future .cmake files as exceptions + +# Test logs +Testing/* + +# Test input +test/gtc/*.dds + +# Project Files +Makefile +*.cbp +*.user + +# Misc. +*.log + +# local build(s) +build* + diff --git a/third_party/glm_test/CMakeLists.txt b/third_party/glm_test/CMakeLists.txt new file mode 100644 index 0000000000000..bdb9f434523dd --- /dev/null +++ b/third_party/glm_test/CMakeLists.txt @@ -0,0 +1,227 @@ +cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_policy(VERSION 2.6) +if (NOT CMAKE_VERSION VERSION_LESS "3.1") + cmake_policy(SET CMP0054 NEW) +endif() + +project(glm) +set(GLM_VERSION "0.9.9") + +list(APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR}/cmake") + +include(GNUInstallDirs) +include(CMakePackageConfigHelpers) + +enable_testing() + +add_definitions(-D_CRT_SECURE_NO_WARNINGS) + +option(GLM_STATIC_LIBRARY_ENABLE "GLM static library" OFF) +if(GLM_STATIC_LIBRARY_ENABLE) + message(STATUS "GLM is a header only library, no need to build it. Set the option GLM_STATIC_LIBRARY_ENABLE with ON to build an optional static library") +endif() + +option(GLM_DYNAMIC_LIBRARY_ENABLE "GLM static library" OFF) +if(GLM_DYNAMIC_LIBRARY_ENABLE) + message(STATUS "GLM is a header only library, no need to build it. Set the option GLM_DYNAMIC_LIBRARY_ENABLE with ON to build an optional dynamic library") +endif() + +option(GLM_TEST_ENABLE "GLM test" OFF) +if(NOT GLM_TEST_ENABLE) + message(STATUS "GLM is a header only library, no need to build it. Set the option GLM_TEST_ENABLE with ON to build and run the test bench") +endif() + +option(GLM_TEST_ENABLE_FAST_MATH "Enable fast math optimizations" OFF) + +if(("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") OR ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") OR (("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel") AND UNIX)) + option(GLM_TEST_ENABLE_CXX_98 "Enable C++ 98" OFF) + option(GLM_TEST_ENABLE_CXX_0X "Enable C++ 0x" OFF) + option(GLM_TEST_ENABLE_CXX_11 "Enable C++ 11" OFF) + option(GLM_TEST_ENABLE_CXX_1Y "Enable C++ 1y" OFF) + option(GLM_TEST_ENABLE_CXX_14 "Enable C++ 14" OFF) + option(GLM_TEST_ENABLE_CXX_1Z "Enable C++ 1z" OFF) + + if(GLM_TEST_ENABLE_CXX_1Z) + set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LANGUAGE_STANDARD "c++1z") + set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY "libc++") + set(CMAKE_CXX_FLAGS "-std=c++1Z") + elseif(GLM_TEST_ENABLE_CXX_14) + set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LANGUAGE_STANDARD "c++14") + set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY "libc++") + set(CMAKE_CXX_FLAGS "-std=c++14") + elseif(GLM_TEST_ENABLE_CXX_1Y) + set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LANGUAGE_STANDARD "c++1y") + set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY "libc++") + set(CMAKE_CXX_FLAGS "-std=c++1y") + elseif(GLM_TEST_ENABLE_CXX_11) + set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LANGUAGE_STANDARD "c++11") + set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY "libc++") + set(CMAKE_CXX_FLAGS "-std=c++11") + elseif(GLM_TEST_ENABLE_CXX_0X) + set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LANGUAGE_STANDARD "c++0x") + set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY "libc++") + set(CMAKE_CXX_FLAGS "-std=c++0x") + elseif(GLM_TEST_ENABLE_CXX_98) + set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LANGUAGE_STANDARD "c++98") + set(CMAKE_XCODE_ATTRIBUTE_CLANG_CXX_LIBRARY "libc++") + set(CMAKE_CXX_FLAGS "-std=c++98") + if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU") + add_definitions(-Wno-long-long) + endif() + endif() +endif() + +option(GLM_TEST_ENABLE_LANG_EXTENSIONS "Enable language extensions" OFF) + +if(GLM_TEST_ENABLE_LANG_EXTENSIONS) + if(GLM_TEST_ENABLE_FAST_MATH) + if(CMAKE_COMPILER_IS_GNUCXX) + add_definitions(-ffast-math) + endif() + + if(MSVC) + add_definitions(/fp:fast) + endif() + elseif(NOT GLM_TEST_ENABLE_FAST_MATH) + if(MSVC) + add_definitions(/fp:precise) + endif() + endif() +else() + if(("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC") OR (("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Intel") AND WIN32)) + add_definitions(/Za) + elseif(("${CMAKE_CXX_COMPILER_ID}" STREQUAL "Clang") OR ("${CMAKE_CXX_COMPILER_ID}" STREQUAL "GNU")) + add_definitions(-pedantic) + endif() +endif() + +option(GLM_TEST_ENABLE_SIMD_SSE2 "Enable SSE2 optimizations" OFF) +option(GLM_TEST_ENABLE_SIMD_SSE3 "Enable SSE3 optimizations" OFF) +option(GLM_TEST_ENABLE_SIMD_AVX "Enable AVX optimizations" OFF) +option(GLM_TEST_ENABLE_SIMD_AVX2 "Enable AVX2 optimizations" OFF) +option(GLM_TEST_FORCE_PURE "Force 'pure' instructions" OFF) + +if(GLM_TEST_FORCE_PURE) + add_definitions(-DGLM_FORCE_PURE) + + if(CMAKE_COMPILER_IS_GNUCXX) + add_definitions(-mfpmath=387) + endif() +elseif(GLM_TEST_ENABLE_SIMD_AVX2) + if(CMAKE_COMPILER_IS_GNUCXX) + add_definitions(-mavx2) + elseif(GLM_USE_INTEL) + add_definitions(/QxAVX2) + elseif(MSVC) + add_definitions(/arch:AVX2) + endif() +elseif(GLM_TEST_ENABLE_SIMD_AVX) + if(CMAKE_COMPILER_IS_GNUCXX) + add_definitions(-mavx) + elseif(GLM_USE_INTEL) + add_definitions(/QxAVX) + elseif(MSVC) + add_definitions(/arch:AVX) + endif() +elseif(GLM_TEST_ENABLE_SIMD_SSE3) + if(CMAKE_COMPILER_IS_GNUCXX) + add_definitions(-msse3) + elseif(GLM_USE_INTEL) + add_definitions(/QxSSE3) + elseif(MSVC AND NOT CMAKE_CL_64) + add_definitions(/arch:SSE2) # VC doesn't support /arch:SSE3 + endif() +elseif(GLM_TEST_ENABLE_SIMD_SSE2) + if(CMAKE_COMPILER_IS_GNUCXX) + add_definitions(-msse2) + elseif(GLM_USE_INTEL) + add_definitions(/QxSSE2) + elseif(MSVC AND NOT CMAKE_CL_64) + add_definitions(/arch:SSE2) + endif() +endif() + +if(CMAKE_COMPILER_IS_GNUCXX) + #add_definitions(-S) + #add_definitions(-s) + add_definitions(-O2) + + #add_definitions(-fprofile-arcs -ftest-coverage) gcov + #ctest_enable_coverage() +endif() + +if("${CMAKE_CXX_COMPILER_ID}" STREQUAL "MSVC") + add_definitions(/FAs) +endif() + +include_directories("${PROJECT_SOURCE_DIR}") +include_directories("${PROJECT_SOURCE_DIR}/test/external") + +add_subdirectory(glm) +add_subdirectory(test) + +set(GLM_INSTALL_CONFIGDIR "${CMAKE_INSTALL_LIBDIR}/cmake/glm") +install(DIRECTORY glm DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) + +write_basic_package_version_file( + "${CMAKE_CURRENT_BINARY_DIR}/glmVersion.cmake" + VERSION ${GLM_VERSION} + COMPATIBILITY AnyNewerVersion +) + +# build tree package config +configure_file( + cmake/glmBuildConfig.cmake.in + glmConfig.cmake + @ONLY +) + +# install tree package config +configure_package_config_file( + cmake/glmConfig.cmake.in + ${GLM_INSTALL_CONFIGDIR}/glmConfig.cmake + INSTALL_DESTINATION ${GLM_INSTALL_CONFIGDIR} + PATH_VARS CMAKE_INSTALL_INCLUDEDIR + NO_CHECK_REQUIRED_COMPONENTS_MACRO +) + +install( + FILES + "${CMAKE_CURRENT_BINARY_DIR}/${GLM_INSTALL_CONFIGDIR}/glmConfig.cmake" + "${CMAKE_CURRENT_BINARY_DIR}/glmVersion.cmake" + DESTINATION ${GLM_INSTALL_CONFIGDIR} +) + +if (NOT CMAKE_VERSION VERSION_LESS "3.0") + add_library(glm INTERFACE) + target_include_directories(glm INTERFACE + $ + $ + ) + install(TARGETS glm EXPORT glmTargets) + + export( + EXPORT glmTargets + FILE "${CMAKE_CURRENT_BINARY_DIR}/glmTargets.cmake" + ) + + install( + EXPORT glmTargets FILE glmTargets.cmake + DESTINATION ${GLM_INSTALL_CONFIGDIR} + ) +endif() + +# build pkg-config file +configure_file( + "./cmake/glm.pc.in" + "glm.pc" + @ONLY +) + +# install pkg-config file +install( + FILES "${CMAKE_CURRENT_BINARY_DIR}/glm.pc" + DESTINATION "${CMAKE_INSTALL_LIBDIR}/pkgconfig" +) + +export(PACKAGE glm) diff --git a/third_party/glm_test/cmake/CMakePackageConfigHelpers.cmake b/third_party/glm_test/cmake/CMakePackageConfigHelpers.cmake new file mode 100644 index 0000000000000..d5bf4a2fa4e9a --- /dev/null +++ b/third_party/glm_test/cmake/CMakePackageConfigHelpers.cmake @@ -0,0 +1,227 @@ +# - CONFIGURE_PACKAGE_CONFIG_FILE(), WRITE_BASIC_PACKAGE_VERSION_FILE() +# +# CONFIGURE_PACKAGE_CONFIG_FILE( INSTALL_DESTINATION +# [PATH_VARS ... ] +# [NO_SET_AND_CHECK_MACRO] +# [NO_CHECK_REQUIRED_COMPONENTS_MACRO]) +# +# CONFIGURE_PACKAGE_CONFIG_FILE() should be used instead of the plain +# CONFIGURE_FILE() command when creating the Config.cmake or -config.cmake +# file for installing a project or library. It helps making the resulting package +# relocatable by avoiding hardcoded paths in the installed Config.cmake file. +# +# In a FooConfig.cmake file there may be code like this to make the +# install destinations know to the using project: +# set(FOO_INCLUDE_DIR "@CMAKE_INSTALL_FULL_INCLUDEDIR@" ) +# set(FOO_DATA_DIR "@CMAKE_INSTALL_PREFIX@/@RELATIVE_DATA_INSTALL_DIR@" ) +# set(FOO_ICONS_DIR "@CMAKE_INSTALL_PREFIX@/share/icons" ) +# ...logic to determine installedPrefix from the own location... +# set(FOO_CONFIG_DIR "${installedPrefix}/@CONFIG_INSTALL_DIR@" ) +# All 4 options shown above are not sufficient, since the first 3 hardcode +# the absolute directory locations, and the 4th case works only if the logic +# to determine the installedPrefix is correct, and if CONFIG_INSTALL_DIR contains +# a relative path, which in general cannot be guaranteed. +# This has the effect that the resulting FooConfig.cmake file would work poorly +# under Windows and OSX, where users are used to choose the install location +# of a binary package at install time, independent from how CMAKE_INSTALL_PREFIX +# was set at build/cmake time. +# +# Using CONFIGURE_PACKAGE_CONFIG_FILE() helps. If used correctly, it makes the +# resulting FooConfig.cmake file relocatable. +# Usage: +# 1. write a FooConfig.cmake.in file as you are used to +# 2. insert a line containing only the string "@PACKAGE_INIT@" +# 3. instead of SET(FOO_DIR "@SOME_INSTALL_DIR@"), use SET(FOO_DIR "@PACKAGE_SOME_INSTALL_DIR@") +# (this must be after the @PACKAGE_INIT@ line) +# 4. instead of using the normal CONFIGURE_FILE(), use CONFIGURE_PACKAGE_CONFIG_FILE() +# +# The and arguments are the input and output file, the same way +# as in CONFIGURE_FILE(). +# +# The given to INSTALL_DESTINATION must be the destination where the FooConfig.cmake +# file will be installed to. This can either be a relative or absolute path, both work. +# +# The variables to given as PATH_VARS are the variables which contain +# install destinations. For each of them the macro will create a helper variable +# PACKAGE_. These helper variables must be used +# in the FooConfig.cmake.in file for setting the installed location. They are calculated +# by CONFIGURE_PACKAGE_CONFIG_FILE() so that they are always relative to the +# installed location of the package. This works both for relative and also for absolute locations. +# For absolute locations it works only if the absolute location is a subdirectory +# of CMAKE_INSTALL_PREFIX. +# +# By default configure_package_config_file() also generates two helper macros, +# set_and_check() and check_required_components() into the FooConfig.cmake file. +# +# set_and_check() should be used instead of the normal set() +# command for setting directories and file locations. Additionally to setting the +# variable it also checks that the referenced file or directory actually exists +# and fails with a FATAL_ERROR otherwise. This makes sure that the created +# FooConfig.cmake file does not contain wrong references. +# When using the NO_SET_AND_CHECK_MACRO, this macro is not generated into the +# FooConfig.cmake file. +# +# check_required_components() should be called at the end of the +# FooConfig.cmake file if the package supports components. +# This macro checks whether all requested, non-optional components have been found, +# and if this is not the case, sets the Foo_FOUND variable to FALSE, so that the package +# is considered to be not found. +# It does that by testing the Foo__FOUND variables for all requested +# required components. +# When using the NO_CHECK_REQUIRED_COMPONENTS option, this macro is not generated +# into the FooConfig.cmake file. +# +# For an example see below the documentation for WRITE_BASIC_PACKAGE_VERSION_FILE(). +# +# +# WRITE_BASIC_PACKAGE_VERSION_FILE( filename VERSION major.minor.patch COMPATIBILITY (AnyNewerVersion|SameMajorVersion|ExactVersion) ) +# +# Writes a file for use as ConfigVersion.cmake file to . +# See the documentation of FIND_PACKAGE() for details on this. +# filename is the output filename, it should be in the build tree. +# major.minor.patch is the version number of the project to be installed +# The COMPATIBILITY mode AnyNewerVersion means that the installed package version +# will be considered compatible if it is newer or exactly the same as the requested version. +# This mode should be used for packages which are fully backward compatible, +# also across major versions. +# If SameMajorVersion is used instead, then the behaviour differs from AnyNewerVersion +# in that the major version number must be the same as requested, e.g. version 2.0 will +# not be considered compatible if 1.0 is requested. +# This mode should be used for packages which guarantee backward compatibility within the +# same major version. +# If ExactVersion is used, then the package is only considered compatible if the requested +# version matches exactly its own version number (not considering the tweak version). +# For example, version 1.2.3 of a package is only considered compatible to requested version 1.2.3. +# This mode is for packages without compatibility guarantees. +# If your project has more elaborated version matching rules, you will need to write your +# own custom ConfigVersion.cmake file instead of using this macro. +# +# Internally, this macro executes configure_file() to create the resulting +# version file. Depending on the COMPATIBILITY, either the file +# BasicConfigVersion-SameMajorVersion.cmake.in or BasicConfigVersion-AnyNewerVersion.cmake.in +# is used. Please note that these two files are internal to CMake and you should +# not call configure_file() on them yourself, but they can be used as starting +# point to create more sophisticted custom ConfigVersion.cmake files. +# +# +# Example using both configure_package_config_file() and write_basic_package_version_file(): +# CMakeLists.txt: +# set(INCLUDE_INSTALL_DIR include/ ... CACHE ) +# set(LIB_INSTALL_DIR lib/ ... CACHE ) +# set(SYSCONFIG_INSTALL_DIR etc/foo/ ... CACHE ) +# ... +# include(CMakePackageConfigHelpers) +# configure_package_config_file(FooConfig.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/FooConfig.cmake +# INSTALL_DESTINATION ${LIB_INSTALL_DIR}/Foo/cmake +# PATH_VARS INCLUDE_INSTALL_DIR SYSCONFIG_INSTALL_DIR) +# write_basic_package_version_file(${CMAKE_CURRENT_BINARY_DIR}/FooConfigVersion.cmake +# VERSION 1.2.3 +# COMPATIBILITY SameMajorVersion ) +# install(FILES ${CMAKE_CURRENT_BINARY_DIR}/FooConfig.cmake ${CMAKE_CURRENT_BINARY_DIR}/FooConfigVersion.cmake +# DESTINATION ${LIB_INSTALL_DIR}/Foo/cmake ) +# +# With a FooConfig.cmake.in: +# set(FOO_VERSION x.y.z) +# ... +# @PACKAGE_INIT@ +# ... +# set_and_check(FOO_INCLUDE_DIR "@PACKAGE_INCLUDE_INSTALL_DIR@") +# set_and_check(FOO_SYSCONFIG_DIR "@PACKAGE_SYSCONFIG_INSTALL_DIR@") +# +# check_required_components(Foo) + + +#============================================================================= +# Copyright 2012 Alexander Neundorf +# +# Distributed under the OSI-approved BSD License (the "License"); +# see accompanying file Copyright.txt for details. +# +# This software is distributed WITHOUT ANY WARRANTY; without even the +# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the License for more information. +#============================================================================= +# (To distribute this file outside of CMake, substitute the full +# License text for the above reference.) + +include(CMakeParseArguments) + +include(WriteBasicConfigVersionFile) + +macro(WRITE_BASIC_PACKAGE_VERSION_FILE) + write_basic_config_version_file(${ARGN}) +endmacro() + + +function(CONFIGURE_PACKAGE_CONFIG_FILE _inputFile _outputFile) + set(options NO_SET_AND_CHECK_MACRO NO_CHECK_REQUIRED_COMPONENTS_MACRO) + set(oneValueArgs INSTALL_DESTINATION ) + set(multiValueArgs PATH_VARS ) + + cmake_parse_arguments(CCF "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN}) + + if(CCF_UNPARSED_ARGUMENTS) + message(FATAL_ERROR "Unknown keywords given to CONFIGURE_PACKAGE_CONFIG_FILE(): \"${CCF_UNPARSED_ARGUMENTS}\"") + endif() + + if(NOT CCF_INSTALL_DESTINATION) + message(FATAL_ERROR "No INSTALL_DESTINATION given to CONFIGURE_PACKAGE_CONFIG_FILE()") + endif() + + if(IS_ABSOLUTE "${CCF_INSTALL_DESTINATION}") + set(absInstallDir "${CCF_INSTALL_DESTINATION}") + else() + set(absInstallDir "${CMAKE_INSTALL_PREFIX}/${CCF_INSTALL_DESTINATION}") + endif() + file(RELATIVE_PATH PACKAGE_RELATIVE_PATH "${absInstallDir}" "${CMAKE_INSTALL_PREFIX}" ) + + foreach(var ${CCF_PATH_VARS}) + if(NOT DEFINED ${var}) + message(FATAL_ERROR "Variable ${var} does not exist") + else() + if(IS_ABSOLUTE "${${var}}") + string(REPLACE "${CMAKE_INSTALL_PREFIX}" "\${PACKAGE_PREFIX_DIR}" + PACKAGE_${var} "${${var}}") + else() + set(PACKAGE_${var} "\${PACKAGE_PREFIX_DIR}/${${var}}") + endif() + endif() + endforeach() + + set(PACKAGE_INIT " +####### Expanded from @PACKAGE_INIT@ by configure_package_config_file() ####### +get_filename_component(PACKAGE_PREFIX_DIR \"\${CMAKE_CURRENT_LIST_DIR}/${PACKAGE_RELATIVE_PATH}\" ABSOLUTE) +") + + if(NOT CCF_NO_SET_AND_CHECK_MACRO) + set(PACKAGE_INIT "${PACKAGE_INIT} +macro(set_and_check _var _file) + set(\${_var} \"\${_file}\") + if(NOT EXISTS \"\${_file}\") + message(FATAL_ERROR \"File or directory \${_file} referenced by variable \${_var} does not exist !\") + endif() +endmacro() +") + endif() + + + if(NOT CCF_NO_CHECK_REQUIRED_COMPONENTS_MACRO) + set(PACKAGE_INIT "${PACKAGE_INIT} +macro(check_required_components _NAME) + foreach(comp \${\${_NAME}_FIND_COMPONENTS}) + if(NOT \${_NAME}_\${comp}_FOUND) + if(\${_NAME}_FIND_REQUIRED_\${comp}) + set(\${_NAME}_FOUND FALSE) + endif() + endif() + endforeach(comp) +endmacro() +") + endif() + + set(PACKAGE_INIT "${PACKAGE_INIT} +####################################################################################") + + configure_file("${_inputFile}" "${_outputFile}" @ONLY) + +endfunction() diff --git a/third_party/glm_test/cmake/GNUInstallDirs.cmake b/third_party/glm_test/cmake/GNUInstallDirs.cmake new file mode 100644 index 0000000000000..4dc2d68a4ad62 --- /dev/null +++ b/third_party/glm_test/cmake/GNUInstallDirs.cmake @@ -0,0 +1,188 @@ +# - Define GNU standard installation directories +# Provides install directory variables as defined for GNU software: +# http://www.gnu.org/prep/standards/html_node/Directory-Variables.html +# Inclusion of this module defines the following variables: +# CMAKE_INSTALL_ - destination for files of a given type +# CMAKE_INSTALL_FULL_ - corresponding absolute path +# where is one of: +# BINDIR - user executables (bin) +# SBINDIR - system admin executables (sbin) +# LIBEXECDIR - program executables (libexec) +# SYSCONFDIR - read-only single-machine data (etc) +# SHAREDSTATEDIR - modifiable architecture-independent data (com) +# LOCALSTATEDIR - modifiable single-machine data (var) +# LIBDIR - object code libraries (lib or lib64 or lib/ on Debian) +# INCLUDEDIR - C header files (include) +# OLDINCLUDEDIR - C header files for non-gcc (/usr/include) +# DATAROOTDIR - read-only architecture-independent data root (share) +# DATADIR - read-only architecture-independent data (DATAROOTDIR) +# INFODIR - info documentation (DATAROOTDIR/info) +# LOCALEDIR - locale-dependent data (DATAROOTDIR/locale) +# MANDIR - man documentation (DATAROOTDIR/man) +# DOCDIR - documentation root (DATAROOTDIR/doc/PROJECT_NAME) +# Each CMAKE_INSTALL_ value may be passed to the DESTINATION options of +# install() commands for the corresponding file type. If the includer does +# not define a value the above-shown default will be used and the value will +# appear in the cache for editing by the user. +# Each CMAKE_INSTALL_FULL_ value contains an absolute path constructed +# from the corresponding destination by prepending (if necessary) the value +# of CMAKE_INSTALL_PREFIX. + +#============================================================================= +# Copyright 2011 Nikita Krupen'ko +# Copyright 2011 Kitware, Inc. +# +# Distributed under the OSI-approved BSD License (the "License"); +# see accompanying file Copyright.txt for details. +# +# This software is distributed WITHOUT ANY WARRANTY; without even the +# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +# See the License for more information. +#============================================================================= +# (To distribute this file outside of CMake, substitute the full +# License text for the above reference.) + +# Installation directories +# +if(NOT DEFINED CMAKE_INSTALL_BINDIR) + set(CMAKE_INSTALL_BINDIR "bin" CACHE PATH "user executables (bin)") +endif() + +if(NOT DEFINED CMAKE_INSTALL_SBINDIR) + set(CMAKE_INSTALL_SBINDIR "sbin" CACHE PATH "system admin executables (sbin)") +endif() + +if(NOT DEFINED CMAKE_INSTALL_LIBEXECDIR) + set(CMAKE_INSTALL_LIBEXECDIR "libexec" CACHE PATH "program executables (libexec)") +endif() + +if(NOT DEFINED CMAKE_INSTALL_SYSCONFDIR) + set(CMAKE_INSTALL_SYSCONFDIR "etc" CACHE PATH "read-only single-machine data (etc)") +endif() + +if(NOT DEFINED CMAKE_INSTALL_SHAREDSTATEDIR) + set(CMAKE_INSTALL_SHAREDSTATEDIR "com" CACHE PATH "modifiable architecture-independent data (com)") +endif() + +if(NOT DEFINED CMAKE_INSTALL_LOCALSTATEDIR) + set(CMAKE_INSTALL_LOCALSTATEDIR "var" CACHE PATH "modifiable single-machine data (var)") +endif() + +if(NOT DEFINED CMAKE_INSTALL_LIBDIR) + set(_LIBDIR_DEFAULT "lib") + # Override this default 'lib' with 'lib64' iff: + # - we are on Linux system but NOT cross-compiling + # - we are NOT on debian + # - we are on a 64 bits system + # reason is: amd64 ABI: http://www.x86-64.org/documentation/abi.pdf + # For Debian with multiarch, use 'lib/${CMAKE_LIBRARY_ARCHITECTURE}' if + # CMAKE_LIBRARY_ARCHITECTURE is set (which contains e.g. "i386-linux-gnu" + # See http://wiki.debian.org/Multiarch + if((CMAKE_SYSTEM_NAME MATCHES "Linux|kFreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "GNU") + AND NOT CMAKE_CROSSCOMPILING) + if (EXISTS "/etc/debian_version") # is this a debian system ? + if(CMAKE_LIBRARY_ARCHITECTURE) + set(_LIBDIR_DEFAULT "lib/${CMAKE_LIBRARY_ARCHITECTURE}") + endif() + else() # not debian, rely on CMAKE_SIZEOF_VOID_P: + if(NOT DEFINED CMAKE_SIZEOF_VOID_P) + message(AUTHOR_WARNING + "Unable to determine default CMAKE_INSTALL_LIBDIR directory because no target architecture is known. " + "Please enable at least one language before including GNUInstallDirs.") + else() + if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8") + set(_LIBDIR_DEFAULT "lib64") + endif() + endif() + endif() + endif() + set(CMAKE_INSTALL_LIBDIR "${_LIBDIR_DEFAULT}" CACHE PATH "object code libraries (${_LIBDIR_DEFAULT})") +endif() + +if(NOT DEFINED CMAKE_INSTALL_INCLUDEDIR) + set(CMAKE_INSTALL_INCLUDEDIR "include" CACHE PATH "C header files (include)") +endif() + +if(NOT DEFINED CMAKE_INSTALL_OLDINCLUDEDIR) + set(CMAKE_INSTALL_OLDINCLUDEDIR "/usr/include" CACHE PATH "C header files for non-gcc (/usr/include)") +endif() + +if(NOT DEFINED CMAKE_INSTALL_DATAROOTDIR) + set(CMAKE_INSTALL_DATAROOTDIR "share" CACHE PATH "read-only architecture-independent data root (share)") +endif() + +#----------------------------------------------------------------------------- +# Values whose defaults are relative to DATAROOTDIR. Store empty values in +# the cache and store the defaults in local variables if the cache values are +# not set explicitly. This auto-updates the defaults as DATAROOTDIR changes. + +if(NOT CMAKE_INSTALL_DATADIR) + set(CMAKE_INSTALL_DATADIR "" CACHE PATH "read-only architecture-independent data (DATAROOTDIR)") + set(CMAKE_INSTALL_DATADIR "${CMAKE_INSTALL_DATAROOTDIR}") +endif() + +if(NOT CMAKE_INSTALL_INFODIR) + set(CMAKE_INSTALL_INFODIR "" CACHE PATH "info documentation (DATAROOTDIR/info)") + set(CMAKE_INSTALL_INFODIR "${CMAKE_INSTALL_DATAROOTDIR}/info") +endif() + +if(NOT CMAKE_INSTALL_LOCALEDIR) + set(CMAKE_INSTALL_LOCALEDIR "" CACHE PATH "locale-dependent data (DATAROOTDIR/locale)") + set(CMAKE_INSTALL_LOCALEDIR "${CMAKE_INSTALL_DATAROOTDIR}/locale") +endif() + +if(NOT CMAKE_INSTALL_MANDIR) + set(CMAKE_INSTALL_MANDIR "" CACHE PATH "man documentation (DATAROOTDIR/man)") + set(CMAKE_INSTALL_MANDIR "${CMAKE_INSTALL_DATAROOTDIR}/man") +endif() + +if(NOT CMAKE_INSTALL_DOCDIR) + set(CMAKE_INSTALL_DOCDIR "" CACHE PATH "documentation root (DATAROOTDIR/doc/PROJECT_NAME)") + set(CMAKE_INSTALL_DOCDIR "${CMAKE_INSTALL_DATAROOTDIR}/doc/${PROJECT_NAME}") +endif() + +#----------------------------------------------------------------------------- + +mark_as_advanced( + CMAKE_INSTALL_BINDIR + CMAKE_INSTALL_SBINDIR + CMAKE_INSTALL_LIBEXECDIR + CMAKE_INSTALL_SYSCONFDIR + CMAKE_INSTALL_SHAREDSTATEDIR + CMAKE_INSTALL_LOCALSTATEDIR + CMAKE_INSTALL_LIBDIR + CMAKE_INSTALL_INCLUDEDIR + CMAKE_INSTALL_OLDINCLUDEDIR + CMAKE_INSTALL_DATAROOTDIR + CMAKE_INSTALL_DATADIR + CMAKE_INSTALL_INFODIR + CMAKE_INSTALL_LOCALEDIR + CMAKE_INSTALL_MANDIR + CMAKE_INSTALL_DOCDIR + ) + +# Result directories +# +foreach(dir + BINDIR + SBINDIR + LIBEXECDIR + SYSCONFDIR + SHAREDSTATEDIR + LOCALSTATEDIR + LIBDIR + INCLUDEDIR + OLDINCLUDEDIR + DATAROOTDIR + DATADIR + INFODIR + LOCALEDIR + MANDIR + DOCDIR + ) + if(NOT IS_ABSOLUTE ${CMAKE_INSTALL_${dir}}) + set(CMAKE_INSTALL_FULL_${dir} "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_${dir}}") + else() + set(CMAKE_INSTALL_FULL_${dir} "${CMAKE_INSTALL_${dir}}") + endif() +endforeach() diff --git a/third_party/glm_test/cmake/glm.pc.in b/third_party/glm_test/cmake/glm.pc.in new file mode 100644 index 0000000000000..fc5c7bb7f90c3 --- /dev/null +++ b/third_party/glm_test/cmake/glm.pc.in @@ -0,0 +1,7 @@ +prefix=@CMAKE_INSTALL_PREFIX@ +includedir=${prefix}/include + +Name: GLM +Description: OpenGL Mathematics +Version: @GLM_VERSION@ +Cflags: -I${includedir} diff --git a/third_party/glm_test/cmake/glmBuildConfig.cmake.in b/third_party/glm_test/cmake/glmBuildConfig.cmake.in new file mode 100644 index 0000000000000..1258dea14dfa0 --- /dev/null +++ b/third_party/glm_test/cmake/glmBuildConfig.cmake.in @@ -0,0 +1,6 @@ +set(GLM_VERSION "@GLM_VERSION@") +set(GLM_INCLUDE_DIRS "@CMAKE_CURRENT_SOURCE_DIR@") + +if (NOT CMAKE_VERSION VERSION_LESS "3.0") + include("${CMAKE_CURRENT_LIST_DIR}/glmTargets.cmake") +endif() diff --git a/third_party/glm_test/cmake/glmConfig.cmake.in b/third_party/glm_test/cmake/glmConfig.cmake.in new file mode 100644 index 0000000000000..37d5ad811999e --- /dev/null +++ b/third_party/glm_test/cmake/glmConfig.cmake.in @@ -0,0 +1,9 @@ +set(GLM_VERSION "@GLM_VERSION@") + +@PACKAGE_INIT@ + +set_and_check(GLM_INCLUDE_DIRS "@PACKAGE_CMAKE_INSTALL_INCLUDEDIR@") + +if (NOT CMAKE_VERSION VERSION_LESS "3.0") + include("${CMAKE_CURRENT_LIST_DIR}/glmTargets.cmake") +endif() diff --git a/third_party/glm_test/copying.txt b/third_party/glm_test/copying.txt new file mode 100644 index 0000000000000..7c20b4a67dd9c --- /dev/null +++ b/third_party/glm_test/copying.txt @@ -0,0 +1,54 @@ +================================================================================ +OpenGL Mathematics (GLM) +-------------------------------------------------------------------------------- +GLM can be distributed and/or modified under the terms of either +a) The Happy Bunny License, or b) the MIT License. + +================================================================================ +The Happy Bunny License (Modified MIT License) +-------------------------------------------------------------------------------- +Copyright (c) 2005 - 2016 G-Truc Creation + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +Restrictions: By making use of the Software for military purposes, you choose +to make a Bunny unhappy. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +================================================================================ +The MIT License +-------------------------------------------------------------------------------- +Copyright (c) 2005 - 2016 G-Truc Creation + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/third_party/glm_test/doc/api/a00001.html b/third_party/glm_test/doc/api/a00001.html new file mode 100644 index 0000000000000..bf310c8d27c13 --- /dev/null +++ b/third_party/glm_test/doc/api/a00001.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: _features.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
_features.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file _features.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00001_source.html b/third_party/glm_test/doc/api/a00001_source.html new file mode 100644 index 0000000000000..2c98faedbf080 --- /dev/null +++ b/third_party/glm_test/doc/api/a00001_source.html @@ -0,0 +1,457 @@ + + + + + + +0.9.8: _features.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
_features.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 // #define GLM_CXX98_EXCEPTIONS
+
7 // #define GLM_CXX98_RTTI
+
8 
+
9 // #define GLM_CXX11_RVALUE_REFERENCES
+
10 // Rvalue references - GCC 4.3
+
11 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n2118.html
+
12 
+
13 // GLM_CXX11_TRAILING_RETURN
+
14 // Rvalue references for *this - GCC not supported
+
15 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2439.htm
+
16 
+
17 // GLM_CXX11_NONSTATIC_MEMBER_INIT
+
18 // Initialization of class objects by rvalues - GCC any
+
19 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1610.html
+
20 
+
21 // GLM_CXX11_NONSTATIC_MEMBER_INIT
+
22 // Non-static data member initializers - GCC 4.7
+
23 // http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2008/n2756.htm
+
24 
+
25 // #define GLM_CXX11_VARIADIC_TEMPLATE
+
26 // Variadic templates - GCC 4.3
+
27 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2242.pdf
+
28 
+
29 //
+
30 // Extending variadic template template parameters - GCC 4.4
+
31 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2555.pdf
+
32 
+
33 // #define GLM_CXX11_GENERALIZED_INITIALIZERS
+
34 // Initializer lists - GCC 4.4
+
35 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2672.htm
+
36 
+
37 // #define GLM_CXX11_STATIC_ASSERT
+
38 // Static assertions - GCC 4.3
+
39 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1720.html
+
40 
+
41 // #define GLM_CXX11_AUTO_TYPE
+
42 // auto-typed variables - GCC 4.4
+
43 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1984.pdf
+
44 
+
45 // #define GLM_CXX11_AUTO_TYPE
+
46 // Multi-declarator auto - GCC 4.4
+
47 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1737.pdf
+
48 
+
49 // #define GLM_CXX11_AUTO_TYPE
+
50 // Removal of auto as a storage-class specifier - GCC 4.4
+
51 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2546.htm
+
52 
+
53 // #define GLM_CXX11_AUTO_TYPE
+
54 // New function declarator syntax - GCC 4.4
+
55 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2541.htm
+
56 
+
57 // #define GLM_CXX11_LAMBDAS
+
58 // New wording for C++0x lambdas - GCC 4.5
+
59 // http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2927.pdf
+
60 
+
61 // #define GLM_CXX11_DECLTYPE
+
62 // Declared type of an expression - GCC 4.3
+
63 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2343.pdf
+
64 
+
65 //
+
66 // Right angle brackets - GCC 4.3
+
67 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1757.html
+
68 
+
69 //
+
70 // Default template arguments for function templates DR226 GCC 4.3
+
71 // http://www.open-std.org/jtc1/sc22/wg21/docs/cwg_defects.html#226
+
72 
+
73 //
+
74 // Solving the SFINAE problem for expressions DR339 GCC 4.4
+
75 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2634.html
+
76 
+
77 // #define GLM_CXX11_ALIAS_TEMPLATE
+
78 // Template aliases N2258 GCC 4.7
+
79 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2258.pdf
+
80 
+
81 //
+
82 // Extern templates N1987 Yes
+
83 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1987.htm
+
84 
+
85 // #define GLM_CXX11_NULLPTR
+
86 // Null pointer constant N2431 GCC 4.6
+
87 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2431.pdf
+
88 
+
89 // #define GLM_CXX11_STRONG_ENUMS
+
90 // Strongly-typed enums N2347 GCC 4.4
+
91 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2347.pdf
+
92 
+
93 //
+
94 // Forward declarations for enums N2764 GCC 4.6
+
95 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2764.pdf
+
96 
+
97 //
+
98 // Generalized attributes N2761 GCC 4.8
+
99 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2761.pdf
+
100 
+
101 //
+
102 // Generalized constant expressions N2235 GCC 4.6
+
103 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2235.pdf
+
104 
+
105 //
+
106 // Alignment support N2341 GCC 4.8
+
107 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2341.pdf
+
108 
+
109 // #define GLM_CXX11_DELEGATING_CONSTRUCTORS
+
110 // Delegating constructors N1986 GCC 4.7
+
111 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1986.pdf
+
112 
+
113 //
+
114 // Inheriting constructors N2540 GCC 4.8
+
115 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2540.htm
+
116 
+
117 // #define GLM_CXX11_EXPLICIT_CONVERSIONS
+
118 // Explicit conversion operators N2437 GCC 4.5
+
119 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2437.pdf
+
120 
+
121 //
+
122 // New character types N2249 GCC 4.4
+
123 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2249.html
+
124 
+
125 //
+
126 // Unicode string literals N2442 GCC 4.5
+
127 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2442.htm
+
128 
+
129 //
+
130 // Raw string literals N2442 GCC 4.5
+
131 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2442.htm
+
132 
+
133 //
+
134 // Universal character name literals N2170 GCC 4.5
+
135 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2170.html
+
136 
+
137 // #define GLM_CXX11_USER_LITERALS
+
138 // User-defined literals N2765 GCC 4.7
+
139 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2765.pdf
+
140 
+
141 //
+
142 // Standard Layout Types N2342 GCC 4.5
+
143 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2342.htm
+
144 
+
145 // #define GLM_CXX11_DEFAULTED_FUNCTIONS
+
146 // #define GLM_CXX11_DELETED_FUNCTIONS
+
147 // Defaulted and deleted functions N2346 GCC 4.4
+
148 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2346.htm
+
149 
+
150 //
+
151 // Extended friend declarations N1791 GCC 4.7
+
152 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1791.pdf
+
153 
+
154 //
+
155 // Extending sizeof N2253 GCC 4.4
+
156 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2253.html
+
157 
+
158 // #define GLM_CXX11_INLINE_NAMESPACES
+
159 // Inline namespaces N2535 GCC 4.4
+
160 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2535.htm
+
161 
+
162 // #define GLM_CXX11_UNRESTRICTED_UNIONS
+
163 // Unrestricted unions N2544 GCC 4.6
+
164 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2544.pdf
+
165 
+
166 // #define GLM_CXX11_LOCAL_TYPE_TEMPLATE_ARGS
+
167 // Local and unnamed types as template arguments N2657 GCC 4.5
+
168 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2657.htm
+
169 
+
170 // #define GLM_CXX11_RANGE_FOR
+
171 // Range-based for N2930 GCC 4.6
+
172 // http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2930.html
+
173 
+
174 // #define GLM_CXX11_OVERRIDE_CONTROL
+
175 // Explicit virtual overrides N2928 N3206 N3272 GCC 4.7
+
176 // http://www.open-std.org/JTC1/SC22/WG21/docs/papers/2009/n2928.htm
+
177 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3206.htm
+
178 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2011/n3272.htm
+
179 
+
180 //
+
181 // Minimal support for garbage collection and reachability-based leak detection N2670 No
+
182 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2670.htm
+
183 
+
184 // #define GLM_CXX11_NOEXCEPT
+
185 // Allowing move constructors to throw [noexcept] N3050 GCC 4.6 (core language only)
+
186 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3050.html
+
187 
+
188 //
+
189 // Defining move special member functions N3053 GCC 4.6
+
190 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2010/n3053.html
+
191 
+
192 //
+
193 // Sequence points N2239 Yes
+
194 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2239.html
+
195 
+
196 //
+
197 // Atomic operations N2427 GCC 4.4
+
198 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2239.html
+
199 
+
200 //
+
201 // Strong Compare and Exchange N2748 GCC 4.5
+
202 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2427.html
+
203 
+
204 //
+
205 // Bidirectional Fences N2752 GCC 4.8
+
206 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2752.htm
+
207 
+
208 //
+
209 // Memory model N2429 GCC 4.8
+
210 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2429.htm
+
211 
+
212 //
+
213 // Data-dependency ordering: atomics and memory model N2664 GCC 4.4
+
214 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2664.htm
+
215 
+
216 //
+
217 // Propagating exceptions N2179 GCC 4.4
+
218 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2179.html
+
219 
+
220 //
+
221 // Abandoning a process and at_quick_exit N2440 GCC 4.8
+
222 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2440.htm
+
223 
+
224 //
+
225 // Allow atomics use in signal handlers N2547 Yes
+
226 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2547.htm
+
227 
+
228 //
+
229 // Thread-local storage N2659 GCC 4.8
+
230 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2659.htm
+
231 
+
232 //
+
233 // Dynamic initialization and destruction with concurrency N2660 GCC 4.3
+
234 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2660.htm
+
235 
+
236 //
+
237 // __func__ predefined identifier N2340 GCC 4.3
+
238 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2340.htm
+
239 
+
240 //
+
241 // C99 preprocessor N1653 GCC 4.3
+
242 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2004/n1653.htm
+
243 
+
244 //
+
245 // long long N1811 GCC 4.3
+
246 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2005/n1811.pdf
+
247 
+
248 //
+
249 // Extended integral types N1988 Yes
+
250 // http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n1988.pdf
+
251 
+
252 #if(GLM_COMPILER & GLM_COMPILER_GCC)
+
253 
+
254 # if(GLM_COMPILER >= GLM_COMPILER_GCC43)
+
255 # define GLM_CXX11_STATIC_ASSERT
+
256 # endif
+
257 
+
258 #elif(GLM_COMPILER & GLM_COMPILER_CLANG)
+
259 # if(__has_feature(cxx_exceptions))
+
260 # define GLM_CXX98_EXCEPTIONS
+
261 # endif
+
262 
+
263 # if(__has_feature(cxx_rtti))
+
264 # define GLM_CXX98_RTTI
+
265 # endif
+
266 
+
267 # if(__has_feature(cxx_access_control_sfinae))
+
268 # define GLM_CXX11_ACCESS_CONTROL_SFINAE
+
269 # endif
+
270 
+
271 # if(__has_feature(cxx_alias_templates))
+
272 # define GLM_CXX11_ALIAS_TEMPLATE
+
273 # endif
+
274 
+
275 # if(__has_feature(cxx_alignas))
+
276 # define GLM_CXX11_ALIGNAS
+
277 # endif
+
278 
+
279 # if(__has_feature(cxx_attributes))
+
280 # define GLM_CXX11_ATTRIBUTES
+
281 # endif
+
282 
+
283 # if(__has_feature(cxx_constexpr))
+
284 # define GLM_CXX11_CONSTEXPR
+
285 # endif
+
286 
+
287 # if(__has_feature(cxx_decltype))
+
288 # define GLM_CXX11_DECLTYPE
+
289 # endif
+
290 
+
291 # if(__has_feature(cxx_default_function_template_args))
+
292 # define GLM_CXX11_DEFAULT_FUNCTION_TEMPLATE_ARGS
+
293 # endif
+
294 
+
295 # if(__has_feature(cxx_defaulted_functions))
+
296 # define GLM_CXX11_DEFAULTED_FUNCTIONS
+
297 # endif
+
298 
+
299 # if(__has_feature(cxx_delegating_constructors))
+
300 # define GLM_CXX11_DELEGATING_CONSTRUCTORS
+
301 # endif
+
302 
+
303 # if(__has_feature(cxx_deleted_functions))
+
304 # define GLM_CXX11_DELETED_FUNCTIONS
+
305 # endif
+
306 
+
307 # if(__has_feature(cxx_explicit_conversions))
+
308 # define GLM_CXX11_EXPLICIT_CONVERSIONS
+
309 # endif
+
310 
+
311 # if(__has_feature(cxx_generalized_initializers))
+
312 # define GLM_CXX11_GENERALIZED_INITIALIZERS
+
313 # endif
+
314 
+
315 # if(__has_feature(cxx_implicit_moves))
+
316 # define GLM_CXX11_IMPLICIT_MOVES
+
317 # endif
+
318 
+
319 # if(__has_feature(cxx_inheriting_constructors))
+
320 # define GLM_CXX11_INHERITING_CONSTRUCTORS
+
321 # endif
+
322 
+
323 # if(__has_feature(cxx_inline_namespaces))
+
324 # define GLM_CXX11_INLINE_NAMESPACES
+
325 # endif
+
326 
+
327 # if(__has_feature(cxx_lambdas))
+
328 # define GLM_CXX11_LAMBDAS
+
329 # endif
+
330 
+
331 # if(__has_feature(cxx_local_type_template_args))
+
332 # define GLM_CXX11_LOCAL_TYPE_TEMPLATE_ARGS
+
333 # endif
+
334 
+
335 # if(__has_feature(cxx_noexcept))
+
336 # define GLM_CXX11_NOEXCEPT
+
337 # endif
+
338 
+
339 # if(__has_feature(cxx_nonstatic_member_init))
+
340 # define GLM_CXX11_NONSTATIC_MEMBER_INIT
+
341 # endif
+
342 
+
343 # if(__has_feature(cxx_nullptr))
+
344 # define GLM_CXX11_NULLPTR
+
345 # endif
+
346 
+
347 # if(__has_feature(cxx_override_control))
+
348 # define GLM_CXX11_OVERRIDE_CONTROL
+
349 # endif
+
350 
+
351 # if(__has_feature(cxx_reference_qualified_functions))
+
352 # define GLM_CXX11_REFERENCE_QUALIFIED_FUNCTIONS
+
353 # endif
+
354 
+
355 # if(__has_feature(cxx_range_for))
+
356 # define GLM_CXX11_RANGE_FOR
+
357 # endif
+
358 
+
359 # if(__has_feature(cxx_raw_string_literals))
+
360 # define GLM_CXX11_RAW_STRING_LITERALS
+
361 # endif
+
362 
+
363 # if(__has_feature(cxx_rvalue_references))
+
364 # define GLM_CXX11_RVALUE_REFERENCES
+
365 # endif
+
366 
+
367 # if(__has_feature(cxx_static_assert))
+
368 # define GLM_CXX11_STATIC_ASSERT
+
369 # endif
+
370 
+
371 # if(__has_feature(cxx_auto_type))
+
372 # define GLM_CXX11_AUTO_TYPE
+
373 # endif
+
374 
+
375 # if(__has_feature(cxx_strong_enums))
+
376 # define GLM_CXX11_STRONG_ENUMS
+
377 # endif
+
378 
+
379 # if(__has_feature(cxx_trailing_return))
+
380 # define GLM_CXX11_TRAILING_RETURN
+
381 # endif
+
382 
+
383 # if(__has_feature(cxx_unicode_literals))
+
384 # define GLM_CXX11_UNICODE_LITERALS
+
385 # endif
+
386 
+
387 # if(__has_feature(cxx_unrestricted_unions))
+
388 # define GLM_CXX11_UNRESTRICTED_UNIONS
+
389 # endif
+
390 
+
391 # if(__has_feature(cxx_user_literals))
+
392 # define GLM_CXX11_USER_LITERALS
+
393 # endif
+
394 
+
395 # if(__has_feature(cxx_variadic_templates))
+
396 # define GLM_CXX11_VARIADIC_TEMPLATES
+
397 # endif
+
398 
+
399 #endif//(GLM_COMPILER & GLM_COMPILER_CLANG)
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00002.html b/third_party/glm_test/doc/api/a00002.html new file mode 100644 index 0000000000000..523bac0da311c --- /dev/null +++ b/third_party/glm_test/doc/api/a00002.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: _fixes.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
_fixes.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file _fixes.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00002_source.html b/third_party/glm_test/doc/api/a00002_source.html new file mode 100644 index 0000000000000..0941ab7d8a806 --- /dev/null +++ b/third_party/glm_test/doc/api/a00002_source.html @@ -0,0 +1,83 @@ + + + + + + +0.9.8: _fixes.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
_fixes.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #include <cmath>
+
5 
+
7 #ifdef max
+
8 #undef max
+
9 #endif
+
10 
+
12 #ifdef min
+
13 #undef min
+
14 #endif
+
15 
+
17 #ifdef isnan
+
18 #undef isnan
+
19 #endif
+
20 
+
22 #ifdef isinf
+
23 #undef isinf
+
24 #endif
+
25 
+
27 #ifdef log2
+
28 #undef log2
+
29 #endif
+
30 
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00003.html b/third_party/glm_test/doc/api/a00003.html new file mode 100644 index 0000000000000..b5ad770392266 --- /dev/null +++ b/third_party/glm_test/doc/api/a00003.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: _noise.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
_noise.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file _noise.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00003_source.html b/third_party/glm_test/doc/api/a00003_source.html new file mode 100644 index 0000000000000..2575ec4a5668e --- /dev/null +++ b/third_party/glm_test/doc/api/a00003_source.html @@ -0,0 +1,167 @@ + + + + + + +0.9.8: _noise.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
_noise.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "../vec2.hpp"
+
7 #include "../vec3.hpp"
+
8 #include "../vec4.hpp"
+
9 #include "../common.hpp"
+
10 
+
11 namespace glm{
+
12 namespace detail
+
13 {
+
14  template <typename T>
+
15  GLM_FUNC_QUALIFIER T mod289(T const & x)
+
16  {
+
17  return x - floor(x * static_cast<T>(1.0) / static_cast<T>(289.0)) * static_cast<T>(289.0);
+
18  }
+
19 
+
20  template <typename T>
+
21  GLM_FUNC_QUALIFIER T permute(T const & x)
+
22  {
+
23  return mod289(((x * static_cast<T>(34)) + static_cast<T>(1)) * x);
+
24  }
+
25 
+
26  template <typename T, precision P>
+
27  GLM_FUNC_QUALIFIER tvec2<T, P> permute(tvec2<T, P> const & x)
+
28  {
+
29  return mod289(((x * static_cast<T>(34)) + static_cast<T>(1)) * x);
+
30  }
+
31 
+
32  template <typename T, precision P>
+
33  GLM_FUNC_QUALIFIER tvec3<T, P> permute(tvec3<T, P> const & x)
+
34  {
+
35  return mod289(((x * static_cast<T>(34)) + static_cast<T>(1)) * x);
+
36  }
+
37 
+
38  template <typename T, precision P>
+
39  GLM_FUNC_QUALIFIER tvec4<T, P> permute(tvec4<T, P> const & x)
+
40  {
+
41  return mod289(((x * static_cast<T>(34)) + static_cast<T>(1)) * x);
+
42  }
+
43 /*
+
44  template <typename T, precision P, template<typename> class vecType>
+
45  GLM_FUNC_QUALIFIER vecType<T, P> permute(vecType<T, P> const & x)
+
46  {
+
47  return mod289(((x * T(34)) + T(1)) * x);
+
48  }
+
49 */
+
50  template <typename T>
+
51  GLM_FUNC_QUALIFIER T taylorInvSqrt(T const & r)
+
52  {
+
53  return T(1.79284291400159) - T(0.85373472095314) * r;
+
54  }
+
55 
+
56  template <typename T, precision P>
+
57  GLM_FUNC_QUALIFIER tvec2<T, P> taylorInvSqrt(tvec2<T, P> const & r)
+
58  {
+
59  return T(1.79284291400159) - T(0.85373472095314) * r;
+
60  }
+
61 
+
62  template <typename T, precision P>
+
63  GLM_FUNC_QUALIFIER tvec3<T, P> taylorInvSqrt(tvec3<T, P> const & r)
+
64  {
+
65  return T(1.79284291400159) - T(0.85373472095314) * r;
+
66  }
+
67 
+
68  template <typename T, precision P>
+
69  GLM_FUNC_QUALIFIER tvec4<T, P> taylorInvSqrt(tvec4<T, P> const & r)
+
70  {
+
71  return T(1.79284291400159) - T(0.85373472095314) * r;
+
72  }
+
73 /*
+
74  template <typename T, precision P, template<typename> class vecType>
+
75  GLM_FUNC_QUALIFIER vecType<T, P> taylorInvSqrt(vecType<T, P> const & r)
+
76  {
+
77  return T(1.79284291400159) - T(0.85373472095314) * r;
+
78  }
+
79 */
+
80 
+
81  template <typename T, precision P>
+
82  GLM_FUNC_QUALIFIER tvec2<T, P> fade(tvec2<T, P> const & t)
+
83  {
+
84  return (t * t * t) * (t * (t * T(6) - T(15)) + T(10));
+
85  }
+
86 
+
87  template <typename T, precision P>
+
88  GLM_FUNC_QUALIFIER tvec3<T, P> fade(tvec3<T, P> const & t)
+
89  {
+
90  return (t * t * t) * (t * (t * T(6) - T(15)) + T(10));
+
91  }
+
92 
+
93  template <typename T, precision P>
+
94  GLM_FUNC_QUALIFIER tvec4<T, P> fade(tvec4<T, P> const & t)
+
95  {
+
96  return (t * t * t) * (t * (t * T(6) - T(15)) + T(10));
+
97  }
+
98 /*
+
99  template <typename T, precision P, template <typename> class vecType>
+
100  GLM_FUNC_QUALIFIER vecType<T, P> fade(vecType<T, P> const & t)
+
101  {
+
102  return (t * t * t) * (t * (t * T(6) - T(15)) + T(10));
+
103  }
+
104 */
+
105 }//namespace detail
+
106 }//namespace glm
+
107 
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL vecType< T, P > floor(vecType< T, P > const &x)
Returns a value equal to the nearest integer that is less then or equal to x.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00004.html b/third_party/glm_test/doc/api/a00004.html new file mode 100644 index 0000000000000..dc1236660e0c1 --- /dev/null +++ b/third_party/glm_test/doc/api/a00004.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: _swizzle.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
_swizzle.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file _swizzle.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00004_source.html b/third_party/glm_test/doc/api/a00004_source.html new file mode 100644 index 0000000000000..24026574ad18c --- /dev/null +++ b/third_party/glm_test/doc/api/a00004_source.html @@ -0,0 +1,857 @@ + + + + + + +0.9.8: _swizzle.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
_swizzle.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 namespace glm{
+
7 namespace detail
+
8 {
+
9  // Internal class for implementing swizzle operators
+
10  template <typename T, int N>
+
11  struct _swizzle_base0
+
12  {
+
13  protected:
+
14  GLM_FUNC_QUALIFIER T& elem(size_t i){ return (reinterpret_cast<T*>(_buffer))[i]; }
+
15  GLM_FUNC_QUALIFIER T const& elem(size_t i) const{ return (reinterpret_cast<const T*>(_buffer))[i]; }
+
16 
+
17  // Use an opaque buffer to *ensure* the compiler doesn't call a constructor.
+
18  // The size 1 buffer is assumed to aligned to the actual members so that the
+
19  // elem()
+
20  char _buffer[1];
+
21  };
+
22 
+
23  template <int N, typename T, precision P, template <typename, precision> class vecType, int E0, int E1, int E2, int E3, bool Aligned>
+
24  struct _swizzle_base1 : public _swizzle_base0<T, N>
+
25  {
+
26  };
+
27 
+
28  template <typename T, precision P, template <typename, precision> class vecType, int E0, int E1, bool Aligned>
+
29  struct _swizzle_base1<2, T, P, vecType, E0,E1,-1,-2, Aligned> : public _swizzle_base0<T, 2>
+
30  {
+
31  GLM_FUNC_QUALIFIER vecType<T, P> operator ()() const { return vecType<T, P>(this->elem(E0), this->elem(E1)); }
+
32  };
+
33 
+
34  template <typename T, precision P, template <typename, precision> class vecType, int E0, int E1, int E2, bool Aligned>
+
35  struct _swizzle_base1<3, T, P, vecType, E0,E1,E2,-1, Aligned> : public _swizzle_base0<T, 3>
+
36  {
+
37  GLM_FUNC_QUALIFIER vecType<T, P> operator ()() const { return vecType<T, P>(this->elem(E0), this->elem(E1), this->elem(E2)); }
+
38  };
+
39 
+
40  template <typename T, precision P, template <typename, precision> class vecType, int E0, int E1, int E2, int E3, bool Aligned>
+
41  struct _swizzle_base1<4, T, P, vecType, E0,E1,E2,E3, Aligned> : public _swizzle_base0<T, 4>
+
42  {
+
43  GLM_FUNC_QUALIFIER vecType<T, P> operator ()() const { return vecType<T, P>(this->elem(E0), this->elem(E1), this->elem(E2), this->elem(E3)); }
+
44  };
+
45 
+
46  // Internal class for implementing swizzle operators
+
47  /*
+
48  Template parameters:
+
49 
+
50  ValueType = type of scalar values (e.g. float, double)
+
51  VecType = class the swizzle is applies to (e.g. tvec3<float>)
+
52  N = number of components in the vector (e.g. 3)
+
53  E0...3 = what index the n-th element of this swizzle refers to in the unswizzled vec
+
54 
+
55  DUPLICATE_ELEMENTS = 1 if there is a repeated element, 0 otherwise (used to specialize swizzles
+
56  containing duplicate elements so that they cannot be used as r-values).
+
57  */
+
58  template <int N, typename T, precision P, template <typename, precision> class vecType, int E0, int E1, int E2, int E3, int DUPLICATE_ELEMENTS>
+
59  struct _swizzle_base2 : public _swizzle_base1<N, T, P, vecType, E0,E1,E2,E3, detail::is_aligned<P>::value>
+
60  {
+
61  GLM_FUNC_QUALIFIER _swizzle_base2& operator= (const T& t)
+
62  {
+
63  for (int i = 0; i < N; ++i)
+
64  (*this)[i] = t;
+
65  return *this;
+
66  }
+
67 
+
68  GLM_FUNC_QUALIFIER _swizzle_base2& operator= (vecType<T, P> const& that)
+
69  {
+
70  struct op {
+
71  GLM_FUNC_QUALIFIER void operator() (T& e, T& t) { e = t; }
+
72  };
+
73  _apply_op(that, op());
+
74  return *this;
+
75  }
+
76 
+
77  GLM_FUNC_QUALIFIER void operator -= (vecType<T, P> const& that)
+
78  {
+
79  struct op {
+
80  GLM_FUNC_QUALIFIER void operator() (T& e, T& t) { e -= t; }
+
81  };
+
82  _apply_op(that, op());
+
83  }
+
84 
+
85  GLM_FUNC_QUALIFIER void operator += (vecType<T, P> const& that)
+
86  {
+
87  struct op {
+
88  GLM_FUNC_QUALIFIER void operator() (T& e, T& t) { e += t; }
+
89  };
+
90  _apply_op(that, op());
+
91  }
+
92 
+
93  GLM_FUNC_QUALIFIER void operator *= (vecType<T, P> const& that)
+
94  {
+
95  struct op {
+
96  GLM_FUNC_QUALIFIER void operator() (T& e, T& t) { e *= t; }
+
97  };
+
98  _apply_op(that, op());
+
99  }
+
100 
+
101  GLM_FUNC_QUALIFIER void operator /= (vecType<T, P> const& that)
+
102  {
+
103  struct op {
+
104  GLM_FUNC_QUALIFIER void operator() (T& e, T& t) { e /= t; }
+
105  };
+
106  _apply_op(that, op());
+
107  }
+
108 
+
109  GLM_FUNC_QUALIFIER T& operator[](size_t i)
+
110  {
+
111  const int offset_dst[4] = { E0, E1, E2, E3 };
+
112  return this->elem(offset_dst[i]);
+
113  }
+
114  GLM_FUNC_QUALIFIER T operator[](size_t i) const
+
115  {
+
116  const int offset_dst[4] = { E0, E1, E2, E3 };
+
117  return this->elem(offset_dst[i]);
+
118  }
+
119 
+
120  protected:
+
121  template <typename U>
+
122  GLM_FUNC_QUALIFIER void _apply_op(vecType<T, P> const& that, U op)
+
123  {
+
124  // Make a copy of the data in this == &that.
+
125  // The copier should optimize out the copy in cases where the function is
+
126  // properly inlined and the copy is not necessary.
+
127  T t[N];
+
128  for (int i = 0; i < N; ++i)
+
129  t[i] = that[i];
+
130  for (int i = 0; i < N; ++i)
+
131  op( (*this)[i], t[i] );
+
132  }
+
133  };
+
134 
+
135  // Specialization for swizzles containing duplicate elements. These cannot be modified.
+
136  template <int N, typename T, precision P, template <typename, precision> class vecType, int E0, int E1, int E2, int E3>
+
137  struct _swizzle_base2<N, T, P, vecType, E0,E1,E2,E3, 1> : public _swizzle_base1<N, T, P, vecType, E0,E1,E2,E3, detail::is_aligned<P>::value>
+
138  {
+
139  struct Stub {};
+
140 
+
141  GLM_FUNC_QUALIFIER _swizzle_base2& operator= (Stub const &) { return *this; }
+
142 
+
143  GLM_FUNC_QUALIFIER T operator[] (size_t i) const
+
144  {
+
145  const int offset_dst[4] = { E0, E1, E2, E3 };
+
146  return this->elem(offset_dst[i]);
+
147  }
+
148  };
+
149 
+
150  template <int N, typename T, precision P, template <typename, precision> class vecType, int E0, int E1, int E2, int E3>
+
151  struct _swizzle : public _swizzle_base2<N, T, P, vecType, E0, E1, E2, E3, (E0 == E1 || E0 == E2 || E0 == E3 || E1 == E2 || E1 == E3 || E2 == E3)>
+
152  {
+
153  typedef _swizzle_base2<N, T, P, vecType, E0, E1, E2, E3, (E0 == E1 || E0 == E2 || E0 == E3 || E1 == E2 || E1 == E3 || E2 == E3)> base_type;
+
154 
+
155  using base_type::operator=;
+
156 
+
157  GLM_FUNC_QUALIFIER operator vecType<T, P> () const { return (*this)(); }
+
158  };
+
159 
+
160 //
+
161 // To prevent the C++ syntax from getting entirely overwhelming, define some alias macros
+
162 //
+
163 #define _GLM_SWIZZLE_TEMPLATE1 template <int N, typename T, precision P, template <typename, precision> class vecType, int E0, int E1, int E2, int E3>
+
164 #define _GLM_SWIZZLE_TEMPLATE2 template <int N, typename T, precision P, template <typename, precision> class vecType, int E0, int E1, int E2, int E3, int F0, int F1, int F2, int F3>
+
165 #define _GLM_SWIZZLE_TYPE1 _swizzle<N, T, P, vecType, E0, E1, E2, E3>
+
166 #define _GLM_SWIZZLE_TYPE2 _swizzle<N, T, P, vecType, F0, F1, F2, F3>
+
167 
+
168 //
+
169 // Wrapper for a binary operator (e.g. u.yy + v.zy)
+
170 //
+
171 #define _GLM_SWIZZLE_VECTOR_BINARY_OPERATOR_IMPLEMENTATION(OPERAND) \
+
172  _GLM_SWIZZLE_TEMPLATE2 \
+
173  GLM_FUNC_QUALIFIER vecType<T, P> operator OPERAND ( const _GLM_SWIZZLE_TYPE1& a, const _GLM_SWIZZLE_TYPE2& b) \
+
174  { \
+
175  return a() OPERAND b(); \
+
176  } \
+
177  _GLM_SWIZZLE_TEMPLATE1 \
+
178  GLM_FUNC_QUALIFIER vecType<T, P> operator OPERAND ( const _GLM_SWIZZLE_TYPE1& a, const vecType<T, P>& b) \
+
179  { \
+
180  return a() OPERAND b; \
+
181  } \
+
182  _GLM_SWIZZLE_TEMPLATE1 \
+
183  GLM_FUNC_QUALIFIER vecType<T, P> operator OPERAND ( const vecType<T, P>& a, const _GLM_SWIZZLE_TYPE1& b) \
+
184  { \
+
185  return a OPERAND b(); \
+
186  }
+
187 
+
188 //
+
189 // Wrapper for a operand between a swizzle and a binary (e.g. 1.0f - u.xyz)
+
190 //
+
191 #define _GLM_SWIZZLE_SCALAR_BINARY_OPERATOR_IMPLEMENTATION(OPERAND) \
+
192  _GLM_SWIZZLE_TEMPLATE1 \
+
193  GLM_FUNC_QUALIFIER vecType<T, P> operator OPERAND ( const _GLM_SWIZZLE_TYPE1& a, const T& b) \
+
194  { \
+
195  return a() OPERAND b; \
+
196  } \
+
197  _GLM_SWIZZLE_TEMPLATE1 \
+
198  GLM_FUNC_QUALIFIER vecType<T, P> operator OPERAND ( const T& a, const _GLM_SWIZZLE_TYPE1& b) \
+
199  { \
+
200  return a OPERAND b(); \
+
201  }
+
202 
+
203 //
+
204 // Macro for wrapping a function taking one argument (e.g. abs())
+
205 //
+
206 #define _GLM_SWIZZLE_FUNCTION_1_ARGS(RETURN_TYPE,FUNCTION) \
+
207  _GLM_SWIZZLE_TEMPLATE1 \
+
208  GLM_FUNC_QUALIFIER typename _GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const _GLM_SWIZZLE_TYPE1& a) \
+
209  { \
+
210  return FUNCTION(a()); \
+
211  }
+
212 
+
213 //
+
214 // Macro for wrapping a function taking two vector arguments (e.g. dot()).
+
215 //
+
216 #define _GLM_SWIZZLE_FUNCTION_2_ARGS(RETURN_TYPE,FUNCTION) \
+
217  _GLM_SWIZZLE_TEMPLATE2 \
+
218  GLM_FUNC_QUALIFIER typename _GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const _GLM_SWIZZLE_TYPE1& a, const _GLM_SWIZZLE_TYPE2& b) \
+
219  { \
+
220  return FUNCTION(a(), b()); \
+
221  } \
+
222  _GLM_SWIZZLE_TEMPLATE1 \
+
223  GLM_FUNC_QUALIFIER typename _GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const _GLM_SWIZZLE_TYPE1& a, const _GLM_SWIZZLE_TYPE1& b) \
+
224  { \
+
225  return FUNCTION(a(), b()); \
+
226  } \
+
227  _GLM_SWIZZLE_TEMPLATE1 \
+
228  GLM_FUNC_QUALIFIER typename _GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const _GLM_SWIZZLE_TYPE1& a, const typename V& b) \
+
229  { \
+
230  return FUNCTION(a(), b); \
+
231  } \
+
232  _GLM_SWIZZLE_TEMPLATE1 \
+
233  GLM_FUNC_QUALIFIER typename _GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const V& a, const _GLM_SWIZZLE_TYPE1& b) \
+
234  { \
+
235  return FUNCTION(a, b()); \
+
236  }
+
237 
+
238 //
+
239 // Macro for wrapping a function take 2 vec arguments followed by a scalar (e.g. mix()).
+
240 //
+
241 #define _GLM_SWIZZLE_FUNCTION_2_ARGS_SCALAR(RETURN_TYPE,FUNCTION) \
+
242  _GLM_SWIZZLE_TEMPLATE2 \
+
243  GLM_FUNC_QUALIFIER typename _GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const _GLM_SWIZZLE_TYPE1& a, const _GLM_SWIZZLE_TYPE2& b, const T& c) \
+
244  { \
+
245  return FUNCTION(a(), b(), c); \
+
246  } \
+
247  _GLM_SWIZZLE_TEMPLATE1 \
+
248  GLM_FUNC_QUALIFIER typename _GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const _GLM_SWIZZLE_TYPE1& a, const _GLM_SWIZZLE_TYPE1& b, const T& c) \
+
249  { \
+
250  return FUNCTION(a(), b(), c); \
+
251  } \
+
252  _GLM_SWIZZLE_TEMPLATE1 \
+
253  GLM_FUNC_QUALIFIER typename _GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const _GLM_SWIZZLE_TYPE1& a, const typename S0::vec_type& b, const T& c)\
+
254  { \
+
255  return FUNCTION(a(), b, c); \
+
256  } \
+
257  _GLM_SWIZZLE_TEMPLATE1 \
+
258  GLM_FUNC_QUALIFIER typename _GLM_SWIZZLE_TYPE1::RETURN_TYPE FUNCTION(const typename V& a, const _GLM_SWIZZLE_TYPE1& b, const T& c) \
+
259  { \
+
260  return FUNCTION(a, b(), c); \
+
261  }
+
262 
+
263 }//namespace detail
+
264 }//namespace glm
+
265 
+
266 namespace glm
+
267 {
+
268  namespace detail
+
269  {
+
270  _GLM_SWIZZLE_SCALAR_BINARY_OPERATOR_IMPLEMENTATION(-)
+
271  _GLM_SWIZZLE_SCALAR_BINARY_OPERATOR_IMPLEMENTATION(*)
+
272  _GLM_SWIZZLE_VECTOR_BINARY_OPERATOR_IMPLEMENTATION(+)
+
273  _GLM_SWIZZLE_VECTOR_BINARY_OPERATOR_IMPLEMENTATION(-)
+
274  _GLM_SWIZZLE_VECTOR_BINARY_OPERATOR_IMPLEMENTATION(*)
+
275  _GLM_SWIZZLE_VECTOR_BINARY_OPERATOR_IMPLEMENTATION(/)
+
276  }
+
277 
+
278  //
+
279  // Swizzles are distinct types from the unswizzled type. The below macros will
+
280  // provide template specializations for the swizzle types for the given functions
+
281  // so that the compiler does not have any ambiguity to choosing how to handle
+
282  // the function.
+
283  //
+
284  // The alternative is to use the operator()() when calling the function in order
+
285  // to explicitly convert the swizzled type to the unswizzled type.
+
286  //
+
287 
+
288  //_GLM_SWIZZLE_FUNCTION_1_ARGS(vec_type, abs);
+
289  //_GLM_SWIZZLE_FUNCTION_1_ARGS(vec_type, acos);
+
290  //_GLM_SWIZZLE_FUNCTION_1_ARGS(vec_type, acosh);
+
291  //_GLM_SWIZZLE_FUNCTION_1_ARGS(vec_type, all);
+
292  //_GLM_SWIZZLE_FUNCTION_1_ARGS(vec_type, any);
+
293 
+
294  //_GLM_SWIZZLE_FUNCTION_2_ARGS(value_type, dot);
+
295  //_GLM_SWIZZLE_FUNCTION_2_ARGS(vec_type, cross);
+
296  //_GLM_SWIZZLE_FUNCTION_2_ARGS(vec_type, step);
+
297  //_GLM_SWIZZLE_FUNCTION_2_ARGS_SCALAR(vec_type, mix);
+
298 }
+
299 
+
300 #define _GLM_SWIZZLE2_2_MEMBERS(T, P, V, E0,E1) \
+
301  struct { detail::_swizzle<2, T, P, V, 0,0,-1,-2> E0 ## E0; }; \
+
302  struct { detail::_swizzle<2, T, P, V, 0,1,-1,-2> E0 ## E1; }; \
+
303  struct { detail::_swizzle<2, T, P, V, 1,0,-1,-2> E1 ## E0; }; \
+
304  struct { detail::_swizzle<2, T, P, V, 1,1,-1,-2> E1 ## E1; };
+
305 
+
306 #define _GLM_SWIZZLE2_3_MEMBERS(T, P, V, E0,E1) \
+
307  struct { detail::_swizzle<3,T, P, V, 0,0,0,-1> E0 ## E0 ## E0; }; \
+
308  struct { detail::_swizzle<3,T, P, V, 0,0,1,-1> E0 ## E0 ## E1; }; \
+
309  struct { detail::_swizzle<3,T, P, V, 0,1,0,-1> E0 ## E1 ## E0; }; \
+
310  struct { detail::_swizzle<3,T, P, V, 0,1,1,-1> E0 ## E1 ## E1; }; \
+
311  struct { detail::_swizzle<3,T, P, V, 1,0,0,-1> E1 ## E0 ## E0; }; \
+
312  struct { detail::_swizzle<3,T, P, V, 1,0,1,-1> E1 ## E0 ## E1; }; \
+
313  struct { detail::_swizzle<3,T, P, V, 1,1,0,-1> E1 ## E1 ## E0; }; \
+
314  struct { detail::_swizzle<3,T, P, V, 1,1,1,-1> E1 ## E1 ## E1; };
+
315 
+
316 #define _GLM_SWIZZLE2_4_MEMBERS(T, P, V, E0,E1) \
+
317  struct { detail::_swizzle<4,T, P, V, 0,0,0,0> E0 ## E0 ## E0 ## E0; }; \
+
318  struct { detail::_swizzle<4,T, P, V, 0,0,0,1> E0 ## E0 ## E0 ## E1; }; \
+
319  struct { detail::_swizzle<4,T, P, V, 0,0,1,0> E0 ## E0 ## E1 ## E0; }; \
+
320  struct { detail::_swizzle<4,T, P, V, 0,0,1,1> E0 ## E0 ## E1 ## E1; }; \
+
321  struct { detail::_swizzle<4,T, P, V, 0,1,0,0> E0 ## E1 ## E0 ## E0; }; \
+
322  struct { detail::_swizzle<4,T, P, V, 0,1,0,1> E0 ## E1 ## E0 ## E1; }; \
+
323  struct { detail::_swizzle<4,T, P, V, 0,1,1,0> E0 ## E1 ## E1 ## E0; }; \
+
324  struct { detail::_swizzle<4,T, P, V, 0,1,1,1> E0 ## E1 ## E1 ## E1; }; \
+
325  struct { detail::_swizzle<4,T, P, V, 1,0,0,0> E1 ## E0 ## E0 ## E0; }; \
+
326  struct { detail::_swizzle<4,T, P, V, 1,0,0,1> E1 ## E0 ## E0 ## E1; }; \
+
327  struct { detail::_swizzle<4,T, P, V, 1,0,1,0> E1 ## E0 ## E1 ## E0; }; \
+
328  struct { detail::_swizzle<4,T, P, V, 1,0,1,1> E1 ## E0 ## E1 ## E1; }; \
+
329  struct { detail::_swizzle<4,T, P, V, 1,1,0,0> E1 ## E1 ## E0 ## E0; }; \
+
330  struct { detail::_swizzle<4,T, P, V, 1,1,0,1> E1 ## E1 ## E0 ## E1; }; \
+
331  struct { detail::_swizzle<4,T, P, V, 1,1,1,0> E1 ## E1 ## E1 ## E0; }; \
+
332  struct { detail::_swizzle<4,T, P, V, 1,1,1,1> E1 ## E1 ## E1 ## E1; };
+
333 
+
334 #define _GLM_SWIZZLE3_2_MEMBERS(T, P, V, E0,E1,E2) \
+
335  struct { detail::_swizzle<2,T, P, V, 0,0,-1,-2> E0 ## E0; }; \
+
336  struct { detail::_swizzle<2,T, P, V, 0,1,-1,-2> E0 ## E1; }; \
+
337  struct { detail::_swizzle<2,T, P, V, 0,2,-1,-2> E0 ## E2; }; \
+
338  struct { detail::_swizzle<2,T, P, V, 1,0,-1,-2> E1 ## E0; }; \
+
339  struct { detail::_swizzle<2,T, P, V, 1,1,-1,-2> E1 ## E1; }; \
+
340  struct { detail::_swizzle<2,T, P, V, 1,2,-1,-2> E1 ## E2; }; \
+
341  struct { detail::_swizzle<2,T, P, V, 2,0,-1,-2> E2 ## E0; }; \
+
342  struct { detail::_swizzle<2,T, P, V, 2,1,-1,-2> E2 ## E1; }; \
+
343  struct { detail::_swizzle<2,T, P, V, 2,2,-1,-2> E2 ## E2; };
+
344 
+
345 #define _GLM_SWIZZLE3_3_MEMBERS(T, P, V ,E0,E1,E2) \
+
346  struct { detail::_swizzle<3, T, P, V, 0,0,0,-1> E0 ## E0 ## E0; }; \
+
347  struct { detail::_swizzle<3, T, P, V, 0,0,1,-1> E0 ## E0 ## E1; }; \
+
348  struct { detail::_swizzle<3, T, P, V, 0,0,2,-1> E0 ## E0 ## E2; }; \
+
349  struct { detail::_swizzle<3, T, P, V, 0,1,0,-1> E0 ## E1 ## E0; }; \
+
350  struct { detail::_swizzle<3, T, P, V, 0,1,1,-1> E0 ## E1 ## E1; }; \
+
351  struct { detail::_swizzle<3, T, P, V, 0,1,2,-1> E0 ## E1 ## E2; }; \
+
352  struct { detail::_swizzle<3, T, P, V, 0,2,0,-1> E0 ## E2 ## E0; }; \
+
353  struct { detail::_swizzle<3, T, P, V, 0,2,1,-1> E0 ## E2 ## E1; }; \
+
354  struct { detail::_swizzle<3, T, P, V, 0,2,2,-1> E0 ## E2 ## E2; }; \
+
355  struct { detail::_swizzle<3, T, P, V, 1,0,0,-1> E1 ## E0 ## E0; }; \
+
356  struct { detail::_swizzle<3, T, P, V, 1,0,1,-1> E1 ## E0 ## E1; }; \
+
357  struct { detail::_swizzle<3, T, P, V, 1,0,2,-1> E1 ## E0 ## E2; }; \
+
358  struct { detail::_swizzle<3, T, P, V, 1,1,0,-1> E1 ## E1 ## E0; }; \
+
359  struct { detail::_swizzle<3, T, P, V, 1,1,1,-1> E1 ## E1 ## E1; }; \
+
360  struct { detail::_swizzle<3, T, P, V, 1,1,2,-1> E1 ## E1 ## E2; }; \
+
361  struct { detail::_swizzle<3, T, P, V, 1,2,0,-1> E1 ## E2 ## E0; }; \
+
362  struct { detail::_swizzle<3, T, P, V, 1,2,1,-1> E1 ## E2 ## E1; }; \
+
363  struct { detail::_swizzle<3, T, P, V, 1,2,2,-1> E1 ## E2 ## E2; }; \
+
364  struct { detail::_swizzle<3, T, P, V, 2,0,0,-1> E2 ## E0 ## E0; }; \
+
365  struct { detail::_swizzle<3, T, P, V, 2,0,1,-1> E2 ## E0 ## E1; }; \
+
366  struct { detail::_swizzle<3, T, P, V, 2,0,2,-1> E2 ## E0 ## E2; }; \
+
367  struct { detail::_swizzle<3, T, P, V, 2,1,0,-1> E2 ## E1 ## E0; }; \
+
368  struct { detail::_swizzle<3, T, P, V, 2,1,1,-1> E2 ## E1 ## E1; }; \
+
369  struct { detail::_swizzle<3, T, P, V, 2,1,2,-1> E2 ## E1 ## E2; }; \
+
370  struct { detail::_swizzle<3, T, P, V, 2,2,0,-1> E2 ## E2 ## E0; }; \
+
371  struct { detail::_swizzle<3, T, P, V, 2,2,1,-1> E2 ## E2 ## E1; }; \
+
372  struct { detail::_swizzle<3, T, P, V, 2,2,2,-1> E2 ## E2 ## E2; };
+
373 
+
374 #define _GLM_SWIZZLE3_4_MEMBERS(T, P, V, E0,E1,E2) \
+
375  struct { detail::_swizzle<4,T, P, V, 0,0,0,0> E0 ## E0 ## E0 ## E0; }; \
+
376  struct { detail::_swizzle<4,T, P, V, 0,0,0,1> E0 ## E0 ## E0 ## E1; }; \
+
377  struct { detail::_swizzle<4,T, P, V, 0,0,0,2> E0 ## E0 ## E0 ## E2; }; \
+
378  struct { detail::_swizzle<4,T, P, V, 0,0,1,0> E0 ## E0 ## E1 ## E0; }; \
+
379  struct { detail::_swizzle<4,T, P, V, 0,0,1,1> E0 ## E0 ## E1 ## E1; }; \
+
380  struct { detail::_swizzle<4,T, P, V, 0,0,1,2> E0 ## E0 ## E1 ## E2; }; \
+
381  struct { detail::_swizzle<4,T, P, V, 0,0,2,0> E0 ## E0 ## E2 ## E0; }; \
+
382  struct { detail::_swizzle<4,T, P, V, 0,0,2,1> E0 ## E0 ## E2 ## E1; }; \
+
383  struct { detail::_swizzle<4,T, P, V, 0,0,2,2> E0 ## E0 ## E2 ## E2; }; \
+
384  struct { detail::_swizzle<4,T, P, V, 0,1,0,0> E0 ## E1 ## E0 ## E0; }; \
+
385  struct { detail::_swizzle<4,T, P, V, 0,1,0,1> E0 ## E1 ## E0 ## E1; }; \
+
386  struct { detail::_swizzle<4,T, P, V, 0,1,0,2> E0 ## E1 ## E0 ## E2; }; \
+
387  struct { detail::_swizzle<4,T, P, V, 0,1,1,0> E0 ## E1 ## E1 ## E0; }; \
+
388  struct { detail::_swizzle<4,T, P, V, 0,1,1,1> E0 ## E1 ## E1 ## E1; }; \
+
389  struct { detail::_swizzle<4,T, P, V, 0,1,1,2> E0 ## E1 ## E1 ## E2; }; \
+
390  struct { detail::_swizzle<4,T, P, V, 0,1,2,0> E0 ## E1 ## E2 ## E0; }; \
+
391  struct { detail::_swizzle<4,T, P, V, 0,1,2,1> E0 ## E1 ## E2 ## E1; }; \
+
392  struct { detail::_swizzle<4,T, P, V, 0,1,2,2> E0 ## E1 ## E2 ## E2; }; \
+
393  struct { detail::_swizzle<4,T, P, V, 0,2,0,0> E0 ## E2 ## E0 ## E0; }; \
+
394  struct { detail::_swizzle<4,T, P, V, 0,2,0,1> E0 ## E2 ## E0 ## E1; }; \
+
395  struct { detail::_swizzle<4,T, P, V, 0,2,0,2> E0 ## E2 ## E0 ## E2; }; \
+
396  struct { detail::_swizzle<4,T, P, V, 0,2,1,0> E0 ## E2 ## E1 ## E0; }; \
+
397  struct { detail::_swizzle<4,T, P, V, 0,2,1,1> E0 ## E2 ## E1 ## E1; }; \
+
398  struct { detail::_swizzle<4,T, P, V, 0,2,1,2> E0 ## E2 ## E1 ## E2; }; \
+
399  struct { detail::_swizzle<4,T, P, V, 0,2,2,0> E0 ## E2 ## E2 ## E0; }; \
+
400  struct { detail::_swizzle<4,T, P, V, 0,2,2,1> E0 ## E2 ## E2 ## E1; }; \
+
401  struct { detail::_swizzle<4,T, P, V, 0,2,2,2> E0 ## E2 ## E2 ## E2; }; \
+
402  struct { detail::_swizzle<4,T, P, V, 1,0,0,0> E1 ## E0 ## E0 ## E0; }; \
+
403  struct { detail::_swizzle<4,T, P, V, 1,0,0,1> E1 ## E0 ## E0 ## E1; }; \
+
404  struct { detail::_swizzle<4,T, P, V, 1,0,0,2> E1 ## E0 ## E0 ## E2; }; \
+
405  struct { detail::_swizzle<4,T, P, V, 1,0,1,0> E1 ## E0 ## E1 ## E0; }; \
+
406  struct { detail::_swizzle<4,T, P, V, 1,0,1,1> E1 ## E0 ## E1 ## E1; }; \
+
407  struct { detail::_swizzle<4,T, P, V, 1,0,1,2> E1 ## E0 ## E1 ## E2; }; \
+
408  struct { detail::_swizzle<4,T, P, V, 1,0,2,0> E1 ## E0 ## E2 ## E0; }; \
+
409  struct { detail::_swizzle<4,T, P, V, 1,0,2,1> E1 ## E0 ## E2 ## E1; }; \
+
410  struct { detail::_swizzle<4,T, P, V, 1,0,2,2> E1 ## E0 ## E2 ## E2; }; \
+
411  struct { detail::_swizzle<4,T, P, V, 1,1,0,0> E1 ## E1 ## E0 ## E0; }; \
+
412  struct { detail::_swizzle<4,T, P, V, 1,1,0,1> E1 ## E1 ## E0 ## E1; }; \
+
413  struct { detail::_swizzle<4,T, P, V, 1,1,0,2> E1 ## E1 ## E0 ## E2; }; \
+
414  struct { detail::_swizzle<4,T, P, V, 1,1,1,0> E1 ## E1 ## E1 ## E0; }; \
+
415  struct { detail::_swizzle<4,T, P, V, 1,1,1,1> E1 ## E1 ## E1 ## E1; }; \
+
416  struct { detail::_swizzle<4,T, P, V, 1,1,1,2> E1 ## E1 ## E1 ## E2; }; \
+
417  struct { detail::_swizzle<4,T, P, V, 1,1,2,0> E1 ## E1 ## E2 ## E0; }; \
+
418  struct { detail::_swizzle<4,T, P, V, 1,1,2,1> E1 ## E1 ## E2 ## E1; }; \
+
419  struct { detail::_swizzle<4,T, P, V, 1,1,2,2> E1 ## E1 ## E2 ## E2; }; \
+
420  struct { detail::_swizzle<4,T, P, V, 1,2,0,0> E1 ## E2 ## E0 ## E0; }; \
+
421  struct { detail::_swizzle<4,T, P, V, 1,2,0,1> E1 ## E2 ## E0 ## E1; }; \
+
422  struct { detail::_swizzle<4,T, P, V, 1,2,0,2> E1 ## E2 ## E0 ## E2; }; \
+
423  struct { detail::_swizzle<4,T, P, V, 1,2,1,0> E1 ## E2 ## E1 ## E0; }; \
+
424  struct { detail::_swizzle<4,T, P, V, 1,2,1,1> E1 ## E2 ## E1 ## E1; }; \
+
425  struct { detail::_swizzle<4,T, P, V, 1,2,1,2> E1 ## E2 ## E1 ## E2; }; \
+
426  struct { detail::_swizzle<4,T, P, V, 1,2,2,0> E1 ## E2 ## E2 ## E0; }; \
+
427  struct { detail::_swizzle<4,T, P, V, 1,2,2,1> E1 ## E2 ## E2 ## E1; }; \
+
428  struct { detail::_swizzle<4,T, P, V, 1,2,2,2> E1 ## E2 ## E2 ## E2; }; \
+
429  struct { detail::_swizzle<4,T, P, V, 2,0,0,0> E2 ## E0 ## E0 ## E0; }; \
+
430  struct { detail::_swizzle<4,T, P, V, 2,0,0,1> E2 ## E0 ## E0 ## E1; }; \
+
431  struct { detail::_swizzle<4,T, P, V, 2,0,0,2> E2 ## E0 ## E0 ## E2; }; \
+
432  struct { detail::_swizzle<4,T, P, V, 2,0,1,0> E2 ## E0 ## E1 ## E0; }; \
+
433  struct { detail::_swizzle<4,T, P, V, 2,0,1,1> E2 ## E0 ## E1 ## E1; }; \
+
434  struct { detail::_swizzle<4,T, P, V, 2,0,1,2> E2 ## E0 ## E1 ## E2; }; \
+
435  struct { detail::_swizzle<4,T, P, V, 2,0,2,0> E2 ## E0 ## E2 ## E0; }; \
+
436  struct { detail::_swizzle<4,T, P, V, 2,0,2,1> E2 ## E0 ## E2 ## E1; }; \
+
437  struct { detail::_swizzle<4,T, P, V, 2,0,2,2> E2 ## E0 ## E2 ## E2; }; \
+
438  struct { detail::_swizzle<4,T, P, V, 2,1,0,0> E2 ## E1 ## E0 ## E0; }; \
+
439  struct { detail::_swizzle<4,T, P, V, 2,1,0,1> E2 ## E1 ## E0 ## E1; }; \
+
440  struct { detail::_swizzle<4,T, P, V, 2,1,0,2> E2 ## E1 ## E0 ## E2; }; \
+
441  struct { detail::_swizzle<4,T, P, V, 2,1,1,0> E2 ## E1 ## E1 ## E0; }; \
+
442  struct { detail::_swizzle<4,T, P, V, 2,1,1,1> E2 ## E1 ## E1 ## E1; }; \
+
443  struct { detail::_swizzle<4,T, P, V, 2,1,1,2> E2 ## E1 ## E1 ## E2; }; \
+
444  struct { detail::_swizzle<4,T, P, V, 2,1,2,0> E2 ## E1 ## E2 ## E0; }; \
+
445  struct { detail::_swizzle<4,T, P, V, 2,1,2,1> E2 ## E1 ## E2 ## E1; }; \
+
446  struct { detail::_swizzle<4,T, P, V, 2,1,2,2> E2 ## E1 ## E2 ## E2; }; \
+
447  struct { detail::_swizzle<4,T, P, V, 2,2,0,0> E2 ## E2 ## E0 ## E0; }; \
+
448  struct { detail::_swizzle<4,T, P, V, 2,2,0,1> E2 ## E2 ## E0 ## E1; }; \
+
449  struct { detail::_swizzle<4,T, P, V, 2,2,0,2> E2 ## E2 ## E0 ## E2; }; \
+
450  struct { detail::_swizzle<4,T, P, V, 2,2,1,0> E2 ## E2 ## E1 ## E0; }; \
+
451  struct { detail::_swizzle<4,T, P, V, 2,2,1,1> E2 ## E2 ## E1 ## E1; }; \
+
452  struct { detail::_swizzle<4,T, P, V, 2,2,1,2> E2 ## E2 ## E1 ## E2; }; \
+
453  struct { detail::_swizzle<4,T, P, V, 2,2,2,0> E2 ## E2 ## E2 ## E0; }; \
+
454  struct { detail::_swizzle<4,T, P, V, 2,2,2,1> E2 ## E2 ## E2 ## E1; }; \
+
455  struct { detail::_swizzle<4,T, P, V, 2,2,2,2> E2 ## E2 ## E2 ## E2; };
+
456 
+
457 #define _GLM_SWIZZLE4_2_MEMBERS(T, P, V, E0,E1,E2,E3) \
+
458  struct { detail::_swizzle<2,T, P, V, 0,0,-1,-2> E0 ## E0; }; \
+
459  struct { detail::_swizzle<2,T, P, V, 0,1,-1,-2> E0 ## E1; }; \
+
460  struct { detail::_swizzle<2,T, P, V, 0,2,-1,-2> E0 ## E2; }; \
+
461  struct { detail::_swizzle<2,T, P, V, 0,3,-1,-2> E0 ## E3; }; \
+
462  struct { detail::_swizzle<2,T, P, V, 1,0,-1,-2> E1 ## E0; }; \
+
463  struct { detail::_swizzle<2,T, P, V, 1,1,-1,-2> E1 ## E1; }; \
+
464  struct { detail::_swizzle<2,T, P, V, 1,2,-1,-2> E1 ## E2; }; \
+
465  struct { detail::_swizzle<2,T, P, V, 1,3,-1,-2> E1 ## E3; }; \
+
466  struct { detail::_swizzle<2,T, P, V, 2,0,-1,-2> E2 ## E0; }; \
+
467  struct { detail::_swizzle<2,T, P, V, 2,1,-1,-2> E2 ## E1; }; \
+
468  struct { detail::_swizzle<2,T, P, V, 2,2,-1,-2> E2 ## E2; }; \
+
469  struct { detail::_swizzle<2,T, P, V, 2,3,-1,-2> E2 ## E3; }; \
+
470  struct { detail::_swizzle<2,T, P, V, 3,0,-1,-2> E3 ## E0; }; \
+
471  struct { detail::_swizzle<2,T, P, V, 3,1,-1,-2> E3 ## E1; }; \
+
472  struct { detail::_swizzle<2,T, P, V, 3,2,-1,-2> E3 ## E2; }; \
+
473  struct { detail::_swizzle<2,T, P, V, 3,3,-1,-2> E3 ## E3; };
+
474 
+
475 #define _GLM_SWIZZLE4_3_MEMBERS(T, P, V, E0,E1,E2,E3) \
+
476  struct { detail::_swizzle<3, T, P, V, 0,0,0,-1> E0 ## E0 ## E0; }; \
+
477  struct { detail::_swizzle<3, T, P, V, 0,0,1,-1> E0 ## E0 ## E1; }; \
+
478  struct { detail::_swizzle<3, T, P, V, 0,0,2,-1> E0 ## E0 ## E2; }; \
+
479  struct { detail::_swizzle<3, T, P, V, 0,0,3,-1> E0 ## E0 ## E3; }; \
+
480  struct { detail::_swizzle<3, T, P, V, 0,1,0,-1> E0 ## E1 ## E0; }; \
+
481  struct { detail::_swizzle<3, T, P, V, 0,1,1,-1> E0 ## E1 ## E1; }; \
+
482  struct { detail::_swizzle<3, T, P, V, 0,1,2,-1> E0 ## E1 ## E2; }; \
+
483  struct { detail::_swizzle<3, T, P, V, 0,1,3,-1> E0 ## E1 ## E3; }; \
+
484  struct { detail::_swizzle<3, T, P, V, 0,2,0,-1> E0 ## E2 ## E0; }; \
+
485  struct { detail::_swizzle<3, T, P, V, 0,2,1,-1> E0 ## E2 ## E1; }; \
+
486  struct { detail::_swizzle<3, T, P, V, 0,2,2,-1> E0 ## E2 ## E2; }; \
+
487  struct { detail::_swizzle<3, T, P, V, 0,2,3,-1> E0 ## E2 ## E3; }; \
+
488  struct { detail::_swizzle<3, T, P, V, 0,3,0,-1> E0 ## E3 ## E0; }; \
+
489  struct { detail::_swizzle<3, T, P, V, 0,3,1,-1> E0 ## E3 ## E1; }; \
+
490  struct { detail::_swizzle<3, T, P, V, 0,3,2,-1> E0 ## E3 ## E2; }; \
+
491  struct { detail::_swizzle<3, T, P, V, 0,3,3,-1> E0 ## E3 ## E3; }; \
+
492  struct { detail::_swizzle<3, T, P, V, 1,0,0,-1> E1 ## E0 ## E0; }; \
+
493  struct { detail::_swizzle<3, T, P, V, 1,0,1,-1> E1 ## E0 ## E1; }; \
+
494  struct { detail::_swizzle<3, T, P, V, 1,0,2,-1> E1 ## E0 ## E2; }; \
+
495  struct { detail::_swizzle<3, T, P, V, 1,0,3,-1> E1 ## E0 ## E3; }; \
+
496  struct { detail::_swizzle<3, T, P, V, 1,1,0,-1> E1 ## E1 ## E0; }; \
+
497  struct { detail::_swizzle<3, T, P, V, 1,1,1,-1> E1 ## E1 ## E1; }; \
+
498  struct { detail::_swizzle<3, T, P, V, 1,1,2,-1> E1 ## E1 ## E2; }; \
+
499  struct { detail::_swizzle<3, T, P, V, 1,1,3,-1> E1 ## E1 ## E3; }; \
+
500  struct { detail::_swizzle<3, T, P, V, 1,2,0,-1> E1 ## E2 ## E0; }; \
+
501  struct { detail::_swizzle<3, T, P, V, 1,2,1,-1> E1 ## E2 ## E1; }; \
+
502  struct { detail::_swizzle<3, T, P, V, 1,2,2,-1> E1 ## E2 ## E2; }; \
+
503  struct { detail::_swizzle<3, T, P, V, 1,2,3,-1> E1 ## E2 ## E3; }; \
+
504  struct { detail::_swizzle<3, T, P, V, 1,3,0,-1> E1 ## E3 ## E0; }; \
+
505  struct { detail::_swizzle<3, T, P, V, 1,3,1,-1> E1 ## E3 ## E1; }; \
+
506  struct { detail::_swizzle<3, T, P, V, 1,3,2,-1> E1 ## E3 ## E2; }; \
+
507  struct { detail::_swizzle<3, T, P, V, 1,3,3,-1> E1 ## E3 ## E3; }; \
+
508  struct { detail::_swizzle<3, T, P, V, 2,0,0,-1> E2 ## E0 ## E0; }; \
+
509  struct { detail::_swizzle<3, T, P, V, 2,0,1,-1> E2 ## E0 ## E1; }; \
+
510  struct { detail::_swizzle<3, T, P, V, 2,0,2,-1> E2 ## E0 ## E2; }; \
+
511  struct { detail::_swizzle<3, T, P, V, 2,0,3,-1> E2 ## E0 ## E3; }; \
+
512  struct { detail::_swizzle<3, T, P, V, 2,1,0,-1> E2 ## E1 ## E0; }; \
+
513  struct { detail::_swizzle<3, T, P, V, 2,1,1,-1> E2 ## E1 ## E1; }; \
+
514  struct { detail::_swizzle<3, T, P, V, 2,1,2,-1> E2 ## E1 ## E2; }; \
+
515  struct { detail::_swizzle<3, T, P, V, 2,1,3,-1> E2 ## E1 ## E3; }; \
+
516  struct { detail::_swizzle<3, T, P, V, 2,2,0,-1> E2 ## E2 ## E0; }; \
+
517  struct { detail::_swizzle<3, T, P, V, 2,2,1,-1> E2 ## E2 ## E1; }; \
+
518  struct { detail::_swizzle<3, T, P, V, 2,2,2,-1> E2 ## E2 ## E2; }; \
+
519  struct { detail::_swizzle<3, T, P, V, 2,2,3,-1> E2 ## E2 ## E3; }; \
+
520  struct { detail::_swizzle<3, T, P, V, 2,3,0,-1> E2 ## E3 ## E0; }; \
+
521  struct { detail::_swizzle<3, T, P, V, 2,3,1,-1> E2 ## E3 ## E1; }; \
+
522  struct { detail::_swizzle<3, T, P, V, 2,3,2,-1> E2 ## E3 ## E2; }; \
+
523  struct { detail::_swizzle<3, T, P, V, 2,3,3,-1> E2 ## E3 ## E3; }; \
+
524  struct { detail::_swizzle<3, T, P, V, 3,0,0,-1> E3 ## E0 ## E0; }; \
+
525  struct { detail::_swizzle<3, T, P, V, 3,0,1,-1> E3 ## E0 ## E1; }; \
+
526  struct { detail::_swizzle<3, T, P, V, 3,0,2,-1> E3 ## E0 ## E2; }; \
+
527  struct { detail::_swizzle<3, T, P, V, 3,0,3,-1> E3 ## E0 ## E3; }; \
+
528  struct { detail::_swizzle<3, T, P, V, 3,1,0,-1> E3 ## E1 ## E0; }; \
+
529  struct { detail::_swizzle<3, T, P, V, 3,1,1,-1> E3 ## E1 ## E1; }; \
+
530  struct { detail::_swizzle<3, T, P, V, 3,1,2,-1> E3 ## E1 ## E2; }; \
+
531  struct { detail::_swizzle<3, T, P, V, 3,1,3,-1> E3 ## E1 ## E3; }; \
+
532  struct { detail::_swizzle<3, T, P, V, 3,2,0,-1> E3 ## E2 ## E0; }; \
+
533  struct { detail::_swizzle<3, T, P, V, 3,2,1,-1> E3 ## E2 ## E1; }; \
+
534  struct { detail::_swizzle<3, T, P, V, 3,2,2,-1> E3 ## E2 ## E2; }; \
+
535  struct { detail::_swizzle<3, T, P, V, 3,2,3,-1> E3 ## E2 ## E3; }; \
+
536  struct { detail::_swizzle<3, T, P, V, 3,3,0,-1> E3 ## E3 ## E0; }; \
+
537  struct { detail::_swizzle<3, T, P, V, 3,3,1,-1> E3 ## E3 ## E1; }; \
+
538  struct { detail::_swizzle<3, T, P, V, 3,3,2,-1> E3 ## E3 ## E2; }; \
+
539  struct { detail::_swizzle<3, T, P, V, 3,3,3,-1> E3 ## E3 ## E3; };
+
540 
+
541 #define _GLM_SWIZZLE4_4_MEMBERS(T, P, V, E0,E1,E2,E3) \
+
542  struct { detail::_swizzle<4, T, P, V, 0,0,0,0> E0 ## E0 ## E0 ## E0; }; \
+
543  struct { detail::_swizzle<4, T, P, V, 0,0,0,1> E0 ## E0 ## E0 ## E1; }; \
+
544  struct { detail::_swizzle<4, T, P, V, 0,0,0,2> E0 ## E0 ## E0 ## E2; }; \
+
545  struct { detail::_swizzle<4, T, P, V, 0,0,0,3> E0 ## E0 ## E0 ## E3; }; \
+
546  struct { detail::_swizzle<4, T, P, V, 0,0,1,0> E0 ## E0 ## E1 ## E0; }; \
+
547  struct { detail::_swizzle<4, T, P, V, 0,0,1,1> E0 ## E0 ## E1 ## E1; }; \
+
548  struct { detail::_swizzle<4, T, P, V, 0,0,1,2> E0 ## E0 ## E1 ## E2; }; \
+
549  struct { detail::_swizzle<4, T, P, V, 0,0,1,3> E0 ## E0 ## E1 ## E3; }; \
+
550  struct { detail::_swizzle<4, T, P, V, 0,0,2,0> E0 ## E0 ## E2 ## E0; }; \
+
551  struct { detail::_swizzle<4, T, P, V, 0,0,2,1> E0 ## E0 ## E2 ## E1; }; \
+
552  struct { detail::_swizzle<4, T, P, V, 0,0,2,2> E0 ## E0 ## E2 ## E2; }; \
+
553  struct { detail::_swizzle<4, T, P, V, 0,0,2,3> E0 ## E0 ## E2 ## E3; }; \
+
554  struct { detail::_swizzle<4, T, P, V, 0,0,3,0> E0 ## E0 ## E3 ## E0; }; \
+
555  struct { detail::_swizzle<4, T, P, V, 0,0,3,1> E0 ## E0 ## E3 ## E1; }; \
+
556  struct { detail::_swizzle<4, T, P, V, 0,0,3,2> E0 ## E0 ## E3 ## E2; }; \
+
557  struct { detail::_swizzle<4, T, P, V, 0,0,3,3> E0 ## E0 ## E3 ## E3; }; \
+
558  struct { detail::_swizzle<4, T, P, V, 0,1,0,0> E0 ## E1 ## E0 ## E0; }; \
+
559  struct { detail::_swizzle<4, T, P, V, 0,1,0,1> E0 ## E1 ## E0 ## E1; }; \
+
560  struct { detail::_swizzle<4, T, P, V, 0,1,0,2> E0 ## E1 ## E0 ## E2; }; \
+
561  struct { detail::_swizzle<4, T, P, V, 0,1,0,3> E0 ## E1 ## E0 ## E3; }; \
+
562  struct { detail::_swizzle<4, T, P, V, 0,1,1,0> E0 ## E1 ## E1 ## E0; }; \
+
563  struct { detail::_swizzle<4, T, P, V, 0,1,1,1> E0 ## E1 ## E1 ## E1; }; \
+
564  struct { detail::_swizzle<4, T, P, V, 0,1,1,2> E0 ## E1 ## E1 ## E2; }; \
+
565  struct { detail::_swizzle<4, T, P, V, 0,1,1,3> E0 ## E1 ## E1 ## E3; }; \
+
566  struct { detail::_swizzle<4, T, P, V, 0,1,2,0> E0 ## E1 ## E2 ## E0; }; \
+
567  struct { detail::_swizzle<4, T, P, V, 0,1,2,1> E0 ## E1 ## E2 ## E1; }; \
+
568  struct { detail::_swizzle<4, T, P, V, 0,1,2,2> E0 ## E1 ## E2 ## E2; }; \
+
569  struct { detail::_swizzle<4, T, P, V, 0,1,2,3> E0 ## E1 ## E2 ## E3; }; \
+
570  struct { detail::_swizzle<4, T, P, V, 0,1,3,0> E0 ## E1 ## E3 ## E0; }; \
+
571  struct { detail::_swizzle<4, T, P, V, 0,1,3,1> E0 ## E1 ## E3 ## E1; }; \
+
572  struct { detail::_swizzle<4, T, P, V, 0,1,3,2> E0 ## E1 ## E3 ## E2; }; \
+
573  struct { detail::_swizzle<4, T, P, V, 0,1,3,3> E0 ## E1 ## E3 ## E3; }; \
+
574  struct { detail::_swizzle<4, T, P, V, 0,2,0,0> E0 ## E2 ## E0 ## E0; }; \
+
575  struct { detail::_swizzle<4, T, P, V, 0,2,0,1> E0 ## E2 ## E0 ## E1; }; \
+
576  struct { detail::_swizzle<4, T, P, V, 0,2,0,2> E0 ## E2 ## E0 ## E2; }; \
+
577  struct { detail::_swizzle<4, T, P, V, 0,2,0,3> E0 ## E2 ## E0 ## E3; }; \
+
578  struct { detail::_swizzle<4, T, P, V, 0,2,1,0> E0 ## E2 ## E1 ## E0; }; \
+
579  struct { detail::_swizzle<4, T, P, V, 0,2,1,1> E0 ## E2 ## E1 ## E1; }; \
+
580  struct { detail::_swizzle<4, T, P, V, 0,2,1,2> E0 ## E2 ## E1 ## E2; }; \
+
581  struct { detail::_swizzle<4, T, P, V, 0,2,1,3> E0 ## E2 ## E1 ## E3; }; \
+
582  struct { detail::_swizzle<4, T, P, V, 0,2,2,0> E0 ## E2 ## E2 ## E0; }; \
+
583  struct { detail::_swizzle<4, T, P, V, 0,2,2,1> E0 ## E2 ## E2 ## E1; }; \
+
584  struct { detail::_swizzle<4, T, P, V, 0,2,2,2> E0 ## E2 ## E2 ## E2; }; \
+
585  struct { detail::_swizzle<4, T, P, V, 0,2,2,3> E0 ## E2 ## E2 ## E3; }; \
+
586  struct { detail::_swizzle<4, T, P, V, 0,2,3,0> E0 ## E2 ## E3 ## E0; }; \
+
587  struct { detail::_swizzle<4, T, P, V, 0,2,3,1> E0 ## E2 ## E3 ## E1; }; \
+
588  struct { detail::_swizzle<4, T, P, V, 0,2,3,2> E0 ## E2 ## E3 ## E2; }; \
+
589  struct { detail::_swizzle<4, T, P, V, 0,2,3,3> E0 ## E2 ## E3 ## E3; }; \
+
590  struct { detail::_swizzle<4, T, P, V, 0,3,0,0> E0 ## E3 ## E0 ## E0; }; \
+
591  struct { detail::_swizzle<4, T, P, V, 0,3,0,1> E0 ## E3 ## E0 ## E1; }; \
+
592  struct { detail::_swizzle<4, T, P, V, 0,3,0,2> E0 ## E3 ## E0 ## E2; }; \
+
593  struct { detail::_swizzle<4, T, P, V, 0,3,0,3> E0 ## E3 ## E0 ## E3; }; \
+
594  struct { detail::_swizzle<4, T, P, V, 0,3,1,0> E0 ## E3 ## E1 ## E0; }; \
+
595  struct { detail::_swizzle<4, T, P, V, 0,3,1,1> E0 ## E3 ## E1 ## E1; }; \
+
596  struct { detail::_swizzle<4, T, P, V, 0,3,1,2> E0 ## E3 ## E1 ## E2; }; \
+
597  struct { detail::_swizzle<4, T, P, V, 0,3,1,3> E0 ## E3 ## E1 ## E3; }; \
+
598  struct { detail::_swizzle<4, T, P, V, 0,3,2,0> E0 ## E3 ## E2 ## E0; }; \
+
599  struct { detail::_swizzle<4, T, P, V, 0,3,2,1> E0 ## E3 ## E2 ## E1; }; \
+
600  struct { detail::_swizzle<4, T, P, V, 0,3,2,2> E0 ## E3 ## E2 ## E2; }; \
+
601  struct { detail::_swizzle<4, T, P, V, 0,3,2,3> E0 ## E3 ## E2 ## E3; }; \
+
602  struct { detail::_swizzle<4, T, P, V, 0,3,3,0> E0 ## E3 ## E3 ## E0; }; \
+
603  struct { detail::_swizzle<4, T, P, V, 0,3,3,1> E0 ## E3 ## E3 ## E1; }; \
+
604  struct { detail::_swizzle<4, T, P, V, 0,3,3,2> E0 ## E3 ## E3 ## E2; }; \
+
605  struct { detail::_swizzle<4, T, P, V, 0,3,3,3> E0 ## E3 ## E3 ## E3; }; \
+
606  struct { detail::_swizzle<4, T, P, V, 1,0,0,0> E1 ## E0 ## E0 ## E0; }; \
+
607  struct { detail::_swizzle<4, T, P, V, 1,0,0,1> E1 ## E0 ## E0 ## E1; }; \
+
608  struct { detail::_swizzle<4, T, P, V, 1,0,0,2> E1 ## E0 ## E0 ## E2; }; \
+
609  struct { detail::_swizzle<4, T, P, V, 1,0,0,3> E1 ## E0 ## E0 ## E3; }; \
+
610  struct { detail::_swizzle<4, T, P, V, 1,0,1,0> E1 ## E0 ## E1 ## E0; }; \
+
611  struct { detail::_swizzle<4, T, P, V, 1,0,1,1> E1 ## E0 ## E1 ## E1; }; \
+
612  struct { detail::_swizzle<4, T, P, V, 1,0,1,2> E1 ## E0 ## E1 ## E2; }; \
+
613  struct { detail::_swizzle<4, T, P, V, 1,0,1,3> E1 ## E0 ## E1 ## E3; }; \
+
614  struct { detail::_swizzle<4, T, P, V, 1,0,2,0> E1 ## E0 ## E2 ## E0; }; \
+
615  struct { detail::_swizzle<4, T, P, V, 1,0,2,1> E1 ## E0 ## E2 ## E1; }; \
+
616  struct { detail::_swizzle<4, T, P, V, 1,0,2,2> E1 ## E0 ## E2 ## E2; }; \
+
617  struct { detail::_swizzle<4, T, P, V, 1,0,2,3> E1 ## E0 ## E2 ## E3; }; \
+
618  struct { detail::_swizzle<4, T, P, V, 1,0,3,0> E1 ## E0 ## E3 ## E0; }; \
+
619  struct { detail::_swizzle<4, T, P, V, 1,0,3,1> E1 ## E0 ## E3 ## E1; }; \
+
620  struct { detail::_swizzle<4, T, P, V, 1,0,3,2> E1 ## E0 ## E3 ## E2; }; \
+
621  struct { detail::_swizzle<4, T, P, V, 1,0,3,3> E1 ## E0 ## E3 ## E3; }; \
+
622  struct { detail::_swizzle<4, T, P, V, 1,1,0,0> E1 ## E1 ## E0 ## E0; }; \
+
623  struct { detail::_swizzle<4, T, P, V, 1,1,0,1> E1 ## E1 ## E0 ## E1; }; \
+
624  struct { detail::_swizzle<4, T, P, V, 1,1,0,2> E1 ## E1 ## E0 ## E2; }; \
+
625  struct { detail::_swizzle<4, T, P, V, 1,1,0,3> E1 ## E1 ## E0 ## E3; }; \
+
626  struct { detail::_swizzle<4, T, P, V, 1,1,1,0> E1 ## E1 ## E1 ## E0; }; \
+
627  struct { detail::_swizzle<4, T, P, V, 1,1,1,1> E1 ## E1 ## E1 ## E1; }; \
+
628  struct { detail::_swizzle<4, T, P, V, 1,1,1,2> E1 ## E1 ## E1 ## E2; }; \
+
629  struct { detail::_swizzle<4, T, P, V, 1,1,1,3> E1 ## E1 ## E1 ## E3; }; \
+
630  struct { detail::_swizzle<4, T, P, V, 1,1,2,0> E1 ## E1 ## E2 ## E0; }; \
+
631  struct { detail::_swizzle<4, T, P, V, 1,1,2,1> E1 ## E1 ## E2 ## E1; }; \
+
632  struct { detail::_swizzle<4, T, P, V, 1,1,2,2> E1 ## E1 ## E2 ## E2; }; \
+
633  struct { detail::_swizzle<4, T, P, V, 1,1,2,3> E1 ## E1 ## E2 ## E3; }; \
+
634  struct { detail::_swizzle<4, T, P, V, 1,1,3,0> E1 ## E1 ## E3 ## E0; }; \
+
635  struct { detail::_swizzle<4, T, P, V, 1,1,3,1> E1 ## E1 ## E3 ## E1; }; \
+
636  struct { detail::_swizzle<4, T, P, V, 1,1,3,2> E1 ## E1 ## E3 ## E2; }; \
+
637  struct { detail::_swizzle<4, T, P, V, 1,1,3,3> E1 ## E1 ## E3 ## E3; }; \
+
638  struct { detail::_swizzle<4, T, P, V, 1,2,0,0> E1 ## E2 ## E0 ## E0; }; \
+
639  struct { detail::_swizzle<4, T, P, V, 1,2,0,1> E1 ## E2 ## E0 ## E1; }; \
+
640  struct { detail::_swizzle<4, T, P, V, 1,2,0,2> E1 ## E2 ## E0 ## E2; }; \
+
641  struct { detail::_swizzle<4, T, P, V, 1,2,0,3> E1 ## E2 ## E0 ## E3; }; \
+
642  struct { detail::_swizzle<4, T, P, V, 1,2,1,0> E1 ## E2 ## E1 ## E0; }; \
+
643  struct { detail::_swizzle<4, T, P, V, 1,2,1,1> E1 ## E2 ## E1 ## E1; }; \
+
644  struct { detail::_swizzle<4, T, P, V, 1,2,1,2> E1 ## E2 ## E1 ## E2; }; \
+
645  struct { detail::_swizzle<4, T, P, V, 1,2,1,3> E1 ## E2 ## E1 ## E3; }; \
+
646  struct { detail::_swizzle<4, T, P, V, 1,2,2,0> E1 ## E2 ## E2 ## E0; }; \
+
647  struct { detail::_swizzle<4, T, P, V, 1,2,2,1> E1 ## E2 ## E2 ## E1; }; \
+
648  struct { detail::_swizzle<4, T, P, V, 1,2,2,2> E1 ## E2 ## E2 ## E2; }; \
+
649  struct { detail::_swizzle<4, T, P, V, 1,2,2,3> E1 ## E2 ## E2 ## E3; }; \
+
650  struct { detail::_swizzle<4, T, P, V, 1,2,3,0> E1 ## E2 ## E3 ## E0; }; \
+
651  struct { detail::_swizzle<4, T, P, V, 1,2,3,1> E1 ## E2 ## E3 ## E1; }; \
+
652  struct { detail::_swizzle<4, T, P, V, 1,2,3,2> E1 ## E2 ## E3 ## E2; }; \
+
653  struct { detail::_swizzle<4, T, P, V, 1,2,3,3> E1 ## E2 ## E3 ## E3; }; \
+
654  struct { detail::_swizzle<4, T, P, V, 1,3,0,0> E1 ## E3 ## E0 ## E0; }; \
+
655  struct { detail::_swizzle<4, T, P, V, 1,3,0,1> E1 ## E3 ## E0 ## E1; }; \
+
656  struct { detail::_swizzle<4, T, P, V, 1,3,0,2> E1 ## E3 ## E0 ## E2; }; \
+
657  struct { detail::_swizzle<4, T, P, V, 1,3,0,3> E1 ## E3 ## E0 ## E3; }; \
+
658  struct { detail::_swizzle<4, T, P, V, 1,3,1,0> E1 ## E3 ## E1 ## E0; }; \
+
659  struct { detail::_swizzle<4, T, P, V, 1,3,1,1> E1 ## E3 ## E1 ## E1; }; \
+
660  struct { detail::_swizzle<4, T, P, V, 1,3,1,2> E1 ## E3 ## E1 ## E2; }; \
+
661  struct { detail::_swizzle<4, T, P, V, 1,3,1,3> E1 ## E3 ## E1 ## E3; }; \
+
662  struct { detail::_swizzle<4, T, P, V, 1,3,2,0> E1 ## E3 ## E2 ## E0; }; \
+
663  struct { detail::_swizzle<4, T, P, V, 1,3,2,1> E1 ## E3 ## E2 ## E1; }; \
+
664  struct { detail::_swizzle<4, T, P, V, 1,3,2,2> E1 ## E3 ## E2 ## E2; }; \
+
665  struct { detail::_swizzle<4, T, P, V, 1,3,2,3> E1 ## E3 ## E2 ## E3; }; \
+
666  struct { detail::_swizzle<4, T, P, V, 1,3,3,0> E1 ## E3 ## E3 ## E0; }; \
+
667  struct { detail::_swizzle<4, T, P, V, 1,3,3,1> E1 ## E3 ## E3 ## E1; }; \
+
668  struct { detail::_swizzle<4, T, P, V, 1,3,3,2> E1 ## E3 ## E3 ## E2; }; \
+
669  struct { detail::_swizzle<4, T, P, V, 1,3,3,3> E1 ## E3 ## E3 ## E3; }; \
+
670  struct { detail::_swizzle<4, T, P, V, 2,0,0,0> E2 ## E0 ## E0 ## E0; }; \
+
671  struct { detail::_swizzle<4, T, P, V, 2,0,0,1> E2 ## E0 ## E0 ## E1; }; \
+
672  struct { detail::_swizzle<4, T, P, V, 2,0,0,2> E2 ## E0 ## E0 ## E2; }; \
+
673  struct { detail::_swizzle<4, T, P, V, 2,0,0,3> E2 ## E0 ## E0 ## E3; }; \
+
674  struct { detail::_swizzle<4, T, P, V, 2,0,1,0> E2 ## E0 ## E1 ## E0; }; \
+
675  struct { detail::_swizzle<4, T, P, V, 2,0,1,1> E2 ## E0 ## E1 ## E1; }; \
+
676  struct { detail::_swizzle<4, T, P, V, 2,0,1,2> E2 ## E0 ## E1 ## E2; }; \
+
677  struct { detail::_swizzle<4, T, P, V, 2,0,1,3> E2 ## E0 ## E1 ## E3; }; \
+
678  struct { detail::_swizzle<4, T, P, V, 2,0,2,0> E2 ## E0 ## E2 ## E0; }; \
+
679  struct { detail::_swizzle<4, T, P, V, 2,0,2,1> E2 ## E0 ## E2 ## E1; }; \
+
680  struct { detail::_swizzle<4, T, P, V, 2,0,2,2> E2 ## E0 ## E2 ## E2; }; \
+
681  struct { detail::_swizzle<4, T, P, V, 2,0,2,3> E2 ## E0 ## E2 ## E3; }; \
+
682  struct { detail::_swizzle<4, T, P, V, 2,0,3,0> E2 ## E0 ## E3 ## E0; }; \
+
683  struct { detail::_swizzle<4, T, P, V, 2,0,3,1> E2 ## E0 ## E3 ## E1; }; \
+
684  struct { detail::_swizzle<4, T, P, V, 2,0,3,2> E2 ## E0 ## E3 ## E2; }; \
+
685  struct { detail::_swizzle<4, T, P, V, 2,0,3,3> E2 ## E0 ## E3 ## E3; }; \
+
686  struct { detail::_swizzle<4, T, P, V, 2,1,0,0> E2 ## E1 ## E0 ## E0; }; \
+
687  struct { detail::_swizzle<4, T, P, V, 2,1,0,1> E2 ## E1 ## E0 ## E1; }; \
+
688  struct { detail::_swizzle<4, T, P, V, 2,1,0,2> E2 ## E1 ## E0 ## E2; }; \
+
689  struct { detail::_swizzle<4, T, P, V, 2,1,0,3> E2 ## E1 ## E0 ## E3; }; \
+
690  struct { detail::_swizzle<4, T, P, V, 2,1,1,0> E2 ## E1 ## E1 ## E0; }; \
+
691  struct { detail::_swizzle<4, T, P, V, 2,1,1,1> E2 ## E1 ## E1 ## E1; }; \
+
692  struct { detail::_swizzle<4, T, P, V, 2,1,1,2> E2 ## E1 ## E1 ## E2; }; \
+
693  struct { detail::_swizzle<4, T, P, V, 2,1,1,3> E2 ## E1 ## E1 ## E3; }; \
+
694  struct { detail::_swizzle<4, T, P, V, 2,1,2,0> E2 ## E1 ## E2 ## E0; }; \
+
695  struct { detail::_swizzle<4, T, P, V, 2,1,2,1> E2 ## E1 ## E2 ## E1; }; \
+
696  struct { detail::_swizzle<4, T, P, V, 2,1,2,2> E2 ## E1 ## E2 ## E2; }; \
+
697  struct { detail::_swizzle<4, T, P, V, 2,1,2,3> E2 ## E1 ## E2 ## E3; }; \
+
698  struct { detail::_swizzle<4, T, P, V, 2,1,3,0> E2 ## E1 ## E3 ## E0; }; \
+
699  struct { detail::_swizzle<4, T, P, V, 2,1,3,1> E2 ## E1 ## E3 ## E1; }; \
+
700  struct { detail::_swizzle<4, T, P, V, 2,1,3,2> E2 ## E1 ## E3 ## E2; }; \
+
701  struct { detail::_swizzle<4, T, P, V, 2,1,3,3> E2 ## E1 ## E3 ## E3; }; \
+
702  struct { detail::_swizzle<4, T, P, V, 2,2,0,0> E2 ## E2 ## E0 ## E0; }; \
+
703  struct { detail::_swizzle<4, T, P, V, 2,2,0,1> E2 ## E2 ## E0 ## E1; }; \
+
704  struct { detail::_swizzle<4, T, P, V, 2,2,0,2> E2 ## E2 ## E0 ## E2; }; \
+
705  struct { detail::_swizzle<4, T, P, V, 2,2,0,3> E2 ## E2 ## E0 ## E3; }; \
+
706  struct { detail::_swizzle<4, T, P, V, 2,2,1,0> E2 ## E2 ## E1 ## E0; }; \
+
707  struct { detail::_swizzle<4, T, P, V, 2,2,1,1> E2 ## E2 ## E1 ## E1; }; \
+
708  struct { detail::_swizzle<4, T, P, V, 2,2,1,2> E2 ## E2 ## E1 ## E2; }; \
+
709  struct { detail::_swizzle<4, T, P, V, 2,2,1,3> E2 ## E2 ## E1 ## E3; }; \
+
710  struct { detail::_swizzle<4, T, P, V, 2,2,2,0> E2 ## E2 ## E2 ## E0; }; \
+
711  struct { detail::_swizzle<4, T, P, V, 2,2,2,1> E2 ## E2 ## E2 ## E1; }; \
+
712  struct { detail::_swizzle<4, T, P, V, 2,2,2,2> E2 ## E2 ## E2 ## E2; }; \
+
713  struct { detail::_swizzle<4, T, P, V, 2,2,2,3> E2 ## E2 ## E2 ## E3; }; \
+
714  struct { detail::_swizzle<4, T, P, V, 2,2,3,0> E2 ## E2 ## E3 ## E0; }; \
+
715  struct { detail::_swizzle<4, T, P, V, 2,2,3,1> E2 ## E2 ## E3 ## E1; }; \
+
716  struct { detail::_swizzle<4, T, P, V, 2,2,3,2> E2 ## E2 ## E3 ## E2; }; \
+
717  struct { detail::_swizzle<4, T, P, V, 2,2,3,3> E2 ## E2 ## E3 ## E3; }; \
+
718  struct { detail::_swizzle<4, T, P, V, 2,3,0,0> E2 ## E3 ## E0 ## E0; }; \
+
719  struct { detail::_swizzle<4, T, P, V, 2,3,0,1> E2 ## E3 ## E0 ## E1; }; \
+
720  struct { detail::_swizzle<4, T, P, V, 2,3,0,2> E2 ## E3 ## E0 ## E2; }; \
+
721  struct { detail::_swizzle<4, T, P, V, 2,3,0,3> E2 ## E3 ## E0 ## E3; }; \
+
722  struct { detail::_swizzle<4, T, P, V, 2,3,1,0> E2 ## E3 ## E1 ## E0; }; \
+
723  struct { detail::_swizzle<4, T, P, V, 2,3,1,1> E2 ## E3 ## E1 ## E1; }; \
+
724  struct { detail::_swizzle<4, T, P, V, 2,3,1,2> E2 ## E3 ## E1 ## E2; }; \
+
725  struct { detail::_swizzle<4, T, P, V, 2,3,1,3> E2 ## E3 ## E1 ## E3; }; \
+
726  struct { detail::_swizzle<4, T, P, V, 2,3,2,0> E2 ## E3 ## E2 ## E0; }; \
+
727  struct { detail::_swizzle<4, T, P, V, 2,3,2,1> E2 ## E3 ## E2 ## E1; }; \
+
728  struct { detail::_swizzle<4, T, P, V, 2,3,2,2> E2 ## E3 ## E2 ## E2; }; \
+
729  struct { detail::_swizzle<4, T, P, V, 2,3,2,3> E2 ## E3 ## E2 ## E3; }; \
+
730  struct { detail::_swizzle<4, T, P, V, 2,3,3,0> E2 ## E3 ## E3 ## E0; }; \
+
731  struct { detail::_swizzle<4, T, P, V, 2,3,3,1> E2 ## E3 ## E3 ## E1; }; \
+
732  struct { detail::_swizzle<4, T, P, V, 2,3,3,2> E2 ## E3 ## E3 ## E2; }; \
+
733  struct { detail::_swizzle<4, T, P, V, 2,3,3,3> E2 ## E3 ## E3 ## E3; }; \
+
734  struct { detail::_swizzle<4, T, P, V, 3,0,0,0> E3 ## E0 ## E0 ## E0; }; \
+
735  struct { detail::_swizzle<4, T, P, V, 3,0,0,1> E3 ## E0 ## E0 ## E1; }; \
+
736  struct { detail::_swizzle<4, T, P, V, 3,0,0,2> E3 ## E0 ## E0 ## E2; }; \
+
737  struct { detail::_swizzle<4, T, P, V, 3,0,0,3> E3 ## E0 ## E0 ## E3; }; \
+
738  struct { detail::_swizzle<4, T, P, V, 3,0,1,0> E3 ## E0 ## E1 ## E0; }; \
+
739  struct { detail::_swizzle<4, T, P, V, 3,0,1,1> E3 ## E0 ## E1 ## E1; }; \
+
740  struct { detail::_swizzle<4, T, P, V, 3,0,1,2> E3 ## E0 ## E1 ## E2; }; \
+
741  struct { detail::_swizzle<4, T, P, V, 3,0,1,3> E3 ## E0 ## E1 ## E3; }; \
+
742  struct { detail::_swizzle<4, T, P, V, 3,0,2,0> E3 ## E0 ## E2 ## E0; }; \
+
743  struct { detail::_swizzle<4, T, P, V, 3,0,2,1> E3 ## E0 ## E2 ## E1; }; \
+
744  struct { detail::_swizzle<4, T, P, V, 3,0,2,2> E3 ## E0 ## E2 ## E2; }; \
+
745  struct { detail::_swizzle<4, T, P, V, 3,0,2,3> E3 ## E0 ## E2 ## E3; }; \
+
746  struct { detail::_swizzle<4, T, P, V, 3,0,3,0> E3 ## E0 ## E3 ## E0; }; \
+
747  struct { detail::_swizzle<4, T, P, V, 3,0,3,1> E3 ## E0 ## E3 ## E1; }; \
+
748  struct { detail::_swizzle<4, T, P, V, 3,0,3,2> E3 ## E0 ## E3 ## E2; }; \
+
749  struct { detail::_swizzle<4, T, P, V, 3,0,3,3> E3 ## E0 ## E3 ## E3; }; \
+
750  struct { detail::_swizzle<4, T, P, V, 3,1,0,0> E3 ## E1 ## E0 ## E0; }; \
+
751  struct { detail::_swizzle<4, T, P, V, 3,1,0,1> E3 ## E1 ## E0 ## E1; }; \
+
752  struct { detail::_swizzle<4, T, P, V, 3,1,0,2> E3 ## E1 ## E0 ## E2; }; \
+
753  struct { detail::_swizzle<4, T, P, V, 3,1,0,3> E3 ## E1 ## E0 ## E3; }; \
+
754  struct { detail::_swizzle<4, T, P, V, 3,1,1,0> E3 ## E1 ## E1 ## E0; }; \
+
755  struct { detail::_swizzle<4, T, P, V, 3,1,1,1> E3 ## E1 ## E1 ## E1; }; \
+
756  struct { detail::_swizzle<4, T, P, V, 3,1,1,2> E3 ## E1 ## E1 ## E2; }; \
+
757  struct { detail::_swizzle<4, T, P, V, 3,1,1,3> E3 ## E1 ## E1 ## E3; }; \
+
758  struct { detail::_swizzle<4, T, P, V, 3,1,2,0> E3 ## E1 ## E2 ## E0; }; \
+
759  struct { detail::_swizzle<4, T, P, V, 3,1,2,1> E3 ## E1 ## E2 ## E1; }; \
+
760  struct { detail::_swizzle<4, T, P, V, 3,1,2,2> E3 ## E1 ## E2 ## E2; }; \
+
761  struct { detail::_swizzle<4, T, P, V, 3,1,2,3> E3 ## E1 ## E2 ## E3; }; \
+
762  struct { detail::_swizzle<4, T, P, V, 3,1,3,0> E3 ## E1 ## E3 ## E0; }; \
+
763  struct { detail::_swizzle<4, T, P, V, 3,1,3,1> E3 ## E1 ## E3 ## E1; }; \
+
764  struct { detail::_swizzle<4, T, P, V, 3,1,3,2> E3 ## E1 ## E3 ## E2; }; \
+
765  struct { detail::_swizzle<4, T, P, V, 3,1,3,3> E3 ## E1 ## E3 ## E3; }; \
+
766  struct { detail::_swizzle<4, T, P, V, 3,2,0,0> E3 ## E2 ## E0 ## E0; }; \
+
767  struct { detail::_swizzle<4, T, P, V, 3,2,0,1> E3 ## E2 ## E0 ## E1; }; \
+
768  struct { detail::_swizzle<4, T, P, V, 3,2,0,2> E3 ## E2 ## E0 ## E2; }; \
+
769  struct { detail::_swizzle<4, T, P, V, 3,2,0,3> E3 ## E2 ## E0 ## E3; }; \
+
770  struct { detail::_swizzle<4, T, P, V, 3,2,1,0> E3 ## E2 ## E1 ## E0; }; \
+
771  struct { detail::_swizzle<4, T, P, V, 3,2,1,1> E3 ## E2 ## E1 ## E1; }; \
+
772  struct { detail::_swizzle<4, T, P, V, 3,2,1,2> E3 ## E2 ## E1 ## E2; }; \
+
773  struct { detail::_swizzle<4, T, P, V, 3,2,1,3> E3 ## E2 ## E1 ## E3; }; \
+
774  struct { detail::_swizzle<4, T, P, V, 3,2,2,0> E3 ## E2 ## E2 ## E0; }; \
+
775  struct { detail::_swizzle<4, T, P, V, 3,2,2,1> E3 ## E2 ## E2 ## E1; }; \
+
776  struct { detail::_swizzle<4, T, P, V, 3,2,2,2> E3 ## E2 ## E2 ## E2; }; \
+
777  struct { detail::_swizzle<4, T, P, V, 3,2,2,3> E3 ## E2 ## E2 ## E3; }; \
+
778  struct { detail::_swizzle<4, T, P, V, 3,2,3,0> E3 ## E2 ## E3 ## E0; }; \
+
779  struct { detail::_swizzle<4, T, P, V, 3,2,3,1> E3 ## E2 ## E3 ## E1; }; \
+
780  struct { detail::_swizzle<4, T, P, V, 3,2,3,2> E3 ## E2 ## E3 ## E2; }; \
+
781  struct { detail::_swizzle<4, T, P, V, 3,2,3,3> E3 ## E2 ## E3 ## E3; }; \
+
782  struct { detail::_swizzle<4, T, P, V, 3,3,0,0> E3 ## E3 ## E0 ## E0; }; \
+
783  struct { detail::_swizzle<4, T, P, V, 3,3,0,1> E3 ## E3 ## E0 ## E1; }; \
+
784  struct { detail::_swizzle<4, T, P, V, 3,3,0,2> E3 ## E3 ## E0 ## E2; }; \
+
785  struct { detail::_swizzle<4, T, P, V, 3,3,0,3> E3 ## E3 ## E0 ## E3; }; \
+
786  struct { detail::_swizzle<4, T, P, V, 3,3,1,0> E3 ## E3 ## E1 ## E0; }; \
+
787  struct { detail::_swizzle<4, T, P, V, 3,3,1,1> E3 ## E3 ## E1 ## E1; }; \
+
788  struct { detail::_swizzle<4, T, P, V, 3,3,1,2> E3 ## E3 ## E1 ## E2; }; \
+
789  struct { detail::_swizzle<4, T, P, V, 3,3,1,3> E3 ## E3 ## E1 ## E3; }; \
+
790  struct { detail::_swizzle<4, T, P, V, 3,3,2,0> E3 ## E3 ## E2 ## E0; }; \
+
791  struct { detail::_swizzle<4, T, P, V, 3,3,2,1> E3 ## E3 ## E2 ## E1; }; \
+
792  struct { detail::_swizzle<4, T, P, V, 3,3,2,2> E3 ## E3 ## E2 ## E2; }; \
+
793  struct { detail::_swizzle<4, T, P, V, 3,3,2,3> E3 ## E3 ## E2 ## E3; }; \
+
794  struct { detail::_swizzle<4, T, P, V, 3,3,3,0> E3 ## E3 ## E3 ## E0; }; \
+
795  struct { detail::_swizzle<4, T, P, V, 3,3,3,1> E3 ## E3 ## E3 ## E1; }; \
+
796  struct { detail::_swizzle<4, T, P, V, 3,3,3,2> E3 ## E3 ## E3 ## E2; }; \
+
797  struct { detail::_swizzle<4, T, P, V, 3,3,3,3> E3 ## E3 ## E3 ## E3; };
+
GLM_FUNC_DECL GLM_CONSTEXPR genType e()
Return e constant.
+
Definition: _noise.hpp:11
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00005.html b/third_party/glm_test/doc/api/a00005.html new file mode 100644 index 0000000000000..05e12ab2b8160 --- /dev/null +++ b/third_party/glm_test/doc/api/a00005.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: _swizzle_func.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
_swizzle_func.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file _swizzle_func.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00005_source.html b/third_party/glm_test/doc/api/a00005_source.html new file mode 100644 index 0000000000000..b8cf723e2995b --- /dev/null +++ b/third_party/glm_test/doc/api/a00005_source.html @@ -0,0 +1,754 @@ + + + + + + +0.9.8: _swizzle_func.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
_swizzle_func.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #define GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, CONST, A, B) \
+
7  SWIZZLED_TYPE<TMPL_TYPE, PRECISION> A ## B() CONST \
+
8  { \
+
9  return SWIZZLED_TYPE<TMPL_TYPE, PRECISION>(this->A, this->B); \
+
10  }
+
11 
+
12 #define GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, CONST, A, B, C) \
+
13  SWIZZLED_TYPE<TMPL_TYPE, PRECISION> A ## B ## C() CONST \
+
14  { \
+
15  return SWIZZLED_TYPE<TMPL_TYPE, PRECISION>(this->A, this->B, this->C); \
+
16  }
+
17 
+
18 #define GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, CONST, A, B, C, D) \
+
19  SWIZZLED_TYPE<TMPL_TYPE, PRECISION> A ## B ## C ## D() CONST \
+
20  { \
+
21  return SWIZZLED_TYPE<TMPL_TYPE, PRECISION>(this->A, this->B, this->C, this->D); \
+
22  }
+
23 
+
24 #define GLM_SWIZZLE_GEN_VEC2_ENTRY_DEF(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, CONST, A, B) \
+
25  template <typename TMPL_TYPE> \
+
26  SWIZZLED_TYPE<TMPL_TYPE> CLASS_TYPE<TMPL_TYPE, PRECISION>::A ## B() CONST \
+
27  { \
+
28  return SWIZZLED_TYPE<TMPL_TYPE, PRECISION>(this->A, this->B); \
+
29  }
+
30 
+
31 #define GLM_SWIZZLE_GEN_VEC3_ENTRY_DEF(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, CONST, A, B, C) \
+
32  template <typename TMPL_TYPE> \
+
33  SWIZZLED_TYPE<TMPL_TYPE> CLASS_TYPE<TMPL_TYPE, PRECISION>::A ## B ## C() CONST \
+
34  { \
+
35  return SWIZZLED_TYPE<TMPL_TYPE, PRECISION>(this->A, this->B, this->C); \
+
36  }
+
37 
+
38 #define GLM_SWIZZLE_GEN_VEC4_ENTRY_DEF(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, CONST, A, B, C, D) \
+
39  template <typename TMPL_TYPE> \
+
40  SWIZZLED_TYPE<TMPL_TYPE> CLASS_TYPE<TMPL_TYPE, PRECISION>::A ## B ## C ## D() CONST \
+
41  { \
+
42  return SWIZZLED_TYPE<TMPL_TYPE, PRECISION>(this->A, this->B, this->C, this->D); \
+
43  }
+
44 
+
45 #define GLM_MUTABLE
+
46 
+
47 #define GLM_SWIZZLE_GEN_REF2_FROM_VEC2_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, A, B) \
+
48  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, A, B) \
+
49  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, B, A)
+
50 
+
51 #define GLM_SWIZZLE_GEN_REF_FROM_VEC2(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE) \
+
52  GLM_SWIZZLE_GEN_REF2_FROM_VEC2_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, x, y) \
+
53  GLM_SWIZZLE_GEN_REF2_FROM_VEC2_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, r, g) \
+
54  GLM_SWIZZLE_GEN_REF2_FROM_VEC2_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, s, t)
+
55 
+
56 //GLM_SWIZZLE_GEN_REF_FROM_VEC2(valType, detail::vec2, detail::ref2)
+
57 
+
58 #define GLM_SWIZZLE_GEN_REF2_FROM_VEC3_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, A, B, C) \
+
59  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, A, B) \
+
60  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, A, C) \
+
61  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, B, A) \
+
62  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, B, C) \
+
63  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, C, A) \
+
64  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, C, B)
+
65 
+
66 #define GLM_SWIZZLE_GEN_REF3_FROM_VEC3_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, A, B, C) \
+
67  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, A, B, C) \
+
68  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, A, C, B) \
+
69  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, B, A, C) \
+
70  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, B, C, A) \
+
71  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, C, A, B) \
+
72  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, C, B, A)
+
73 
+
74 #define GLM_SWIZZLE_GEN_REF_FROM_VEC3_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, A, B, C) \
+
75  GLM_SWIZZLE_GEN_REF3_FROM_VEC3_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC3_TYPE, A, B, C) \
+
76  GLM_SWIZZLE_GEN_REF2_FROM_VEC3_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, A, B, C)
+
77 
+
78 #define GLM_SWIZZLE_GEN_REF_FROM_VEC3(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE) \
+
79  GLM_SWIZZLE_GEN_REF_FROM_VEC3_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, x, y, z) \
+
80  GLM_SWIZZLE_GEN_REF_FROM_VEC3_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, r, g, b) \
+
81  GLM_SWIZZLE_GEN_REF_FROM_VEC3_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, s, t, p)
+
82 
+
83 //GLM_SWIZZLE_GEN_REF_FROM_VEC3(valType, detail::vec3, detail::ref2, detail::ref3)
+
84 
+
85 #define GLM_SWIZZLE_GEN_REF2_FROM_VEC4_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, A, B, C, D) \
+
86  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, A, B) \
+
87  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, A, C) \
+
88  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, A, D) \
+
89  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, B, A) \
+
90  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, B, C) \
+
91  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, B, D) \
+
92  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, C, A) \
+
93  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, C, B) \
+
94  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, C, D) \
+
95  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, D, A) \
+
96  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, D, B) \
+
97  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, GLM_MUTABLE, D, C)
+
98 
+
99 #define GLM_SWIZZLE_GEN_REF3_FROM_VEC4_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, A, B, C, D) \
+
100  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , A, B, C) \
+
101  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , A, B, D) \
+
102  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , A, C, B) \
+
103  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , A, C, D) \
+
104  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , A, D, B) \
+
105  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , A, D, C) \
+
106  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , B, A, C) \
+
107  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , B, A, D) \
+
108  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , B, C, A) \
+
109  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , B, C, D) \
+
110  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , B, D, A) \
+
111  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , B, D, C) \
+
112  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , C, A, B) \
+
113  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , C, A, D) \
+
114  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , C, B, A) \
+
115  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , C, B, D) \
+
116  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , C, D, A) \
+
117  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , C, D, B) \
+
118  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , D, A, B) \
+
119  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , D, A, C) \
+
120  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , D, B, A) \
+
121  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , D, B, C) \
+
122  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , D, C, A) \
+
123  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , D, C, B)
+
124 
+
125 #define GLM_SWIZZLE_GEN_REF4_FROM_VEC4_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, A, B, C, D) \
+
126  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , A, C, B, D) \
+
127  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , A, C, D, B) \
+
128  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , A, D, B, C) \
+
129  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , A, D, C, B) \
+
130  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , A, B, D, C) \
+
131  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , A, B, C, D) \
+
132  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , B, C, A, D) \
+
133  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , B, C, D, A) \
+
134  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , B, D, A, C) \
+
135  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , B, D, C, A) \
+
136  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , B, A, D, C) \
+
137  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , B, A, C, D) \
+
138  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , C, B, A, D) \
+
139  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , C, B, D, A) \
+
140  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , C, D, A, B) \
+
141  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , C, D, B, A) \
+
142  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , C, A, D, B) \
+
143  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , C, A, B, D) \
+
144  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , D, C, B, A) \
+
145  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , D, C, A, B) \
+
146  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , D, A, B, C) \
+
147  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , D, A, C, B) \
+
148  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , D, B, A, C) \
+
149  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, , D, B, C, A)
+
150 
+
151 #define GLM_SWIZZLE_GEN_REF_FROM_VEC4_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE, A, B, C, D) \
+
152  GLM_SWIZZLE_GEN_REF2_FROM_VEC4_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, A, B, C, D) \
+
153  GLM_SWIZZLE_GEN_REF3_FROM_VEC4_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC3_TYPE, A, B, C, D) \
+
154  GLM_SWIZZLE_GEN_REF4_FROM_VEC4_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC4_TYPE, A, B, C, D)
+
155 
+
156 #define GLM_SWIZZLE_GEN_REF_FROM_VEC4(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE) \
+
157  GLM_SWIZZLE_GEN_REF_FROM_VEC4_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE, x, y, z, w) \
+
158  GLM_SWIZZLE_GEN_REF_FROM_VEC4_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE, r, g, b, a) \
+
159  GLM_SWIZZLE_GEN_REF_FROM_VEC4_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE, s, t, p, q)
+
160 
+
161 //GLM_SWIZZLE_GEN_REF_FROM_VEC4(valType, detail::vec4, detail::ref2, detail::ref3, detail::ref4)
+
162 
+
163 #define GLM_SWIZZLE_GEN_VEC2_FROM_VEC2_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, A, B) \
+
164  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A) \
+
165  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B) \
+
166  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A) \
+
167  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B)
+
168 
+
169 #define GLM_SWIZZLE_GEN_VEC3_FROM_VEC2_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, A, B) \
+
170  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, A) \
+
171  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, B) \
+
172  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, A) \
+
173  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, B) \
+
174  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, A) \
+
175  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, B) \
+
176  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, A) \
+
177  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, B)
+
178 
+
179 #define GLM_SWIZZLE_GEN_VEC4_FROM_VEC2_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, A, B) \
+
180  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, A, A) \
+
181  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, A, B) \
+
182  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, B, A) \
+
183  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, B, B) \
+
184  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, A, A) \
+
185  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, A, B) \
+
186  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, B, A) \
+
187  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, B, B) \
+
188  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, A, A) \
+
189  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, A, B) \
+
190  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, B, A) \
+
191  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, B, B) \
+
192  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, A, A) \
+
193  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, A, B) \
+
194  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, B, A) \
+
195  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, B, B)
+
196 
+
197 #define GLM_SWIZZLE_GEN_VEC_FROM_VEC2_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE, A, B) \
+
198  GLM_SWIZZLE_GEN_VEC2_FROM_VEC2_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, A, B) \
+
199  GLM_SWIZZLE_GEN_VEC3_FROM_VEC2_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC3_TYPE, A, B) \
+
200  GLM_SWIZZLE_GEN_VEC4_FROM_VEC2_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC4_TYPE, A, B)
+
201 
+
202 #define GLM_SWIZZLE_GEN_VEC_FROM_VEC2(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE) \
+
203  GLM_SWIZZLE_GEN_VEC_FROM_VEC2_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE, x, y) \
+
204  GLM_SWIZZLE_GEN_VEC_FROM_VEC2_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE, r, g) \
+
205  GLM_SWIZZLE_GEN_VEC_FROM_VEC2_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE, s, t)
+
206 
+
207 //GLM_SWIZZLE_GEN_VEC_FROM_VEC2(valType, detail::vec2, detail::vec2, detail::vec3, detail::vec4)
+
208 
+
209 #define GLM_SWIZZLE_GEN_VEC2_FROM_VEC3_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, A, B, C) \
+
210  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A) \
+
211  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B) \
+
212  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C) \
+
213  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A) \
+
214  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B) \
+
215  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C) \
+
216  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A) \
+
217  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B) \
+
218  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C)
+
219 
+
220 #define GLM_SWIZZLE_GEN_VEC3_FROM_VEC3_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, A, B, C) \
+
221  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, A) \
+
222  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, B) \
+
223  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, C) \
+
224  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, A) \
+
225  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, B) \
+
226  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, C) \
+
227  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, A) \
+
228  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, B) \
+
229  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, C) \
+
230  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, A) \
+
231  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, B) \
+
232  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, C) \
+
233  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, A) \
+
234  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, B) \
+
235  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, C) \
+
236  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, A) \
+
237  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, B) \
+
238  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, C) \
+
239  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, A) \
+
240  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, B) \
+
241  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, C) \
+
242  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, A) \
+
243  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, B) \
+
244  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, C) \
+
245  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, A) \
+
246  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, B) \
+
247  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, C)
+
248 
+
249 #define GLM_SWIZZLE_GEN_VEC4_FROM_VEC3_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, A, B, C) \
+
250  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, A, A) \
+
251  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, A, B) \
+
252  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, A, C) \
+
253  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, B, A) \
+
254  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, B, B) \
+
255  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, B, C) \
+
256  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, C, A) \
+
257  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, C, B) \
+
258  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, C, C) \
+
259  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, A, A) \
+
260  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, A, B) \
+
261  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, A, C) \
+
262  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, B, A) \
+
263  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, B, B) \
+
264  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, B, C) \
+
265  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, C, A) \
+
266  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, C, B) \
+
267  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, C, C) \
+
268  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, A, A) \
+
269  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, A, B) \
+
270  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, A, C) \
+
271  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, B, A) \
+
272  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, B, B) \
+
273  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, B, C) \
+
274  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, C, A) \
+
275  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, C, B) \
+
276  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, C, C) \
+
277  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, A, A) \
+
278  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, A, B) \
+
279  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, A, C) \
+
280  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, B, A) \
+
281  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, B, B) \
+
282  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, B, C) \
+
283  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, C, A) \
+
284  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, C, B) \
+
285  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, C, C) \
+
286  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, A, A) \
+
287  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, A, B) \
+
288  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, A, C) \
+
289  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, B, A) \
+
290  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, B, B) \
+
291  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, B, C) \
+
292  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, C, A) \
+
293  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, C, B) \
+
294  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, C, C) \
+
295  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, A, A) \
+
296  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, A, B) \
+
297  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, A, C) \
+
298  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, B, A) \
+
299  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, B, B) \
+
300  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, B, C) \
+
301  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, C, A) \
+
302  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, C, B) \
+
303  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, C, C) \
+
304  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, A, A) \
+
305  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, A, B) \
+
306  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, A, C) \
+
307  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, B, A) \
+
308  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, B, B) \
+
309  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, B, C) \
+
310  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, C, A) \
+
311  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, C, B) \
+
312  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, C, C) \
+
313  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, A, A) \
+
314  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, A, B) \
+
315  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, A, C) \
+
316  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, B, A) \
+
317  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, B, B) \
+
318  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, B, C) \
+
319  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, C, A) \
+
320  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, C, B) \
+
321  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, C, C) \
+
322  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, A, A) \
+
323  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, A, B) \
+
324  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, A, C) \
+
325  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, B, A) \
+
326  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, B, B) \
+
327  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, B, C) \
+
328  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, C, A) \
+
329  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, C, B) \
+
330  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, C, C)
+
331 
+
332 #define GLM_SWIZZLE_GEN_VEC_FROM_VEC3_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE, A, B, C) \
+
333  GLM_SWIZZLE_GEN_VEC2_FROM_VEC3_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, A, B, C) \
+
334  GLM_SWIZZLE_GEN_VEC3_FROM_VEC3_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC3_TYPE, A, B, C) \
+
335  GLM_SWIZZLE_GEN_VEC4_FROM_VEC3_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC4_TYPE, A, B, C)
+
336 
+
337 #define GLM_SWIZZLE_GEN_VEC_FROM_VEC3(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE) \
+
338  GLM_SWIZZLE_GEN_VEC_FROM_VEC3_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE, x, y, z) \
+
339  GLM_SWIZZLE_GEN_VEC_FROM_VEC3_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE, r, g, b) \
+
340  GLM_SWIZZLE_GEN_VEC_FROM_VEC3_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE, s, t, p)
+
341 
+
342 //GLM_SWIZZLE_GEN_VEC_FROM_VEC3(valType, detail::vec3, detail::vec2, detail::vec3, detail::vec4)
+
343 
+
344 #define GLM_SWIZZLE_GEN_VEC2_FROM_VEC4_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, A, B, C, D) \
+
345  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A) \
+
346  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B) \
+
347  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C) \
+
348  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D) \
+
349  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A) \
+
350  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B) \
+
351  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C) \
+
352  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D) \
+
353  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A) \
+
354  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B) \
+
355  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C) \
+
356  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D) \
+
357  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A) \
+
358  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B) \
+
359  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C) \
+
360  GLM_SWIZZLE_GEN_VEC2_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D)
+
361 
+
362 #define GLM_SWIZZLE_GEN_VEC3_FROM_VEC4_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, A, B, C, D) \
+
363  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, A) \
+
364  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, B) \
+
365  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, C) \
+
366  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, D) \
+
367  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, A) \
+
368  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, B) \
+
369  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, C) \
+
370  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, D) \
+
371  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, A) \
+
372  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, B) \
+
373  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, C) \
+
374  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, D) \
+
375  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, A) \
+
376  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, B) \
+
377  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, C) \
+
378  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, D) \
+
379  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, A) \
+
380  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, B) \
+
381  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, C) \
+
382  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, D) \
+
383  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, A) \
+
384  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, B) \
+
385  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, C) \
+
386  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, D) \
+
387  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, A) \
+
388  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, B) \
+
389  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, C) \
+
390  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, D) \
+
391  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, A) \
+
392  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, B) \
+
393  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, C) \
+
394  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, D) \
+
395  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, A) \
+
396  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, B) \
+
397  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, C) \
+
398  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, D) \
+
399  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, A) \
+
400  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, B) \
+
401  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, C) \
+
402  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, D) \
+
403  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, A) \
+
404  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, B) \
+
405  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, C) \
+
406  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, D) \
+
407  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, A) \
+
408  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, B) \
+
409  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, C) \
+
410  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, D) \
+
411  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, A) \
+
412  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, B) \
+
413  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, C) \
+
414  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, D) \
+
415  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, A) \
+
416  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, B) \
+
417  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, C) \
+
418  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, D) \
+
419  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, A) \
+
420  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, B) \
+
421  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, C) \
+
422  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, D) \
+
423  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, A) \
+
424  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, B) \
+
425  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, C) \
+
426  GLM_SWIZZLE_GEN_VEC3_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, D)
+
427 
+
428 #define GLM_SWIZZLE_GEN_VEC4_FROM_VEC4_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, A, B, C, D) \
+
429  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, A, A) \
+
430  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, A, B) \
+
431  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, A, C) \
+
432  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, A, D) \
+
433  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, B, A) \
+
434  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, B, B) \
+
435  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, B, C) \
+
436  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, B, D) \
+
437  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, C, A) \
+
438  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, C, B) \
+
439  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, C, C) \
+
440  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, C, D) \
+
441  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, D, A) \
+
442  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, D, B) \
+
443  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, D, C) \
+
444  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, A, D, D) \
+
445  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, A, A) \
+
446  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, A, B) \
+
447  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, A, C) \
+
448  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, A, D) \
+
449  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, B, A) \
+
450  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, B, B) \
+
451  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, B, C) \
+
452  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, B, D) \
+
453  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, C, A) \
+
454  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, C, B) \
+
455  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, C, C) \
+
456  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, C, D) \
+
457  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, D, A) \
+
458  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, D, B) \
+
459  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, D, C) \
+
460  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, B, D, D) \
+
461  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, A, A) \
+
462  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, A, B) \
+
463  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, A, C) \
+
464  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, A, D) \
+
465  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, B, A) \
+
466  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, B, B) \
+
467  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, B, C) \
+
468  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, B, D) \
+
469  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, C, A) \
+
470  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, C, B) \
+
471  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, C, C) \
+
472  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, C, D) \
+
473  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, D, A) \
+
474  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, D, B) \
+
475  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, D, C) \
+
476  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, C, D, D) \
+
477  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, A, A) \
+
478  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, A, B) \
+
479  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, A, C) \
+
480  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, A, D) \
+
481  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, B, A) \
+
482  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, B, B) \
+
483  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, B, C) \
+
484  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, B, D) \
+
485  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, C, A) \
+
486  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, C, B) \
+
487  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, C, C) \
+
488  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, C, D) \
+
489  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, D, A) \
+
490  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, D, B) \
+
491  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, D, C) \
+
492  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, A, D, D, D) \
+
493  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, A, A) \
+
494  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, A, B) \
+
495  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, A, C) \
+
496  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, A, D) \
+
497  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, B, A) \
+
498  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, B, B) \
+
499  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, B, C) \
+
500  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, B, D) \
+
501  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, C, A) \
+
502  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, C, B) \
+
503  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, C, C) \
+
504  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, C, D) \
+
505  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, D, A) \
+
506  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, D, B) \
+
507  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, D, C) \
+
508  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, A, D, D) \
+
509  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, A, A) \
+
510  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, A, B) \
+
511  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, A, C) \
+
512  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, A, D) \
+
513  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, B, A) \
+
514  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, B, B) \
+
515  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, B, C) \
+
516  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, B, D) \
+
517  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, C, A) \
+
518  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, C, B) \
+
519  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, C, C) \
+
520  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, C, D) \
+
521  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, D, A) \
+
522  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, D, B) \
+
523  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, D, C) \
+
524  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, B, D, D) \
+
525  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, A, A) \
+
526  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, A, B) \
+
527  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, A, C) \
+
528  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, A, D) \
+
529  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, B, A) \
+
530  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, B, B) \
+
531  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, B, C) \
+
532  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, B, D) \
+
533  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, C, A) \
+
534  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, C, B) \
+
535  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, C, C) \
+
536  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, C, D) \
+
537  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, D, A) \
+
538  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, D, B) \
+
539  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, D, C) \
+
540  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, C, D, D) \
+
541  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, A, A) \
+
542  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, A, B) \
+
543  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, A, C) \
+
544  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, A, D) \
+
545  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, B, A) \
+
546  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, B, B) \
+
547  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, B, C) \
+
548  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, B, D) \
+
549  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, C, A) \
+
550  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, C, B) \
+
551  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, C, C) \
+
552  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, C, D) \
+
553  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, D, A) \
+
554  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, D, B) \
+
555  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, D, C) \
+
556  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, B, D, D, D) \
+
557  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, A, A) \
+
558  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, A, B) \
+
559  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, A, C) \
+
560  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, A, D) \
+
561  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, B, A) \
+
562  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, B, B) \
+
563  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, B, C) \
+
564  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, B, D) \
+
565  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, C, A) \
+
566  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, C, B) \
+
567  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, C, C) \
+
568  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, C, D) \
+
569  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, D, A) \
+
570  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, D, B) \
+
571  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, D, C) \
+
572  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, A, D, D) \
+
573  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, A, A) \
+
574  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, A, B) \
+
575  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, A, C) \
+
576  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, A, D) \
+
577  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, B, A) \
+
578  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, B, B) \
+
579  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, B, C) \
+
580  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, B, D) \
+
581  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, C, A) \
+
582  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, C, B) \
+
583  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, C, C) \
+
584  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, C, D) \
+
585  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, D, A) \
+
586  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, D, B) \
+
587  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, D, C) \
+
588  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, B, D, D) \
+
589  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, A, A) \
+
590  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, A, B) \
+
591  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, A, C) \
+
592  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, A, D) \
+
593  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, B, A) \
+
594  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, B, B) \
+
595  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, B, C) \
+
596  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, B, D) \
+
597  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, C, A) \
+
598  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, C, B) \
+
599  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, C, C) \
+
600  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, C, D) \
+
601  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, D, A) \
+
602  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, D, B) \
+
603  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, D, C) \
+
604  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, C, D, D) \
+
605  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, A, A) \
+
606  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, A, B) \
+
607  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, A, C) \
+
608  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, A, D) \
+
609  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, B, A) \
+
610  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, B, B) \
+
611  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, B, C) \
+
612  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, B, D) \
+
613  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, C, A) \
+
614  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, C, B) \
+
615  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, C, C) \
+
616  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, C, D) \
+
617  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, D, A) \
+
618  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, D, B) \
+
619  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, D, C) \
+
620  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, C, D, D, D) \
+
621  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, A, A) \
+
622  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, A, B) \
+
623  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, A, C) \
+
624  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, A, D) \
+
625  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, B, A) \
+
626  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, B, B) \
+
627  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, B, C) \
+
628  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, B, D) \
+
629  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, C, A) \
+
630  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, C, B) \
+
631  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, C, C) \
+
632  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, C, D) \
+
633  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, D, A) \
+
634  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, D, B) \
+
635  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, D, C) \
+
636  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, A, D, D) \
+
637  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, A, A) \
+
638  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, A, B) \
+
639  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, A, C) \
+
640  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, A, D) \
+
641  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, B, A) \
+
642  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, B, B) \
+
643  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, B, C) \
+
644  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, B, D) \
+
645  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, C, A) \
+
646  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, C, B) \
+
647  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, C, C) \
+
648  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, C, D) \
+
649  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, D, A) \
+
650  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, D, B) \
+
651  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, D, C) \
+
652  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, B, D, D) \
+
653  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, A, A) \
+
654  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, A, B) \
+
655  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, A, C) \
+
656  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, A, D) \
+
657  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, B, A) \
+
658  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, B, B) \
+
659  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, B, C) \
+
660  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, B, D) \
+
661  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, C, A) \
+
662  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, C, B) \
+
663  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, C, C) \
+
664  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, C, D) \
+
665  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, D, A) \
+
666  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, D, B) \
+
667  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, D, C) \
+
668  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, C, D, D) \
+
669  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, A, A) \
+
670  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, A, B) \
+
671  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, A, C) \
+
672  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, A, D) \
+
673  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, B, A) \
+
674  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, B, B) \
+
675  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, B, C) \
+
676  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, B, D) \
+
677  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, C, A) \
+
678  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, C, B) \
+
679  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, C, C) \
+
680  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, C, D) \
+
681  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, D, A) \
+
682  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, D, B) \
+
683  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, D, C) \
+
684  GLM_SWIZZLE_GEN_VEC4_ENTRY(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_TYPE, const, D, D, D, D)
+
685 
+
686 #define GLM_SWIZZLE_GEN_VEC_FROM_VEC4_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE, A, B, C, D) \
+
687  GLM_SWIZZLE_GEN_VEC2_FROM_VEC4_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, A, B, C, D) \
+
688  GLM_SWIZZLE_GEN_VEC3_FROM_VEC4_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC3_TYPE, A, B, C, D) \
+
689  GLM_SWIZZLE_GEN_VEC4_FROM_VEC4_SWIZZLE(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC4_TYPE, A, B, C, D)
+
690 
+
691 #define GLM_SWIZZLE_GEN_VEC_FROM_VEC4(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE) \
+
692  GLM_SWIZZLE_GEN_VEC_FROM_VEC4_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE, x, y, z, w) \
+
693  GLM_SWIZZLE_GEN_VEC_FROM_VEC4_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE, r, g, b, a) \
+
694  GLM_SWIZZLE_GEN_VEC_FROM_VEC4_COMP(TMPL_TYPE, PRECISION, CLASS_TYPE, SWIZZLED_VEC2_TYPE, SWIZZLED_VEC3_TYPE, SWIZZLED_VEC4_TYPE, s, t, p, q)
+
695 
+
696 //GLM_SWIZZLE_GEN_VEC_FROM_VEC4(valType, detail::vec4, detail::vec2, detail::vec3, detail::vec4)
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00006.html b/third_party/glm_test/doc/api/a00006.html new file mode 100644 index 0000000000000..2dd5b1d9ab7e0 --- /dev/null +++ b/third_party/glm_test/doc/api/a00006.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: _vectorize.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
_vectorize.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file _vectorize.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00006_source.html b/third_party/glm_test/doc/api/a00006_source.html new file mode 100644 index 0000000000000..50c4a9b097834 --- /dev/null +++ b/third_party/glm_test/doc/api/a00006_source.html @@ -0,0 +1,194 @@ + + + + + + +0.9.8: _vectorize.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
_vectorize.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "type_vec1.hpp"
+
7 #include "type_vec2.hpp"
+
8 #include "type_vec3.hpp"
+
9 #include "type_vec4.hpp"
+
10 
+
11 namespace glm{
+
12 namespace detail
+
13 {
+
14  template <typename R, typename T, precision P, template <typename, precision> class vecType>
+
15  struct functor1{};
+
16 
+
17  template <typename R, typename T, precision P>
+
18  struct functor1<R, T, P, tvec1>
+
19  {
+
20  GLM_FUNC_QUALIFIER static tvec1<R, P> call(R (*Func) (T x), tvec1<T, P> const & v)
+
21  {
+
22  return tvec1<R, P>(Func(v.x));
+
23  }
+
24  };
+
25 
+
26  template <typename R, typename T, precision P>
+
27  struct functor1<R, T, P, tvec2>
+
28  {
+
29  GLM_FUNC_QUALIFIER static tvec2<R, P> call(R (*Func) (T x), tvec2<T, P> const & v)
+
30  {
+
31  return tvec2<R, P>(Func(v.x), Func(v.y));
+
32  }
+
33  };
+
34 
+
35  template <typename R, typename T, precision P>
+
36  struct functor1<R, T, P, tvec3>
+
37  {
+
38  GLM_FUNC_QUALIFIER static tvec3<R, P> call(R (*Func) (T x), tvec3<T, P> const & v)
+
39  {
+
40  return tvec3<R, P>(Func(v.x), Func(v.y), Func(v.z));
+
41  }
+
42  };
+
43 
+
44  template <typename R, typename T, precision P>
+
45  struct functor1<R, T, P, tvec4>
+
46  {
+
47  GLM_FUNC_QUALIFIER static tvec4<R, P> call(R (*Func) (T x), tvec4<T, P> const & v)
+
48  {
+
49  return tvec4<R, P>(Func(v.x), Func(v.y), Func(v.z), Func(v.w));
+
50  }
+
51  };
+
52 
+
53  template <typename T, precision P, template <typename, precision> class vecType>
+
54  struct functor2{};
+
55 
+
56  template <typename T, precision P>
+
57  struct functor2<T, P, tvec1>
+
58  {
+
59  GLM_FUNC_QUALIFIER static tvec1<T, P> call(T (*Func) (T x, T y), tvec1<T, P> const & a, tvec1<T, P> const & b)
+
60  {
+
61  return tvec1<T, P>(Func(a.x, b.x));
+
62  }
+
63  };
+
64 
+
65  template <typename T, precision P>
+
66  struct functor2<T, P, tvec2>
+
67  {
+
68  GLM_FUNC_QUALIFIER static tvec2<T, P> call(T (*Func) (T x, T y), tvec2<T, P> const & a, tvec2<T, P> const & b)
+
69  {
+
70  return tvec2<T, P>(Func(a.x, b.x), Func(a.y, b.y));
+
71  }
+
72  };
+
73 
+
74  template <typename T, precision P>
+
75  struct functor2<T, P, tvec3>
+
76  {
+
77  GLM_FUNC_QUALIFIER static tvec3<T, P> call(T (*Func) (T x, T y), tvec3<T, P> const & a, tvec3<T, P> const & b)
+
78  {
+
79  return tvec3<T, P>(Func(a.x, b.x), Func(a.y, b.y), Func(a.z, b.z));
+
80  }
+
81  };
+
82 
+
83  template <typename T, precision P>
+
84  struct functor2<T, P, tvec4>
+
85  {
+
86  GLM_FUNC_QUALIFIER static tvec4<T, P> call(T (*Func) (T x, T y), tvec4<T, P> const & a, tvec4<T, P> const & b)
+
87  {
+
88  return tvec4<T, P>(Func(a.x, b.x), Func(a.y, b.y), Func(a.z, b.z), Func(a.w, b.w));
+
89  }
+
90  };
+
91 
+
92  template <typename T, precision P, template <typename, precision> class vecType>
+
93  struct functor2_vec_sca{};
+
94 
+
95  template <typename T, precision P>
+
96  struct functor2_vec_sca<T, P, tvec1>
+
97  {
+
98  GLM_FUNC_QUALIFIER static tvec1<T, P> call(T (*Func) (T x, T y), tvec1<T, P> const & a, T b)
+
99  {
+
100  return tvec1<T, P>(Func(a.x, b));
+
101  }
+
102  };
+
103 
+
104  template <typename T, precision P>
+
105  struct functor2_vec_sca<T, P, tvec2>
+
106  {
+
107  GLM_FUNC_QUALIFIER static tvec2<T, P> call(T (*Func) (T x, T y), tvec2<T, P> const & a, T b)
+
108  {
+
109  return tvec2<T, P>(Func(a.x, b), Func(a.y, b));
+
110  }
+
111  };
+
112 
+
113  template <typename T, precision P>
+
114  struct functor2_vec_sca<T, P, tvec3>
+
115  {
+
116  GLM_FUNC_QUALIFIER static tvec3<T, P> call(T (*Func) (T x, T y), tvec3<T, P> const & a, T b)
+
117  {
+
118  return tvec3<T, P>(Func(a.x, b), Func(a.y, b), Func(a.z, b));
+
119  }
+
120  };
+
121 
+
122  template <typename T, precision P>
+
123  struct functor2_vec_sca<T, P, tvec4>
+
124  {
+
125  GLM_FUNC_QUALIFIER static tvec4<T, P> call(T (*Func) (T x, T y), tvec4<T, P> const & a, T b)
+
126  {
+
127  return tvec4<T, P>(Func(a.x, b), Func(a.y, b), Func(a.z, b), Func(a.w, b));
+
128  }
+
129  };
+
130 }//namespace detail
+
131 }//namespace glm
+
GLM Core
+
Definition: _noise.hpp:11
+
GLM Core
+
GLM Core
+
GLM Core
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00007.html b/third_party/glm_test/doc/api/a00007.html new file mode 100644 index 0000000000000..cc8b373bfeb5a --- /dev/null +++ b/third_party/glm_test/doc/api/a00007.html @@ -0,0 +1,141 @@ + + + + + + +0.9.8: associated_min_max.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
associated_min_max.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , typename U >
GLM_FUNC_DECL U associatedMax (T x, U a, T y, U b)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL tvec2< U, P > associatedMax (vecType< T, P > const &x, vecType< U, P > const &a, vecType< T, P > const &y, vecType< U, P > const &b)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > associatedMax (T x, vecType< U, P > const &a, T y, vecType< U, P > const &b)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMax (vecType< T, P > const &x, U a, vecType< T, P > const &y, U b)
 
template<typename T , typename U >
GLM_FUNC_DECL U associatedMax (T x, U a, T y, U b, T z, U c)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMax (vecType< T, P > const &x, vecType< U, P > const &a, vecType< T, P > const &y, vecType< U, P > const &b, vecType< T, P > const &z, vecType< U, P > const &c)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > associatedMax (T x, vecType< U, P > const &a, T y, vecType< U, P > const &b, T z, vecType< U, P > const &c)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMax (vecType< T, P > const &x, U a, vecType< T, P > const &y, U b, vecType< T, P > const &z, U c)
 
template<typename T , typename U >
GLM_FUNC_DECL U associatedMax (T x, U a, T y, U b, T z, U c, T w, U d)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMax (vecType< T, P > const &x, vecType< U, P > const &a, vecType< T, P > const &y, vecType< U, P > const &b, vecType< T, P > const &z, vecType< U, P > const &c, vecType< T, P > const &w, vecType< U, P > const &d)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMax (T x, vecType< U, P > const &a, T y, vecType< U, P > const &b, T z, vecType< U, P > const &c, T w, vecType< U, P > const &d)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMax (vecType< T, P > const &x, U a, vecType< T, P > const &y, U b, vecType< T, P > const &z, U c, vecType< T, P > const &w, U d)
 
template<typename T , typename U , precision P>
GLM_FUNC_DECL U associatedMin (T x, U a, T y, U b)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL tvec2< U, P > associatedMin (vecType< T, P > const &x, vecType< U, P > const &a, vecType< T, P > const &y, vecType< U, P > const &b)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMin (T x, const vecType< U, P > &a, T y, const vecType< U, P > &b)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMin (vecType< T, P > const &x, U a, vecType< T, P > const &y, U b)
 
template<typename T , typename U >
GLM_FUNC_DECL U associatedMin (T x, U a, T y, U b, T z, U c)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMin (vecType< T, P > const &x, vecType< U, P > const &a, vecType< T, P > const &y, vecType< U, P > const &b, vecType< T, P > const &z, vecType< U, P > const &c)
 
template<typename T , typename U >
GLM_FUNC_DECL U associatedMin (T x, U a, T y, U b, T z, U c, T w, U d)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMin (vecType< T, P > const &x, vecType< U, P > const &a, vecType< T, P > const &y, vecType< U, P > const &b, vecType< T, P > const &z, vecType< U, P > const &c, vecType< T, P > const &w, vecType< U, P > const &d)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMin (T x, vecType< U, P > const &a, T y, vecType< U, P > const &b, T z, vecType< U, P > const &c, T w, vecType< U, P > const &d)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMin (vecType< T, P > const &x, U a, vecType< T, P > const &y, U b, vecType< T, P > const &z, U c, vecType< T, P > const &w, U d)
 
+

Detailed Description

+

GLM_GTX_associated_min_max

+
See also
GLM Core (dependence)
+
+GLM_GTX_extented_min_max (dependence)
+ +

Definition in file associated_min_max.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00007_source.html b/third_party/glm_test/doc/api/a00007_source.html new file mode 100644 index 0000000000000..d3d9bb252b447 --- /dev/null +++ b/third_party/glm_test/doc/api/a00007_source.html @@ -0,0 +1,207 @@ + + + + + + +0.9.8: associated_min_max.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
associated_min_max.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 
+
18 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
19 # pragma message("GLM: GLM_GTX_associated_min_max extension included")
+
20 #endif
+
21 
+
22 namespace glm
+
23 {
+
26 
+
29  template<typename T, typename U, precision P>
+
30  GLM_FUNC_DECL U associatedMin(T x, U a, T y, U b);
+
31 
+
34  template<typename T, typename U, precision P, template <typename, precision> class vecType>
+
35  GLM_FUNC_DECL tvec2<U, P> associatedMin(
+
36  vecType<T, P> const & x, vecType<U, P> const & a,
+
37  vecType<T, P> const & y, vecType<U, P> const & b);
+
38 
+
41  template<typename T, typename U, precision P, template <typename, precision> class vecType>
+
42  GLM_FUNC_DECL vecType<U, P> associatedMin(
+
43  T x, const vecType<U, P>& a,
+
44  T y, const vecType<U, P>& b);
+
45 
+
48  template<typename T, typename U, precision P, template <typename, precision> class vecType>
+
49  GLM_FUNC_DECL vecType<U, P> associatedMin(
+
50  vecType<T, P> const & x, U a,
+
51  vecType<T, P> const & y, U b);
+
52 
+
55  template<typename T, typename U>
+
56  GLM_FUNC_DECL U associatedMin(
+
57  T x, U a,
+
58  T y, U b,
+
59  T z, U c);
+
60 
+
63  template<typename T, typename U, precision P, template <typename, precision> class vecType>
+
64  GLM_FUNC_DECL vecType<U, P> associatedMin(
+
65  vecType<T, P> const & x, vecType<U, P> const & a,
+
66  vecType<T, P> const & y, vecType<U, P> const & b,
+
67  vecType<T, P> const & z, vecType<U, P> const & c);
+
68 
+
71  template<typename T, typename U>
+
72  GLM_FUNC_DECL U associatedMin(
+
73  T x, U a,
+
74  T y, U b,
+
75  T z, U c,
+
76  T w, U d);
+
77 
+
80  template<typename T, typename U, precision P, template <typename, precision> class vecType>
+
81  GLM_FUNC_DECL vecType<U, P> associatedMin(
+
82  vecType<T, P> const & x, vecType<U, P> const & a,
+
83  vecType<T, P> const & y, vecType<U, P> const & b,
+
84  vecType<T, P> const & z, vecType<U, P> const & c,
+
85  vecType<T, P> const & w, vecType<U, P> const & d);
+
86 
+
89  template<typename T, typename U, precision P, template <typename, precision> class vecType>
+
90  GLM_FUNC_DECL vecType<U, P> associatedMin(
+
91  T x, vecType<U, P> const & a,
+
92  T y, vecType<U, P> const & b,
+
93  T z, vecType<U, P> const & c,
+
94  T w, vecType<U, P> const & d);
+
95 
+
98  template<typename T, typename U, precision P, template <typename, precision> class vecType>
+
99  GLM_FUNC_DECL vecType<U, P> associatedMin(
+
100  vecType<T, P> const & x, U a,
+
101  vecType<T, P> const & y, U b,
+
102  vecType<T, P> const & z, U c,
+
103  vecType<T, P> const & w, U d);
+
104 
+
107  template<typename T, typename U>
+
108  GLM_FUNC_DECL U associatedMax(T x, U a, T y, U b);
+
109 
+
112  template<typename T, typename U, precision P, template <typename, precision> class vecType>
+
113  GLM_FUNC_DECL tvec2<U, P> associatedMax(
+
114  vecType<T, P> const & x, vecType<U, P> const & a,
+
115  vecType<T, P> const & y, vecType<U, P> const & b);
+
116 
+
119  template<typename T, typename U, precision P, template <typename, precision> class vecType>
+
120  GLM_FUNC_DECL vecType<T, P> associatedMax(
+
121  T x, vecType<U, P> const & a,
+
122  T y, vecType<U, P> const & b);
+
123 
+
126  template<typename T, typename U, precision P, template <typename, precision> class vecType>
+
127  GLM_FUNC_DECL vecType<U, P> associatedMax(
+
128  vecType<T, P> const & x, U a,
+
129  vecType<T, P> const & y, U b);
+
130 
+
133  template<typename T, typename U>
+
134  GLM_FUNC_DECL U associatedMax(
+
135  T x, U a,
+
136  T y, U b,
+
137  T z, U c);
+
138 
+
141  template<typename T, typename U, precision P, template <typename, precision> class vecType>
+
142  GLM_FUNC_DECL vecType<U, P> associatedMax(
+
143  vecType<T, P> const & x, vecType<U, P> const & a,
+
144  vecType<T, P> const & y, vecType<U, P> const & b,
+
145  vecType<T, P> const & z, vecType<U, P> const & c);
+
146 
+
149  template<typename T, typename U, precision P, template <typename, precision> class vecType>
+
150  GLM_FUNC_DECL vecType<T, P> associatedMax(
+
151  T x, vecType<U, P> const & a,
+
152  T y, vecType<U, P> const & b,
+
153  T z, vecType<U, P> const & c);
+
154 
+
157  template<typename T, typename U, precision P, template <typename, precision> class vecType>
+
158  GLM_FUNC_DECL vecType<U, P> associatedMax(
+
159  vecType<T, P> const & x, U a,
+
160  vecType<T, P> const & y, U b,
+
161  vecType<T, P> const & z, U c);
+
162 
+
165  template<typename T, typename U>
+
166  GLM_FUNC_DECL U associatedMax(
+
167  T x, U a,
+
168  T y, U b,
+
169  T z, U c,
+
170  T w, U d);
+
171 
+
174  template<typename T, typename U, precision P, template <typename, precision> class vecType>
+
175  GLM_FUNC_DECL vecType<U, P> associatedMax(
+
176  vecType<T, P> const & x, vecType<U, P> const & a,
+
177  vecType<T, P> const & y, vecType<U, P> const & b,
+
178  vecType<T, P> const & z, vecType<U, P> const & c,
+
179  vecType<T, P> const & w, vecType<U, P> const & d);
+
180 
+
183  template<typename T, typename U, precision P, template <typename, precision> class vecType>
+
184  GLM_FUNC_DECL vecType<U, P> associatedMax(
+
185  T x, vecType<U, P> const & a,
+
186  T y, vecType<U, P> const & b,
+
187  T z, vecType<U, P> const & c,
+
188  T w, vecType<U, P> const & d);
+
189 
+
192  template<typename T, typename U, precision P, template <typename, precision> class vecType>
+
193  GLM_FUNC_DECL vecType<U, P> associatedMax(
+
194  vecType<T, P> const & x, U a,
+
195  vecType<T, P> const & y, U b,
+
196  vecType<T, P> const & z, U c,
+
197  vecType<T, P> const & w, U d);
+
198 
+
200 } //namespace glm
+
201 
+
202 #include "associated_min_max.inl"
+
GLM_FUNC_DECL vecType< U, P > associatedMax(vecType< T, P > const &x, U a, vecType< T, P > const &y, U b, vecType< T, P > const &z, U c, vecType< T, P > const &w, U d)
Maximum comparison between 4 variables and returns 4 associated variable values.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL vecType< U, P > associatedMin(vecType< T, P > const &x, U a, vecType< T, P > const &y, U b, vecType< T, P > const &z, U c, vecType< T, P > const &w, U d)
Minimum comparison between 4 variables and returns 4 associated variable values.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00008.html b/third_party/glm_test/doc/api/a00008.html new file mode 100644 index 0000000000000..2ac48beda77c9 --- /dev/null +++ b/third_party/glm_test/doc/api/a00008.html @@ -0,0 +1,102 @@ + + + + + + +0.9.8: bit.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
bit.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genIUType >
GLM_FUNC_DECL genIUType highestBitValue (genIUType Value)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > highestBitValue (vecType< T, P > const &value)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType lowestBitValue (genIUType Value)
 
template<typename genIUType >
GLM_DEPRECATED GLM_FUNC_DECL genIUType powerOfTwoAbove (genIUType Value)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_DEPRECATED GLM_FUNC_DECL vecType< T, P > powerOfTwoAbove (vecType< T, P > const &value)
 
template<typename genIUType >
GLM_DEPRECATED GLM_FUNC_DECL genIUType powerOfTwoBelow (genIUType Value)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_DEPRECATED GLM_FUNC_DECL vecType< T, P > powerOfTwoBelow (vecType< T, P > const &value)
 
template<typename genIUType >
GLM_DEPRECATED GLM_FUNC_DECL genIUType powerOfTwoNearest (genIUType Value)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_DEPRECATED GLM_FUNC_DECL vecType< T, P > powerOfTwoNearest (vecType< T, P > const &value)
 
+

Detailed Description

+

GLM_GTX_bit

+
See also
GLM Core (dependence)
+
+gtc_half_float (dependence)
+ +

Definition in file bit.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00008_source.html b/third_party/glm_test/doc/api/a00008_source.html new file mode 100644 index 0000000000000..0c428def53b86 --- /dev/null +++ b/third_party/glm_test/doc/api/a00008_source.html @@ -0,0 +1,111 @@ + + + + + + +0.9.8: bit.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
bit.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependencies
+
17 #include "../gtc/bitfield.hpp"
+
18 
+
19 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
20 # pragma message("GLM: GLM_GTX_bit extension is deprecated, include GLM_GTC_bitfield and GLM_GTC_integer instead")
+
21 #endif
+
22 
+
23 namespace glm
+
24 {
+
27 
+
29  template <typename genIUType>
+
30  GLM_FUNC_DECL genIUType highestBitValue(genIUType Value);
+
31 
+
33  template <typename genIUType>
+
34  GLM_FUNC_DECL genIUType lowestBitValue(genIUType Value);
+
35 
+
39  template <typename T, precision P, template <typename, precision> class vecType>
+
40  GLM_FUNC_DECL vecType<T, P> highestBitValue(vecType<T, P> const & value);
+
41 
+
47  template <typename genIUType>
+
48  GLM_DEPRECATED GLM_FUNC_DECL genIUType powerOfTwoAbove(genIUType Value);
+
49 
+
55  template <typename T, precision P, template <typename, precision> class vecType>
+
56  GLM_DEPRECATED GLM_FUNC_DECL vecType<T, P> powerOfTwoAbove(vecType<T, P> const & value);
+
57 
+
63  template <typename genIUType>
+
64  GLM_DEPRECATED GLM_FUNC_DECL genIUType powerOfTwoBelow(genIUType Value);
+
65 
+
71  template <typename T, precision P, template <typename, precision> class vecType>
+
72  GLM_DEPRECATED GLM_FUNC_DECL vecType<T, P> powerOfTwoBelow(vecType<T, P> const & value);
+
73 
+
79  template <typename genIUType>
+
80  GLM_DEPRECATED GLM_FUNC_DECL genIUType powerOfTwoNearest(genIUType Value);
+
81 
+
87  template <typename T, precision P, template <typename, precision> class vecType>
+
88  GLM_DEPRECATED GLM_FUNC_DECL vecType<T, P> powerOfTwoNearest(vecType<T, P> const & value);
+
89 
+
91 } //namespace glm
+
92 
+
93 
+
94 #include "bit.inl"
+
95 
+
GLM_DEPRECATED GLM_FUNC_DECL vecType< T, P > powerOfTwoBelow(vecType< T, P > const &value)
Return the power of two number which value is just lower the input value.
+
GLM_DEPRECATED GLM_FUNC_DECL vecType< T, P > powerOfTwoAbove(vecType< T, P > const &value)
Return the power of two number which value is just higher the input value.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL genIUType lowestBitValue(genIUType Value)
+
GLM_FUNC_DECL vecType< T, P > highestBitValue(vecType< T, P > const &value)
Find the highest bit set to 1 in a integer variable and return its value.
+
GLM_DEPRECATED GLM_FUNC_DECL vecType< T, P > powerOfTwoNearest(vecType< T, P > const &value)
Return the power of two number which value is the closet to the input value.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00009.html b/third_party/glm_test/doc/api/a00009.html new file mode 100644 index 0000000000000..a1a96215dd5f7 --- /dev/null +++ b/third_party/glm_test/doc/api/a00009.html @@ -0,0 +1,137 @@ + + + + + + +0.9.8: bitfield.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
bitfield.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genIUType >
GLM_FUNC_DECL genIUType bitfieldFillOne (genIUType Value, int FirstBit, int BitCount)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > bitfieldFillOne (vecType< T, P > const &Value, int FirstBit, int BitCount)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType bitfieldFillZero (genIUType Value, int FirstBit, int BitCount)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > bitfieldFillZero (vecType< T, P > const &Value, int FirstBit, int BitCount)
 
GLM_FUNC_DECL int16 bitfieldInterleave (int8 x, int8 y)
 
GLM_FUNC_DECL uint16 bitfieldInterleave (uint8 x, uint8 y)
 
GLM_FUNC_DECL int32 bitfieldInterleave (int16 x, int16 y)
 
GLM_FUNC_DECL uint32 bitfieldInterleave (uint16 x, uint16 y)
 
GLM_FUNC_DECL int64 bitfieldInterleave (int32 x, int32 y)
 
GLM_FUNC_DECL uint64 bitfieldInterleave (uint32 x, uint32 y)
 
GLM_FUNC_DECL int32 bitfieldInterleave (int8 x, int8 y, int8 z)
 
GLM_FUNC_DECL uint32 bitfieldInterleave (uint8 x, uint8 y, uint8 z)
 
GLM_FUNC_DECL int64 bitfieldInterleave (int16 x, int16 y, int16 z)
 
GLM_FUNC_DECL uint64 bitfieldInterleave (uint16 x, uint16 y, uint16 z)
 
GLM_FUNC_DECL int64 bitfieldInterleave (int32 x, int32 y, int32 z)
 
GLM_FUNC_DECL uint64 bitfieldInterleave (uint32 x, uint32 y, uint32 z)
 
GLM_FUNC_DECL int32 bitfieldInterleave (int8 x, int8 y, int8 z, int8 w)
 
GLM_FUNC_DECL uint32 bitfieldInterleave (uint8 x, uint8 y, uint8 z, uint8 w)
 
GLM_FUNC_DECL int64 bitfieldInterleave (int16 x, int16 y, int16 z, int16 w)
 
GLM_FUNC_DECL uint64 bitfieldInterleave (uint16 x, uint16 y, uint16 z, uint16 w)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType bitfieldRotateLeft (genIUType In, int Shift)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > bitfieldRotateLeft (vecType< T, P > const &In, int Shift)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType bitfieldRotateRight (genIUType In, int Shift)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > bitfieldRotateRight (vecType< T, P > const &In, int Shift)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType mask (genIUType Bits)
 
template<typename T , precision P, template< typename, precision > class vecIUType>
GLM_FUNC_DECL vecIUType< T, P > mask (vecIUType< T, P > const &v)
 
+

Detailed Description

+

GLM_GTC_bitfield

+
See also
GLM Core (dependence)
+
+GLM_GTC_bitfield (dependence)
+ +

Definition in file bitfield.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00009_source.html b/third_party/glm_test/doc/api/a00009_source.html new file mode 100644 index 0000000000000..9d837c2a0e60f --- /dev/null +++ b/third_party/glm_test/doc/api/a00009_source.html @@ -0,0 +1,149 @@ + + + + + + +0.9.8: bitfield.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
bitfield.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependencies
+
17 #include "../detail/setup.hpp"
+
18 #include "../detail/precision.hpp"
+
19 #include "../detail/type_int.hpp"
+
20 #include "../detail/_vectorize.hpp"
+
21 #include <limits>
+
22 
+
23 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
24 # pragma message("GLM: GLM_GTC_bitfield extension included")
+
25 #endif
+
26 
+
27 namespace glm
+
28 {
+
31 
+
35  template <typename genIUType>
+
36  GLM_FUNC_DECL genIUType mask(genIUType Bits);
+
37 
+
41  template <typename T, precision P, template <typename, precision> class vecIUType>
+
42  GLM_FUNC_DECL vecIUType<T, P> mask(vecIUType<T, P> const & v);
+
43 
+
47  template <typename genIUType>
+
48  GLM_FUNC_DECL genIUType bitfieldRotateRight(genIUType In, int Shift);
+
49 
+
53  template <typename T, precision P, template <typename, precision> class vecType>
+
54  GLM_FUNC_DECL vecType<T, P> bitfieldRotateRight(vecType<T, P> const & In, int Shift);
+
55 
+
59  template <typename genIUType>
+
60  GLM_FUNC_DECL genIUType bitfieldRotateLeft(genIUType In, int Shift);
+
61 
+
65  template <typename T, precision P, template <typename, precision> class vecType>
+
66  GLM_FUNC_DECL vecType<T, P> bitfieldRotateLeft(vecType<T, P> const & In, int Shift);
+
67 
+
71  template <typename genIUType>
+
72  GLM_FUNC_DECL genIUType bitfieldFillOne(genIUType Value, int FirstBit, int BitCount);
+
73 
+
77  template <typename T, precision P, template <typename, precision> class vecType>
+
78  GLM_FUNC_DECL vecType<T, P> bitfieldFillOne(vecType<T, P> const & Value, int FirstBit, int BitCount);
+
79 
+
83  template <typename genIUType>
+
84  GLM_FUNC_DECL genIUType bitfieldFillZero(genIUType Value, int FirstBit, int BitCount);
+
85 
+
89  template <typename T, precision P, template <typename, precision> class vecType>
+
90  GLM_FUNC_DECL vecType<T, P> bitfieldFillZero(vecType<T, P> const & Value, int FirstBit, int BitCount);
+
91 
+
97  GLM_FUNC_DECL int16 bitfieldInterleave(int8 x, int8 y);
+
98 
+
104  GLM_FUNC_DECL uint16 bitfieldInterleave(uint8 x, uint8 y);
+
105 
+
111  GLM_FUNC_DECL int32 bitfieldInterleave(int16 x, int16 y);
+
112 
+
118  GLM_FUNC_DECL uint32 bitfieldInterleave(uint16 x, uint16 y);
+
119 
+
125  GLM_FUNC_DECL int64 bitfieldInterleave(int32 x, int32 y);
+
126 
+
132  GLM_FUNC_DECL uint64 bitfieldInterleave(uint32 x, uint32 y);
+
133 
+
139  GLM_FUNC_DECL int32 bitfieldInterleave(int8 x, int8 y, int8 z);
+
140 
+
146  GLM_FUNC_DECL uint32 bitfieldInterleave(uint8 x, uint8 y, uint8 z);
+
147 
+
153  GLM_FUNC_DECL int64 bitfieldInterleave(int16 x, int16 y, int16 z);
+
154 
+
160  GLM_FUNC_DECL uint64 bitfieldInterleave(uint16 x, uint16 y, uint16 z);
+
161 
+
167  GLM_FUNC_DECL int64 bitfieldInterleave(int32 x, int32 y, int32 z);
+
168 
+
174  GLM_FUNC_DECL uint64 bitfieldInterleave(uint32 x, uint32 y, uint32 z);
+
175 
+
181  GLM_FUNC_DECL int32 bitfieldInterleave(int8 x, int8 y, int8 z, int8 w);
+
182 
+
188  GLM_FUNC_DECL uint32 bitfieldInterleave(uint8 x, uint8 y, uint8 z, uint8 w);
+
189 
+
195  GLM_FUNC_DECL int64 bitfieldInterleave(int16 x, int16 y, int16 z, int16 w);
+
196 
+
202  GLM_FUNC_DECL uint64 bitfieldInterleave(uint16 x, uint16 y, uint16 z, uint16 w);
+
203 
+
205 } //namespace glm
+
206 
+
207 #include "bitfield.inl"
+
GLM_FUNC_DECL uint64 bitfieldInterleave(uint16 x, uint16 y, uint16 z, uint16 w)
Interleaves the bits of x, y, z and w.
+
GLM_FUNC_DECL vecType< T, P > bitfieldRotateLeft(vecType< T, P > const &In, int Shift)
Rotate all bits to the left.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL vecIUType< T, P > mask(vecIUType< T, P > const &v)
Build a mask of 'count' bits.
+
GLM_FUNC_DECL vecType< T, P > bitfieldFillOne(vecType< T, P > const &Value, int FirstBit, int BitCount)
Set to 1 a range of bits.
+
GLM_FUNC_DECL vecType< T, P > bitfieldRotateRight(vecType< T, P > const &In, int Shift)
Rotate all bits to the right.
+
GLM_FUNC_DECL vecType< T, P > bitfieldFillZero(vecType< T, P > const &Value, int FirstBit, int BitCount)
Set to 0 a range of bits.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00010.html b/third_party/glm_test/doc/api/a00010.html new file mode 100644 index 0000000000000..9efdc5e547059 --- /dev/null +++ b/third_party/glm_test/doc/api/a00010.html @@ -0,0 +1,80 @@ + + + + + + +0.9.8: closest_point.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
closest_point.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > closestPointOnLine (tvec3< T, P > const &point, tvec3< T, P > const &a, tvec3< T, P > const &b)
 
+template<typename T , precision P>
GLM_FUNC_DECL tvec2< T, P > closestPointOnLine (tvec2< T, P > const &point, tvec2< T, P > const &a, tvec2< T, P > const &b)
 
+

Detailed Description

+

GLM_GTX_closest_point

+
See also
GLM Core (dependence)
+ +

Definition in file closest_point.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00010_source.html b/third_party/glm_test/doc/api/a00010_source.html new file mode 100644 index 0000000000000..9f0b6f4b0c576 --- /dev/null +++ b/third_party/glm_test/doc/api/a00010_source.html @@ -0,0 +1,90 @@ + + + + + + +0.9.8: closest_point.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
closest_point.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 
+
18 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
19 # pragma message("GLM: GLM_GTX_closest_point extension included")
+
20 #endif
+
21 
+
22 namespace glm
+
23 {
+
26 
+
29  template <typename T, precision P>
+
30  GLM_FUNC_DECL tvec3<T, P> closestPointOnLine(
+
31  tvec3<T, P> const & point,
+
32  tvec3<T, P> const & a,
+
33  tvec3<T, P> const & b);
+
34 
+
36  template <typename T, precision P>
+
37  GLM_FUNC_DECL tvec2<T, P> closestPointOnLine(
+
38  tvec2<T, P> const & point,
+
39  tvec2<T, P> const & a,
+
40  tvec2<T, P> const & b);
+
41 
+
43 }// namespace glm
+
44 
+
45 #include "closest_point.inl"
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tvec2< T, P > closestPointOnLine(tvec2< T, P > const &point, tvec2< T, P > const &a, tvec2< T, P > const &b)
2d lines work as well
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00011.html b/third_party/glm_test/doc/api/a00011.html new file mode 100644 index 0000000000000..0e586e7698599 --- /dev/null +++ b/third_party/glm_test/doc/api/a00011.html @@ -0,0 +1,88 @@ + + + + + + +0.9.8: color_space.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
gtc/color_space.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > convertLinearToSRGB (vecType< T, P > const &ColorLinear)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > convertLinearToSRGB (vecType< T, P > const &ColorLinear, T Gamma)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > convertSRGBToLinear (vecType< T, P > const &ColorSRGB)
 
+template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > convertSRGBToLinear (vecType< T, P > const &ColorSRGB, T Gamma)
 
+

Detailed Description

+

GLM_GTC_color_space

+
See also
GLM Core (dependence)
+
+GLM_GTC_color_space (dependence)
+ +

Definition in file gtc/color_space.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00011_source.html b/third_party/glm_test/doc/api/a00011_source.html new file mode 100644 index 0000000000000..88bc75ce97b79 --- /dev/null +++ b/third_party/glm_test/doc/api/a00011_source.html @@ -0,0 +1,97 @@ + + + + + + +0.9.8: color_space.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
gtc/color_space.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependencies
+
17 #include "../detail/setup.hpp"
+
18 #include "../detail/precision.hpp"
+
19 #include "../exponential.hpp"
+
20 #include "../vec3.hpp"
+
21 #include "../vec4.hpp"
+
22 #include <limits>
+
23 
+
24 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
25 # pragma message("GLM: GLM_GTC_color_space extension included")
+
26 #endif
+
27 
+
28 namespace glm
+
29 {
+
32 
+
35  template <typename T, precision P, template <typename, precision> class vecType>
+
36  GLM_FUNC_DECL vecType<T, P> convertLinearToSRGB(vecType<T, P> const & ColorLinear);
+
37 
+
40  template <typename T, precision P, template <typename, precision> class vecType>
+
41  GLM_FUNC_DECL vecType<T, P> convertLinearToSRGB(vecType<T, P> const & ColorLinear, T Gamma);
+
42 
+
45  template <typename T, precision P, template <typename, precision> class vecType>
+
46  GLM_FUNC_DECL vecType<T, P> convertSRGBToLinear(vecType<T, P> const & ColorSRGB);
+
47 
+
49  // IEC 61966-2-1:1999 specification https://www.w3.org/Graphics/Color/srgb
+
50  template <typename T, precision P, template <typename, precision> class vecType>
+
51  GLM_FUNC_DECL vecType<T, P> convertSRGBToLinear(vecType<T, P> const & ColorSRGB, T Gamma);
+
52 
+
54 } //namespace glm
+
55 
+
56 #include "color_space.inl"
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL vecType< T, P > convertSRGBToLinear(vecType< T, P > const &ColorSRGB, T Gamma)
Convert a sRGB color to linear color using a custom gamma correction.
+
GLM_FUNC_DECL vecType< T, P > convertLinearToSRGB(vecType< T, P > const &ColorLinear, T Gamma)
Convert a linear color to sRGB color using a custom gamma correction.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00012.html b/third_party/glm_test/doc/api/a00012.html new file mode 100644 index 0000000000000..6f932a39b58ed --- /dev/null +++ b/third_party/glm_test/doc/api/a00012.html @@ -0,0 +1,91 @@ + + + + + + +0.9.8: color_space.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
gtx/color_space.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > hsvColor (tvec3< T, P > const &rgbValue)
 
template<typename T , precision P>
GLM_FUNC_DECL T luminosity (tvec3< T, P > const &color)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > rgbColor (tvec3< T, P > const &hsvValue)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > saturation (T const s)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > saturation (T const s, tvec3< T, P > const &color)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< T, P > saturation (T const s, tvec4< T, P > const &color)
 
+

Detailed Description

+

GLM_GTX_color_space

+
See also
GLM Core (dependence)
+ +

Definition in file gtx/color_space.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00012_source.html b/third_party/glm_test/doc/api/a00012_source.html new file mode 100644 index 0000000000000..2b28d697f6cb7 --- /dev/null +++ b/third_party/glm_test/doc/api/a00012_source.html @@ -0,0 +1,107 @@ + + + + + + +0.9.8: color_space.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
gtx/color_space.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 
+
18 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
19 # pragma message("GLM: GLM_GTX_color_space extension included")
+
20 #endif
+
21 
+
22 namespace glm
+
23 {
+
26 
+
29  template <typename T, precision P>
+
30  GLM_FUNC_DECL tvec3<T, P> rgbColor(
+
31  tvec3<T, P> const & hsvValue);
+
32 
+
35  template <typename T, precision P>
+
36  GLM_FUNC_DECL tvec3<T, P> hsvColor(
+
37  tvec3<T, P> const & rgbValue);
+
38 
+
41  template <typename T>
+
42  GLM_FUNC_DECL tmat4x4<T, defaultp> saturation(
+
43  T const s);
+
44 
+
47  template <typename T, precision P>
+
48  GLM_FUNC_DECL tvec3<T, P> saturation(
+
49  T const s,
+
50  tvec3<T, P> const & color);
+
51 
+
54  template <typename T, precision P>
+
55  GLM_FUNC_DECL tvec4<T, P> saturation(
+
56  T const s,
+
57  tvec4<T, P> const & color);
+
58 
+
61  template <typename T, precision P>
+
62  GLM_FUNC_DECL T luminosity(
+
63  tvec3<T, P> const & color);
+
64 
+
66 }//namespace glm
+
67 
+
68 #include "color_space.inl"
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tvec4< T, P > saturation(T const s, tvec4< T, P > const &color)
Modify the saturation of a color.
+
GLM_FUNC_DECL tvec3< T, P > hsvColor(tvec3< T, P > const &rgbValue)
Converts a color from RGB color space to its color in HSV color space.
+
GLM_FUNC_DECL tvec3< T, P > rgbColor(tvec3< T, P > const &hsvValue)
Converts a color from HSV color space to its color in RGB color space.
+
GLM_FUNC_DECL T luminosity(tvec3< T, P > const &color)
Compute color luminosity associating ratios (0.33, 0.59, 0.11) to RGB canals.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00013.html b/third_party/glm_test/doc/api/a00013.html new file mode 100644 index 0000000000000..8d7aaba2a80cc --- /dev/null +++ b/third_party/glm_test/doc/api/a00013.html @@ -0,0 +1,85 @@ + + + + + + +0.9.8: color_space_YCoCg.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
color_space_YCoCg.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > rgb2YCoCg (tvec3< T, P > const &rgbColor)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > rgb2YCoCgR (tvec3< T, P > const &rgbColor)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > YCoCg2rgb (tvec3< T, P > const &YCoCgColor)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > YCoCgR2rgb (tvec3< T, P > const &YCoCgColor)
 
+

Detailed Description

+

GLM_GTX_color_space_YCoCg

+
See also
GLM Core (dependence)
+ +

Definition in file color_space_YCoCg.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00013_source.html b/third_party/glm_test/doc/api/a00013_source.html new file mode 100644 index 0000000000000..da22584bf3ac6 --- /dev/null +++ b/third_party/glm_test/doc/api/a00013_source.html @@ -0,0 +1,98 @@ + + + + + + +0.9.8: color_space_YCoCg.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
color_space_YCoCg.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 
+
18 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
19 # pragma message("GLM: GLM_GTX_color_space_YCoCg extension included")
+
20 #endif
+
21 
+
22 namespace glm
+
23 {
+
26 
+
29  template <typename T, precision P>
+
30  GLM_FUNC_DECL tvec3<T, P> rgb2YCoCg(
+
31  tvec3<T, P> const & rgbColor);
+
32 
+
35  template <typename T, precision P>
+
36  GLM_FUNC_DECL tvec3<T, P> YCoCg2rgb(
+
37  tvec3<T, P> const & YCoCgColor);
+
38 
+
42  template <typename T, precision P>
+
43  GLM_FUNC_DECL tvec3<T, P> rgb2YCoCgR(
+
44  tvec3<T, P> const & rgbColor);
+
45 
+
49  template <typename T, precision P>
+
50  GLM_FUNC_DECL tvec3<T, P> YCoCgR2rgb(
+
51  tvec3<T, P> const & YCoCgColor);
+
52 
+
54 }//namespace glm
+
55 
+
56 #include "color_space_YCoCg.inl"
+
GLM_FUNC_DECL tvec3< T, P > YCoCg2rgb(tvec3< T, P > const &YCoCgColor)
Convert a color from YCoCg color space to RGB color space.
+
GLM_FUNC_DECL tvec3< T, P > rgb2YCoCgR(tvec3< T, P > const &rgbColor)
Convert a color from RGB color space to YCoCgR color space.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tvec3< T, P > rgb2YCoCg(tvec3< T, P > const &rgbColor)
Convert a color from RGB color space to YCoCg color space.
+
GLM_FUNC_DECL tvec3< T, P > rgbColor(tvec3< T, P > const &hsvValue)
Converts a color from HSV color space to its color in RGB color space.
+
GLM_FUNC_DECL tvec3< T, P > YCoCgR2rgb(tvec3< T, P > const &YCoCgColor)
Convert a color from YCoCgR color space to RGB color space.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00014.html b/third_party/glm_test/doc/api/a00014.html new file mode 100644 index 0000000000000..e30426b7b063a --- /dev/null +++ b/third_party/glm_test/doc/api/a00014.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: common.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
common.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file common.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00014_source.html b/third_party/glm_test/doc/api/a00014_source.html new file mode 100644 index 0000000000000..ce900ea836cac --- /dev/null +++ b/third_party/glm_test/doc/api/a00014_source.html @@ -0,0 +1,65 @@ + + + + + + +0.9.8: common.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
common.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "detail/func_common.hpp"
+ +
+ + + + diff --git a/third_party/glm_test/doc/api/a00015.html b/third_party/glm_test/doc/api/a00015.html new file mode 100644 index 0000000000000..b58716c623c65 --- /dev/null +++ b/third_party/glm_test/doc/api/a00015.html @@ -0,0 +1,81 @@ + + + + + + +0.9.8: common.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
gtx/common.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fmod (vecType< T, P > const &v)
 
template<typename genType >
GLM_FUNC_DECL genType::bool_type isdenormal (genType const &x)
 
+

Detailed Description

+

GLM_GTX_common

+
See also
GLM Core (dependence)
+
+gtc_half_float (dependence)
+ +

Definition in file gtx/common.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00015_source.html b/third_party/glm_test/doc/api/a00015_source.html new file mode 100644 index 0000000000000..61e22f7c34d92 --- /dev/null +++ b/third_party/glm_test/doc/api/a00015_source.html @@ -0,0 +1,88 @@ + + + + + + +0.9.8: common.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
gtx/common.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependencies:
+
17 #include "../vec2.hpp"
+
18 #include "../vec3.hpp"
+
19 #include "../vec4.hpp"
+
20 #include "../gtc/vec1.hpp"
+
21 
+
22 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
23 # pragma message("GLM: GLM_GTX_common extension included")
+
24 #endif
+
25 
+
26 namespace glm
+
27 {
+
30 
+
39  template <typename genType>
+
40  GLM_FUNC_DECL typename genType::bool_type isdenormal(genType const & x);
+
41 
+
47  template <typename T, precision P, template <typename, precision> class vecType>
+
48  GLM_FUNC_DECL vecType<T, P> fmod(vecType<T, P> const & v);
+
49 
+
51 }//namespace glm
+
52 
+
53 #include "common.inl"
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL genType::bool_type isdenormal(genType const &x)
Returns true if x is a denormalized number Numbers whose absolute value is too small to be represente...
+
GLM_FUNC_DECL vecType< T, P > fmod(vecType< T, P > const &v)
Similar to 'mod' but with a different rounding and integer support.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00016.html b/third_party/glm_test/doc/api/a00016.html new file mode 100644 index 0000000000000..36a0921e3191e --- /dev/null +++ b/third_party/glm_test/doc/api/a00016.html @@ -0,0 +1,327 @@ + + + + + + +0.9.8: compatibility.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
compatibility.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

+typedef bool bool1
 
+typedef bool bool1x1
 
+typedef tvec2< bool, highp > bool2
 
+typedef tmat2x2< bool, highp > bool2x2
 
+typedef tmat2x3< bool, highp > bool2x3
 
+typedef tmat2x4< bool, highp > bool2x4
 
+typedef tvec3< bool, highp > bool3
 
+typedef tmat3x2< bool, highp > bool3x2
 
+typedef tmat3x3< bool, highp > bool3x3
 
+typedef tmat3x4< bool, highp > bool3x4
 
+typedef tvec4< bool, highp > bool4
 
+typedef tmat4x2< bool, highp > bool4x2
 
+typedef tmat4x3< bool, highp > bool4x3
 
+typedef tmat4x4< bool, highp > bool4x4
 
+typedef double double1
 
+typedef double double1x1
 
+typedef tvec2< double, highp > double2
 
+typedef tmat2x2< double, highp > double2x2
 
+typedef tmat2x3< double, highp > double2x3
 
+typedef tmat2x4< double, highp > double2x4
 
+typedef tvec3< double, highp > double3
 
+typedef tmat3x2< double, highp > double3x2
 
+typedef tmat3x3< double, highp > double3x3
 
+typedef tmat3x4< double, highp > double3x4
 
+typedef tvec4< double, highp > double4
 
+typedef tmat4x2< double, highp > double4x2
 
+typedef tmat4x3< double, highp > double4x3
 
+typedef tmat4x4< double, highp > double4x4
 
+typedef float float1
 
+typedef float float1x1
 
+typedef tvec2< float, highp > float2
 
+typedef tmat2x2< float, highp > float2x2
 
+typedef tmat2x3< float, highp > float2x3
 
+typedef tmat2x4< float, highp > float2x4
 
+typedef tvec3< float, highp > float3
 
+typedef tmat3x2< float, highp > float3x2
 
+typedef tmat3x3< float, highp > float3x3
 
+typedef tmat3x4< float, highp > float3x4
 
+typedef tvec4< float, highp > float4
 
+typedef tmat4x2< float, highp > float4x2
 
+typedef tmat4x3< float, highp > float4x3
 
+typedef tmat4x4< float, highp > float4x4
 
+typedef int int1
 
+typedef int int1x1
 
+typedef tvec2< int, highp > int2
 
+typedef tmat2x2< int, highp > int2x2
 
+typedef tmat2x3< int, highp > int2x3
 
+typedef tmat2x4< int, highp > int2x4
 
+typedef tvec3< int, highp > int3
 
+typedef tmat3x2< int, highp > int3x2
 
+typedef tmat3x3< int, highp > int3x3
 
+typedef tmat3x4< int, highp > int3x4
 
+typedef tvec4< int, highp > int4
 
+typedef tmat4x2< int, highp > int4x2
 
+typedef tmat4x3< int, highp > int4x3
 
+typedef tmat4x4< int, highp > int4x4
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

+template<typename T , precision P>
GLM_FUNC_QUALIFIER T atan2 (T x, T y)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec2< T, P > atan2 (const tvec2< T, P > &x, const tvec2< T, P > &y)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec3< T, P > atan2 (const tvec3< T, P > &x, const tvec3< T, P > &y)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec4< T, P > atan2 (const tvec4< T, P > &x, const tvec4< T, P > &y)
 
+template<typename genType >
GLM_FUNC_DECL bool isfinite (genType const &x)
 
+template<typename T , precision P>
GLM_FUNC_DECL tvec1< bool, P > isfinite (const tvec1< T, P > &x)
 
+template<typename T , precision P>
GLM_FUNC_DECL tvec2< bool, P > isfinite (const tvec2< T, P > &x)
 
+template<typename T , precision P>
GLM_FUNC_DECL tvec3< bool, P > isfinite (const tvec3< T, P > &x)
 
+template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > isfinite (const tvec4< T, P > &x)
 
+template<typename T >
GLM_FUNC_QUALIFIER T lerp (T x, T y, T a)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec2< T, P > lerp (const tvec2< T, P > &x, const tvec2< T, P > &y, T a)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec3< T, P > lerp (const tvec3< T, P > &x, const tvec3< T, P > &y, T a)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec4< T, P > lerp (const tvec4< T, P > &x, const tvec4< T, P > &y, T a)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec2< T, P > lerp (const tvec2< T, P > &x, const tvec2< T, P > &y, const tvec2< T, P > &a)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec3< T, P > lerp (const tvec3< T, P > &x, const tvec3< T, P > &y, const tvec3< T, P > &a)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec4< T, P > lerp (const tvec4< T, P > &x, const tvec4< T, P > &y, const tvec4< T, P > &a)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER T saturate (T x)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec2< T, P > saturate (const tvec2< T, P > &x)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec3< T, P > saturate (const tvec3< T, P > &x)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec4< T, P > saturate (const tvec4< T, P > &x)
 
+

Detailed Description

+

GLM_GTX_compatibility

+
See also
GLM Core (dependence)
+
+gtc_half_float (dependence)
+ +

Definition in file compatibility.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00016_source.html b/third_party/glm_test/doc/api/a00016_source.html new file mode 100644 index 0000000000000..6a6d190f24513 --- /dev/null +++ b/third_party/glm_test/doc/api/a00016_source.html @@ -0,0 +1,239 @@ + + + + + + +0.9.8: compatibility.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
compatibility.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "../glm.hpp"
+
18 #include "../gtc/quaternion.hpp"
+
19 
+
20 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
21 # pragma message("GLM: GLM_GTX_compatibility extension included")
+
22 #endif
+
23 
+
24 #if GLM_COMPILER & GLM_COMPILER_VC
+
25 # include <cfloat>
+
26 #elif GLM_COMPILER & GLM_COMPILER_GCC
+
27 # include <cmath>
+
28 # if(GLM_PLATFORM & GLM_PLATFORM_ANDROID)
+
29 # undef isfinite
+
30 # endif
+
31 #endif//GLM_COMPILER
+
32 
+
33 namespace glm
+
34 {
+
37 
+
38  template <typename T> GLM_FUNC_QUALIFIER T lerp(T x, T y, T a){return mix(x, y, a);}
+
39  template <typename T, precision P> GLM_FUNC_QUALIFIER tvec2<T, P> lerp(const tvec2<T, P>& x, const tvec2<T, P>& y, T a){return mix(x, y, a);}
+
40 
+
41  template <typename T, precision P> GLM_FUNC_QUALIFIER tvec3<T, P> lerp(const tvec3<T, P>& x, const tvec3<T, P>& y, T a){return mix(x, y, a);}
+
42  template <typename T, precision P> GLM_FUNC_QUALIFIER tvec4<T, P> lerp(const tvec4<T, P>& x, const tvec4<T, P>& y, T a){return mix(x, y, a);}
+
43  template <typename T, precision P> GLM_FUNC_QUALIFIER tvec2<T, P> lerp(const tvec2<T, P>& x, const tvec2<T, P>& y, const tvec2<T, P>& a){return mix(x, y, a);}
+
44  template <typename T, precision P> GLM_FUNC_QUALIFIER tvec3<T, P> lerp(const tvec3<T, P>& x, const tvec3<T, P>& y, const tvec3<T, P>& a){return mix(x, y, a);}
+
45  template <typename T, precision P> GLM_FUNC_QUALIFIER tvec4<T, P> lerp(const tvec4<T, P>& x, const tvec4<T, P>& y, const tvec4<T, P>& a){return mix(x, y, a);}
+
46 
+
47  template <typename T, precision P> GLM_FUNC_QUALIFIER T saturate(T x){return clamp(x, T(0), T(1));}
+
48  template <typename T, precision P> GLM_FUNC_QUALIFIER tvec2<T, P> saturate(const tvec2<T, P>& x){return clamp(x, T(0), T(1));}
+
49  template <typename T, precision P> GLM_FUNC_QUALIFIER tvec3<T, P> saturate(const tvec3<T, P>& x){return clamp(x, T(0), T(1));}
+
50  template <typename T, precision P> GLM_FUNC_QUALIFIER tvec4<T, P> saturate(const tvec4<T, P>& x){return clamp(x, T(0), T(1));}
+
51 
+
52  template <typename T, precision P> GLM_FUNC_QUALIFIER T atan2(T x, T y){return atan(x, y);}
+
53  template <typename T, precision P> GLM_FUNC_QUALIFIER tvec2<T, P> atan2(const tvec2<T, P>& x, const tvec2<T, P>& y){return atan(x, y);}
+
54  template <typename T, precision P> GLM_FUNC_QUALIFIER tvec3<T, P> atan2(const tvec3<T, P>& x, const tvec3<T, P>& y){return atan(x, y);}
+
55  template <typename T, precision P> GLM_FUNC_QUALIFIER tvec4<T, P> atan2(const tvec4<T, P>& x, const tvec4<T, P>& y){return atan(x, y);}
+
56 
+
57  template <typename genType> GLM_FUNC_DECL bool isfinite(genType const & x);
+
58  template <typename T, precision P> GLM_FUNC_DECL tvec1<bool, P> isfinite(const tvec1<T, P>& x);
+
59  template <typename T, precision P> GLM_FUNC_DECL tvec2<bool, P> isfinite(const tvec2<T, P>& x);
+
60  template <typename T, precision P> GLM_FUNC_DECL tvec3<bool, P> isfinite(const tvec3<T, P>& x);
+
61  template <typename T, precision P> GLM_FUNC_DECL tvec4<bool, P> isfinite(const tvec4<T, P>& x);
+
62 
+
63  typedef bool bool1;
+
64  typedef tvec2<bool, highp> bool2;
+
65  typedef tvec3<bool, highp> bool3;
+
66  typedef tvec4<bool, highp> bool4;
+
67 
+
68  typedef bool bool1x1;
+
69  typedef tmat2x2<bool, highp> bool2x2;
+
70  typedef tmat2x3<bool, highp> bool2x3;
+
71  typedef tmat2x4<bool, highp> bool2x4;
+
72  typedef tmat3x2<bool, highp> bool3x2;
+
73  typedef tmat3x3<bool, highp> bool3x3;
+
74  typedef tmat3x4<bool, highp> bool3x4;
+
75  typedef tmat4x2<bool, highp> bool4x2;
+
76  typedef tmat4x3<bool, highp> bool4x3;
+
77  typedef tmat4x4<bool, highp> bool4x4;
+
78 
+
79  typedef int int1;
+
80  typedef tvec2<int, highp> int2;
+
81  typedef tvec3<int, highp> int3;
+
82  typedef tvec4<int, highp> int4;
+
83 
+
84  typedef int int1x1;
+
85  typedef tmat2x2<int, highp> int2x2;
+
86  typedef tmat2x3<int, highp> int2x3;
+
87  typedef tmat2x4<int, highp> int2x4;
+
88  typedef tmat3x2<int, highp> int3x2;
+
89  typedef tmat3x3<int, highp> int3x3;
+
90  typedef tmat3x4<int, highp> int3x4;
+
91  typedef tmat4x2<int, highp> int4x2;
+
92  typedef tmat4x3<int, highp> int4x3;
+
93  typedef tmat4x4<int, highp> int4x4;
+
94 
+
95  typedef float float1;
+
96  typedef tvec2<float, highp> float2;
+
97  typedef tvec3<float, highp> float3;
+
98  typedef tvec4<float, highp> float4;
+
99 
+
100  typedef float float1x1;
+
101  typedef tmat2x2<float, highp> float2x2;
+
102  typedef tmat2x3<float, highp> float2x3;
+
103  typedef tmat2x4<float, highp> float2x4;
+
104  typedef tmat3x2<float, highp> float3x2;
+
105  typedef tmat3x3<float, highp> float3x3;
+
106  typedef tmat3x4<float, highp> float3x4;
+
107  typedef tmat4x2<float, highp> float4x2;
+
108  typedef tmat4x3<float, highp> float4x3;
+
109  typedef tmat4x4<float, highp> float4x4;
+
110 
+
111  typedef double double1;
+
112  typedef tvec2<double, highp> double2;
+
113  typedef tvec3<double, highp> double3;
+
114  typedef tvec4<double, highp> double4;
+
115 
+
116  typedef double double1x1;
+
117  typedef tmat2x2<double, highp> double2x2;
+
118  typedef tmat2x3<double, highp> double2x3;
+
119  typedef tmat2x4<double, highp> double2x4;
+
120  typedef tmat3x2<double, highp> double3x2;
+
121  typedef tmat3x3<double, highp> double3x3;
+
122  typedef tmat3x4<double, highp> double3x4;
+
123  typedef tmat4x2<double, highp> double4x2;
+
124  typedef tmat4x3<double, highp> double4x3;
+
125  typedef tmat4x4<double, highp> double4x4;
+
126 
+
128 }//namespace glm
+
129 
+
130 #include "compatibility.inl"
+
int int1x1
integer matrix with 1 component. (From GLM_GTX_compatibility extension)
+
tmat3x3< bool, highp > bool3x3
boolean matrix with 3 x 3 components. (From GLM_GTX_compatibility extension)
+
tmat3x3< float, highp > float3x3
single-precision floating-point matrix with 3 x 3 components. (From GLM_GTX_compatibility extension) ...
+
tmat2x4< int, highp > int2x4
integer matrix with 2 x 4 components. (From GLM_GTX_compatibility extension)
+
tmat2x4< float, highp > float2x4
single-precision floating-point matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) ...
+
tmat4x3< float, highp > float4x3
single-precision floating-point matrix with 4 x 3 components. (From GLM_GTX_compatibility extension) ...
+
double double1
double-precision floating-point vector with 1 component. (From GLM_GTX_compatibility extension) ...
+
tmat2x2< double, highp > double2x2
double-precision floating-point matrix with 2 x 2 components. (From GLM_GTX_compatibility extension) ...
+
tmat3x4< double, highp > double3x4
double-precision floating-point matrix with 3 x 4 components. (From GLM_GTX_compatibility extension) ...
+
tmat2x2< int, highp > int2x2
integer matrix with 2 x 2 components. (From GLM_GTX_compatibility extension)
+
tvec2< int, highp > int2
integer vector with 2 components. (From GLM_GTX_compatibility extension)
+
tvec3< double, highp > double3
double-precision floating-point vector with 3 components. (From GLM_GTX_compatibility extension) ...
+
GLM_FUNC_QUALIFIER tvec4< T, P > lerp(const tvec4< T, P > &x, const tvec4< T, P > &y, const tvec4< T, P > &a)
Returns the component-wise result of x * (1.0 - a) + y * a, i.e., the linear blend of x and y using v...
+
tmat3x3< int, highp > int3x3
integer matrix with 3 x 3 components. (From GLM_GTX_compatibility extension)
+
tmat3x3< double, highp > double3x3
double-precision floating-point matrix with 3 x 3 components. (From GLM_GTX_compatibility extension) ...
+
tmat2x3< bool, highp > bool2x3
boolean matrix with 2 x 3 components. (From GLM_GTX_compatibility extension)
+
tmat4x4< bool, highp > bool4x4
boolean matrix with 4 x 4 components. (From GLM_GTX_compatibility extension)
+
tmat4x3< bool, highp > bool4x3
boolean matrix with 4 x 3 components. (From GLM_GTX_compatibility extension)
+
tmat2x2< float, highp > float2x2
single-precision floating-point matrix with 2 x 2 components. (From GLM_GTX_compatibility extension) ...
+
GLM_FUNC_QUALIFIER tvec4< T, P > saturate(const tvec4< T, P > &x)
Returns clamp(x, 0, 1) for each component in x. (From GLM_GTX_compatibility)
+
tvec2< bool, highp > bool2
boolean type with 2 components. (From GLM_GTX_compatibility extension)
+
GLM_FUNC_DECL tvec4< bool, P > isfinite(const tvec4< T, P > &x)
Test whether or not a scalar or each vector component is a finite value. (From GLM_GTX_compatibility)...
+
tvec4< float, highp > float4
single-precision floating-point vector with 4 components. (From GLM_GTX_compatibility extension) ...
+
tmat4x4< float, highp > float4x4
single-precision floating-point matrix with 4 x 4 components. (From GLM_GTX_compatibility extension) ...
+
tmat4x2< float, highp > float4x2
single-precision floating-point matrix with 4 x 2 components. (From GLM_GTX_compatibility extension) ...
+
float float1
single-precision floating-point vector with 1 component. (From GLM_GTX_compatibility extension) ...
+
Definition: _noise.hpp:11
+
tmat3x2< float, highp > float3x2
single-precision floating-point matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) ...
+
tmat4x2< double, highp > double4x2
double-precision floating-point matrix with 4 x 2 components. (From GLM_GTX_compatibility extension) ...
+
tmat4x3< double, highp > double4x3
double-precision floating-point matrix with 4 x 3 components. (From GLM_GTX_compatibility extension) ...
+
double double1x1
double-precision floating-point matrix with 1 component. (From GLM_GTX_compatibility extension) ...
+
tmat4x2< int, highp > int4x2
integer matrix with 4 x 2 components. (From GLM_GTX_compatibility extension)
+
tvec4< int, highp > int4
integer vector with 4 components. (From GLM_GTX_compatibility extension)
+
tvec3< bool, highp > bool3
boolean type with 3 components. (From GLM_GTX_compatibility extension)
+
GLM_FUNC_DECL vecType< T, P > mix(vecType< T, P > const &x, vecType< T, P > const &y, vecType< U, P > const &a)
If genTypeU is a floating scalar or vector: Returns x * (1.0 - a) + y * a, i.e., the linear blend of ...
+
GLM_FUNC_DECL vecType< T, P > atan(vecType< T, P > const &y, vecType< T, P > const &x)
Arc tangent.
+
tmat3x2< int, highp > int3x2
integer matrix with 3 x 2 components. (From GLM_GTX_compatibility extension)
+
tmat3x2< double, highp > double3x2
double-precision floating-point matrix with 3 x 2 components. (From GLM_GTX_compatibility extension) ...
+
GLM_FUNC_QUALIFIER tvec4< T, P > atan2(const tvec4< T, P > &x, const tvec4< T, P > &y)
Arc tangent. Returns an angle whose tangent is y/x. The signs of x and y are used to determine what q...
+
tvec4< double, highp > double4
double-precision floating-point vector with 4 components. (From GLM_GTX_compatibility extension) ...
+
tmat4x2< bool, highp > bool4x2
boolean matrix with 4 x 2 components. (From GLM_GTX_compatibility extension)
+
tmat2x4< double, highp > double2x4
double-precision floating-point matrix with 2 x 4 components. (From GLM_GTX_compatibility extension) ...
+
tmat4x3< int, highp > int4x3
integer matrix with 4 x 3 components. (From GLM_GTX_compatibility extension)
+
tmat2x3< double, highp > double2x3
double-precision floating-point matrix with 2 x 3 components. (From GLM_GTX_compatibility extension) ...
+
tmat2x3< float, highp > float2x3
single-precision floating-point matrix with 2 x 3 components. (From GLM_GTX_compatibility extension) ...
+
tmat3x4< int, highp > int3x4
integer matrix with 3 x 4 components. (From GLM_GTX_compatibility extension)
+
tmat2x4< bool, highp > bool2x4
boolean matrix with 2 x 4 components. (From GLM_GTX_compatibility extension)
+
tmat4x4< int, highp > int4x4
integer matrix with 4 x 4 components. (From GLM_GTX_compatibility extension)
+
int int1
integer vector with 1 component. (From GLM_GTX_compatibility extension)
+
tvec2< float, highp > float2
single-precision floating-point vector with 2 components. (From GLM_GTX_compatibility extension) ...
+
tmat2x2< bool, highp > bool2x2
boolean matrix with 2 x 2 components. (From GLM_GTX_compatibility extension)
+
tvec4< bool, highp > bool4
boolean type with 4 components. (From GLM_GTX_compatibility extension)
+
tmat4x4< double, highp > double4x4
double-precision floating-point matrix with 4 x 4 components. (From GLM_GTX_compatibility extension) ...
+
bool bool1
boolean type with 1 component. (From GLM_GTX_compatibility extension)
+
tmat3x4< bool, highp > bool3x4
boolean matrix with 3 x 4 components. (From GLM_GTX_compatibility extension)
+
tmat3x2< bool, highp > bool3x2
boolean matrix with 3 x 2 components. (From GLM_GTX_compatibility extension)
+
tmat3x4< float, highp > float3x4
single-precision floating-point matrix with 3 x 4 components. (From GLM_GTX_compatibility extension) ...
+
tmat2x3< int, highp > int2x3
integer matrix with 2 x 3 components. (From GLM_GTX_compatibility extension)
+
tvec3< float, highp > float3
single-precision floating-point vector with 3 components. (From GLM_GTX_compatibility extension) ...
+
GLM_FUNC_DECL genType clamp(genType x, genType minVal, genType maxVal)
Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal an...
+
tvec3< int, highp > int3
integer vector with 3 components. (From GLM_GTX_compatibility extension)
+
float float1x1
single-precision floating-point matrix with 1 component. (From GLM_GTX_compatibility extension) ...
+
tvec2< double, highp > double2
double-precision floating-point vector with 2 components. (From GLM_GTX_compatibility extension) ...
+
bool bool1x1
boolean matrix with 1 x 1 component. (From GLM_GTX_compatibility extension)
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00017.html b/third_party/glm_test/doc/api/a00017.html new file mode 100644 index 0000000000000..aa96a11b81dc4 --- /dev/null +++ b/third_party/glm_test/doc/api/a00017.html @@ -0,0 +1,93 @@ + + + + + + +0.9.8: component_wise.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
component_wise.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType::value_type compAdd (genType const &v)
 
template<typename genType >
GLM_FUNC_DECL genType::value_type compMax (genType const &v)
 
template<typename genType >
GLM_FUNC_DECL genType::value_type compMin (genType const &v)
 
template<typename genType >
GLM_FUNC_DECL genType::value_type compMul (genType const &v)
 
template<typename floatType , typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< floatType, P > compNormalize (vecType< T, P > const &v)
 
template<typename T , typename floatType , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > compScale (vecType< floatType, P > const &v)
 
+

Detailed Description

+

GLM_GTX_component_wise

+
Date
2007-05-21 / 2011-06-07
+
Author
Christophe Riccio
+
See also
GLM Core (dependence)
+ +

Definition in file component_wise.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00017_source.html b/third_party/glm_test/doc/api/a00017_source.html new file mode 100644 index 0000000000000..de76ebb355e73 --- /dev/null +++ b/third_party/glm_test/doc/api/a00017_source.html @@ -0,0 +1,102 @@ + + + + + + +0.9.8: component_wise.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
component_wise.hpp
+
+
+Go to the documentation of this file.
1 
+
15 #pragma once
+
16 
+
17 // Dependencies
+
18 #include "../detail/setup.hpp"
+
19 #include "../detail/precision.hpp"
+
20 
+
21 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
22 # pragma message("GLM: GLM_GTX_component_wise extension included")
+
23 #endif
+
24 
+
25 namespace glm
+
26 {
+
29 
+
33  template <typename floatType, typename T, precision P, template <typename, precision> class vecType>
+
34  GLM_FUNC_DECL vecType<floatType, P> compNormalize(vecType<T, P> const & v);
+
35 
+
39  template <typename T, typename floatType, precision P, template <typename, precision> class vecType>
+
40  GLM_FUNC_DECL vecType<T, P> compScale(vecType<floatType, P> const & v);
+
41 
+
44  template <typename genType>
+
45  GLM_FUNC_DECL typename genType::value_type compAdd(genType const & v);
+
46 
+
49  template <typename genType>
+
50  GLM_FUNC_DECL typename genType::value_type compMul(genType const & v);
+
51 
+
54  template <typename genType>
+
55  GLM_FUNC_DECL typename genType::value_type compMin(genType const & v);
+
56 
+
59  template <typename genType>
+
60  GLM_FUNC_DECL typename genType::value_type compMax(genType const & v);
+
61 
+
63 }//namespace glm
+
64 
+
65 #include "component_wise.inl"
+
GLM_FUNC_DECL genType::value_type compAdd(genType const &v)
Add all vector components together.
+
GLM_FUNC_DECL vecType< T, P > compScale(vecType< floatType, P > const &v)
Convert a normalized float vector to an integer vector.
+
GLM_FUNC_DECL genType::value_type compMul(genType const &v)
Multiply all vector components together.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL vecType< floatType, P > compNormalize(vecType< T, P > const &v)
Convert an integer vector to a normalized float vector.
+
GLM_FUNC_DECL genType::value_type compMin(genType const &v)
Find the minimum value between single vector components.
+
GLM_FUNC_DECL genType::value_type compMax(genType const &v)
Find the maximum value between single vector components.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00018.html b/third_party/glm_test/doc/api/a00018.html new file mode 100644 index 0000000000000..76b2c5a621160 --- /dev/null +++ b/third_party/glm_test/doc/api/a00018.html @@ -0,0 +1,162 @@ + + + + + + +0.9.8: constants.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
constants.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType e ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType epsilon ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType euler ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType four_over_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType golden_ratio ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType half_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType ln_ln_two ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType ln_ten ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType ln_two ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType one ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType one_over_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType one_over_root_two ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType one_over_two_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType quarter_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType root_five ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType root_half_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType root_ln_four ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType root_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType root_three ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType root_two ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType root_two_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType third ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType three_over_two_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType two_over_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType two_over_root_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType two_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType two_thirds ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType zero ()
 
+

Detailed Description

+

GLM_GTC_constants

+
See also
GLM Core (dependence)
+
+gtc_half_float (dependence)
+ +

Definition in file constants.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00018_source.html b/third_party/glm_test/doc/api/a00018_source.html new file mode 100644 index 0000000000000..24684814c317d --- /dev/null +++ b/third_party/glm_test/doc/api/a00018_source.html @@ -0,0 +1,193 @@ + + + + + + +0.9.8: constants.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
constants.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependencies
+
17 #include "../detail/setup.hpp"
+
18 
+
19 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
20 # pragma message("GLM: GLM_GTC_constants extension included")
+
21 #endif
+
22 
+
23 namespace glm
+
24 {
+
27 
+
30  template <typename genType>
+
31  GLM_FUNC_DECL GLM_CONSTEXPR genType epsilon();
+
32 
+
35  template <typename genType>
+
36  GLM_FUNC_DECL GLM_CONSTEXPR genType zero();
+
37 
+
40  template <typename genType>
+
41  GLM_FUNC_DECL GLM_CONSTEXPR genType one();
+
42 
+
45  template <typename genType>
+
46  GLM_FUNC_DECL GLM_CONSTEXPR genType pi();
+
47 
+
50  template <typename genType>
+
51  GLM_FUNC_DECL GLM_CONSTEXPR genType two_pi();
+
52 
+
55  template <typename genType>
+
56  GLM_FUNC_DECL GLM_CONSTEXPR genType root_pi();
+
57 
+
60  template <typename genType>
+
61  GLM_FUNC_DECL GLM_CONSTEXPR genType half_pi();
+
62 
+
65  template <typename genType>
+
66  GLM_FUNC_DECL GLM_CONSTEXPR genType three_over_two_pi();
+
67 
+
70  template <typename genType>
+
71  GLM_FUNC_DECL GLM_CONSTEXPR genType quarter_pi();
+
72 
+
75  template <typename genType>
+
76  GLM_FUNC_DECL GLM_CONSTEXPR genType one_over_pi();
+
77 
+
80  template <typename genType>
+
81  GLM_FUNC_DECL GLM_CONSTEXPR genType one_over_two_pi();
+
82 
+
85  template <typename genType>
+
86  GLM_FUNC_DECL GLM_CONSTEXPR genType two_over_pi();
+
87 
+
90  template <typename genType>
+
91  GLM_FUNC_DECL GLM_CONSTEXPR genType four_over_pi();
+
92 
+
95  template <typename genType>
+
96  GLM_FUNC_DECL GLM_CONSTEXPR genType two_over_root_pi();
+
97 
+
100  template <typename genType>
+
101  GLM_FUNC_DECL GLM_CONSTEXPR genType one_over_root_two();
+
102 
+
105  template <typename genType>
+
106  GLM_FUNC_DECL GLM_CONSTEXPR genType root_half_pi();
+
107 
+
110  template <typename genType>
+
111  GLM_FUNC_DECL GLM_CONSTEXPR genType root_two_pi();
+
112 
+
115  template <typename genType>
+
116  GLM_FUNC_DECL GLM_CONSTEXPR genType root_ln_four();
+
117 
+
120  template <typename genType>
+
121  GLM_FUNC_DECL GLM_CONSTEXPR genType e();
+
122 
+
125  template <typename genType>
+
126  GLM_FUNC_DECL GLM_CONSTEXPR genType euler();
+
127 
+
130  template <typename genType>
+
131  GLM_FUNC_DECL GLM_CONSTEXPR genType root_two();
+
132 
+
135  template <typename genType>
+
136  GLM_FUNC_DECL GLM_CONSTEXPR genType root_three();
+
137 
+
140  template <typename genType>
+
141  GLM_FUNC_DECL GLM_CONSTEXPR genType root_five();
+
142 
+
145  template <typename genType>
+
146  GLM_FUNC_DECL GLM_CONSTEXPR genType ln_two();
+
147 
+
150  template <typename genType>
+
151  GLM_FUNC_DECL GLM_CONSTEXPR genType ln_ten();
+
152 
+
155  template <typename genType>
+
156  GLM_FUNC_DECL GLM_CONSTEXPR genType ln_ln_two();
+
157 
+
160  template <typename genType>
+
161  GLM_FUNC_DECL GLM_CONSTEXPR genType third();
+
162 
+
165  template <typename genType>
+
166  GLM_FUNC_DECL GLM_CONSTEXPR genType two_thirds();
+
167 
+
170  template <typename genType>
+
171  GLM_FUNC_DECL GLM_CONSTEXPR genType golden_ratio();
+
172 
+
174 } //namespace glm
+
175 
+
176 #include "constants.inl"
+
GLM_FUNC_DECL GLM_CONSTEXPR genType root_two()
Return sqrt(2).
+
GLM_FUNC_DECL GLM_CONSTEXPR genType root_pi()
Return square root of pi.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType zero()
Return 0.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType one()
Return 1.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType euler()
Return Euler's constant.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType epsilon()
Return the epsilon constant for floating point types.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType e()
Return e constant.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType two_over_root_pi()
Return 2 / sqrt(pi).
+
GLM_FUNC_DECL GLM_CONSTEXPR genType root_three()
Return sqrt(3).
+
GLM_FUNC_DECL GLM_CONSTEXPR genType ln_ten()
Return ln(10).
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL GLM_CONSTEXPR genType third()
Return 1 / 3.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType ln_two()
Return ln(2).
+
GLM_FUNC_DECL GLM_CONSTEXPR genType one_over_root_two()
Return 1 / sqrt(2).
+
GLM_FUNC_DECL GLM_CONSTEXPR genType ln_ln_two()
Return ln(ln(2)).
+
GLM_FUNC_DECL GLM_CONSTEXPR genType three_over_two_pi()
Return pi / 2 * 3.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType half_pi()
Return pi / 2.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType one_over_two_pi()
Return 1 / (pi * 2).
+
GLM_FUNC_DECL GLM_CONSTEXPR genType root_five()
Return sqrt(5).
+
GLM_FUNC_DECL GLM_CONSTEXPR genType root_half_pi()
Return sqrt(pi / 2).
+
GLM_FUNC_DECL GLM_CONSTEXPR genType root_two_pi()
Return sqrt(2 * pi).
+
GLM_FUNC_DECL GLM_CONSTEXPR genType four_over_pi()
Return 4 / pi.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType root_ln_four()
Return sqrt(ln(4)).
+
GLM_FUNC_DECL GLM_CONSTEXPR genType one_over_pi()
Return 1 / pi.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType two_thirds()
Return 2 / 3.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType quarter_pi()
Return pi / 4.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType pi()
Return the pi constant.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType two_over_pi()
Return 2 / pi.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType golden_ratio()
Return the golden ratio constant.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType two_pi()
Return pi * 2.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00019.html b/third_party/glm_test/doc/api/a00019.html new file mode 100644 index 0000000000000..07d7a1b2c0121 --- /dev/null +++ b/third_party/glm_test/doc/api/a00019.html @@ -0,0 +1,129 @@ + + + + + + +0.9.8: dual_quaternion.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
dual_quaternion.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef highp_ddualquat ddualquat
 
typedef highp_fdualquat dualquat
 
typedef highp_fdualquat fdualquat
 
typedef tdualquat< double, highp > highp_ddualquat
 
typedef tdualquat< float, highp > highp_dualquat
 
typedef tdualquat< float, highp > highp_fdualquat
 
typedef tdualquat< double, lowp > lowp_ddualquat
 
typedef tdualquat< float, lowp > lowp_dualquat
 
typedef tdualquat< float, lowp > lowp_fdualquat
 
typedef tdualquat< double, mediump > mediump_ddualquat
 
typedef tdualquat< float, mediump > mediump_dualquat
 
typedef tdualquat< float, mediump > mediump_fdualquat
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tdualquat< T, P > dualquat_cast (tmat2x4< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tdualquat< T, P > dualquat_cast (tmat3x4< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tdualquat< T, P > inverse (tdualquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL tdualquat< T, P > lerp (tdualquat< T, P > const &x, tdualquat< T, P > const &y, T const &a)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat2x4< T, P > mat2x4_cast (tdualquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x4< T, P > mat3x4_cast (tdualquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tdualquat< T, P > normalize (tdualquat< T, P > const &q)
 
+

Detailed Description

+

GLM_GTX_dual_quaternion

+
Author
Maksim Vorobiev (msome.nosp@m.one@.nosp@m.gmail.nosp@m..com)
+
See also
GLM Core (dependence)
+
+gtc_half_float (dependence)
+
+GLM_GTC_constants (dependence)
+
+GLM_GTC_quaternion (dependence)
+ +

Definition in file dual_quaternion.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00019_source.html b/third_party/glm_test/doc/api/a00019_source.html new file mode 100644 index 0000000000000..9e037522ac110 --- /dev/null +++ b/third_party/glm_test/doc/api/a00019_source.html @@ -0,0 +1,271 @@ + + + + + + +0.9.8: dual_quaternion.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
dual_quaternion.hpp
+
+
+Go to the documentation of this file.
1 
+
17 #pragma once
+
18 
+
19 // Dependency:
+
20 #include "../glm.hpp"
+
21 #include "../gtc/constants.hpp"
+
22 #include "../gtc/quaternion.hpp"
+
23 
+
24 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
25 # pragma message("GLM: GLM_GTX_dual_quaternion extension included")
+
26 #endif
+
27 
+
28 namespace glm
+
29 {
+
32 
+
33  template <typename T, precision P = defaultp>
+
34  struct tdualquat
+
35  {
+
36  // -- Implementation detail --
+
37 
+
38  typedef T value_type;
+
39  typedef glm::tquat<T, P> part_type;
+
40 
+
41  // -- Data --
+
42 
+
43  glm::tquat<T, P> real, dual;
+
44 
+
45  // -- Component accesses --
+
46 
+
47  typedef length_t length_type;
+
49  GLM_FUNC_DECL GLM_CONSTEXPR length_type length() const;
+
50 
+
51  GLM_FUNC_DECL part_type & operator[](length_type i);
+
52  GLM_FUNC_DECL part_type const & operator[](length_type i) const;
+
53 
+
54  // -- Implicit basic constructors --
+
55 
+
56  GLM_FUNC_DECL GLM_CONSTEXPR tdualquat() GLM_DEFAULT_CTOR;
+
57  GLM_FUNC_DECL GLM_CONSTEXPR tdualquat(tdualquat<T, P> const & d) GLM_DEFAULT;
+
58  template <precision Q>
+
59  GLM_FUNC_DECL GLM_CONSTEXPR tdualquat(tdualquat<T, Q> const & d);
+
60 
+
61  // -- Explicit basic constructors --
+
62 
+
63  GLM_FUNC_DECL GLM_CONSTEXPR_CTOR explicit tdualquat(ctor);
+
64  GLM_FUNC_DECL GLM_CONSTEXPR tdualquat(tquat<T, P> const & real);
+
65  GLM_FUNC_DECL GLM_CONSTEXPR tdualquat(tquat<T, P> const & orientation, tvec3<T, P> const & translation);
+
66  GLM_FUNC_DECL GLM_CONSTEXPR tdualquat(tquat<T, P> const & real, tquat<T, P> const & dual);
+
67 
+
68  // -- Conversion constructors --
+
69 
+
70  template <typename U, precision Q>
+
71  GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT tdualquat(tdualquat<U, Q> const & q);
+
72 
+
73  GLM_FUNC_DECL GLM_EXPLICIT tdualquat(tmat2x4<T, P> const & holder_mat);
+
74  GLM_FUNC_DECL GLM_EXPLICIT tdualquat(tmat3x4<T, P> const & aug_mat);
+
75 
+
76  // -- Unary arithmetic operators --
+
77 
+
78  GLM_FUNC_DECL tdualquat<T, P> & operator=(tdualquat<T, P> const & m) GLM_DEFAULT;
+
79 
+
80  template <typename U>
+
81  GLM_FUNC_DECL tdualquat<T, P> & operator=(tdualquat<U, P> const & m);
+
82  template <typename U>
+
83  GLM_FUNC_DECL tdualquat<T, P> & operator*=(U s);
+
84  template <typename U>
+
85  GLM_FUNC_DECL tdualquat<T, P> & operator/=(U s);
+
86  };
+
87 
+
88  // -- Unary bit operators --
+
89 
+
90  template <typename T, precision P>
+
91  GLM_FUNC_DECL tdualquat<T, P> operator+(tdualquat<T, P> const & q);
+
92 
+
93  template <typename T, precision P>
+
94  GLM_FUNC_DECL tdualquat<T, P> operator-(tdualquat<T, P> const & q);
+
95 
+
96  // -- Binary operators --
+
97 
+
98  template <typename T, precision P>
+
99  GLM_FUNC_DECL tdualquat<T, P> operator+(tdualquat<T, P> const & q, tdualquat<T, P> const & p);
+
100 
+
101  template <typename T, precision P>
+
102  GLM_FUNC_DECL tdualquat<T, P> operator*(tdualquat<T, P> const & q, tdualquat<T, P> const & p);
+
103 
+
104  template <typename T, precision P>
+
105  GLM_FUNC_DECL tvec3<T, P> operator*(tdualquat<T, P> const & q, tvec3<T, P> const & v);
+
106 
+
107  template <typename T, precision P>
+
108  GLM_FUNC_DECL tvec3<T, P> operator*(tvec3<T, P> const & v, tdualquat<T, P> const & q);
+
109 
+
110  template <typename T, precision P>
+
111  GLM_FUNC_DECL tvec4<T, P> operator*(tdualquat<T, P> const & q, tvec4<T, P> const & v);
+
112 
+
113  template <typename T, precision P>
+
114  GLM_FUNC_DECL tvec4<T, P> operator*(tvec4<T, P> const & v, tdualquat<T, P> const & q);
+
115 
+
116  template <typename T, precision P>
+
117  GLM_FUNC_DECL tdualquat<T, P> operator*(tdualquat<T, P> const & q, T const & s);
+
118 
+
119  template <typename T, precision P>
+
120  GLM_FUNC_DECL tdualquat<T, P> operator*(T const & s, tdualquat<T, P> const & q);
+
121 
+
122  template <typename T, precision P>
+
123  GLM_FUNC_DECL tdualquat<T, P> operator/(tdualquat<T, P> const & q, T const & s);
+
124 
+
125  // -- Boolean operators --
+
126 
+
127  template <typename T, precision P>
+
128  GLM_FUNC_DECL bool operator==(tdualquat<T, P> const & q1, tdualquat<T, P> const & q2);
+
129 
+
130  template <typename T, precision P>
+
131  GLM_FUNC_DECL bool operator!=(tdualquat<T, P> const & q1, tdualquat<T, P> const & q2);
+
132 
+
136  template <typename T, precision P>
+
137  GLM_FUNC_DECL tdualquat<T, P> normalize(tdualquat<T, P> const & q);
+
138 
+
142  template <typename T, precision P>
+
143  GLM_FUNC_DECL tdualquat<T, P> lerp(tdualquat<T, P> const & x, tdualquat<T, P> const & y, T const & a);
+
144 
+
148  template <typename T, precision P>
+
149  GLM_FUNC_DECL tdualquat<T, P> inverse(tdualquat<T, P> const & q);
+
150 
+
154  template <typename T, precision P>
+
155  GLM_FUNC_DECL tmat2x4<T, P> mat2x4_cast(tdualquat<T, P> const & x);
+
156 
+
160  template <typename T, precision P>
+
161  GLM_FUNC_DECL tmat3x4<T, P> mat3x4_cast(tdualquat<T, P> const & x);
+
162 
+
166  template <typename T, precision P>
+
167  GLM_FUNC_DECL tdualquat<T, P> dualquat_cast(tmat2x4<T, P> const & x);
+
168 
+
172  template <typename T, precision P>
+
173  GLM_FUNC_DECL tdualquat<T, P> dualquat_cast(tmat3x4<T, P> const & x);
+
174 
+
175 
+
179  typedef tdualquat<float, lowp> lowp_dualquat;
+
180 
+
184  typedef tdualquat<float, mediump> mediump_dualquat;
+
185 
+
189  typedef tdualquat<float, highp> highp_dualquat;
+
190 
+
191 
+
195  typedef tdualquat<float, lowp> lowp_fdualquat;
+
196 
+
200  typedef tdualquat<float, mediump> mediump_fdualquat;
+
201 
+
205  typedef tdualquat<float, highp> highp_fdualquat;
+
206 
+
207 
+
211  typedef tdualquat<double, lowp> lowp_ddualquat;
+
212 
+
216  typedef tdualquat<double, mediump> mediump_ddualquat;
+
217 
+
221  typedef tdualquat<double, highp> highp_ddualquat;
+
222 
+
223 
+
224 #if(!defined(GLM_PRECISION_HIGHP_FLOAT) && !defined(GLM_PRECISION_MEDIUMP_FLOAT) && !defined(GLM_PRECISION_LOWP_FLOAT))
+
225  typedef highp_fdualquat dualquat;
+
229 
+
233  typedef highp_fdualquat fdualquat;
+
234 #elif(defined(GLM_PRECISION_HIGHP_FLOAT) && !defined(GLM_PRECISION_MEDIUMP_FLOAT) && !defined(GLM_PRECISION_LOWP_FLOAT))
+
235  typedef highp_fdualquat dualquat;
+
236  typedef highp_fdualquat fdualquat;
+
237 #elif(!defined(GLM_PRECISION_HIGHP_FLOAT) && defined(GLM_PRECISION_MEDIUMP_FLOAT) && !defined(GLM_PRECISION_LOWP_FLOAT))
+
238  typedef mediump_fdualquat dualquat;
+
239  typedef mediump_fdualquat fdualquat;
+
240 #elif(!defined(GLM_PRECISION_HIGHP_FLOAT) && !defined(GLM_PRECISION_MEDIUMP_FLOAT) && defined(GLM_PRECISION_LOWP_FLOAT))
+
241  typedef lowp_fdualquat dualquat;
+
242  typedef lowp_fdualquat fdualquat;
+
243 #else
+
244 # error "GLM error: multiple default precision requested for single-precision floating-point types"
+
245 #endif
+
246 
+
247 
+
248 #if(!defined(GLM_PRECISION_HIGHP_DOUBLE) && !defined(GLM_PRECISION_MEDIUMP_DOUBLE) && !defined(GLM_PRECISION_LOWP_DOUBLE))
+
249  typedef highp_ddualquat ddualquat;
+
253 #elif(defined(GLM_PRECISION_HIGHP_DOUBLE) && !defined(GLM_PRECISION_MEDIUMP_DOUBLE) && !defined(GLM_PRECISION_LOWP_DOUBLE))
+
254  typedef highp_ddualquat ddualquat;
+
255 #elif(!defined(GLM_PRECISION_HIGHP_DOUBLE) && defined(GLM_PRECISION_MEDIUMP_DOUBLE) && !defined(GLM_PRECISION_LOWP_DOUBLE))
+
256  typedef mediump_ddualquat ddualquat;
+
257 #elif(!defined(GLM_PRECISION_HIGHP_DOUBLE) && !defined(GLM_PRECISION_MEDIUMP_DOUBLE) && defined(GLM_PRECISION_LOWP_DOUBLE))
+
258  typedef lowp_ddualquat ddualquat;
+
259 #else
+
260 # error "GLM error: Multiple default precision requested for double-precision floating-point types"
+
261 #endif
+
262 
+
264 } //namespace glm
+
265 
+
266 #include "dual_quaternion.inl"
+
GLM_FUNC_DECL tmat4x4< T, P > orientation(tvec3< T, P > const &Normal, tvec3< T, P > const &Up)
Build a rotation matrix from a normal and a up vector.
+
tdualquat< float, lowp > lowp_fdualquat
Dual-quaternion of low single-precision floating-point numbers.
+
GLM_FUNC_DECL tdualquat< T, P > dualquat_cast(tmat3x4< T, P > const &x)
Converts a 3 * 4 matrix (augmented matrix rotation + translation) to a quaternion.
+
highp_fdualquat fdualquat
Dual-quaternion of single-precision floating-point numbers.
+
tdualquat< double, mediump > mediump_ddualquat
Dual-quaternion of medium double-precision floating-point numbers.
+
GLM_FUNC_DECL tdualquat< T, P > normalize(tdualquat< T, P > const &q)
Returns the normalized quaternion.
+
tdualquat< float, mediump > mediump_fdualquat
Dual-quaternion of medium single-precision floating-point numbers.
+
Definition: _noise.hpp:11
+
tdualquat< double, lowp > lowp_ddualquat
Dual-quaternion of low double-precision floating-point numbers.
+
highp_ddualquat ddualquat
Dual-quaternion of default double-precision floating-point numbers.
+
highp_fdualquat dualquat
Dual-quaternion of floating-point numbers.
+
tdualquat< float, highp > highp_fdualquat
Dual-quaternion of high single-precision floating-point numbers.
+
tdualquat< float, mediump > mediump_dualquat
Dual-quaternion of medium single-precision floating-point numbers.
+
GLM_FUNC_DECL tdualquat< T, P > lerp(tdualquat< T, P > const &x, tdualquat< T, P > const &y, T const &a)
Returns the linear interpolation of two dual quaternion.
+
GLM_FUNC_DECL tmat3x4< T, P > mat3x4_cast(tdualquat< T, P > const &x)
Converts a quaternion to a 3 * 4 matrix.
+
tdualquat< float, highp > highp_dualquat
Dual-quaternion of high single-precision floating-point numbers.
+
GLM_FUNC_DECL tmat2x4< T, P > mat2x4_cast(tdualquat< T, P > const &x)
Converts a quaternion to a 2 * 4 matrix.
+
tdualquat< float, lowp > lowp_dualquat
Dual-quaternion of low single-precision floating-point numbers.
+
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
GLM_FUNC_DECL tdualquat< T, P > inverse(tdualquat< T, P > const &q)
Returns the q inverse.
+
tdualquat< double, highp > highp_ddualquat
Dual-quaternion of high double-precision floating-point numbers.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00020.html b/third_party/glm_test/doc/api/a00020.html new file mode 100644 index 0000000000000..351c7701f3c37 --- /dev/null +++ b/third_party/glm_test/doc/api/a00020.html @@ -0,0 +1,89 @@ + + + + + + +0.9.8: epsilon.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
epsilon.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > epsilonEqual (vecType< T, P > const &x, vecType< T, P > const &y, T const &epsilon)
 
template<typename genType >
GLM_FUNC_DECL bool epsilonEqual (genType const &x, genType const &y, genType const &epsilon)
 
template<typename genType >
GLM_FUNC_DECL genType::boolType epsilonNotEqual (genType const &x, genType const &y, typename genType::value_type const &epsilon)
 
template<typename genType >
GLM_FUNC_DECL bool epsilonNotEqual (genType const &x, genType const &y, genType const &epsilon)
 
+

Detailed Description

+

GLM_GTC_epsilon

+
See also
GLM Core (dependence)
+
+gtc_half_float (dependence)
+
+GLM_GTC_quaternion (dependence)
+ +

Definition in file epsilon.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00020_source.html b/third_party/glm_test/doc/api/a00020_source.html new file mode 100644 index 0000000000000..9444656d692f4 --- /dev/null +++ b/third_party/glm_test/doc/api/a00020_source.html @@ -0,0 +1,105 @@ + + + + + + +0.9.8: epsilon.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
epsilon.hpp
+
+
+Go to the documentation of this file.
1 
+
15 #pragma once
+
16 
+
17 // Dependencies
+
18 #include "../detail/setup.hpp"
+
19 #include "../detail/precision.hpp"
+
20 
+
21 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
22 # pragma message("GLM: GLM_GTC_epsilon extension included")
+
23 #endif
+
24 
+
25 namespace glm
+
26 {
+
29 
+
34  template <typename T, precision P, template <typename, precision> class vecType>
+
35  GLM_FUNC_DECL vecType<bool, P> epsilonEqual(
+
36  vecType<T, P> const & x,
+
37  vecType<T, P> const & y,
+
38  T const & epsilon);
+
39 
+
44  template <typename genType>
+
45  GLM_FUNC_DECL bool epsilonEqual(
+
46  genType const & x,
+
47  genType const & y,
+
48  genType const & epsilon);
+
49 
+
54  template <typename genType>
+
55  GLM_FUNC_DECL typename genType::boolType epsilonNotEqual(
+
56  genType const & x,
+
57  genType const & y,
+
58  typename genType::value_type const & epsilon);
+
59 
+
64  template <typename genType>
+
65  GLM_FUNC_DECL bool epsilonNotEqual(
+
66  genType const & x,
+
67  genType const & y,
+
68  genType const & epsilon);
+
69 
+
71 }//namespace glm
+
72 
+
73 #include "epsilon.inl"
+
GLM_FUNC_DECL bool epsilonNotEqual(genType const &x, genType const &y, genType const &epsilon)
Returns the component-wise comparison of |x - y| >= epsilon.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType epsilon()
Return the epsilon constant for floating point types.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL bool epsilonEqual(genType const &x, genType const &y, genType const &epsilon)
Returns the component-wise comparison of |x - y| < epsilon.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00021.html b/third_party/glm_test/doc/api/a00021.html new file mode 100644 index 0000000000000..cc8303bec6441 --- /dev/null +++ b/third_party/glm_test/doc/api/a00021.html @@ -0,0 +1,126 @@ + + + + + + +0.9.8: euler_angles.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
euler_angles.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleX (T const &angleX)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleXY (T const &angleX, T const &angleY)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleXYZ (T const &t1, T const &t2, T const &t3)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleXZ (T const &angleX, T const &angleZ)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleY (T const &angleY)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleYX (T const &angleY, T const &angleX)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleYXZ (T const &yaw, T const &pitch, T const &roll)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleYZ (T const &angleY, T const &angleZ)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleZ (T const &angleZ)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleZX (T const &angle, T const &angleX)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleZY (T const &angleZ, T const &angleY)
 
template<typename T >
GLM_FUNC_DECL void extractEulerAngleXYZ (tmat4x4< T, defaultp > const &M, T &t1, T &t2, T &t3)
 
template<typename T >
GLM_FUNC_DECL tmat2x2< T, defaultp > orientate2 (T const &angle)
 
template<typename T >
GLM_FUNC_DECL tmat3x3< T, defaultp > orientate3 (T const &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > orientate3 (tvec3< T, P > const &angles)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > orientate4 (tvec3< T, P > const &angles)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > yawPitchRoll (T const &yaw, T const &pitch, T const &roll)
 
+

Detailed Description

+

GLM_GTX_euler_angles

+
See also
GLM Core (dependence)
+
+gtc_half_float (dependence)
+ +

Definition in file euler_angles.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00021_source.html b/third_party/glm_test/doc/api/a00021_source.html new file mode 100644 index 0000000000000..8436efb3919ae --- /dev/null +++ b/third_party/glm_test/doc/api/a00021_source.html @@ -0,0 +1,175 @@ + + + + + + +0.9.8: euler_angles.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
euler_angles.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "../glm.hpp"
+
18 
+
19 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
20 # pragma message("GLM: GLM_GTX_euler_angles extension included")
+
21 #endif
+
22 
+
23 namespace glm
+
24 {
+
27 
+
30  template <typename T>
+
31  GLM_FUNC_DECL tmat4x4<T, defaultp> eulerAngleX(
+
32  T const & angleX);
+
33 
+
36  template <typename T>
+
37  GLM_FUNC_DECL tmat4x4<T, defaultp> eulerAngleY(
+
38  T const & angleY);
+
39 
+
42  template <typename T>
+
43  GLM_FUNC_DECL tmat4x4<T, defaultp> eulerAngleZ(
+
44  T const & angleZ);
+
45 
+
48  template <typename T>
+
49  GLM_FUNC_DECL tmat4x4<T, defaultp> eulerAngleXY(
+
50  T const & angleX,
+
51  T const & angleY);
+
52 
+
55  template <typename T>
+
56  GLM_FUNC_DECL tmat4x4<T, defaultp> eulerAngleYX(
+
57  T const & angleY,
+
58  T const & angleX);
+
59 
+
62  template <typename T>
+
63  GLM_FUNC_DECL tmat4x4<T, defaultp> eulerAngleXZ(
+
64  T const & angleX,
+
65  T const & angleZ);
+
66 
+
69  template <typename T>
+
70  GLM_FUNC_DECL tmat4x4<T, defaultp> eulerAngleZX(
+
71  T const & angle,
+
72  T const & angleX);
+
73 
+
76  template <typename T>
+
77  GLM_FUNC_DECL tmat4x4<T, defaultp> eulerAngleYZ(
+
78  T const & angleY,
+
79  T const & angleZ);
+
80 
+
83  template <typename T>
+
84  GLM_FUNC_DECL tmat4x4<T, defaultp> eulerAngleZY(
+
85  T const & angleZ,
+
86  T const & angleY);
+
87 
+
90  template <typename T>
+
91  GLM_FUNC_DECL tmat4x4<T, defaultp> eulerAngleXYZ(
+
92  T const & t1,
+
93  T const & t2,
+
94  T const & t3);
+
95 
+
98  template <typename T>
+
99  GLM_FUNC_DECL tmat4x4<T, defaultp> eulerAngleYXZ(
+
100  T const & yaw,
+
101  T const & pitch,
+
102  T const & roll);
+
103 
+
106  template <typename T>
+
107  GLM_FUNC_DECL tmat4x4<T, defaultp> yawPitchRoll(
+
108  T const & yaw,
+
109  T const & pitch,
+
110  T const & roll);
+
111 
+
114  template <typename T>
+
115  GLM_FUNC_DECL tmat2x2<T, defaultp> orientate2(T const & angle);
+
116 
+
119  template <typename T>
+
120  GLM_FUNC_DECL tmat3x3<T, defaultp> orientate3(T const & angle);
+
121 
+
124  template <typename T, precision P>
+
125  GLM_FUNC_DECL tmat3x3<T, P> orientate3(tvec3<T, P> const & angles);
+
126 
+
129  template <typename T, precision P>
+
130  GLM_FUNC_DECL tmat4x4<T, P> orientate4(tvec3<T, P> const & angles);
+
131 
+
134  template <typename T>
+
135  GLM_FUNC_DECL void extractEulerAngleXYZ(tmat4x4<T, defaultp> const & M,
+
136  T & t1,
+
137  T & t2,
+
138  T & t3);
+
139 
+
141 }//namespace glm
+
142 
+
143 #include "euler_angles.inl"
+
GLM_FUNC_DECL T roll(tquat< T, P > const &x)
Returns roll value of euler angles expressed in radians.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleX(T const &angleX)
Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle X.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleXZ(T const &angleX, T const &angleZ)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Z).
+
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleYZ(T const &angleY, T const &angleZ)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * Z).
+
GLM_FUNC_DECL T pitch(tquat< T, P > const &x)
Returns pitch value of euler angles expressed in radians.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > yawPitchRoll(T const &yaw, T const &pitch, T const &roll)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z).
+
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleXYZ(T const &t1, T const &t2, T const &t3)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Y * Z).
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleYXZ(T const &yaw, T const &pitch, T const &roll)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z).
+
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleY(T const &angleY)
Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle Y.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleZY(T const &angleZ, T const &angleY)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Z * Y).
+
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleZX(T const &angle, T const &angleX)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Z * X).
+
GLM_FUNC_DECL tmat4x4< T, P > orientate4(tvec3< T, P > const &angles)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z).
+
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleZ(T const &angleZ)
Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle Z.
+
GLM_FUNC_DECL T angle(tquat< T, P > const &x)
Returns the quaternion rotation angle.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleYX(T const &angleY, T const &angleX)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X).
+
GLM_FUNC_DECL tmat3x3< T, P > orientate3(tvec3< T, P > const &angles)
Creates a 3D 3 * 3 rotation matrix from euler angles (Y * X * Z).
+
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleXY(T const &angleX, T const &angleY)
Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Y).
+
GLM_FUNC_DECL void extractEulerAngleXYZ(tmat4x4< T, defaultp > const &M, T &t1, T &t2, T &t3)
Extracts the (X * Y * Z) Euler angles from the rotation matrix M.
+
GLM_FUNC_DECL T yaw(tquat< T, P > const &x)
Returns yaw value of euler angles expressed in radians.
+
GLM_FUNC_DECL tmat2x2< T, defaultp > orientate2(T const &angle)
Creates a 2D 2 * 2 rotation matrix from an euler angle.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00022.html b/third_party/glm_test/doc/api/a00022.html new file mode 100644 index 0000000000000..1a875f06e1ce1 --- /dev/null +++ b/third_party/glm_test/doc/api/a00022.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: exponential.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
exponential.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file exponential.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00022_source.html b/third_party/glm_test/doc/api/a00022_source.html new file mode 100644 index 0000000000000..ecad9604b8b6f --- /dev/null +++ b/third_party/glm_test/doc/api/a00022_source.html @@ -0,0 +1,65 @@ + + + + + + +0.9.8: exponential.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
exponential.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+ + +
+ + + + diff --git a/third_party/glm_test/doc/api/a00023.html b/third_party/glm_test/doc/api/a00023.html new file mode 100644 index 0000000000000..d873328ef5886 --- /dev/null +++ b/third_party/glm_test/doc/api/a00023.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: ext.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
ext.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core (Dependence)

+ +

Definition in file ext.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00023_source.html b/third_party/glm_test/doc/api/a00023_source.html new file mode 100644 index 0000000000000..66382193fc79a --- /dev/null +++ b/third_party/glm_test/doc/api/a00023_source.html @@ -0,0 +1,219 @@ + + + + + + +0.9.8: ext.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
ext.hpp
+
+
+Go to the documentation of this file.
1 
+
28 #pragma once
+
29 
+
30 #include "glm.hpp"
+
31 
+
32 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_MESSAGE_EXT_INCLUDED_DISPLAYED)
+
33 # define GLM_MESSAGE_EXT_INCLUDED_DISPLAYED
+
34 # pragma message("GLM: All extensions included (not recommanded)")
+
35 #endif//GLM_MESSAGES
+
36 
+
37 #include "./gtc/bitfield.hpp"
+
38 #include "./gtc/color_space.hpp"
+
39 #include "./gtc/constants.hpp"
+
40 #include "./gtc/epsilon.hpp"
+
41 #include "./gtc/functions.hpp"
+
42 #include "./gtc/integer.hpp"
+
43 #include "./gtc/matrix_access.hpp"
+
44 #include "./gtc/matrix_integer.hpp"
+
45 #include "./gtc/matrix_inverse.hpp"
+ +
47 #include "./gtc/noise.hpp"
+
48 #include "./gtc/packing.hpp"
+
49 #include "./gtc/quaternion.hpp"
+
50 #include "./gtc/random.hpp"
+
51 #include "./gtc/reciprocal.hpp"
+
52 #include "./gtc/round.hpp"
+
53 //#include "./gtc/type_aligned.hpp"
+
54 #include "./gtc/type_precision.hpp"
+
55 #include "./gtc/type_ptr.hpp"
+
56 #include "./gtc/ulp.hpp"
+
57 #include "./gtc/vec1.hpp"
+
58 #if GLM_HAS_ALIGNED_TYPE
+
59 # include "./gtc/type_aligned.hpp"
+
60 #endif
+
61 
+ +
63 #include "./gtx/bit.hpp"
+
64 #include "./gtx/closest_point.hpp"
+
65 #include "./gtx/color_space.hpp"
+ +
67 #include "./gtx/compatibility.hpp"
+
68 #include "./gtx/component_wise.hpp"
+ +
70 #include "./gtx/euler_angles.hpp"
+
71 #include "./gtx/extend.hpp"
+ + + + +
76 #include "./gtx/gradient_paint.hpp"
+ +
78 #include "./gtx/integer.hpp"
+
79 #include "./gtx/intersect.hpp"
+
80 #include "./gtx/log_base.hpp"
+ + + + +
85 #include "./gtx/matrix_query.hpp"
+
86 #include "./gtx/mixed_product.hpp"
+
87 #include "./gtx/norm.hpp"
+
88 #include "./gtx/normal.hpp"
+
89 #include "./gtx/normalize_dot.hpp"
+ +
91 #include "./gtx/optimum_pow.hpp"
+
92 #include "./gtx/orthonormalize.hpp"
+
93 #include "./gtx/perpendicular.hpp"
+ +
95 #include "./gtx/projection.hpp"
+
96 #include "./gtx/quaternion.hpp"
+
97 #include "./gtx/raw_data.hpp"
+
98 #include "./gtx/rotate_vector.hpp"
+
99 #include "./gtx/spline.hpp"
+
100 #include "./gtx/std_based_type.hpp"
+
101 #if !(GLM_COMPILER & GLM_COMPILER_CUDA)
+
102 # include "./gtx/string_cast.hpp"
+
103 #endif
+
104 #include "./gtx/transform.hpp"
+
105 #include "./gtx/transform2.hpp"
+
106 #include "./gtx/vector_angle.hpp"
+
107 #include "./gtx/vector_query.hpp"
+
108 #include "./gtx/wrap.hpp"
+
109 
+
110 #if GLM_HAS_TEMPLATE_ALIASES
+ +
112 #endif
+
113 
+
114 #if GLM_HAS_RANGE_FOR
+
115 # include "./gtx/range.hpp"
+
116 #endif
+
GLM_GTX_extend
+
GLM_GTC_type_precision
+
GLM_GTX_closest_point
+
GLM_GTX_matrix_operation
+
GLM_GTX_raw_data
+
GLM_GTX_fast_square_root
+
GLM_GTC_integer
+
GLM_GTX_handed_coordinate_space
+
GLM_GTX_std_based_type
+
GLM_GTX_quaternion
+
GLM_GTX_normalize_dot
+
GLM_GTX_intersect
+
GLM_GTC_matrix_integer
+
GLM_GTX_matrix_cross_product
+
GLM_GTX_euler_angles
+
GLM_GTX_orthonormalize
+
GTX Extensions (Experimental)
+
GLM_GTX_matrix_major_storage
+
GLM_GTX_polar_coordinates
+
GLM_GTC_constants
+
GLM_GTC_matrix_transform
+
GLM_GTX_gradient_paint
+
GLM_GTX_transform2
+
GLM_GTC_quaternion
+
GLM_GTX_normal
+
GLM_GTC_bitfield
+
GLM_GTX_vector_query
+
GLM_GTX_range
+
GLM_GTC_matrix_access
+
GLM_GTX_fast_exponential
+
GLM_GTX_color_space
+
GLM_GTC_round
+
GLM_GTX_perpendicular
+
GLM_GTX_component_wise
+
GLM_GTX_transform
+
GLM_GTC_ulp
+
GLM_GTC_epsilon
+
GLM_GTX_optimum_pow
+
GLM_GTX_log_base
+
GLM_GTC_matrix_inverse
+
GLM_GTC_functions
+
GLM_GTX_vector_angle
+
gtx_extended_min_max
+
GLM_GTC_type_ptr
+
GLM_GTX_color_space_YCoCg
+
GLM Core
+
GLM_GTC_color_space
+
GLM_GTX_wrap
+
GLM_GTX_matrix_query
+
GLM_GTX_projection
+
GLM_GTX_norm
+
GLM_GTX_integer
+
GLM_GTX_mixed_producte
+
GLM_GTX_bit
+
GLM_GTC_vec1
+
GLM_GTC_type_aligned
+
GLM_GTC_random
+
GLM_GTX_number_precision
+
GLM_GTX_rotate_vector
+
GLM_GTX_matrix_interpolation
+
GLM_GTC_reciprocal
+
GLM_GTX_fast_trigonometry
+
GLM_GTC_packing
+
GLM_GTX_compatibility
+
GLM_GTX_string_cast
+
GLM_GTX_spline
+
GLM_GTC_noise
+
GLM_GTX_dual_quaternion
+
GLM_GTX_associated_min_max
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00024.html b/third_party/glm_test/doc/api/a00024.html new file mode 100644 index 0000000000000..a06b62989ac63 --- /dev/null +++ b/third_party/glm_test/doc/api/a00024.html @@ -0,0 +1,76 @@ + + + + + + +0.9.8: extend.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
extend.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType extend (genType const &Origin, genType const &Source, typename genType::value_type const Length)
 
+

Detailed Description

+

GLM_GTX_extend

+
See also
GLM Core (dependence)
+ +

Definition in file extend.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00024_source.html b/third_party/glm_test/doc/api/a00024_source.html new file mode 100644 index 0000000000000..e82d146c80988 --- /dev/null +++ b/third_party/glm_test/doc/api/a00024_source.html @@ -0,0 +1,84 @@ + + + + + + +0.9.8: extend.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
extend.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 
+
18 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
19 # pragma message("GLM: GLM_GTX_extend extension included")
+
20 #endif
+
21 
+
22 namespace glm
+
23 {
+
26 
+
29  template <typename genType>
+
30  GLM_FUNC_DECL genType extend(
+
31  genType const & Origin,
+
32  genType const & Source,
+
33  typename genType::value_type const Length);
+
34 
+
36 }//namespace glm
+
37 
+
38 #include "extend.inl"
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL genType extend(genType const &Origin, genType const &Source, typename genType::value_type const Length)
Extends of Length the Origin position using the (Source - Origin) direction.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00025.html b/third_party/glm_test/doc/api/a00025.html new file mode 100644 index 0000000000000..e99d60e44958e --- /dev/null +++ b/third_party/glm_test/doc/api/a00025.html @@ -0,0 +1,111 @@ + + + + + + +0.9.8: extended_min_max.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
extended_min_max.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL T max (T const &x, T const &y, T const &z)
 
template<typename T , template< typename > class C>
GLM_FUNC_DECL C< T > max (C< T > const &x, typename C< T >::T const &y, typename C< T >::T const &z)
 
template<typename T , template< typename > class C>
GLM_FUNC_DECL C< T > max (C< T > const &x, C< T > const &y, C< T > const &z)
 
template<typename T >
GLM_FUNC_DECL T max (T const &x, T const &y, T const &z, T const &w)
 
template<typename T , template< typename > class C>
GLM_FUNC_DECL C< T > max (C< T > const &x, typename C< T >::T const &y, typename C< T >::T const &z, typename C< T >::T const &w)
 
template<typename T , template< typename > class C>
GLM_FUNC_DECL C< T > max (C< T > const &x, C< T > const &y, C< T > const &z, C< T > const &w)
 
template<typename T >
GLM_FUNC_DECL T min (T const &x, T const &y, T const &z)
 
template<typename T , template< typename > class C>
GLM_FUNC_DECL C< T > min (C< T > const &x, typename C< T >::T const &y, typename C< T >::T const &z)
 
template<typename T , template< typename > class C>
GLM_FUNC_DECL C< T > min (C< T > const &x, C< T > const &y, C< T > const &z)
 
template<typename T >
GLM_FUNC_DECL T min (T const &x, T const &y, T const &z, T const &w)
 
template<typename T , template< typename > class C>
GLM_FUNC_DECL C< T > min (C< T > const &x, typename C< T >::T const &y, typename C< T >::T const &z, typename C< T >::T const &w)
 
template<typename T , template< typename > class C>
GLM_FUNC_DECL C< T > min (C< T > const &x, C< T > const &y, C< T > const &z, C< T > const &w)
 
+

Detailed Description

+

gtx_extended_min_max

+
See also
GLM Core (dependence)
+
+gtx_half_float (dependence)
+ +

Definition in file extended_min_max.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00025_source.html b/third_party/glm_test/doc/api/a00025_source.html new file mode 100644 index 0000000000000..ff10605e32f14 --- /dev/null +++ b/third_party/glm_test/doc/api/a00025_source.html @@ -0,0 +1,157 @@ + + + + + + +0.9.8: extended_min_max.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
extended_min_max.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "../glm.hpp"
+
18 
+
19 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
20 # pragma message("GLM: GLM_GTX_extented_min_max extension included")
+
21 #endif
+
22 
+
23 namespace glm
+
24 {
+
27 
+
30  template <typename T>
+
31  GLM_FUNC_DECL T min(
+
32  T const & x,
+
33  T const & y,
+
34  T const & z);
+
35 
+
38  template <typename T, template <typename> class C>
+
39  GLM_FUNC_DECL C<T> min(
+
40  C<T> const & x,
+
41  typename C<T>::T const & y,
+
42  typename C<T>::T const & z);
+
43 
+
46  template <typename T, template <typename> class C>
+
47  GLM_FUNC_DECL C<T> min(
+
48  C<T> const & x,
+
49  C<T> const & y,
+
50  C<T> const & z);
+
51 
+
54  template <typename T>
+
55  GLM_FUNC_DECL T min(
+
56  T const & x,
+
57  T const & y,
+
58  T const & z,
+
59  T const & w);
+
60 
+
63  template <typename T, template <typename> class C>
+
64  GLM_FUNC_DECL C<T> min(
+
65  C<T> const & x,
+
66  typename C<T>::T const & y,
+
67  typename C<T>::T const & z,
+
68  typename C<T>::T const & w);
+
69 
+
72  template <typename T, template <typename> class C>
+
73  GLM_FUNC_DECL C<T> min(
+
74  C<T> const & x,
+
75  C<T> const & y,
+
76  C<T> const & z,
+
77  C<T> const & w);
+
78 
+
81  template <typename T>
+
82  GLM_FUNC_DECL T max(
+
83  T const & x,
+
84  T const & y,
+
85  T const & z);
+
86 
+
89  template <typename T, template <typename> class C>
+
90  GLM_FUNC_DECL C<T> max(
+
91  C<T> const & x,
+
92  typename C<T>::T const & y,
+
93  typename C<T>::T const & z);
+
94 
+
97  template <typename T, template <typename> class C>
+
98  GLM_FUNC_DECL C<T> max(
+
99  C<T> const & x,
+
100  C<T> const & y,
+
101  C<T> const & z);
+
102 
+
105  template <typename T>
+
106  GLM_FUNC_DECL T max(
+
107  T const & x,
+
108  T const & y,
+
109  T const & z,
+
110  T const & w);
+
111 
+
114  template <typename T, template <typename> class C>
+
115  GLM_FUNC_DECL C<T> max(
+
116  C<T> const & x,
+
117  typename C<T>::T const & y,
+
118  typename C<T>::T const & z,
+
119  typename C<T>::T const & w);
+
120 
+
123  template <typename T, template <typename> class C>
+
124  GLM_FUNC_DECL C<T> max(
+
125  C<T> const & x,
+
126  C<T> const & y,
+
127  C<T> const & z,
+
128  C<T> const & w);
+
129 
+
131 }//namespace glm
+
132 
+
133 #include "extended_min_max.inl"
+
GLM_FUNC_DECL C< T > min(C< T > const &x, C< T > const &y, C< T > const &z, C< T > const &w)
Return the minimum component-wise values of 4 inputs.
+
GLM_FUNC_DECL C< T > max(C< T > const &x, C< T > const &y, C< T > const &z, C< T > const &w)
Return the maximum component-wise values of 4 inputs.
+
Definition: _noise.hpp:11
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00026.html b/third_party/glm_test/doc/api/a00026.html new file mode 100644 index 0000000000000..fe6542dd46a67 --- /dev/null +++ b/third_party/glm_test/doc/api/a00026.html @@ -0,0 +1,111 @@ + + + + + + +0.9.8: fast_exponential.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
fast_exponential.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL T fastExp (T x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fastExp (vecType< T, P > const &x)
 
template<typename T >
GLM_FUNC_DECL T fastExp2 (T x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fastExp2 (vecType< T, P > const &x)
 
template<typename T >
GLM_FUNC_DECL T fastLog (T x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fastLog (vecType< T, P > const &x)
 
template<typename T >
GLM_FUNC_DECL T fastLog2 (T x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fastLog2 (vecType< T, P > const &x)
 
template<typename genType >
GLM_FUNC_DECL genType fastPow (genType x, genType y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fastPow (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename genTypeT , typename genTypeU >
GLM_FUNC_DECL genTypeT fastPow (genTypeT x, genTypeU y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fastPow (vecType< T, P > const &x)
 
+

Detailed Description

+

GLM_GTX_fast_exponential

+
See also
GLM Core (dependence)
+
+gtx_half_float (dependence)
+ +

Definition in file fast_exponential.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00026_source.html b/third_party/glm_test/doc/api/a00026_source.html new file mode 100644 index 0000000000000..67bf8b8644f3b --- /dev/null +++ b/third_party/glm_test/doc/api/a00026_source.html @@ -0,0 +1,118 @@ + + + + + + +0.9.8: fast_exponential.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
fast_exponential.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "../glm.hpp"
+
18 
+
19 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
20 # pragma message("GLM: GLM_GTX_fast_exponential extension included")
+
21 #endif
+
22 
+
23 namespace glm
+
24 {
+
27 
+
30  template <typename genType>
+
31  GLM_FUNC_DECL genType fastPow(genType x, genType y);
+
32 
+
35  template <typename T, precision P, template <typename, precision> class vecType>
+
36  GLM_FUNC_DECL vecType<T, P> fastPow(vecType<T, P> const & x, vecType<T, P> const & y);
+
37 
+
40  template <typename genTypeT, typename genTypeU>
+
41  GLM_FUNC_DECL genTypeT fastPow(genTypeT x, genTypeU y);
+
42 
+
45  template <typename T, precision P, template <typename, precision> class vecType>
+
46  GLM_FUNC_DECL vecType<T, P> fastPow(vecType<T, P> const & x);
+
47 
+
50  template <typename T>
+
51  GLM_FUNC_DECL T fastExp(T x);
+
52 
+
55  template <typename T, precision P, template <typename, precision> class vecType>
+
56  GLM_FUNC_DECL vecType<T, P> fastExp(vecType<T, P> const & x);
+
57 
+
60  template <typename T>
+
61  GLM_FUNC_DECL T fastLog(T x);
+
62 
+
65  template <typename T, precision P, template <typename, precision> class vecType>
+
66  GLM_FUNC_DECL vecType<T, P> fastLog(vecType<T, P> const & x);
+
67 
+
70  template <typename T>
+
71  GLM_FUNC_DECL T fastExp2(T x);
+
72 
+
75  template <typename T, precision P, template <typename, precision> class vecType>
+
76  GLM_FUNC_DECL vecType<T, P> fastExp2(vecType<T, P> const & x);
+
77 
+
80  template <typename T>
+
81  GLM_FUNC_DECL T fastLog2(T x);
+
82 
+
85  template <typename T, precision P, template <typename, precision> class vecType>
+
86  GLM_FUNC_DECL vecType<T, P> fastLog2(vecType<T, P> const & x);
+
87 
+
89 }//namespace glm
+
90 
+
91 #include "fast_exponential.inl"
+
GLM_FUNC_DECL vecType< T, P > fastLog(vecType< T, P > const &x)
Faster than the common exp2 function but less accurate.
+
GLM_FUNC_DECL vecType< T, P > fastPow(vecType< T, P > const &x)
Faster than the common pow function but less accurate.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL vecType< T, P > fastExp(vecType< T, P > const &x)
Faster than the common exp function but less accurate.
+
GLM_FUNC_DECL vecType< T, P > fastExp2(vecType< T, P > const &x)
Faster than the common exp2 function but less accurate.
+
GLM_FUNC_DECL vecType< T, P > fastLog2(vecType< T, P > const &x)
Faster than the common log2 function but less accurate.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00027.html b/third_party/glm_test/doc/api/a00027.html new file mode 100644 index 0000000000000..7efc7ac97b1bf --- /dev/null +++ b/third_party/glm_test/doc/api/a00027.html @@ -0,0 +1,100 @@ + + + + + + +0.9.8: fast_square_root.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
fast_square_root.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType fastDistance (genType x, genType y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T fastDistance (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename genType >
GLM_FUNC_DECL genType fastInverseSqrt (genType x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fastInverseSqrt (vecType< T, P > const &x)
 
template<typename genType >
GLM_FUNC_DECL genType fastLength (genType x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T fastLength (vecType< T, P > const &x)
 
template<typename genType >
GLM_FUNC_DECL genType fastNormalize (genType const &x)
 
template<typename genType >
GLM_FUNC_DECL genType fastSqrt (genType x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fastSqrt (vecType< T, P > const &x)
 
+

Detailed Description

+

GLM_GTX_fast_square_root

+
See also
GLM Core (dependence)
+ +

Definition in file fast_square_root.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00027_source.html b/third_party/glm_test/doc/api/a00027_source.html new file mode 100644 index 0000000000000..4b314ef7037ef --- /dev/null +++ b/third_party/glm_test/doc/api/a00027_source.html @@ -0,0 +1,111 @@ + + + + + + +0.9.8: fast_square_root.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
fast_square_root.hpp
+
+
+Go to the documentation of this file.
1 
+
15 #pragma once
+
16 
+
17 // Dependency:
+
18 #include "../common.hpp"
+
19 #include "../exponential.hpp"
+
20 #include "../geometric.hpp"
+
21 
+
22 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
23 # pragma message("GLM: GLM_GTX_fast_square_root extension included")
+
24 #endif
+
25 
+
26 namespace glm
+
27 {
+
30 
+
34  template <typename genType>
+
35  GLM_FUNC_DECL genType fastSqrt(genType x);
+
36 
+
40  template <typename T, precision P, template <typename, precision> class vecType>
+
41  GLM_FUNC_DECL vecType<T, P> fastSqrt(vecType<T, P> const & x);
+
42 
+
46  template <typename genType>
+
47  GLM_FUNC_DECL genType fastInverseSqrt(genType x);
+
48 
+
52  template <typename T, precision P, template <typename, precision> class vecType>
+
53  GLM_FUNC_DECL vecType<T, P> fastInverseSqrt(vecType<T, P> const & x);
+
54 
+
58  template <typename genType>
+
59  GLM_FUNC_DECL genType fastLength(genType x);
+
60 
+
64  template <typename T, precision P, template <typename, precision> class vecType>
+
65  GLM_FUNC_DECL T fastLength(vecType<T, P> const & x);
+
66 
+
70  template <typename genType>
+
71  GLM_FUNC_DECL genType fastDistance(genType x, genType y);
+
72 
+
76  template <typename T, precision P, template <typename, precision> class vecType>
+
77  GLM_FUNC_DECL T fastDistance(vecType<T, P> const & x, vecType<T, P> const & y);
+
78 
+
82  template <typename genType>
+
83  GLM_FUNC_DECL genType fastNormalize(genType const & x);
+
84 
+
86 }// namespace glm
+
87 
+
88 #include "fast_square_root.inl"
+
GLM_FUNC_DECL T fastDistance(vecType< T, P > const &x, vecType< T, P > const &y)
Faster than the common distance function but less accurate.
+
GLM_FUNC_DECL genType fastNormalize(genType const &x)
Faster than the common normalize function but less accurate.
+
GLM_FUNC_DECL vecType< T, P > fastInverseSqrt(vecType< T, P > const &x)
Faster than the common inversesqrt function but less accurate.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL vecType< T, P > fastSqrt(vecType< T, P > const &x)
Faster than the common sqrt function but less accurate.
+
GLM_FUNC_DECL T fastLength(vecType< T, P > const &x)
Faster than the common length function but less accurate.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00028.html b/third_party/glm_test/doc/api/a00028.html new file mode 100644 index 0000000000000..11c45dab4f0b8 --- /dev/null +++ b/third_party/glm_test/doc/api/a00028.html @@ -0,0 +1,97 @@ + + + + + + +0.9.8: fast_trigonometry.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
fast_trigonometry.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL T fastAcos (T angle)
 
template<typename T >
GLM_FUNC_DECL T fastAsin (T angle)
 
template<typename T >
GLM_FUNC_DECL T fastAtan (T y, T x)
 
template<typename T >
GLM_FUNC_DECL T fastAtan (T angle)
 
template<typename T >
GLM_FUNC_DECL T fastCos (T angle)
 
template<typename T >
GLM_FUNC_DECL T fastSin (T angle)
 
template<typename T >
GLM_FUNC_DECL T fastTan (T angle)
 
template<typename T >
GLM_FUNC_DECL T wrapAngle (T angle)
 
+

Detailed Description

+

GLM_GTX_fast_trigonometry

+
See also
GLM Core (dependence)
+ +

Definition in file fast_trigonometry.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00028_source.html b/third_party/glm_test/doc/api/a00028_source.html new file mode 100644 index 0000000000000..8e2af019c44df --- /dev/null +++ b/third_party/glm_test/doc/api/a00028_source.html @@ -0,0 +1,109 @@ + + + + + + +0.9.8: fast_trigonometry.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
fast_trigonometry.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../gtc/constants.hpp"
+
17 
+
18 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
19 # pragma message("GLM: GLM_GTX_fast_trigonometry extension included")
+
20 #endif
+
21 
+
22 namespace glm
+
23 {
+
26 
+
29  template <typename T>
+
30  GLM_FUNC_DECL T wrapAngle(T angle);
+
31 
+
34  template <typename T>
+
35  GLM_FUNC_DECL T fastSin(T angle);
+
36 
+
39  template <typename T>
+
40  GLM_FUNC_DECL T fastCos(T angle);
+
41 
+
45  template <typename T>
+
46  GLM_FUNC_DECL T fastTan(T angle);
+
47 
+
51  template <typename T>
+
52  GLM_FUNC_DECL T fastAsin(T angle);
+
53 
+
57  template <typename T>
+
58  GLM_FUNC_DECL T fastAcos(T angle);
+
59 
+
63  template <typename T>
+
64  GLM_FUNC_DECL T fastAtan(T y, T x);
+
65 
+
69  template <typename T>
+
70  GLM_FUNC_DECL T fastAtan(T angle);
+
71 
+
73 }//namespace glm
+
74 
+
75 #include "fast_trigonometry.inl"
+
GLM_FUNC_DECL T fastAcos(T angle)
Faster than the common acos function but less accurate.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL T fastSin(T angle)
Faster than the common sin function but less accurate.
+
GLM_FUNC_DECL T wrapAngle(T angle)
Wrap an angle to [0 2pi[ From GLM_GTX_fast_trigonometry extension.
+
GLM_FUNC_DECL T fastAsin(T angle)
Faster than the common asin function but less accurate.
+
GLM_FUNC_DECL T angle(tquat< T, P > const &x)
Returns the quaternion rotation angle.
+
GLM_FUNC_DECL T fastTan(T angle)
Faster than the common tan function but less accurate.
+
GLM_FUNC_DECL T fastCos(T angle)
Faster than the common cos function but less accurate.
+
GLM_FUNC_DECL T fastAtan(T angle)
Faster than the common atan function but less accurate.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00029.html b/third_party/glm_test/doc/api/a00029.html new file mode 100644 index 0000000000000..984be423ce0bf --- /dev/null +++ b/third_party/glm_test/doc/api/a00029.html @@ -0,0 +1,168 @@ + + + + + + +0.9.8: func_common.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
func_common.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType abs (genType x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > ceil (vecType< T, P > const &x)
 
template<typename genType >
GLM_FUNC_DECL genType clamp (genType x, genType minVal, genType maxVal)
 
GLM_FUNC_DECL int floatBitsToInt (float const &v)
 
template<template< typename, precision > class vecType, precision P>
GLM_FUNC_DECL vecType< int, P > floatBitsToInt (vecType< float, P > const &v)
 
GLM_FUNC_DECL uint floatBitsToUint (float const &v)
 
template<template< typename, precision > class vecType, precision P>
GLM_FUNC_DECL vecType< uint, P > floatBitsToUint (vecType< float, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > floor (vecType< T, P > const &x)
 
template<typename genType >
GLM_FUNC_DECL genType fma (genType const &a, genType const &b, genType const &c)
 
template<typename genType >
GLM_FUNC_DECL genType fract (genType x)
 
template<typename genType , typename genIType >
GLM_FUNC_DECL genType frexp (genType const &x, genIType &exp)
 
GLM_FUNC_DECL float intBitsToFloat (int const &v)
 
template<template< typename, precision > class vecType, precision P>
GLM_FUNC_DECL vecType< float, P > intBitsToFloat (vecType< int, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > isinf (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > isnan (vecType< T, P > const &x)
 
template<typename genType , typename genIType >
GLM_FUNC_DECL genType ldexp (genType const &x, genIType const &exp)
 
template<typename genType >
GLM_FUNC_DECL genType max (genType x, genType y)
 
template<typename genType >
GLM_FUNC_DECL genType min (genType x, genType y)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > mix (vecType< T, P > const &x, vecType< T, P > const &y, vecType< U, P > const &a)
 
template<typename genType >
GLM_FUNC_DECL genType mod (genType x, genType y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > mod (vecType< T, P > const &x, T y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > mod (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename genType >
GLM_FUNC_DECL genType modf (genType x, genType &i)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > round (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > roundEven (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > sign (vecType< T, P > const &x)
 
template<typename genType >
GLM_FUNC_DECL genType smoothstep (genType edge0, genType edge1, genType x)
 
template<typename genType >
GLM_FUNC_DECL genType step (genType edge, genType x)
 
template<template< typename, precision > class vecType, typename T , precision P>
GLM_FUNC_DECL vecType< T, P > step (T edge, vecType< T, P > const &x)
 
template<template< typename, precision > class vecType, typename T , precision P>
GLM_FUNC_DECL vecType< T, P > step (vecType< T, P > const &edge, vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > trunc (vecType< T, P > const &x)
 
GLM_FUNC_DECL float uintBitsToFloat (uint const &v)
 
template<template< typename, precision > class vecType, precision P>
GLM_FUNC_DECL vecType< float, P > uintBitsToFloat (vecType< uint, P > const &v)
 
+

Detailed Description

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00029_source.html b/third_party/glm_test/doc/api/a00029_source.html new file mode 100644 index 0000000000000..7818dbba1d745 --- /dev/null +++ b/third_party/glm_test/doc/api/a00029_source.html @@ -0,0 +1,238 @@ + + + + + + +0.9.8: func_common.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
func_common.hpp
+
+
+Go to the documentation of this file.
1 
+
11 #pragma once
+
12 
+
13 #include "setup.hpp"
+
14 #include "precision.hpp"
+
15 #include "type_int.hpp"
+
16 #include "_fixes.hpp"
+
17 
+
18 namespace glm
+
19 {
+
22 
+
29  template <typename genType>
+
30  GLM_FUNC_DECL genType abs(genType x);
+
31 
+
32  template <typename T, precision P, template <typename, precision> class vecType>
+
33  GLM_FUNC_DECL vecType<T, P> abs(vecType<T, P> const & x);
+
34 
+
41  template <typename T, precision P, template <typename, precision> class vecType>
+
42  GLM_FUNC_DECL vecType<T, P> sign(vecType<T, P> const & x);
+
43 
+
50  template <typename T, precision P, template <typename, precision> class vecType>
+
51  GLM_FUNC_DECL vecType<T, P> floor(vecType<T, P> const & x);
+
52 
+
60  template <typename T, precision P, template <typename, precision> class vecType>
+
61  GLM_FUNC_DECL vecType<T, P> trunc(vecType<T, P> const & x);
+
62 
+
73  template <typename T, precision P, template <typename, precision> class vecType>
+
74  GLM_FUNC_DECL vecType<T, P> round(vecType<T, P> const & x);
+
75 
+
85  template <typename T, precision P, template <typename, precision> class vecType>
+
86  GLM_FUNC_DECL vecType<T, P> roundEven(vecType<T, P> const & x);
+
87 
+
95  template <typename T, precision P, template <typename, precision> class vecType>
+
96  GLM_FUNC_DECL vecType<T, P> ceil(vecType<T, P> const & x);
+
97 
+
104  template <typename genType>
+
105  GLM_FUNC_DECL genType fract(genType x);
+
106 
+
107  template <typename T, precision P, template <typename, precision> class vecType>
+
108  GLM_FUNC_DECL vecType<T, P> fract(vecType<T, P> const & x);
+
109 
+
117  template <typename genType>
+
118  GLM_FUNC_DECL genType mod(genType x, genType y);
+
119 
+
120  template <typename T, precision P, template <typename, precision> class vecType>
+
121  GLM_FUNC_DECL vecType<T, P> mod(vecType<T, P> const & x, T y);
+
122 
+
123  template <typename T, precision P, template <typename, precision> class vecType>
+
124  GLM_FUNC_DECL vecType<T, P> mod(vecType<T, P> const & x, vecType<T, P> const & y);
+
125 
+
135  template <typename genType>
+
136  GLM_FUNC_DECL genType modf(genType x, genType & i);
+
137 
+
144  template <typename genType>
+
145  GLM_FUNC_DECL genType min(genType x, genType y);
+
146 
+
147  template <typename T, precision P, template <typename, precision> class vecType>
+
148  GLM_FUNC_DECL vecType<T, P> min(vecType<T, P> const & x, T y);
+
149 
+
150  template <typename T, precision P, template <typename, precision> class vecType>
+
151  GLM_FUNC_DECL vecType<T, P> min(vecType<T, P> const & x, vecType<T, P> const & y);
+
152 
+
159  template <typename genType>
+
160  GLM_FUNC_DECL genType max(genType x, genType y);
+
161 
+
162  template <typename T, precision P, template <typename, precision> class vecType>
+
163  GLM_FUNC_DECL vecType<T, P> max(vecType<T, P> const & x, T y);
+
164 
+
165  template <typename T, precision P, template <typename, precision> class vecType>
+
166  GLM_FUNC_DECL vecType<T, P> max(vecType<T, P> const & x, vecType<T, P> const & y);
+
167 
+
175  template <typename genType>
+
176  GLM_FUNC_DECL genType clamp(genType x, genType minVal, genType maxVal);
+
177 
+
178  template <typename T, precision P, template <typename, precision> class vecType>
+
179  GLM_FUNC_DECL vecType<T, P> clamp(vecType<T, P> const & x, T minVal, T maxVal);
+
180 
+
181  template <typename T, precision P, template <typename, precision> class vecType>
+
182  GLM_FUNC_DECL vecType<T, P> clamp(vecType<T, P> const & x, vecType<T, P> const & minVal, vecType<T, P> const & maxVal);
+
183 
+
226  template <typename T, typename U, precision P, template <typename, precision> class vecType>
+
227  GLM_FUNC_DECL vecType<T, P> mix(vecType<T, P> const & x, vecType<T, P> const & y, vecType<U, P> const & a);
+
228 
+
229  template <typename T, typename U, precision P, template <typename, precision> class vecType>
+
230  GLM_FUNC_DECL vecType<T, P> mix(vecType<T, P> const & x, vecType<T, P> const & y, U a);
+
231 
+
232  template <typename genTypeT, typename genTypeU>
+
233  GLM_FUNC_DECL genTypeT mix(genTypeT x, genTypeT y, genTypeU a);
+
234 
+
239  template <typename genType>
+
240  GLM_FUNC_DECL genType step(genType edge, genType x);
+
241 
+
246  template <template <typename, precision> class vecType, typename T, precision P>
+
247  GLM_FUNC_DECL vecType<T, P> step(T edge, vecType<T, P> const & x);
+
248 
+
253  template <template <typename, precision> class vecType, typename T, precision P>
+
254  GLM_FUNC_DECL vecType<T, P> step(vecType<T, P> const & edge, vecType<T, P> const & x);
+
255 
+
270  template <typename genType>
+
271  GLM_FUNC_DECL genType smoothstep(genType edge0, genType edge1, genType x);
+
272 
+
273  template <typename T, precision P, template <typename, precision> class vecType>
+
274  GLM_FUNC_DECL vecType<T, P> smoothstep(T edge0, T edge1, vecType<T, P> const & x);
+
275 
+
276  template <typename T, precision P, template <typename, precision> class vecType>
+
277  GLM_FUNC_DECL vecType<T, P> smoothstep(vecType<T, P> const & edge0, vecType<T, P> const & edge1, vecType<T, P> const & x);
+
278 
+
291  template <typename T, precision P, template <typename, precision> class vecType>
+
292  GLM_FUNC_DECL vecType<bool, P> isnan(vecType<T, P> const & x);
+
293 
+
304  template <typename T, precision P, template <typename, precision> class vecType>
+
305  GLM_FUNC_DECL vecType<bool, P> isinf(vecType<T, P> const & x);
+
306 
+
313  GLM_FUNC_DECL int floatBitsToInt(float const & v);
+
314 
+
321  template <template <typename, precision> class vecType, precision P>
+
322  GLM_FUNC_DECL vecType<int, P> floatBitsToInt(vecType<float, P> const & v);
+
323 
+
330  GLM_FUNC_DECL uint floatBitsToUint(float const & v);
+
331 
+
338  template <template <typename, precision> class vecType, precision P>
+
339  GLM_FUNC_DECL vecType<uint, P> floatBitsToUint(vecType<float, P> const & v);
+
340 
+
349  GLM_FUNC_DECL float intBitsToFloat(int const & v);
+
350 
+
359  template <template <typename, precision> class vecType, precision P>
+
360  GLM_FUNC_DECL vecType<float, P> intBitsToFloat(vecType<int, P> const & v);
+
361 
+
370  GLM_FUNC_DECL float uintBitsToFloat(uint const & v);
+
371 
+
380  template <template <typename, precision> class vecType, precision P>
+
381  GLM_FUNC_DECL vecType<float, P> uintBitsToFloat(vecType<uint, P> const & v);
+
382 
+
389  template <typename genType>
+
390  GLM_FUNC_DECL genType fma(genType const & a, genType const & b, genType const & c);
+
391 
+
406  template <typename genType, typename genIType>
+
407  GLM_FUNC_DECL genType frexp(genType const & x, genIType & exp);
+
408 
+
420  template <typename genType, typename genIType>
+
421  GLM_FUNC_DECL genType ldexp(genType const & x, genIType const & exp);
+
422 
+
424 }//namespace glm
+
425 
+
426 #include "func_common.inl"
+
427 
+
GLM_FUNC_DECL genType fract(genType x)
Return x - floor(x).
+
GLM_FUNC_DECL genType ldexp(genType const &x, genIType const &exp)
Builds a floating-point number from x and the corresponding integral exponent of two in exp...
+
GLM_FUNC_DECL vecType< float, P > intBitsToFloat(vecType< int, P > const &v)
Returns a floating-point value corresponding to a signed integer encoding of a floating-point value...
+
GLM_FUNC_DECL vecType< T, P > ceil(vecType< T, P > const &x)
Returns a value equal to the nearest integer that is greater than or equal to x.
+
GLM_FUNC_DECL genType modf(genType x, genType &i)
Returns the fractional part of x and sets i to the integer part (as a whole number floating point val...
+
GLM_FUNC_DECL genType smoothstep(genType edge0, genType edge1, genType x)
Returns 0.0 if x <= edge0 and 1.0 if x >= edge1 and performs smooth Hermite interpolation between 0 a...
+
GLM_FUNC_DECL genType max(genType x, genType y)
Returns y if x < y; otherwise, it returns x.
+
unsigned int uint
Unsigned integer type.
Definition: type_int.hpp:288
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL vecType< T, P > round(vecType< T, P > const &x)
Returns a value equal to the nearest integer to x.
+
GLM_FUNC_DECL vecType< T, P > roundEven(vecType< T, P > const &x)
Returns a value equal to the nearest integer to x.
+
GLM_FUNC_DECL vecType< T, P > mix(vecType< T, P > const &x, vecType< T, P > const &y, vecType< U, P > const &a)
If genTypeU is a floating scalar or vector: Returns x * (1.0 - a) + y * a, i.e., the linear blend of ...
+
GLM_FUNC_DECL vecType< T, P > trunc(vecType< T, P > const &x)
Returns a value equal to the nearest integer to x whose absolute value is not larger than the absolut...
+
GLM_FUNC_DECL genType abs(genType x)
Returns x if x >= 0; otherwise, it returns -x.
+
GLM_FUNC_DECL vecType< bool, P > isnan(vecType< T, P > const &x)
Returns true if x holds a NaN (not a number) representation in the underlying implementation's set of...
+
GLM_FUNC_DECL genType frexp(genType const &x, genIType &exp)
Splits x into a floating-point significand in the range [0.5, 1.0) and an integral exponent of two...
+
GLM Core
+
GLM_FUNC_DECL vecType< uint, P > floatBitsToUint(vecType< float, P > const &v)
Returns a unsigned integer value representing the encoding of a floating-point value.
+
GLM Core
+
GLM_FUNC_DECL vecType< float, P > uintBitsToFloat(vecType< uint, P > const &v)
Returns a floating-point value corresponding to a unsigned integer encoding of a floating-point value...
+
GLM_FUNC_DECL vecType< T, P > step(vecType< T, P > const &edge, vecType< T, P > const &x)
Returns 0.0 if x < edge, otherwise it returns 1.0.
+
GLM_FUNC_DECL vecType< T, P > exp(vecType< T, P > const &v)
Returns the natural exponentiation of x, i.e., e^x.
+
GLM_FUNC_DECL vecType< bool, P > isinf(vecType< T, P > const &x)
Returns true if x holds a positive infinity or negative infinity representation in the underlying imp...
+
GLM_FUNC_DECL vecType< T, P > mod(vecType< T, P > const &x, vecType< T, P > const &y)
Modulus.
+
GLM_FUNC_DECL genType min(genType x, genType y)
Returns y if y < x; otherwise, it returns x.
+
GLM_FUNC_DECL genType fma(genType const &a, genType const &b, genType const &c)
Computes and returns a * b + c.
+
GLM Core
+
GLM_FUNC_DECL vecType< T, P > floor(vecType< T, P > const &x)
Returns a value equal to the nearest integer that is less then or equal to x.
+
GLM Core
+
GLM_FUNC_DECL vecType< int, P > floatBitsToInt(vecType< float, P > const &v)
Returns a signed integer value representing the encoding of a floating-point value.
+
GLM_FUNC_DECL genType clamp(genType x, genType minVal, genType maxVal)
Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal an...
+
GLM_FUNC_DECL vecType< T, P > sign(vecType< T, P > const &x)
Returns 1.0 if x > 0, 0.0 if x == 0, or -1.0 if x < 0.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00030.html b/third_party/glm_test/doc/api/a00030.html new file mode 100644 index 0000000000000..aafc203444bde --- /dev/null +++ b/third_party/glm_test/doc/api/a00030.html @@ -0,0 +1,94 @@ + + + + + + +0.9.8: func_exponential.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
func_exponential.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > exp (vecType< T, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > exp2 (vecType< T, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > inversesqrt (vecType< T, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > log (vecType< T, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > log2 (vecType< T, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > pow (vecType< T, P > const &base, vecType< T, P > const &exponent)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > sqrt (vecType< T, P > const &v)
 
+

Detailed Description

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00030_source.html b/third_party/glm_test/doc/api/a00030_source.html new file mode 100644 index 0000000000000..589a3b4eeb8a4 --- /dev/null +++ b/third_party/glm_test/doc/api/a00030_source.html @@ -0,0 +1,110 @@ + + + + + + +0.9.8: func_exponential.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
func_exponential.hpp
+
+
+Go to the documentation of this file.
1 
+
11 #pragma once
+
12 
+
13 #include "type_vec1.hpp"
+
14 #include "type_vec2.hpp"
+
15 #include "type_vec3.hpp"
+
16 #include "type_vec4.hpp"
+
17 #include <cmath>
+
18 
+
19 namespace glm
+
20 {
+
23 
+
32  template <typename T, precision P, template <typename, precision> class vecType>
+
33  GLM_FUNC_DECL vecType<T, P> pow(vecType<T, P> const & base, vecType<T, P> const & exponent);
+
34 
+
42  template <typename T, precision P, template <typename, precision> class vecType>
+
43  GLM_FUNC_DECL vecType<T, P> exp(vecType<T, P> const & v);
+
44 
+
54  template <typename T, precision P, template <typename, precision> class vecType>
+
55  GLM_FUNC_DECL vecType<T, P> log(vecType<T, P> const & v);
+
56 
+
64  template <typename T, precision P, template <typename, precision> class vecType>
+
65  GLM_FUNC_DECL vecType<T, P> exp2(vecType<T, P> const & v);
+
66 
+
75  template <typename T, precision P, template <typename, precision> class vecType>
+
76  GLM_FUNC_DECL vecType<T, P> log2(vecType<T, P> const & v);
+
77 
+
85  //template <typename genType>
+
86  //GLM_FUNC_DECL genType sqrt(genType const & x);
+
87  template <typename T, precision P, template <typename, precision> class vecType>
+
88  GLM_FUNC_DECL vecType<T, P> sqrt(vecType<T, P> const & v);
+
89 
+
97  template <typename T, precision P, template <typename, precision> class vecType>
+
98  GLM_FUNC_DECL vecType<T, P> inversesqrt(vecType<T, P> const & v);
+
99 
+
101 }//namespace glm
+
102 
+
103 #include "func_exponential.inl"
+
GLM_FUNC_DECL vecType< T, P > pow(vecType< T, P > const &base, vecType< T, P > const &exponent)
Returns 'base' raised to the power 'exponent'.
+
GLM Core
+
GLM_FUNC_DECL vecType< T, P > log(vecType< T, P > const &v)
Returns the natural logarithm of v, i.e., returns the value y which satisfies the equation x = e^y...
+
GLM_FUNC_DECL vecType< T, P > exp2(vecType< T, P > const &v)
Returns 2 raised to the v power.
+
Definition: _noise.hpp:11
+
GLM Core
+
GLM_FUNC_DECL vecType< T, P > log2(vecType< T, P > const &v)
Returns the base 2 log of x, i.e., returns the value y, which satisfies the equation x = 2 ^ y...
+
GLM_FUNC_DECL vecType< T, P > sqrt(vecType< T, P > const &v)
Returns the positive square root of v.
+
GLM Core
+
GLM_FUNC_DECL vecType< T, P > exp(vecType< T, P > const &v)
Returns the natural exponentiation of x, i.e., e^x.
+
GLM Core
+
GLM_FUNC_DECL vecType< T, P > inversesqrt(vecType< T, P > const &v)
Returns the reciprocal of the positive square root of v.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00031.html b/third_party/glm_test/doc/api/a00031.html new file mode 100644 index 0000000000000..8ba48c7284fd6 --- /dev/null +++ b/third_party/glm_test/doc/api/a00031.html @@ -0,0 +1,97 @@ + + + + + + +0.9.8: func_geometric.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
func_geometric.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > cross (tvec3< T, P > const &x, tvec3< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T distance (vecType< T, P > const &p0, vecType< T, P > const &p1)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T dot (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > faceforward (vecType< T, P > const &N, vecType< T, P > const &I, vecType< T, P > const &Nref)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T length (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > normalize (vecType< T, P > const &x)
 
template<typename genType >
GLM_FUNC_DECL genType reflect (genType const &I, genType const &N)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > refract (vecType< T, P > const &I, vecType< T, P > const &N, T eta)
 
+

Detailed Description

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00031_source.html b/third_party/glm_test/doc/api/a00031_source.html new file mode 100644 index 0000000000000..71f4c423dca94 --- /dev/null +++ b/third_party/glm_test/doc/api/a00031_source.html @@ -0,0 +1,121 @@ + + + + + + +0.9.8: func_geometric.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
func_geometric.hpp
+
+
+Go to the documentation of this file.
1 
+
11 #pragma once
+
12 
+
13 #include "type_vec3.hpp"
+
14 
+
15 namespace glm
+
16 {
+
19 
+
26  template <typename T, precision P, template <typename, precision> class vecType>
+
27  GLM_FUNC_DECL T length(
+
28  vecType<T, P> const & x);
+
29 
+
36  template <typename T, precision P, template <typename, precision> class vecType>
+
37  GLM_FUNC_DECL T distance(
+
38  vecType<T, P> const & p0,
+
39  vecType<T, P> const & p1);
+
40 
+
47  template <typename T, precision P, template <typename, precision> class vecType>
+
48  GLM_FUNC_DECL T dot(
+
49  vecType<T, P> const & x,
+
50  vecType<T, P> const & y);
+
51 
+
58  template <typename T, precision P>
+
59  GLM_FUNC_DECL tvec3<T, P> cross(
+
60  tvec3<T, P> const & x,
+
61  tvec3<T, P> const & y);
+
62 
+
68  template <typename T, precision P, template <typename, precision> class vecType>
+
69  GLM_FUNC_DECL vecType<T, P> normalize(
+
70  vecType<T, P> const & x);
+
71 
+
78  template <typename T, precision P, template <typename, precision> class vecType>
+
79  GLM_FUNC_DECL vecType<T, P> faceforward(
+
80  vecType<T, P> const & N,
+
81  vecType<T, P> const & I,
+
82  vecType<T, P> const & Nref);
+
83 
+
91  template <typename genType>
+
92  GLM_FUNC_DECL genType reflect(
+
93  genType const & I,
+
94  genType const & N);
+
95 
+
104  template <typename T, precision P, template <typename, precision> class vecType>
+
105  GLM_FUNC_DECL vecType<T, P> refract(
+
106  vecType<T, P> const & I,
+
107  vecType<T, P> const & N,
+
108  T eta);
+
109 
+
111 }//namespace glm
+
112 
+
113 #include "func_geometric.inl"
+
GLM Core
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL T dot(vecType< T, P > const &x, vecType< T, P > const &y)
Returns the dot product of x and y, i.e., result = x * y.
+
GLM_FUNC_DECL tvec3< T, P > cross(tvec3< T, P > const &x, tvec3< T, P > const &y)
Returns the cross product of x and y.
+
GLM_FUNC_DECL genType reflect(genType const &I, genType const &N)
For the incident vector I and surface orientation N, returns the reflection direction : result = I - ...
+
GLM_FUNC_DECL vecType< T, P > faceforward(vecType< T, P > const &N, vecType< T, P > const &I, vecType< T, P > const &Nref)
If dot(Nref, I) < 0.0, return N, otherwise, return -N.
+
GLM_FUNC_DECL vecType< T, P > normalize(vecType< T, P > const &x)
Returns a vector in the same direction as x but with length of 1.
+
GLM_FUNC_DECL T distance(vecType< T, P > const &p0, vecType< T, P > const &p1)
Returns the distance betwwen p0 and p1, i.e., length(p0 - p1).
+
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
GLM_FUNC_DECL vecType< T, P > refract(vecType< T, P > const &I, vecType< T, P > const &N, T eta)
For the incident vector I and surface normal N, and the ratio of indices of refraction eta...
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00032.html b/third_party/glm_test/doc/api/a00032.html new file mode 100644 index 0000000000000..3d67986dbe679 --- /dev/null +++ b/third_party/glm_test/doc/api/a00032.html @@ -0,0 +1,112 @@ + + + + + + +0.9.8: func_integer.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
func_integer.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL int bitCount (genType v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< int, P > bitCount (vecType< T, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > bitfieldExtract (vecType< T, P > const &Value, int Offset, int Bits)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > bitfieldInsert (vecType< T, P > const &Base, vecType< T, P > const &Insert, int Offset, int Bits)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > bitfieldReverse (vecType< T, P > const &v)
 
template<typename genIUType >
GLM_FUNC_DECL int findLSB (genIUType x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< int, P > findLSB (vecType< T, P > const &v)
 
template<typename genIUType >
GLM_FUNC_DECL int findMSB (genIUType x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< int, P > findMSB (vecType< T, P > const &v)
 
template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL void imulExtended (vecType< int, P > const &x, vecType< int, P > const &y, vecType< int, P > &msb, vecType< int, P > &lsb)
 
template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< uint, P > uaddCarry (vecType< uint, P > const &x, vecType< uint, P > const &y, vecType< uint, P > &carry)
 
template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL void umulExtended (vecType< uint, P > const &x, vecType< uint, P > const &y, vecType< uint, P > &msb, vecType< uint, P > &lsb)
 
template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< uint, P > usubBorrow (vecType< uint, P > const &x, vecType< uint, P > const &y, vecType< uint, P > &borrow)
 
+

Detailed Description

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00032_source.html b/third_party/glm_test/doc/api/a00032_source.html new file mode 100644 index 0000000000000..ef3d9160246fa --- /dev/null +++ b/third_party/glm_test/doc/api/a00032_source.html @@ -0,0 +1,149 @@ + + + + + + +0.9.8: func_integer.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
func_integer.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 #include "setup.hpp"
+
16 #include "precision.hpp"
+
17 #include "func_common.hpp"
+ +
19 
+
20 namespace glm
+
21 {
+
24 
+
33  template <precision P, template <typename, precision> class vecType>
+
34  GLM_FUNC_DECL vecType<uint, P> uaddCarry(
+
35  vecType<uint, P> const & x,
+
36  vecType<uint, P> const & y,
+
37  vecType<uint, P> & carry);
+
38 
+
47  template <precision P, template <typename, precision> class vecType>
+
48  GLM_FUNC_DECL vecType<uint, P> usubBorrow(
+
49  vecType<uint, P> const & x,
+
50  vecType<uint, P> const & y,
+
51  vecType<uint, P> & borrow);
+
52 
+
61  template <precision P, template <typename, precision> class vecType>
+
62  GLM_FUNC_DECL void umulExtended(
+
63  vecType<uint, P> const & x,
+
64  vecType<uint, P> const & y,
+
65  vecType<uint, P> & msb,
+
66  vecType<uint, P> & lsb);
+
67 
+
76  template <precision P, template <typename, precision> class vecType>
+
77  GLM_FUNC_DECL void imulExtended(
+
78  vecType<int, P> const & x,
+
79  vecType<int, P> const & y,
+
80  vecType<int, P> & msb,
+
81  vecType<int, P> & lsb);
+
82 
+
98  template <typename T, precision P, template <typename, precision> class vecType>
+
99  GLM_FUNC_DECL vecType<T, P> bitfieldExtract(
+
100  vecType<T, P> const & Value,
+
101  int Offset,
+
102  int Bits);
+
103 
+
118  template <typename T, precision P, template <typename, precision> class vecType>
+
119  GLM_FUNC_DECL vecType<T, P> bitfieldInsert(
+
120  vecType<T, P> const & Base,
+
121  vecType<T, P> const & Insert,
+
122  int Offset,
+
123  int Bits);
+
124 
+
133  template <typename T, precision P, template <typename, precision> class vecType>
+
134  GLM_FUNC_DECL vecType<T, P> bitfieldReverse(vecType<T, P> const & v);
+
135 
+
142  template <typename genType>
+
143  GLM_FUNC_DECL int bitCount(genType v);
+
144 
+
151  template <typename T, precision P, template <typename, precision> class vecType>
+
152  GLM_FUNC_DECL vecType<int, P> bitCount(vecType<T, P> const & v);
+
153 
+
162  template <typename genIUType>
+
163  GLM_FUNC_DECL int findLSB(genIUType x);
+
164 
+
173  template <typename T, precision P, template <typename, precision> class vecType>
+
174  GLM_FUNC_DECL vecType<int, P> findLSB(vecType<T, P> const & v);
+
175 
+
185  template <typename genIUType>
+
186  GLM_FUNC_DECL int findMSB(genIUType x);
+
187 
+
197  template <typename T, precision P, template <typename, precision> class vecType>
+
198  GLM_FUNC_DECL vecType<int, P> findMSB(vecType<T, P> const & v);
+
199 
+
201 }//namespace glm
+
202 
+
203 #include "func_integer.inl"
+
GLM_FUNC_DECL vecType< uint, P > uaddCarry(vecType< uint, P > const &x, vecType< uint, P > const &y, vecType< uint, P > &carry)
Adds 32-bit unsigned integer x and y, returning the sum modulo pow(2, 32).
+
GLM_FUNC_DECL vecType< uint, P > usubBorrow(vecType< uint, P > const &x, vecType< uint, P > const &y, vecType< uint, P > &borrow)
Subtracts the 32-bit unsigned integer y from x, returning the difference if non-negative, or pow(2, 32) plus the difference otherwise.
+
GLM_FUNC_DECL vecType< T, P > bitfieldInsert(vecType< T, P > const &Base, vecType< T, P > const &Insert, int Offset, int Bits)
Returns the insertion the bits least-significant bits of insert into base.
+
GLM_FUNC_DECL void umulExtended(vecType< uint, P > const &x, vecType< uint, P > const &y, vecType< uint, P > &msb, vecType< uint, P > &lsb)
Multiplies 32-bit integers x and y, producing a 64-bit result.
+
GLM_FUNC_DECL vecType< T, P > bitfieldExtract(vecType< T, P > const &Value, int Offset, int Bits)
Extracts bits [offset, offset + bits - 1] from value, returning them in the least significant bits of...
+
GLM_FUNC_DECL vecType< int, P > findLSB(vecType< T, P > const &v)
Returns the bit number of the least significant bit set to 1 in the binary representation of value...
+
GLM_FUNC_DECL vecType< T, P > bitfieldReverse(vecType< T, P > const &v)
Returns the reversal of the bits of value.
+
Definition: _noise.hpp:11
+ +
GLM_FUNC_DECL vecType< int, P > bitCount(vecType< T, P > const &v)
Returns the number of bits set to 1 in the binary representation of value.
+
GLM Core
+
GLM_FUNC_DECL void imulExtended(vecType< int, P > const &x, vecType< int, P > const &y, vecType< int, P > &msb, vecType< int, P > &lsb)
Multiplies 32-bit integers x and y, producing a 64-bit result.
+
GLM_FUNC_DECL vecType< int, P > findMSB(vecType< T, P > const &v)
Returns the bit number of the most significant bit in the binary representation of value...
+
GLM Core
+ +
+ + + + diff --git a/third_party/glm_test/doc/api/a00033.html b/third_party/glm_test/doc/api/a00033.html new file mode 100644 index 0000000000000..3fc46b074bb7f --- /dev/null +++ b/third_party/glm_test/doc/api/a00033.html @@ -0,0 +1,85 @@ + + + + + + +0.9.8: func_matrix.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
func_matrix.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class matType>
GLM_FUNC_DECL T determinant (matType< T, P > const &m)
 
template<typename T , precision P, template< typename, precision > class matType>
GLM_FUNC_DECL matType< T, P > inverse (matType< T, P > const &m)
 
template<typename T , precision P, template< typename, precision > class matType>
GLM_FUNC_DECL matType< T, P > matrixCompMult (matType< T, P > const &x, matType< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecTypeA, template< typename, precision > class vecTypeB>
GLM_FUNC_DECL detail::outerProduct_trait< T, P, vecTypeA, vecTypeB >::type outerProduct (vecTypeA< T, P > const &c, vecTypeB< T, P > const &r)
 
+

Detailed Description

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00033_source.html b/third_party/glm_test/doc/api/a00033_source.html new file mode 100644 index 0000000000000..c3a03bc434436 --- /dev/null +++ b/third_party/glm_test/doc/api/a00033_source.html @@ -0,0 +1,165 @@ + + + + + + +0.9.8: func_matrix.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
func_matrix.hpp
+
+
+Go to the documentation of this file.
1 
+
15 #pragma once
+
16 
+
17 // Dependencies
+
18 #include "../detail/precision.hpp"
+
19 #include "../detail/setup.hpp"
+
20 #include "../detail/type_mat.hpp"
+
21 #include "../vec2.hpp"
+
22 #include "../vec3.hpp"
+
23 #include "../vec4.hpp"
+
24 #include "../mat2x2.hpp"
+
25 #include "../mat2x3.hpp"
+
26 #include "../mat2x4.hpp"
+
27 #include "../mat3x2.hpp"
+
28 #include "../mat3x3.hpp"
+
29 #include "../mat3x4.hpp"
+
30 #include "../mat4x2.hpp"
+
31 #include "../mat4x3.hpp"
+
32 #include "../mat4x4.hpp"
+
33 
+
34 namespace glm{
+
35 namespace detail
+
36 {
+
37  template <typename T, precision P>
+
38  struct outerProduct_trait<T, P, tvec2, tvec2>
+
39  {
+
40  typedef tmat2x2<T, P> type;
+
41  };
+
42 
+
43  template <typename T, precision P>
+
44  struct outerProduct_trait<T, P, tvec2, tvec3>
+
45  {
+
46  typedef tmat3x2<T, P> type;
+
47  };
+
48 
+
49  template <typename T, precision P>
+
50  struct outerProduct_trait<T, P, tvec2, tvec4>
+
51  {
+
52  typedef tmat4x2<T, P> type;
+
53  };
+
54 
+
55  template <typename T, precision P>
+
56  struct outerProduct_trait<T, P, tvec3, tvec2>
+
57  {
+
58  typedef tmat2x3<T, P> type;
+
59  };
+
60 
+
61  template <typename T, precision P>
+
62  struct outerProduct_trait<T, P, tvec3, tvec3>
+
63  {
+
64  typedef tmat3x3<T, P> type;
+
65  };
+
66 
+
67  template <typename T, precision P>
+
68  struct outerProduct_trait<T, P, tvec3, tvec4>
+
69  {
+
70  typedef tmat4x3<T, P> type;
+
71  };
+
72 
+
73  template <typename T, precision P>
+
74  struct outerProduct_trait<T, P, tvec4, tvec2>
+
75  {
+
76  typedef tmat2x4<T, P> type;
+
77  };
+
78 
+
79  template <typename T, precision P>
+
80  struct outerProduct_trait<T, P, tvec4, tvec3>
+
81  {
+
82  typedef tmat3x4<T, P> type;
+
83  };
+
84 
+
85  template <typename T, precision P>
+
86  struct outerProduct_trait<T, P, tvec4, tvec4>
+
87  {
+
88  typedef tmat4x4<T, P> type;
+
89  };
+
90 
+
91 }//namespace detail
+
92 
+
95 
+
103  template <typename T, precision P, template <typename, precision> class matType>
+
104  GLM_FUNC_DECL matType<T, P> matrixCompMult(matType<T, P> const & x, matType<T, P> const & y);
+
105 
+
114  template <typename T, precision P, template <typename, precision> class vecTypeA, template <typename, precision> class vecTypeB>
+
115  GLM_FUNC_DECL typename detail::outerProduct_trait<T, P, vecTypeA, vecTypeB>::type outerProduct(vecTypeA<T, P> const & c, vecTypeB<T, P> const & r);
+
116 
+
123 # if((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2012))
+
124  template <typename T, precision P, template <typename, precision> class matType>
+
125  GLM_FUNC_DECL typename matType<T, P>::transpose_type transpose(matType<T, P> const & x);
+
126 # endif
+
127 
+
134  template <typename T, precision P, template <typename, precision> class matType>
+
135  GLM_FUNC_DECL T determinant(matType<T, P> const & m);
+
136 
+
143  template <typename T, precision P, template <typename, precision> class matType>
+
144  GLM_FUNC_DECL matType<T, P> inverse(matType<T, P> const & m);
+
145 
+
147 }//namespace glm
+
148 
+
149 #include "func_matrix.inl"
+
GLM_FUNC_DECL T determinant(matType< T, P > const &m)
Returns the transposed matrix of x.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL matType< T, P > inverse(matType< T, P > const &m)
Return the inverse of a squared matrix.
+
GLM_FUNC_DECL detail::outerProduct_trait< T, P, vecTypeA, vecTypeB >::type outerProduct(vecTypeA< T, P > const &c, vecTypeB< T, P > const &r)
Treats the first parameter c as a column vector and the second parameter r as a row vector and does a...
+
GLM_FUNC_DECL matType< T, P > matrixCompMult(matType< T, P > const &x, matType< T, P > const &y)
Multiply matrix x by matrix y component-wise, i.e., result[i][j] is the scalar product of x[i][j] and...
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00034.html b/third_party/glm_test/doc/api/a00034.html new file mode 100644 index 0000000000000..71f62da607062 --- /dev/null +++ b/third_party/glm_test/doc/api/a00034.html @@ -0,0 +1,99 @@ + + + + + + +0.9.8: func_packing.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
func_packing.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

GLM_FUNC_DECL double packDouble2x32 (uvec2 const &v)
 
GLM_FUNC_DECL uint packHalf2x16 (vec2 const &v)
 
GLM_FUNC_DECL uint packSnorm2x16 (vec2 const &v)
 
GLM_FUNC_DECL uint packSnorm4x8 (vec4 const &v)
 
GLM_FUNC_DECL uint packUnorm2x16 (vec2 const &v)
 
GLM_FUNC_DECL uint packUnorm4x8 (vec4 const &v)
 
GLM_FUNC_DECL uvec2 unpackDouble2x32 (double v)
 
GLM_FUNC_DECL vec2 unpackHalf2x16 (uint v)
 
GLM_FUNC_DECL vec2 unpackSnorm2x16 (uint p)
 
GLM_FUNC_DECL vec4 unpackSnorm4x8 (uint p)
 
GLM_FUNC_DECL vec2 unpackUnorm2x16 (uint p)
 
GLM_FUNC_DECL vec4 unpackUnorm4x8 (uint p)
 
+

Detailed Description

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00034_source.html b/third_party/glm_test/doc/api/a00034_source.html new file mode 100644 index 0000000000000..be7516293be2b --- /dev/null +++ b/third_party/glm_test/doc/api/a00034_source.html @@ -0,0 +1,115 @@ + + + + + + +0.9.8: func_packing.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
func_packing.hpp
+
+
+Go to the documentation of this file.
1 
+
12 #pragma once
+
13 
+
14 #include "type_vec2.hpp"
+
15 #include "type_vec4.hpp"
+
16 
+
17 namespace glm
+
18 {
+
21 
+
33  GLM_FUNC_DECL uint packUnorm2x16(vec2 const & v);
+
34 
+
46  GLM_FUNC_DECL uint packSnorm2x16(vec2 const & v);
+
47 
+
59  GLM_FUNC_DECL uint packUnorm4x8(vec4 const & v);
+
60 
+
72  GLM_FUNC_DECL uint packSnorm4x8(vec4 const & v);
+
73 
+
85  GLM_FUNC_DECL vec2 unpackUnorm2x16(uint p);
+
86 
+
98  GLM_FUNC_DECL vec2 unpackSnorm2x16(uint p);
+
99 
+
111  GLM_FUNC_DECL vec4 unpackUnorm4x8(uint p);
+
112 
+
124  GLM_FUNC_DECL vec4 unpackSnorm4x8(uint p);
+
125 
+
134  GLM_FUNC_DECL double packDouble2x32(uvec2 const & v);
+
135 
+
143  GLM_FUNC_DECL uvec2 unpackDouble2x32(double v);
+
144 
+
153  GLM_FUNC_DECL uint packHalf2x16(vec2 const & v);
+
154 
+
163  GLM_FUNC_DECL vec2 unpackHalf2x16(uint v);
+
164 
+
166 }//namespace glm
+
167 
+
168 #include "func_packing.inl"
+
GLM_FUNC_DECL uint packUnorm4x8(vec4 const &v)
First, converts each component of the normalized floating-point value v into 8- or 16-bit integer val...
+
highp_vec4 vec4
4 components vector of floating-point numbers.
Definition: type_vec.hpp:466
+
GLM_FUNC_DECL double packDouble2x32(uvec2 const &v)
Returns a double-precision value obtained by packing the components of v into a 64-bit value...
+
GLM_FUNC_DECL uint packHalf2x16(vec2 const &v)
Returns an unsigned integer obtained by converting the components of a two-component floating-point v...
+
unsigned int uint
Unsigned integer type.
Definition: type_int.hpp:288
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL vec4 unpackSnorm4x8(uint p)
First, unpacks a single 32-bit unsigned integer p into a pair of 16-bit unsigned integers, four 8-bit unsigned integers, or four 8-bit signed integers.
+
GLM Core
+
GLM_FUNC_DECL vec2 unpackHalf2x16(uint v)
Returns a two-component floating-point vector with components obtained by unpacking a 32-bit unsigned...
+
GLM_FUNC_DECL vec2 unpackUnorm2x16(uint p)
First, unpacks a single 32-bit unsigned integer p into a pair of 16-bit unsigned integers, four 8-bit unsigned integers, or four 8-bit signed integers.
+
GLM_FUNC_DECL uint packUnorm2x16(vec2 const &v)
First, converts each component of the normalized floating-point value v into 8- or 16-bit integer val...
+
GLM_FUNC_DECL uint packSnorm2x16(vec2 const &v)
First, converts each component of the normalized floating-point value v into 8- or 16-bit integer val...
+
GLM_FUNC_DECL vec2 unpackSnorm2x16(uint p)
First, unpacks a single 32-bit unsigned integer p into a pair of 16-bit unsigned integers, four 8-bit unsigned integers, or four 8-bit signed integers.
+
GLM_FUNC_DECL vec4 unpackUnorm4x8(uint p)
First, unpacks a single 32-bit unsigned integer p into a pair of 16-bit unsigned integers, four 8-bit unsigned integers, or four 8-bit signed integers.
+
highp_uvec2 uvec2
2 components vector of unsigned integer numbers.
Definition: type_vec.hpp:537
+
GLM Core
+
GLM_FUNC_DECL uvec2 unpackDouble2x32(double v)
Returns a two-component unsigned integer vector representation of v.
+
GLM_FUNC_DECL uint packSnorm4x8(vec4 const &v)
First, converts each component of the normalized floating-point value v into 8- or 16-bit integer val...
+
highp_vec2 vec2
2 components vector of floating-point numbers.
Definition: type_vec.hpp:456
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00035.html b/third_party/glm_test/doc/api/a00035.html new file mode 100644 index 0000000000000..7c3313d7a7c64 --- /dev/null +++ b/third_party/glm_test/doc/api/a00035.html @@ -0,0 +1,118 @@ + + + + + + +0.9.8: func_trigonometric.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
func_trigonometric.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > acos (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > acosh (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > asin (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > asinh (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > atan (vecType< T, P > const &y, vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > atan (vecType< T, P > const &y_over_x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > atanh (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > cos (vecType< T, P > const &angle)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > cosh (vecType< T, P > const &angle)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL GLM_CONSTEXPR vecType< T, P > degrees (vecType< T, P > const &radians)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL GLM_CONSTEXPR vecType< T, P > radians (vecType< T, P > const &degrees)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > sin (vecType< T, P > const &angle)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > sinh (vecType< T, P > const &angle)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > tan (vecType< T, P > const &angle)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > tanh (vecType< T, P > const &angle)
 
+

Detailed Description

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00035_source.html b/third_party/glm_test/doc/api/a00035_source.html new file mode 100644 index 0000000000000..0beb9f949fadb --- /dev/null +++ b/third_party/glm_test/doc/api/a00035_source.html @@ -0,0 +1,135 @@ + + + + + + +0.9.8: func_trigonometric.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
func_trigonometric.hpp
+
+
+Go to the documentation of this file.
1 
+
15 #pragma once
+
16 
+
17 #include "setup.hpp"
+
18 #include "precision.hpp"
+
19 
+
20 namespace glm
+
21 {
+
24 
+
31  template <typename T, precision P, template <typename, precision> class vecType>
+
32  GLM_FUNC_DECL GLM_CONSTEXPR vecType<T, P> radians(vecType<T, P> const & degrees);
+
33 
+
40  template <typename T, precision P, template <typename, precision> class vecType>
+
41  GLM_FUNC_DECL GLM_CONSTEXPR vecType<T, P> degrees(vecType<T, P> const & radians);
+
42 
+
50  template <typename T, precision P, template <typename, precision> class vecType>
+
51  GLM_FUNC_DECL vecType<T, P> sin(vecType<T, P> const & angle);
+
52 
+
60  template <typename T, precision P, template <typename, precision> class vecType>
+
61  GLM_FUNC_DECL vecType<T, P> cos(vecType<T, P> const & angle);
+
62 
+
69  template <typename T, precision P, template <typename, precision> class vecType>
+
70  GLM_FUNC_DECL vecType<T, P> tan(vecType<T, P> const & angle);
+
71 
+
80  template <typename T, precision P, template <typename, precision> class vecType>
+
81  GLM_FUNC_DECL vecType<T, P> asin(vecType<T, P> const & x);
+
82 
+
91  template <typename T, precision P, template <typename, precision> class vecType>
+
92  GLM_FUNC_DECL vecType<T, P> acos(vecType<T, P> const & x);
+
93 
+
104  template <typename T, precision P, template <typename, precision> class vecType>
+
105  GLM_FUNC_DECL vecType<T, P> atan(vecType<T, P> const & y, vecType<T, P> const & x);
+
106 
+
114  template <typename T, precision P, template <typename, precision> class vecType>
+
115  GLM_FUNC_DECL vecType<T, P> atan(vecType<T, P> const & y_over_x);
+
116 
+
123  template <typename T, precision P, template <typename, precision> class vecType>
+
124  GLM_FUNC_DECL vecType<T, P> sinh(vecType<T, P> const & angle);
+
125 
+
132  template <typename T, precision P, template <typename, precision> class vecType>
+
133  GLM_FUNC_DECL vecType<T, P> cosh(vecType<T, P> const & angle);
+
134 
+
141  template <typename T, precision P, template <typename, precision> class vecType>
+
142  GLM_FUNC_DECL vecType<T, P> tanh(vecType<T, P> const & angle);
+
143 
+
150  template <typename T, precision P, template <typename, precision> class vecType>
+
151  GLM_FUNC_DECL vecType<T, P> asinh(vecType<T, P> const & x);
+
152 
+
160  template <typename T, precision P, template <typename, precision> class vecType>
+
161  GLM_FUNC_DECL vecType<T, P> acosh(vecType<T, P> const & x);
+
162 
+
170  template <typename T, precision P, template <typename, precision> class vecType>
+
171  GLM_FUNC_DECL vecType<T, P> atanh(vecType<T, P> const & x);
+
172 
+
174 }//namespace glm
+
175 
+
176 #include "func_trigonometric.inl"
+
GLM_FUNC_DECL vecType< T, P > tan(vecType< T, P > const &angle)
The standard trigonometric tangent function.
+
GLM_FUNC_DECL vecType< T, P > sin(vecType< T, P > const &angle)
The standard trigonometric sine function.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL vecType< T, P > atan(vecType< T, P > const &y_over_x)
Arc tangent.
+
GLM_FUNC_DECL vecType< T, P > atanh(vecType< T, P > const &x)
Arc hyperbolic tangent; returns the inverse of tanh.
+
GLM_FUNC_DECL vecType< T, P > cosh(vecType< T, P > const &angle)
Returns the hyperbolic cosine function, (exp(x) + exp(-x)) / 2.
+
GLM_FUNC_DECL vecType< T, P > sinh(vecType< T, P > const &angle)
Returns the hyperbolic sine function, (exp(x) - exp(-x)) / 2.
+
GLM_FUNC_DECL vecType< T, P > acos(vecType< T, P > const &x)
Arc cosine.
+
GLM_FUNC_DECL vecType< T, P > asinh(vecType< T, P > const &x)
Arc hyperbolic sine; returns the inverse of sinh.
+
GLM Core
+
GLM_FUNC_DECL GLM_CONSTEXPR vecType< T, P > degrees(vecType< T, P > const &radians)
Converts radians to degrees and returns the result.
+
GLM_FUNC_DECL T angle(tquat< T, P > const &x)
Returns the quaternion rotation angle.
+
GLM_FUNC_DECL vecType< T, P > asin(vecType< T, P > const &x)
Arc sine.
+
GLM_FUNC_DECL vecType< T, P > tanh(vecType< T, P > const &angle)
Returns the hyperbolic tangent function, sinh(angle) / cosh(angle)
+
GLM_FUNC_DECL vecType< T, P > acosh(vecType< T, P > const &x)
Arc hyperbolic cosine; returns the non-negative inverse of cosh.
+
GLM_FUNC_DECL vecType< T, P > cos(vecType< T, P > const &angle)
The standard trigonometric cosine function.
+
GLM Core
+
GLM_FUNC_DECL GLM_CONSTEXPR vecType< T, P > radians(vecType< T, P > const &degrees)
Converts degrees to radians and returns the result.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00036.html b/third_party/glm_test/doc/api/a00036.html new file mode 100644 index 0000000000000..d05b9de73a082 --- /dev/null +++ b/third_party/glm_test/doc/api/a00036.html @@ -0,0 +1,100 @@ + + + + + + +0.9.8: func_vector_relational.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
func_vector_relational.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL bool all (vecType< bool, P > const &v)
 
template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL bool any (vecType< bool, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > equal (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > greaterThan (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > greaterThanEqual (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > lessThan (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > lessThanEqual (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > not_ (vecType< bool, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > notEqual (vecType< T, P > const &x, vecType< T, P > const &y)
 
+

Detailed Description

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00036_source.html b/third_party/glm_test/doc/api/a00036_source.html new file mode 100644 index 0000000000000..6ee0fa2c228d1 --- /dev/null +++ b/third_party/glm_test/doc/api/a00036_source.html @@ -0,0 +1,111 @@ + + + + + + +0.9.8: func_vector_relational.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
func_vector_relational.hpp
+
+
+Go to the documentation of this file.
1 
+
16 #pragma once
+
17 
+
18 #include "precision.hpp"
+
19 #include "setup.hpp"
+
20 
+
21 namespace glm
+
22 {
+
25 
+
32  template <typename T, precision P, template <typename, precision> class vecType>
+
33  GLM_FUNC_DECL vecType<bool, P> lessThan(vecType<T, P> const & x, vecType<T, P> const & y);
+
34 
+
41  template <typename T, precision P, template <typename, precision> class vecType>
+
42  GLM_FUNC_DECL vecType<bool, P> lessThanEqual(vecType<T, P> const & x, vecType<T, P> const & y);
+
43 
+
50  template <typename T, precision P, template <typename, precision> class vecType>
+
51  GLM_FUNC_DECL vecType<bool, P> greaterThan(vecType<T, P> const & x, vecType<T, P> const & y);
+
52 
+
59  template <typename T, precision P, template <typename, precision> class vecType>
+
60  GLM_FUNC_DECL vecType<bool, P> greaterThanEqual(vecType<T, P> const & x, vecType<T, P> const & y);
+
61 
+
68  template <typename T, precision P, template <typename, precision> class vecType>
+
69  GLM_FUNC_DECL vecType<bool, P> equal(vecType<T, P> const & x, vecType<T, P> const & y);
+
70 
+
77  template <typename T, precision P, template <typename, precision> class vecType>
+
78  GLM_FUNC_DECL vecType<bool, P> notEqual(vecType<T, P> const & x, vecType<T, P> const & y);
+
79 
+
86  template <precision P, template <typename, precision> class vecType>
+
87  GLM_FUNC_DECL bool any(vecType<bool, P> const & v);
+
88 
+
95  template <precision P, template <typename, precision> class vecType>
+
96  GLM_FUNC_DECL bool all(vecType<bool, P> const & v);
+
97 
+
105  template <precision P, template <typename, precision> class vecType>
+
106  GLM_FUNC_DECL vecType<bool, P> not_(vecType<bool, P> const & v);
+
107 
+
109 }//namespace glm
+
110 
+
111 #include "func_vector_relational.inl"
+
GLM_FUNC_DECL vecType< bool, P > notEqual(vecType< T, P > const &x, vecType< T, P > const &y)
Returns the component-wise comparison of result x != y.
+
GLM_FUNC_DECL vecType< bool, P > greaterThan(vecType< T, P > const &x, vecType< T, P > const &y)
Returns the component-wise comparison of result x > y.
+
GLM_FUNC_DECL vecType< bool, P > equal(vecType< T, P > const &x, vecType< T, P > const &y)
Returns the component-wise comparison of result x == y.
+
GLM_FUNC_DECL vecType< bool, P > lessThan(vecType< T, P > const &x, vecType< T, P > const &y)
Returns the component-wise comparison result of x < y.
+
GLM_FUNC_DECL bool any(vecType< bool, P > const &v)
Returns true if any component of x is true.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL vecType< bool, P > greaterThanEqual(vecType< T, P > const &x, vecType< T, P > const &y)
Returns the component-wise comparison of result x >= y.
+
GLM Core
+
GLM_FUNC_DECL bool all(vecType< bool, P > const &v)
Returns true if all components of x are true.
+
GLM_FUNC_DECL vecType< bool, P > lessThanEqual(vecType< T, P > const &x, vecType< T, P > const &y)
Returns the component-wise comparison of result x <= y.
+
GLM Core
+
GLM_FUNC_DECL vecType< bool, P > not_(vecType< bool, P > const &v)
Returns the component-wise logical complement of x.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00037.html b/third_party/glm_test/doc/api/a00037.html new file mode 100644 index 0000000000000..61979e1a2418a --- /dev/null +++ b/third_party/glm_test/doc/api/a00037.html @@ -0,0 +1,83 @@ + + + + + + +0.9.8: functions.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
functions.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL T gauss (T x, T ExpectedValue, T StandardDeviation)
 
template<typename T , precision P>
GLM_FUNC_DECL T gauss (tvec2< T, P > const &Coord, tvec2< T, P > const &ExpectedValue, tvec2< T, P > const &StandardDeviation)
 
+

Detailed Description

+

GLM_GTC_functions

+
See also
GLM Core (dependence)
+
+gtc_half_float (dependence)
+
+GLM_GTC_quaternion (dependence)
+ +

Definition in file functions.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00037_source.html b/third_party/glm_test/doc/api/a00037_source.html new file mode 100644 index 0000000000000..ea52ded7bf712 --- /dev/null +++ b/third_party/glm_test/doc/api/a00037_source.html @@ -0,0 +1,93 @@ + + + + + + +0.9.8: functions.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
functions.hpp
+
+
+Go to the documentation of this file.
1 
+
15 #pragma once
+
16 
+
17 // Dependencies
+
18 #include "../detail/setup.hpp"
+
19 #include "../detail/precision.hpp"
+
20 #include "../detail/type_vec2.hpp"
+
21 
+
22 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
23 # pragma message("GLM: GLM_GTC_functions extension included")
+
24 #endif
+
25 
+
26 namespace glm
+
27 {
+
30 
+
34  template <typename T>
+
35  GLM_FUNC_DECL T gauss(
+
36  T x,
+
37  T ExpectedValue,
+
38  T StandardDeviation);
+
39 
+
43  template <typename T, precision P>
+
44  GLM_FUNC_DECL T gauss(
+
45  tvec2<T, P> const& Coord,
+
46  tvec2<T, P> const& ExpectedValue,
+
47  tvec2<T, P> const& StandardDeviation);
+
48 
+
50 }//namespace glm
+
51 
+
52 #include "functions.inl"
+
53 
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL T gauss(tvec2< T, P > const &Coord, tvec2< T, P > const &ExpectedValue, tvec2< T, P > const &StandardDeviation)
2D gauss function
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00038.html b/third_party/glm_test/doc/api/a00038.html new file mode 100644 index 0000000000000..9573eab22215d --- /dev/null +++ b/third_party/glm_test/doc/api/a00038.html @@ -0,0 +1,979 @@ + + + + + + +0.9.8: fwd.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
fwd.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef highp_dquat dquat
 
typedef highp_float32_t f32
 
typedef f32mat2x2 f32mat2
 
typedef highp_f32mat2x2 f32mat2x2
 
typedef highp_f32mat2x3 f32mat2x3
 
typedef highp_f32mat2x4 f32mat2x4
 
typedef f32mat3x3 f32mat3
 
typedef highp_f32mat3x2 f32mat3x2
 
typedef highp_f32mat3x3 f32mat3x3
 
typedef highp_f32mat3x4 f32mat3x4
 
typedef f32mat4x4 f32mat4
 
typedef highp_f32mat4x2 f32mat4x2
 
typedef highp_f32mat4x3 f32mat4x3
 
typedef highp_f32mat4x4 f32mat4x4
 
typedef highp_f32quat f32quat
 
typedef highp_f32vec1 f32vec1
 
typedef highp_f32vec2 f32vec2
 
typedef highp_f32vec3 f32vec3
 
typedef highp_f32vec4 f32vec4
 
typedef highp_float64_t f64
 
typedef f64mat2x2 f64mat2
 
typedef highp_f64mat2x2 f64mat2x2
 
typedef highp_f64mat2x3 f64mat2x3
 
typedef highp_f64mat2x4 f64mat2x4
 
typedef f64mat3x3 f64mat3
 
typedef highp_f64mat3x2 f64mat3x2
 
typedef highp_f64mat3x3 f64mat3x3
 
typedef highp_f64mat3x4 f64mat3x4
 
typedef f64mat4x4 f64mat4
 
typedef highp_f64mat4x2 f64mat4x2
 
typedef highp_f64mat4x3 f64mat4x3
 
typedef highp_f64mat4x4 f64mat4x4
 
typedef highp_f64quat f64quat
 
typedef highp_f64vec1 f64vec1
 
typedef highp_f64vec2 f64vec2
 
typedef highp_f64vec3 f64vec3
 
typedef highp_f64vec4 f64vec4
 
typedef highp_float32_t float32_t
 
typedef highp_float64_t float64_t
 
typedef fmat2x2 fmat2
 
typedef highp_f32mat2x2 fmat2x2
 
typedef highp_f32mat2x3 fmat2x3
 
typedef highp_f32mat2x4 fmat2x4
 
typedef fmat3x3 fmat3
 
typedef highp_f32mat3x2 fmat3x2
 
typedef highp_f32mat3x3 fmat3x3
 
typedef highp_f32mat3x4 fmat3x4
 
typedef fmat4x4 fmat4
 
typedef highp_f32mat4x2 fmat4x2
 
typedef highp_f32mat4x3 fmat4x3
 
typedef highp_f32mat4x4 fmat4x4
 
typedef quat fquat
 
typedef highp_f32vec1 fvec1
 
typedef highp_f32vec2 fvec2
 
typedef highp_f32vec3 fvec3
 
typedef highp_f32vec4 fvec4
 
typedef tquat< double, highp > highp_dquat
 
typedef float32 highp_f32
 
typedef highp_f32mat2x2 highp_f32mat2
 
typedef tmat2x2< f32, highp > highp_f32mat2x2
 
typedef tmat2x3< f32, highp > highp_f32mat2x3
 
typedef tmat2x4< f32, highp > highp_f32mat2x4
 
typedef highp_f32mat3x3 highp_f32mat3
 
typedef tmat3x2< f32, highp > highp_f32mat3x2
 
typedef tmat3x3< f32, highp > highp_f32mat3x3
 
typedef tmat3x4< f32, highp > highp_f32mat3x4
 
typedef highp_f32mat4x4 highp_f32mat4
 
typedef tmat4x2< f32, highp > highp_f32mat4x2
 
typedef tmat4x3< f32, highp > highp_f32mat4x3
 
typedef tmat4x4< f32, highp > highp_f32mat4x4
 
typedef tquat< f32, highp > highp_f32quat
 
typedef tvec1< f32, highp > highp_f32vec1
 
typedef tvec2< f32, highp > highp_f32vec2
 
typedef tvec3< f32, highp > highp_f32vec3
 
typedef tvec4< f32, highp > highp_f32vec4
 
typedef float64 highp_f64
 
typedef highp_f64mat2x2 highp_f64mat2
 
typedef tmat2x2< f64, highp > highp_f64mat2x2
 
typedef tmat2x3< f64, highp > highp_f64mat2x3
 
typedef tmat2x4< f64, highp > highp_f64mat2x4
 
typedef highp_f64mat3x3 highp_f64mat3
 
typedef tmat3x2< f64, highp > highp_f64mat3x2
 
typedef tmat3x3< f64, highp > highp_f64mat3x3
 
typedef tmat3x4< f64, highp > highp_f64mat3x4
 
typedef highp_f64mat4x4 highp_f64mat4
 
typedef tmat4x2< f64, highp > highp_f64mat4x2
 
typedef tmat4x3< f64, highp > highp_f64mat4x3
 
typedef tmat4x4< f64, highp > highp_f64mat4x4
 
typedef tquat< f64, highp > highp_f64quat
 
typedef tvec1< f64, highp > highp_f64vec1
 
typedef tvec2< f64, highp > highp_f64vec2
 
typedef tvec3< f64, highp > highp_f64vec3
 
typedef tvec4< f64, highp > highp_f64vec4
 
typedef detail::float32 highp_float32
 
typedef detail::float32 highp_float32_t
 
typedef detail::float64 highp_float64
 
typedef detail::float64 highp_float64_t
 
typedef highp_fmat2x2 highp_fmat2
 
typedef tmat2x2< f32, highp > highp_fmat2x2
 
typedef tmat2x3< f32, highp > highp_fmat2x3
 
typedef tmat2x4< f32, highp > highp_fmat2x4
 
typedef highp_fmat3x3 highp_fmat3
 
typedef tmat3x2< f32, highp > highp_fmat3x2
 
typedef tmat3x3< f32, highp > highp_fmat3x3
 
typedef tmat3x4< f32, highp > highp_fmat3x4
 
typedef highp_fmat4x4 highp_fmat4
 
typedef tmat4x2< f32, highp > highp_fmat4x2
 
typedef tmat4x3< f32, highp > highp_fmat4x3
 
typedef tmat4x4< f32, highp > highp_fmat4x4
 
typedef highp_quat highp_fquat
 
typedef tvec1< float, highp > highp_fvec1
 
typedef tvec2< float, highp > highp_fvec2
 
typedef tvec3< float, highp > highp_fvec3
 
typedef tvec4< float, highp > highp_fvec4
 
typedef detail::int16 highp_i16
 
typedef tvec1< i16, highp > highp_i16vec1
 
typedef tvec2< i16, highp > highp_i16vec2
 
typedef tvec3< i16, highp > highp_i16vec3
 
typedef tvec4< i16, highp > highp_i16vec4
 
typedef detail::int32 highp_i32
 
typedef tvec1< i32, highp > highp_i32vec1
 
typedef tvec2< i32, highp > highp_i32vec2
 
typedef tvec3< i32, highp > highp_i32vec3
 
typedef tvec4< i32, highp > highp_i32vec4
 
typedef detail::int64 highp_i64
 
typedef tvec1< i64, highp > highp_i64vec1
 
typedef tvec2< i64, highp > highp_i64vec2
 
typedef tvec3< i64, highp > highp_i64vec3
 
typedef tvec4< i64, highp > highp_i64vec4
 
typedef detail::int8 highp_i8
 
typedef tvec1< i8, highp > highp_i8vec1
 
typedef tvec2< i8, highp > highp_i8vec2
 
typedef tvec3< i8, highp > highp_i8vec3
 
typedef tvec4< i8, highp > highp_i8vec4
 
typedef detail::int16 highp_int16
 
typedef detail::int16 highp_int16_t
 
typedef detail::int32 highp_int32
 
typedef detail::int32 highp_int32_t
 
typedef detail::int64 highp_int64
 
typedef detail::int64 highp_int64_t
 
typedef detail::int8 highp_int8
 
typedef detail::int8 highp_int8_t
 
typedef tquat< float, highp > highp_quat
 
typedef detail::uint16 highp_u16
 
typedef tvec1< u16, highp > highp_u16vec1
 
typedef tvec2< u16, highp > highp_u16vec2
 
typedef tvec3< u16, highp > highp_u16vec3
 
typedef tvec4< u16, highp > highp_u16vec4
 
typedef detail::uint32 highp_u32
 
typedef tvec1< u32, highp > highp_u32vec1
 
typedef tvec2< u32, highp > highp_u32vec2
 
typedef tvec3< u32, highp > highp_u32vec3
 
typedef tvec4< u32, highp > highp_u32vec4
 
typedef detail::uint64 highp_u64
 
typedef tvec1< u64, highp > highp_u64vec1
 
typedef tvec2< u64, highp > highp_u64vec2
 
typedef tvec3< u64, highp > highp_u64vec3
 
typedef tvec4< u64, highp > highp_u64vec4
 
typedef detail::uint8 highp_u8
 
typedef tvec1< u8, highp > highp_u8vec1
 
typedef tvec2< u8, highp > highp_u8vec2
 
typedef tvec3< u8, highp > highp_u8vec3
 
typedef tvec4< u8, highp > highp_u8vec4
 
typedef detail::uint16 highp_uint16
 
typedef detail::uint16 highp_uint16_t
 
typedef detail::uint32 highp_uint32
 
typedef detail::uint32 highp_uint32_t
 
typedef detail::uint64 highp_uint64
 
typedef detail::uint64 highp_uint64_t
 
typedef detail::uint8 highp_uint8
 
typedef detail::uint8 highp_uint8_t
 
typedef tvec1< float, highp > highp_vec1
 
typedef detail::int16 i16
 
typedef highp_i16vec1 i16vec1
 
typedef highp_i16vec2 i16vec2
 
typedef highp_i16vec3 i16vec3
 
typedef highp_i16vec4 i16vec4
 
typedef detail::int32 i32
 
typedef highp_i32vec1 i32vec1
 
typedef highp_i32vec2 i32vec2
 
typedef highp_i32vec3 i32vec3
 
typedef highp_i32vec4 i32vec4
 
typedef detail::int64 i64
 
typedef highp_i64vec1 i64vec1
 
typedef highp_i64vec2 i64vec2
 
typedef highp_i64vec3 i64vec3
 
typedef highp_i64vec4 i64vec4
 
typedef detail::int8 i8
 
typedef highp_i8vec1 i8vec1
 
typedef highp_i8vec2 i8vec2
 
typedef highp_i8vec3 i8vec3
 
typedef highp_i8vec4 i8vec4
 
typedef detail::int16 int16_t
 
typedef detail::int32 int32_t
 
typedef detail::int64 int64_t
 
typedef detail::int8 int8_t
 
typedef tquat< double, lowp > lowp_dquat
 
typedef float32 lowp_f32
 
typedef lowp_f32mat2x2 lowp_f32mat2
 
typedef tmat2x2< f32, lowp > lowp_f32mat2x2
 
typedef tmat2x3< f32, lowp > lowp_f32mat2x3
 
typedef tmat2x4< f32, lowp > lowp_f32mat2x4
 
typedef lowp_f32mat3x3 lowp_f32mat3
 
typedef tmat3x2< f32, lowp > lowp_f32mat3x2
 
typedef tmat3x3< f32, lowp > lowp_f32mat3x3
 
typedef tmat3x4< f32, lowp > lowp_f32mat3x4
 
typedef lowp_f32mat4x4 lowp_f32mat4
 
typedef tmat4x2< f32, lowp > lowp_f32mat4x2
 
typedef tmat4x3< f32, lowp > lowp_f32mat4x3
 
typedef tmat4x4< f32, lowp > lowp_f32mat4x4
 
typedef tquat< f32, lowp > lowp_f32quat
 
typedef tvec1< f32, lowp > lowp_f32vec1
 
typedef tvec2< f32, lowp > lowp_f32vec2
 
typedef tvec3< f32, lowp > lowp_f32vec3
 
typedef tvec4< f32, lowp > lowp_f32vec4
 
typedef float64 lowp_f64
 
typedef lowp_f64mat2x2 lowp_f64mat2
 
typedef tmat2x2< f64, lowp > lowp_f64mat2x2
 
typedef tmat2x3< f64, lowp > lowp_f64mat2x3
 
typedef tmat2x4< f64, lowp > lowp_f64mat2x4
 
typedef lowp_f64mat3x3 lowp_f64mat3
 
typedef tmat3x2< f64, lowp > lowp_f64mat3x2
 
typedef tmat3x3< f64, lowp > lowp_f64mat3x3
 
typedef tmat3x4< f64, lowp > lowp_f64mat3x4
 
typedef lowp_f64mat4x4 lowp_f64mat4
 
typedef tmat4x2< f64, lowp > lowp_f64mat4x2
 
typedef tmat4x3< f64, lowp > lowp_f64mat4x3
 
typedef tmat4x4< f64, lowp > lowp_f64mat4x4
 
typedef tquat< f64, lowp > lowp_f64quat
 
typedef tvec1< f64, lowp > lowp_f64vec1
 
typedef tvec2< f64, lowp > lowp_f64vec2
 
typedef tvec3< f64, lowp > lowp_f64vec3
 
typedef tvec4< f64, lowp > lowp_f64vec4
 
typedef detail::float32 lowp_float32
 
typedef detail::float32 lowp_float32_t
 
typedef detail::float64 lowp_float64
 
typedef detail::float64 lowp_float64_t
 
typedef lowp_fmat2x2 lowp_fmat2
 
typedef tmat2x2< f32, lowp > lowp_fmat2x2
 
typedef tmat2x3< f32, lowp > lowp_fmat2x3
 
typedef tmat2x4< f32, lowp > lowp_fmat2x4
 
typedef lowp_fmat3x3 lowp_fmat3
 
typedef tmat3x2< f32, lowp > lowp_fmat3x2
 
typedef tmat3x3< f32, lowp > lowp_fmat3x3
 
typedef tmat3x4< f32, lowp > lowp_fmat3x4
 
typedef lowp_fmat4x4 lowp_fmat4
 
typedef tmat4x2< f32, lowp > lowp_fmat4x2
 
typedef tmat4x3< f32, lowp > lowp_fmat4x3
 
typedef tmat4x4< f32, lowp > lowp_fmat4x4
 
typedef lowp_quat lowp_fquat
 
typedef tvec1< float, lowp > lowp_fvec1
 
typedef tvec2< float, lowp > lowp_fvec2
 
typedef tvec3< float, lowp > lowp_fvec3
 
typedef tvec4< float, lowp > lowp_fvec4
 
typedef detail::int16 lowp_i16
 
typedef tvec1< i16, lowp > lowp_i16vec1
 
typedef tvec2< i16, lowp > lowp_i16vec2
 
typedef tvec3< i16, lowp > lowp_i16vec3
 
typedef tvec4< i16, lowp > lowp_i16vec4
 
typedef detail::int32 lowp_i32
 
typedef tvec1< i32, lowp > lowp_i32vec1
 
typedef tvec2< i32, lowp > lowp_i32vec2
 
typedef tvec3< i32, lowp > lowp_i32vec3
 
typedef tvec4< i32, lowp > lowp_i32vec4
 
typedef detail::int64 lowp_i64
 
typedef tvec1< i64, lowp > lowp_i64vec1
 
typedef tvec2< i64, lowp > lowp_i64vec2
 
typedef tvec3< i64, lowp > lowp_i64vec3
 
typedef tvec4< i64, lowp > lowp_i64vec4
 
typedef detail::int8 lowp_i8
 
typedef tvec1< i8, lowp > lowp_i8vec1
 
typedef tvec2< i8, lowp > lowp_i8vec2
 
typedef tvec3< i8, lowp > lowp_i8vec3
 
typedef tvec4< i8, lowp > lowp_i8vec4
 
typedef detail::int16 lowp_int16
 
typedef detail::int16 lowp_int16_t
 
typedef detail::int32 lowp_int32
 
typedef detail::int32 lowp_int32_t
 
typedef detail::int64 lowp_int64
 
typedef detail::int64 lowp_int64_t
 
typedef detail::int8 lowp_int8
 
typedef detail::int8 lowp_int8_t
 
typedef tquat< float, lowp > lowp_quat
 
typedef detail::uint16 lowp_u16
 
typedef tvec1< u16, lowp > lowp_u16vec1
 
typedef tvec2< u16, lowp > lowp_u16vec2
 
typedef tvec3< u16, lowp > lowp_u16vec3
 
typedef tvec4< u16, lowp > lowp_u16vec4
 
typedef detail::uint32 lowp_u32
 
typedef tvec1< u32, lowp > lowp_u32vec1
 
typedef tvec2< u32, lowp > lowp_u32vec2
 
typedef tvec3< u32, lowp > lowp_u32vec3
 
typedef tvec4< u32, lowp > lowp_u32vec4
 
typedef detail::uint64 lowp_u64
 
typedef tvec1< u64, lowp > lowp_u64vec1
 
typedef tvec2< u64, lowp > lowp_u64vec2
 
typedef tvec3< u64, lowp > lowp_u64vec3
 
typedef tvec4< u64, lowp > lowp_u64vec4
 
typedef detail::uint8 lowp_u8
 
typedef tvec1< u8, lowp > lowp_u8vec1
 
typedef tvec2< u8, lowp > lowp_u8vec2
 
typedef tvec3< u8, lowp > lowp_u8vec3
 
typedef tvec4< u8, lowp > lowp_u8vec4
 
typedef detail::uint16 lowp_uint16
 
typedef detail::uint16 lowp_uint16_t
 
typedef detail::uint32 lowp_uint32
 
typedef detail::uint32 lowp_uint32_t
 
typedef detail::uint64 lowp_uint64
 
typedef detail::uint64 lowp_uint64_t
 
typedef detail::uint8 lowp_uint8
 
typedef detail::uint8 lowp_uint8_t
 
typedef tvec1< float, lowp > lowp_vec1
 
typedef tquat< double, mediump > mediump_dquat
 
typedef float32 mediump_f32
 
typedef mediump_f32mat2x2 mediump_f32mat2
 
typedef tmat2x2< f32, mediump > mediump_f32mat2x2
 
typedef tmat2x3< f32, mediump > mediump_f32mat2x3
 
typedef tmat2x4< f32, mediump > mediump_f32mat2x4
 
typedef mediump_f32mat3x3 mediump_f32mat3
 
typedef tmat3x2< f32, mediump > mediump_f32mat3x2
 
typedef tmat3x3< f32, mediump > mediump_f32mat3x3
 
typedef tmat3x4< f32, mediump > mediump_f32mat3x4
 
typedef mediump_f32mat4x4 mediump_f32mat4
 
typedef tmat4x2< f32, mediump > mediump_f32mat4x2
 
typedef tmat4x3< f32, mediump > mediump_f32mat4x3
 
typedef tmat4x4< f32, mediump > mediump_f32mat4x4
 
typedef tquat< f32, mediump > mediump_f32quat
 
typedef tvec1< f32, mediump > mediump_f32vec1
 
typedef tvec2< f32, mediump > mediump_f32vec2
 
typedef tvec3< f32, mediump > mediump_f32vec3
 
typedef tvec4< f32, mediump > mediump_f32vec4
 
typedef float64 mediump_f64
 
typedef mediump_f64mat2x2 mediump_f64mat2
 
typedef tmat2x2< f64, mediump > mediump_f64mat2x2
 
typedef tmat2x3< f64, mediump > mediump_f64mat2x3
 
typedef tmat2x4< f64, mediump > mediump_f64mat2x4
 
typedef mediump_f64mat3x3 mediump_f64mat3
 
typedef tmat3x2< f64, mediump > mediump_f64mat3x2
 
typedef tmat3x3< f64, mediump > mediump_f64mat3x3
 
typedef tmat3x4< f64, mediump > mediump_f64mat3x4
 
typedef mediump_f64mat4x4 mediump_f64mat4
 
typedef tmat4x2< f64, mediump > mediump_f64mat4x2
 
typedef tmat4x3< f64, mediump > mediump_f64mat4x3
 
typedef tmat4x4< f64, mediump > mediump_f64mat4x4
 
typedef tquat< f64, mediump > mediump_f64quat
 
typedef tvec1< f64, mediump > mediump_f64vec1
 
typedef tvec2< f64, mediump > mediump_f64vec2
 
typedef tvec3< f64, mediump > mediump_f64vec3
 
typedef tvec4< f64, mediump > mediump_f64vec4
 
typedef detail::float32 mediump_float32
 
typedef detail::float32 mediump_float32_t
 
typedef detail::float64 mediump_float64
 
typedef detail::float64 mediump_float64_t
 
typedef mediump_fmat2x2 mediump_fmat2
 
typedef tmat2x2< f32, mediump > mediump_fmat2x2
 
typedef tmat2x3< f32, mediump > mediump_fmat2x3
 
typedef tmat2x4< f32, mediump > mediump_fmat2x4
 
typedef mediump_fmat3x3 mediump_fmat3
 
typedef tmat3x2< f32, mediump > mediump_fmat3x2
 
typedef tmat3x3< f32, mediump > mediump_fmat3x3
 
typedef tmat3x4< f32, mediump > mediump_fmat3x4
 
typedef mediump_fmat4x4 mediump_fmat4
 
typedef tmat4x2< f32, mediump > mediump_fmat4x2
 
typedef tmat4x3< f32, mediump > mediump_fmat4x3
 
typedef tmat4x4< f32, mediump > mediump_fmat4x4
 
typedef mediump_quat mediump_fquat
 
typedef tvec1< float, mediump > mediump_fvec1
 
typedef tvec2< float, mediump > mediump_fvec2
 
typedef tvec3< float, mediump > mediump_fvec3
 
typedef tvec4< float, mediump > mediump_fvec4
 
typedef detail::int16 mediump_i16
 
typedef tvec1< i16, mediump > mediump_i16vec1
 
typedef tvec2< i16, mediump > mediump_i16vec2
 
typedef tvec3< i16, mediump > mediump_i16vec3
 
typedef tvec4< i16, mediump > mediump_i16vec4
 
typedef detail::int32 mediump_i32
 
typedef tvec1< i32, mediump > mediump_i32vec1
 
typedef tvec2< i32, mediump > mediump_i32vec2
 
typedef tvec3< i32, mediump > mediump_i32vec3
 
typedef tvec4< i32, mediump > mediump_i32vec4
 
typedef detail::int64 mediump_i64
 
typedef tvec1< i64, mediump > mediump_i64vec1
 
typedef tvec2< i64, mediump > mediump_i64vec2
 
typedef tvec3< i64, mediump > mediump_i64vec3
 
typedef tvec4< i64, mediump > mediump_i64vec4
 
typedef detail::int8 mediump_i8
 
typedef tvec1< i8, mediump > mediump_i8vec1
 
typedef tvec2< i8, mediump > mediump_i8vec2
 
typedef tvec3< i8, mediump > mediump_i8vec3
 
typedef tvec4< i8, mediump > mediump_i8vec4
 
typedef detail::int16 mediump_int16
 
typedef detail::int16 mediump_int16_t
 
typedef detail::int32 mediump_int32
 
typedef detail::int32 mediump_int32_t
 
typedef detail::int64 mediump_int64
 
typedef detail::int64 mediump_int64_t
 
typedef detail::int8 mediump_int8
 
typedef detail::int8 mediump_int8_t
 
typedef tquat< float, mediump > mediump_quat
 
typedef detail::uint16 mediump_u16
 
typedef tvec1< u16, mediump > mediump_u16vec1
 
typedef tvec2< u16, mediump > mediump_u16vec2
 
typedef tvec3< u16, mediump > mediump_u16vec3
 
typedef tvec4< u16, mediump > mediump_u16vec4
 
typedef detail::uint32 mediump_u32
 
typedef tvec1< u32, mediump > mediump_u32vec1
 
typedef tvec2< u32, mediump > mediump_u32vec2
 
typedef tvec3< u32, mediump > mediump_u32vec3
 
typedef tvec4< u32, mediump > mediump_u32vec4
 
typedef detail::uint64 mediump_u64
 
typedef tvec1< u64, mediump > mediump_u64vec1
 
typedef tvec2< u64, mediump > mediump_u64vec2
 
typedef tvec3< u64, mediump > mediump_u64vec3
 
typedef tvec4< u64, mediump > mediump_u64vec4
 
typedef detail::uint8 mediump_u8
 
typedef tvec1< u8, mediump > mediump_u8vec1
 
typedef tvec2< u8, mediump > mediump_u8vec2
 
typedef tvec3< u8, mediump > mediump_u8vec3
 
typedef tvec4< u8, mediump > mediump_u8vec4
 
typedef detail::uint16 mediump_uint16
 
typedef detail::uint16 mediump_uint16_t
 
typedef detail::uint32 mediump_uint32
 
typedef detail::uint32 mediump_uint32_t
 
typedef detail::uint64 mediump_uint64
 
typedef detail::uint64 mediump_uint64_t
 
typedef detail::uint8 mediump_uint8
 
typedef detail::uint8 mediump_uint8_t
 
typedef tvec1< float, mediump > mediump_vec1
 
+typedef highp_quat quat
 
typedef detail::uint16 u16
 
typedef highp_u16vec1 u16vec1
 
typedef highp_u16vec2 u16vec2
 
typedef highp_u16vec3 u16vec3
 
typedef highp_u16vec4 u16vec4
 
typedef detail::uint32 u32
 
typedef highp_u32vec1 u32vec1
 
typedef highp_u32vec2 u32vec2
 
typedef highp_u32vec3 u32vec3
 
typedef highp_u32vec4 u32vec4
 
typedef detail::uint64 u64
 
typedef highp_u64vec1 u64vec1
 
typedef highp_u64vec2 u64vec2
 
typedef highp_u64vec3 u64vec3
 
typedef highp_u64vec4 u64vec4
 
typedef detail::uint8 u8
 
typedef highp_u8vec1 u8vec1
 
typedef highp_u8vec2 u8vec2
 
typedef highp_u8vec3 u8vec3
 
typedef highp_u8vec4 u8vec4
 
typedef detail::uint16 uint16_t
 
typedef detail::uint32 uint32_t
 
typedef detail::uint64 uint64_t
 
typedef detail::uint8 uint8_t
 
+

Detailed Description

+

GLM Core

+ +

Definition in file fwd.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00038_source.html b/third_party/glm_test/doc/api/a00038_source.html new file mode 100644 index 0000000000000..278b4d1fbda21 --- /dev/null +++ b/third_party/glm_test/doc/api/a00038_source.html @@ -0,0 +1,1716 @@ + + + + + + +0.9.8: fwd.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
fwd.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "detail/type_int.hpp"
+
7 #include "detail/type_float.hpp"
+
8 #include "detail/type_vec.hpp"
+
9 #include "detail/type_mat.hpp"
+
10 
+
12 // GLM_GTC_quaternion
+
13 namespace glm
+
14 {
+
15  template <typename T, precision P> struct tquat;
+
16 
+
20  typedef tquat<float, lowp> lowp_quat;
+
21 
+
25  typedef tquat<float, mediump> mediump_quat;
+
26 
+
30  typedef tquat<float, highp> highp_quat;
+
31 
+
32 #if(defined(GLM_PRECISION_HIGHP_FLOAT) && !defined(GLM_PRECISION_MEDIUMP_FLOAT) && !defined(GLM_PRECISION_LOWP_FLOAT))
+
33  typedef highp_quat quat;
+
34 #elif(!defined(GLM_PRECISION_HIGHP_FLOAT) && defined(GLM_PRECISION_MEDIUMP_FLOAT) && !defined(GLM_PRECISION_LOWP_FLOAT))
+
35  typedef mediump_quat quat;
+
36 #elif(!defined(GLM_PRECISION_HIGHP_FLOAT) && !defined(GLM_PRECISION_MEDIUMP_FLOAT) && defined(GLM_PRECISION_LOWP_FLOAT))
+
37  typedef lowp_quat quat;
+
38 #elif(!defined(GLM_PRECISION_HIGHP_FLOAT) && !defined(GLM_PRECISION_MEDIUMP_FLOAT) && !defined(GLM_PRECISION_LOWP_FLOAT))
+
39  typedef highp_quat quat;
+
41 #endif
+
42 
+
46  typedef lowp_quat lowp_fquat;
+
47 
+
51  typedef mediump_quat mediump_fquat;
+
52 
+
56  typedef highp_quat highp_fquat;
+
57 
+
61  typedef quat fquat;
+
62 
+
63 
+
67  typedef tquat<double, lowp> lowp_dquat;
+
68 
+
72  typedef tquat<double, mediump> mediump_dquat;
+
73 
+
77  typedef tquat<double, highp> highp_dquat;
+
78 
+
79 #if(defined(GLM_PRECISION_HIGHP_DOUBLE) && !defined(GLM_PRECISION_MEDIUMP_DOUBLE) && !defined(GLM_PRECISION_LOWP_DOUBLE))
+
80  typedef highp_dquat dquat;
+
81 #elif(!defined(GLM_PRECISION_HIGHP_DOUBLE) && defined(GLM_PRECISION_MEDIUMP_DOUBLE) && !defined(GLM_PRECISION_LOWP_DOUBLE))
+
82  typedef mediump_dquat dquat;
+
83 #elif(!defined(GLM_PRECISION_HIGHP_DOUBLE) && !defined(GLM_PRECISION_MEDIUMP_DOUBLE) && defined(GLM_PRECISION_LOWP_DOUBLE))
+
84  typedef lowp_dquat dquat;
+
85 #elif(!defined(GLM_PRECISION_HIGHP_DOUBLE) && !defined(GLM_PRECISION_MEDIUMP_DOUBLE) && !defined(GLM_PRECISION_LOWP_DOUBLE))
+
86  typedef highp_dquat dquat;
+
90 #endif
+
91 
+
92 }//namespace glm
+
93 
+
95 // GLM_GTC_precision
+
96 namespace glm
+
97 {
+
100  typedef detail::int8 lowp_int8;
+
101 
+
104  typedef detail::int16 lowp_int16;
+
105 
+
108  typedef detail::int32 lowp_int32;
+
109 
+
112  typedef detail::int64 lowp_int64;
+
113 
+
116  typedef detail::int8 lowp_int8_t;
+
117 
+
120  typedef detail::int16 lowp_int16_t;
+
121 
+
124  typedef detail::int32 lowp_int32_t;
+
125 
+
128  typedef detail::int64 lowp_int64_t;
+
129 
+
132  typedef detail::int8 lowp_i8;
+
133 
+
136  typedef detail::int16 lowp_i16;
+
137 
+
140  typedef detail::int32 lowp_i32;
+
141 
+
144  typedef detail::int64 lowp_i64;
+
145 
+
148  typedef detail::int8 mediump_int8;
+
149 
+
152  typedef detail::int16 mediump_int16;
+
153 
+
156  typedef detail::int32 mediump_int32;
+
157 
+
160  typedef detail::int64 mediump_int64;
+
161 
+
164  typedef detail::int8 mediump_int8_t;
+
165 
+
168  typedef detail::int16 mediump_int16_t;
+
169 
+
172  typedef detail::int32 mediump_int32_t;
+
173 
+
176  typedef detail::int64 mediump_int64_t;
+
177 
+
180  typedef detail::int8 mediump_i8;
+
181 
+
184  typedef detail::int16 mediump_i16;
+
185 
+
188  typedef detail::int32 mediump_i32;
+
189 
+
192  typedef detail::int64 mediump_i64;
+
193 
+
196  typedef detail::int8 highp_int8;
+
197 
+
200  typedef detail::int16 highp_int16;
+
201 
+
204  typedef detail::int32 highp_int32;
+
205 
+
208  typedef detail::int64 highp_int64;
+
209 
+
212  typedef detail::int8 highp_int8_t;
+
213 
+
216  typedef detail::int16 highp_int16_t;
+
217 
+
220  typedef detail::int32 highp_int32_t;
+
221 
+
224  typedef detail::int64 highp_int64_t;
+
225 
+
228  typedef detail::int8 highp_i8;
+
229 
+
232  typedef detail::int16 highp_i16;
+
233 
+
236  typedef detail::int32 highp_i32;
+
237 
+
240  typedef detail::int64 highp_i64;
+
241 
+
242 
+
245  typedef detail::int8 int8;
+
246 
+
249  typedef detail::int16 int16;
+
250 
+
253  typedef detail::int32 int32;
+
254 
+
257  typedef detail::int64 int64;
+
258 
+
259 
+
260 #if GLM_HAS_EXTENDED_INTEGER_TYPE
+
261  using std::int8_t;
+
262  using std::int16_t;
+
263  using std::int32_t;
+
264  using std::int64_t;
+
265 #else
+
266  typedef detail::int8 int8_t;
+
269 
+
272  typedef detail::int16 int16_t;
+
273 
+
276  typedef detail::int32 int32_t;
+
277 
+
280  typedef detail::int64 int64_t;
+
281 #endif
+
282 
+
285  typedef detail::int8 i8;
+
286 
+
289  typedef detail::int16 i16;
+
290 
+
293  typedef detail::int32 i32;
+
294 
+
297  typedef detail::int64 i64;
+
298 
+
299 
+
300 
+
303  typedef tvec1<i8, lowp> lowp_i8vec1;
+
304 
+
307  typedef tvec2<i8, lowp> lowp_i8vec2;
+
308 
+
311  typedef tvec3<i8, lowp> lowp_i8vec3;
+
312 
+
315  typedef tvec4<i8, lowp> lowp_i8vec4;
+
316 
+
317 
+
320  typedef tvec1<i8, mediump> mediump_i8vec1;
+
321 
+
324  typedef tvec2<i8, mediump> mediump_i8vec2;
+
325 
+
328  typedef tvec3<i8, mediump> mediump_i8vec3;
+
329 
+
332  typedef tvec4<i8, mediump> mediump_i8vec4;
+
333 
+
334 
+
337  typedef tvec1<i8, highp> highp_i8vec1;
+
338 
+
341  typedef tvec2<i8, highp> highp_i8vec2;
+
342 
+
345  typedef tvec3<i8, highp> highp_i8vec3;
+
346 
+
349  typedef tvec4<i8, highp> highp_i8vec4;
+
350 
+
351 #if(defined(GLM_PRECISION_LOWP_INT))
+
352  typedef lowp_i8vec1 i8vec1;
+
353  typedef lowp_i8vec2 i8vec2;
+
354  typedef lowp_i8vec3 i8vec3;
+
355  typedef lowp_i8vec4 i8vec4;
+
356 #elif(defined(GLM_PRECISION_MEDIUMP_INT))
+
357  typedef mediump_i8vec1 i8vec1;
+
358  typedef mediump_i8vec2 i8vec2;
+
359  typedef mediump_i8vec3 i8vec3;
+
360  typedef mediump_i8vec4 i8vec4;
+
361 #else
+
362  typedef highp_i8vec1 i8vec1;
+
365 
+
368  typedef highp_i8vec2 i8vec2;
+
369 
+
372  typedef highp_i8vec3 i8vec3;
+
373 
+
376  typedef highp_i8vec4 i8vec4;
+
377 #endif
+
378 
+
379 
+
382  typedef tvec1<i16, lowp> lowp_i16vec1;
+
383 
+
386  typedef tvec2<i16, lowp> lowp_i16vec2;
+
387 
+
390  typedef tvec3<i16, lowp> lowp_i16vec3;
+
391 
+
394  typedef tvec4<i16, lowp> lowp_i16vec4;
+
395 
+
396 
+
399  typedef tvec1<i16, mediump> mediump_i16vec1;
+
400 
+
403  typedef tvec2<i16, mediump> mediump_i16vec2;
+
404 
+
407  typedef tvec3<i16, mediump> mediump_i16vec3;
+
408 
+
411  typedef tvec4<i16, mediump> mediump_i16vec4;
+
412 
+
413 
+
416  typedef tvec1<i16, highp> highp_i16vec1;
+
417 
+
420  typedef tvec2<i16, highp> highp_i16vec2;
+
421 
+
424  typedef tvec3<i16, highp> highp_i16vec3;
+
425 
+
428  typedef tvec4<i16, highp> highp_i16vec4;
+
429 
+
430 
+
431 #if(defined(GLM_PRECISION_LOWP_INT))
+
432  typedef lowp_i16vec1 i16vec1;
+
433  typedef lowp_i16vec2 i16vec2;
+
434  typedef lowp_i16vec3 i16vec3;
+
435  typedef lowp_i16vec4 i16vec4;
+
436 #elif(defined(GLM_PRECISION_MEDIUMP_INT))
+
437  typedef mediump_i16vec1 i16vec1;
+
438  typedef mediump_i16vec2 i16vec2;
+
439  typedef mediump_i16vec3 i16vec3;
+
440  typedef mediump_i16vec4 i16vec4;
+
441 #else
+
442  typedef highp_i16vec1 i16vec1;
+
445 
+
448  typedef highp_i16vec2 i16vec2;
+
449 
+
452  typedef highp_i16vec3 i16vec3;
+
453 
+
456  typedef highp_i16vec4 i16vec4;
+
457 #endif
+
458 
+
459 
+
462  typedef tvec1<i32, lowp> lowp_i32vec1;
+
463 
+
466  typedef tvec2<i32, lowp> lowp_i32vec2;
+
467 
+
470  typedef tvec3<i32, lowp> lowp_i32vec3;
+
471 
+
474  typedef tvec4<i32, lowp> lowp_i32vec4;
+
475 
+
476 
+
479  typedef tvec1<i32, mediump> mediump_i32vec1;
+
480 
+
483  typedef tvec2<i32, mediump> mediump_i32vec2;
+
484 
+
487  typedef tvec3<i32, mediump> mediump_i32vec3;
+
488 
+
491  typedef tvec4<i32, mediump> mediump_i32vec4;
+
492 
+
493 
+
496  typedef tvec1<i32, highp> highp_i32vec1;
+
497 
+
500  typedef tvec2<i32, highp> highp_i32vec2;
+
501 
+
504  typedef tvec3<i32, highp> highp_i32vec3;
+
505 
+
508  typedef tvec4<i32, highp> highp_i32vec4;
+
509 
+
510 #if(defined(GLM_PRECISION_LOWP_INT))
+
511  typedef lowp_i32vec1 i32vec1;
+
512  typedef lowp_i32vec2 i32vec2;
+
513  typedef lowp_i32vec3 i32vec3;
+
514  typedef lowp_i32vec4 i32vec4;
+
515 #elif(defined(GLM_PRECISION_MEDIUMP_INT))
+
516  typedef mediump_i32vec1 i32vec1;
+
517  typedef mediump_i32vec2 i32vec2;
+
518  typedef mediump_i32vec3 i32vec3;
+
519  typedef mediump_i32vec4 i32vec4;
+
520 #else
+
521  typedef highp_i32vec1 i32vec1;
+
524 
+
527  typedef highp_i32vec2 i32vec2;
+
528 
+
531  typedef highp_i32vec3 i32vec3;
+
532 
+
535  typedef highp_i32vec4 i32vec4;
+
536 #endif
+
537 
+
538 
+
541  typedef tvec1<i32, lowp> lowp_i32vec1;
+
542 
+
545  typedef tvec2<i32, lowp> lowp_i32vec2;
+
546 
+
549  typedef tvec3<i32, lowp> lowp_i32vec3;
+
550 
+
553  typedef tvec4<i32, lowp> lowp_i32vec4;
+
554 
+
555 
+
558  typedef tvec1<i32, mediump> mediump_i32vec1;
+
559 
+
562  typedef tvec2<i32, mediump> mediump_i32vec2;
+
563 
+
566  typedef tvec3<i32, mediump> mediump_i32vec3;
+
567 
+
570  typedef tvec4<i32, mediump> mediump_i32vec4;
+
571 
+
572 
+
575  typedef tvec1<i32, highp> highp_i32vec1;
+
576 
+
579  typedef tvec2<i32, highp> highp_i32vec2;
+
580 
+
583  typedef tvec3<i32, highp> highp_i32vec3;
+
584 
+
587  typedef tvec4<i32, highp> highp_i32vec4;
+
588 
+
589 #if(defined(GLM_PRECISION_LOWP_INT))
+
590  typedef lowp_i32vec1 i32vec1;
+
591  typedef lowp_i32vec2 i32vec2;
+
592  typedef lowp_i32vec3 i32vec3;
+
593  typedef lowp_i32vec4 i32vec4;
+
594 #elif(defined(GLM_PRECISION_MEDIUMP_INT))
+
595  typedef mediump_i32vec1 i32vec1;
+
596  typedef mediump_i32vec2 i32vec2;
+
597  typedef mediump_i32vec3 i32vec3;
+
598  typedef mediump_i32vec4 i32vec4;
+
599 #else
+
600  typedef highp_i32vec1 i32vec1;
+
603 
+
606  typedef highp_i32vec2 i32vec2;
+
607 
+
610  typedef highp_i32vec3 i32vec3;
+
611 
+
614  typedef highp_i32vec4 i32vec4;
+
615 #endif
+
616 
+
617 
+
618 
+
621  typedef tvec1<i64, lowp> lowp_i64vec1;
+
622 
+
625  typedef tvec2<i64, lowp> lowp_i64vec2;
+
626 
+
629  typedef tvec3<i64, lowp> lowp_i64vec3;
+
630 
+
633  typedef tvec4<i64, lowp> lowp_i64vec4;
+
634 
+
635 
+
638  typedef tvec1<i64, mediump> mediump_i64vec1;
+
639 
+
642  typedef tvec2<i64, mediump> mediump_i64vec2;
+
643 
+
646  typedef tvec3<i64, mediump> mediump_i64vec3;
+
647 
+
650  typedef tvec4<i64, mediump> mediump_i64vec4;
+
651 
+
652 
+
655  typedef tvec1<i64, highp> highp_i64vec1;
+
656 
+
659  typedef tvec2<i64, highp> highp_i64vec2;
+
660 
+
663  typedef tvec3<i64, highp> highp_i64vec3;
+
664 
+
667  typedef tvec4<i64, highp> highp_i64vec4;
+
668 
+
669 #if(defined(GLM_PRECISION_LOWP_INT))
+
670  typedef lowp_i64vec1 i64vec1;
+
671  typedef lowp_i64vec2 i64vec2;
+
672  typedef lowp_i64vec3 i64vec3;
+
673  typedef lowp_i64vec4 i64vec4;
+
674 #elif(defined(GLM_PRECISION_MEDIUMP_INT))
+
675  typedef mediump_i64vec1 i64vec1;
+
676  typedef mediump_i64vec2 i64vec2;
+
677  typedef mediump_i64vec3 i64vec3;
+
678  typedef mediump_i64vec4 i64vec4;
+
679 #else
+
680  typedef highp_i64vec1 i64vec1;
+
683 
+
686  typedef highp_i64vec2 i64vec2;
+
687 
+
690  typedef highp_i64vec3 i64vec3;
+
691 
+
694  typedef highp_i64vec4 i64vec4;
+
695 #endif
+
696 
+
697 
+
699  // Unsigned int vector types
+
700 
+
703  typedef detail::uint8 lowp_uint8;
+
704 
+
707  typedef detail::uint16 lowp_uint16;
+
708 
+
711  typedef detail::uint32 lowp_uint32;
+
712 
+
715  typedef detail::uint64 lowp_uint64;
+
716 
+
717 
+
720  typedef detail::uint8 lowp_uint8_t;
+
721 
+
724  typedef detail::uint16 lowp_uint16_t;
+
725 
+
728  typedef detail::uint32 lowp_uint32_t;
+
729 
+
732  typedef detail::uint64 lowp_uint64_t;
+
733 
+
734 
+
737  typedef detail::uint8 lowp_u8;
+
738 
+
741  typedef detail::uint16 lowp_u16;
+
742 
+
745  typedef detail::uint32 lowp_u32;
+
746 
+
749  typedef detail::uint64 lowp_u64;
+
750 
+
751 
+
752 
+
755  typedef detail::uint8 mediump_uint8;
+
756 
+
759  typedef detail::uint16 mediump_uint16;
+
760 
+
763  typedef detail::uint32 mediump_uint32;
+
764 
+
767  typedef detail::uint64 mediump_uint64;
+
768 
+
771  typedef detail::uint8 mediump_uint8_t;
+
772 
+
775  typedef detail::uint16 mediump_uint16_t;
+
776 
+
779  typedef detail::uint32 mediump_uint32_t;
+
780 
+
783  typedef detail::uint64 mediump_uint64_t;
+
784 
+
787  typedef detail::uint8 mediump_u8;
+
788 
+
791  typedef detail::uint16 mediump_u16;
+
792 
+
795  typedef detail::uint32 mediump_u32;
+
796 
+
799  typedef detail::uint64 mediump_u64;
+
800 
+
801 
+
802 
+
805  typedef detail::uint8 highp_uint8;
+
806 
+
809  typedef detail::uint16 highp_uint16;
+
810 
+
813  typedef detail::uint32 highp_uint32;
+
814 
+
817  typedef detail::uint64 highp_uint64;
+
818 
+
821  typedef detail::uint8 highp_uint8_t;
+
822 
+
825  typedef detail::uint16 highp_uint16_t;
+
826 
+
829  typedef detail::uint32 highp_uint32_t;
+
830 
+
833  typedef detail::uint64 highp_uint64_t;
+
834 
+
837  typedef detail::uint8 highp_u8;
+
838 
+
841  typedef detail::uint16 highp_u16;
+
842 
+
845  typedef detail::uint32 highp_u32;
+
846 
+
849  typedef detail::uint64 highp_u64;
+
850 
+
851 
+
852 
+
855  typedef detail::uint8 uint8;
+
856 
+
859  typedef detail::uint16 uint16;
+
860 
+
863  typedef detail::uint32 uint32;
+
864 
+
867  typedef detail::uint64 uint64;
+
868 
+
869 #if GLM_HAS_EXTENDED_INTEGER_TYPE
+
870  using std::uint8_t;
+
871  using std::uint16_t;
+
872  using std::uint32_t;
+
873  using std::uint64_t;
+
874 #else
+
875  typedef detail::uint8 uint8_t;
+
878 
+
881  typedef detail::uint16 uint16_t;
+
882 
+
885  typedef detail::uint32 uint32_t;
+
886 
+
889  typedef detail::uint64 uint64_t;
+
890 #endif
+
891 
+
894  typedef detail::uint8 u8;
+
895 
+
898  typedef detail::uint16 u16;
+
899 
+
902  typedef detail::uint32 u32;
+
903 
+
906  typedef detail::uint64 u64;
+
907 
+
908 
+
909 
+
912  typedef tvec1<u8, lowp> lowp_u8vec1;
+
913 
+
916  typedef tvec2<u8, lowp> lowp_u8vec2;
+
917 
+
920  typedef tvec3<u8, lowp> lowp_u8vec3;
+
921 
+
924  typedef tvec4<u8, lowp> lowp_u8vec4;
+
925 
+
926 
+
929  typedef tvec1<u8, mediump> mediump_u8vec1;
+
930 
+
933  typedef tvec2<u8, mediump> mediump_u8vec2;
+
934 
+
937  typedef tvec3<u8, mediump> mediump_u8vec3;
+
938 
+
941  typedef tvec4<u8, mediump> mediump_u8vec4;
+
942 
+
943 
+
946  typedef tvec1<u8, highp> highp_u8vec1;
+
947 
+
950  typedef tvec2<u8, highp> highp_u8vec2;
+
951 
+
954  typedef tvec3<u8, highp> highp_u8vec3;
+
955 
+
958  typedef tvec4<u8, highp> highp_u8vec4;
+
959 
+
960 #if(defined(GLM_PRECISION_LOWP_INT))
+
961  typedef lowp_u8vec1 u8vec1;
+
962  typedef lowp_u8vec2 u8vec2;
+
963  typedef lowp_u8vec3 u8vec3;
+
964  typedef lowp_u8vec4 u8vec4;
+
965 #elif(defined(GLM_PRECISION_MEDIUMP_INT))
+
966  typedef mediump_u8vec1 u8vec1;
+
967  typedef mediump_u8vec2 u8vec2;
+
968  typedef mediump_u8vec3 u8vec3;
+
969  typedef mediump_u8vec4 u8vec4;
+
970 #else
+
971  typedef highp_u8vec1 u8vec1;
+
974 
+
977  typedef highp_u8vec2 u8vec2;
+
978 
+
981  typedef highp_u8vec3 u8vec3;
+
982 
+
985  typedef highp_u8vec4 u8vec4;
+
986 #endif
+
987 
+
988 
+
991  typedef tvec1<u16, lowp> lowp_u16vec1;
+
992 
+
995  typedef tvec2<u16, lowp> lowp_u16vec2;
+
996 
+
999  typedef tvec3<u16, lowp> lowp_u16vec3;
+
1000 
+
1003  typedef tvec4<u16, lowp> lowp_u16vec4;
+
1004 
+
1005 
+
1008  typedef tvec1<u16, mediump> mediump_u16vec1;
+
1009 
+
1012  typedef tvec2<u16, mediump> mediump_u16vec2;
+
1013 
+
1016  typedef tvec3<u16, mediump> mediump_u16vec3;
+
1017 
+
1020  typedef tvec4<u16, mediump> mediump_u16vec4;
+
1021 
+
1022 
+
1025  typedef tvec1<u16, highp> highp_u16vec1;
+
1026 
+
1029  typedef tvec2<u16, highp> highp_u16vec2;
+
1030 
+
1033  typedef tvec3<u16, highp> highp_u16vec3;
+
1034 
+
1037  typedef tvec4<u16, highp> highp_u16vec4;
+
1038 
+
1039 
+
1040 #if(defined(GLM_PRECISION_LOWP_INT))
+
1041  typedef lowp_u16vec1 u16vec1;
+
1042  typedef lowp_u16vec2 u16vec2;
+
1043  typedef lowp_u16vec3 u16vec3;
+
1044  typedef lowp_u16vec4 u16vec4;
+
1045 #elif(defined(GLM_PRECISION_MEDIUMP_INT))
+
1046  typedef mediump_u16vec1 u16vec1;
+
1047  typedef mediump_u16vec2 u16vec2;
+
1048  typedef mediump_u16vec3 u16vec3;
+
1049  typedef mediump_u16vec4 u16vec4;
+
1050 #else
+
1051  typedef highp_u16vec1 u16vec1;
+
1054 
+
1057  typedef highp_u16vec2 u16vec2;
+
1058 
+
1061  typedef highp_u16vec3 u16vec3;
+
1062 
+
1065  typedef highp_u16vec4 u16vec4;
+
1066 #endif
+
1067 
+
1068 
+
1071  typedef tvec1<u32, lowp> lowp_u32vec1;
+
1072 
+
1075  typedef tvec2<u32, lowp> lowp_u32vec2;
+
1076 
+
1079  typedef tvec3<u32, lowp> lowp_u32vec3;
+
1080 
+
1083  typedef tvec4<u32, lowp> lowp_u32vec4;
+
1084 
+
1085 
+
1088  typedef tvec1<u32, mediump> mediump_u32vec1;
+
1089 
+
1092  typedef tvec2<u32, mediump> mediump_u32vec2;
+
1093 
+
1096  typedef tvec3<u32, mediump> mediump_u32vec3;
+
1097 
+
1100  typedef tvec4<u32, mediump> mediump_u32vec4;
+
1101 
+
1102 
+
1105  typedef tvec1<u32, highp> highp_u32vec1;
+
1106 
+
1109  typedef tvec2<u32, highp> highp_u32vec2;
+
1110 
+
1113  typedef tvec3<u32, highp> highp_u32vec3;
+
1114 
+
1117  typedef tvec4<u32, highp> highp_u32vec4;
+
1118 
+
1119 #if(defined(GLM_PRECISION_LOWP_INT))
+
1120  typedef lowp_u32vec1 u32vec1;
+
1121  typedef lowp_u32vec2 u32vec2;
+
1122  typedef lowp_u32vec3 u32vec3;
+
1123  typedef lowp_u32vec4 u32vec4;
+
1124 #elif(defined(GLM_PRECISION_MEDIUMP_INT))
+
1125  typedef mediump_u32vec1 u32vec1;
+
1126  typedef mediump_u32vec2 u32vec2;
+
1127  typedef mediump_u32vec3 u32vec3;
+
1128  typedef mediump_u32vec4 u32vec4;
+
1129 #else
+
1130  typedef highp_u32vec1 u32vec1;
+
1133 
+
1136  typedef highp_u32vec2 u32vec2;
+
1137 
+
1140  typedef highp_u32vec3 u32vec3;
+
1141 
+
1144  typedef highp_u32vec4 u32vec4;
+
1145 #endif
+
1146 
+
1147 
+
1150  typedef tvec1<u32, lowp> lowp_u32vec1;
+
1151 
+
1154  typedef tvec2<u32, lowp> lowp_u32vec2;
+
1155 
+
1158  typedef tvec3<u32, lowp> lowp_u32vec3;
+
1159 
+
1162  typedef tvec4<u32, lowp> lowp_u32vec4;
+
1163 
+
1164 
+
1167  typedef tvec1<u32, mediump> mediump_u32vec1;
+
1168 
+
1171  typedef tvec2<u32, mediump> mediump_u32vec2;
+
1172 
+
1175  typedef tvec3<u32, mediump> mediump_u32vec3;
+
1176 
+
1179  typedef tvec4<u32, mediump> mediump_u32vec4;
+
1180 
+
1181 
+
1184  typedef tvec1<u32, highp> highp_u32vec1;
+
1185 
+
1188  typedef tvec2<u32, highp> highp_u32vec2;
+
1189 
+
1192  typedef tvec3<u32, highp> highp_u32vec3;
+
1193 
+
1196  typedef tvec4<u32, highp> highp_u32vec4;
+
1197 
+
1198 #if(defined(GLM_PRECISION_LOWP_INT))
+
1199  typedef lowp_u32vec1 u32vec1;
+
1200  typedef lowp_u32vec2 u32vec2;
+
1201  typedef lowp_u32vec3 u32vec3;
+
1202  typedef lowp_u32vec4 u32vec4;
+
1203 #elif(defined(GLM_PRECISION_MEDIUMP_INT))
+
1204  typedef mediump_u32vec1 u32vec1;
+
1205  typedef mediump_u32vec2 u32vec2;
+
1206  typedef mediump_u32vec3 u32vec3;
+
1207  typedef mediump_u32vec4 u32vec4;
+
1208 #else
+
1209  typedef highp_u32vec1 u32vec1;
+
1212 
+
1215  typedef highp_u32vec2 u32vec2;
+
1216 
+
1219  typedef highp_u32vec3 u32vec3;
+
1220 
+
1223  typedef highp_u32vec4 u32vec4;
+
1224 #endif
+
1225 
+
1226 
+
1227 
+
1230  typedef tvec1<u64, lowp> lowp_u64vec1;
+
1231 
+
1234  typedef tvec2<u64, lowp> lowp_u64vec2;
+
1235 
+
1238  typedef tvec3<u64, lowp> lowp_u64vec3;
+
1239 
+
1242  typedef tvec4<u64, lowp> lowp_u64vec4;
+
1243 
+
1244 
+
1247  typedef tvec1<u64, mediump> mediump_u64vec1;
+
1248 
+
1251  typedef tvec2<u64, mediump> mediump_u64vec2;
+
1252 
+
1255  typedef tvec3<u64, mediump> mediump_u64vec3;
+
1256 
+
1259  typedef tvec4<u64, mediump> mediump_u64vec4;
+
1260 
+
1261 
+
1264  typedef tvec1<u64, highp> highp_u64vec1;
+
1265 
+
1268  typedef tvec2<u64, highp> highp_u64vec2;
+
1269 
+
1272  typedef tvec3<u64, highp> highp_u64vec3;
+
1273 
+
1276  typedef tvec4<u64, highp> highp_u64vec4;
+
1277 
+
1278 #if(defined(GLM_PRECISION_LOWP_UINT))
+
1279  typedef lowp_u64vec1 u64vec1;
+
1280  typedef lowp_u64vec2 u64vec2;
+
1281  typedef lowp_u64vec3 u64vec3;
+
1282  typedef lowp_u64vec4 u64vec4;
+
1283 #elif(defined(GLM_PRECISION_MEDIUMP_UINT))
+
1284  typedef mediump_u64vec1 u64vec1;
+
1285  typedef mediump_u64vec2 u64vec2;
+
1286  typedef mediump_u64vec3 u64vec3;
+
1287  typedef mediump_u64vec4 u64vec4;
+
1288 #else
+
1289  typedef highp_u64vec1 u64vec1;
+
1292 
+
1295  typedef highp_u64vec2 u64vec2;
+
1296 
+
1299  typedef highp_u64vec3 u64vec3;
+
1300 
+
1303  typedef highp_u64vec4 u64vec4;
+
1304 #endif
+
1305 
+
1306 
+
1308  // Float vector types
+
1309 
+
1312  typedef detail::float32 lowp_float32;
+
1313 
+
1316  typedef detail::float64 lowp_float64;
+
1317 
+
1320  typedef detail::float32 lowp_float32_t;
+
1321 
+
1324  typedef detail::float64 lowp_float64_t;
+
1325 
+
1328  typedef float32 lowp_f32;
+
1329 
+
1332  typedef float64 lowp_f64;
+
1333 
+
1336  typedef detail::float32 lowp_float32;
+
1337 
+
1340  typedef detail::float64 lowp_float64;
+
1341 
+
1344  typedef detail::float32 lowp_float32_t;
+
1345 
+
1348  typedef detail::float64 lowp_float64_t;
+
1349 
+
1352  typedef float32 lowp_f32;
+
1353 
+
1356  typedef float64 lowp_f64;
+
1357 
+
1358 
+
1361  typedef detail::float32 lowp_float32;
+
1362 
+
1365  typedef detail::float64 lowp_float64;
+
1366 
+
1369  typedef detail::float32 lowp_float32_t;
+
1370 
+
1373  typedef detail::float64 lowp_float64_t;
+
1374 
+
1377  typedef float32 lowp_f32;
+
1378 
+
1381  typedef float64 lowp_f64;
+
1382 
+
1383 
+
1386  typedef detail::float32 mediump_float32;
+
1387 
+
1390  typedef detail::float64 mediump_float64;
+
1391 
+
1394  typedef detail::float32 mediump_float32_t;
+
1395 
+
1398  typedef detail::float64 mediump_float64_t;
+
1399 
+
1402  typedef float32 mediump_f32;
+
1403 
+
1406  typedef float64 mediump_f64;
+
1407 
+
1408 
+
1411  typedef detail::float32 highp_float32;
+
1412 
+
1415  typedef detail::float64 highp_float64;
+
1416 
+
1419  typedef detail::float32 highp_float32_t;
+
1420 
+
1423  typedef detail::float64 highp_float64_t;
+
1424 
+
1427  typedef float32 highp_f32;
+
1428 
+
1431  typedef float64 highp_f64;
+
1432 
+
1433 
+
1434 #if(defined(GLM_PRECISION_LOWP_FLOAT))
+
1435  typedef lowp_float32 float32;
+
1438 
+
1441  typedef lowp_float64 float64;
+
1442 
+
1445  typedef lowp_float32_t float32_t;
+
1446 
+
1449  typedef lowp_float64_t float64_t;
+
1450 
+
1453  typedef lowp_f32 f32;
+
1454 
+
1457  typedef lowp_f64 f64;
+
1458 
+
1459 #elif(defined(GLM_PRECISION_MEDIUMP_FLOAT))
+
1460 
+
1463  typedef mediump_float32 float32;
+
1464 
+
1467  typedef mediump_float64 float64;
+
1468 
+
1471  typedef mediump_float32 float32_t;
+
1472 
+
1475  typedef mediump_float64 float64_t;
+
1476 
+
1479  typedef mediump_float32 f32;
+
1480 
+
1483  typedef mediump_float64 f64;
+
1484 
+
1485 #else//(defined(GLM_PRECISION_HIGHP_FLOAT))
+
1486 
+
1489  typedef highp_float32 float32;
+
1490 
+
1493  typedef highp_float64 float64;
+
1494 
+
1497  typedef highp_float32_t float32_t;
+
1498 
+
1501  typedef highp_float64_t float64_t;
+
1502 
+
1505  typedef highp_float32_t f32;
+
1506 
+
1509  typedef highp_float64_t f64;
+
1510 #endif
+
1511 
+
1512 
+
1515  typedef tvec1<float, lowp> lowp_vec1;
+
1516 
+
1519  typedef tvec2<float, lowp> lowp_vec2;
+
1520 
+
1523  typedef tvec3<float, lowp> lowp_vec3;
+
1524 
+
1527  typedef tvec4<float, lowp> lowp_vec4;
+
1528 
+
1531  typedef tvec1<float, lowp> lowp_fvec1;
+
1532 
+
1535  typedef tvec2<float, lowp> lowp_fvec2;
+
1536 
+
1539  typedef tvec3<float, lowp> lowp_fvec3;
+
1540 
+
1543  typedef tvec4<float, lowp> lowp_fvec4;
+
1544 
+
1545 
+
1548  typedef tvec1<float, mediump> mediump_vec1;
+
1549 
+
1552  typedef tvec2<float, mediump> mediump_vec2;
+
1553 
+
1556  typedef tvec3<float, mediump> mediump_vec3;
+
1557 
+
1560  typedef tvec4<float, mediump> mediump_vec4;
+
1561 
+
1564  typedef tvec1<float, mediump> mediump_fvec1;
+
1565 
+
1568  typedef tvec2<float, mediump> mediump_fvec2;
+
1569 
+
1572  typedef tvec3<float, mediump> mediump_fvec3;
+
1573 
+
1576  typedef tvec4<float, mediump> mediump_fvec4;
+
1577 
+
1578 
+
1581  typedef tvec1<float, highp> highp_vec1;
+
1582 
+
1585  typedef tvec2<float, highp> highp_vec2;
+
1586 
+
1589  typedef tvec3<float, highp> highp_vec3;
+
1590 
+
1593  typedef tvec4<float, highp> highp_vec4;
+
1594 
+
1597  typedef tvec1<float, highp> highp_fvec1;
+
1598 
+
1601  typedef tvec2<float, highp> highp_fvec2;
+
1602 
+
1605  typedef tvec3<float, highp> highp_fvec3;
+
1606 
+
1609  typedef tvec4<float, highp> highp_fvec4;
+
1610 
+
1611 
+
1614  typedef tvec1<f32, lowp> lowp_f32vec1;
+
1615 
+
1618  typedef tvec2<f32, lowp> lowp_f32vec2;
+
1619 
+
1622  typedef tvec3<f32, lowp> lowp_f32vec3;
+
1623 
+
1626  typedef tvec4<f32, lowp> lowp_f32vec4;
+
1627 
+
1630  typedef tvec1<f32, mediump> mediump_f32vec1;
+
1631 
+
1634  typedef tvec2<f32, mediump> mediump_f32vec2;
+
1635 
+
1638  typedef tvec3<f32, mediump> mediump_f32vec3;
+
1639 
+
1642  typedef tvec4<f32, mediump> mediump_f32vec4;
+
1643 
+
1646  typedef tvec1<f32, highp> highp_f32vec1;
+
1647 
+
1650  typedef tvec2<f32, highp> highp_f32vec2;
+
1651 
+
1654  typedef tvec3<f32, highp> highp_f32vec3;
+
1655 
+
1658  typedef tvec4<f32, highp> highp_f32vec4;
+
1659 
+
1660 
+
1663  typedef tvec1<f64, lowp> lowp_f64vec1;
+
1664 
+
1667  typedef tvec2<f64, lowp> lowp_f64vec2;
+
1668 
+
1671  typedef tvec3<f64, lowp> lowp_f64vec3;
+
1672 
+
1675  typedef tvec4<f64, lowp> lowp_f64vec4;
+
1676 
+
1679  typedef tvec1<f64, mediump> mediump_f64vec1;
+
1680 
+
1683  typedef tvec2<f64, mediump> mediump_f64vec2;
+
1684 
+
1687  typedef tvec3<f64, mediump> mediump_f64vec3;
+
1688 
+
1691  typedef tvec4<f64, mediump> mediump_f64vec4;
+
1692 
+
1695  typedef tvec1<f64, highp> highp_f64vec1;
+
1696 
+
1699  typedef tvec2<f64, highp> highp_f64vec2;
+
1700 
+
1703  typedef tvec3<f64, highp> highp_f64vec3;
+
1704 
+
1707  typedef tvec4<f64, highp> highp_f64vec4;
+
1708 
+
1709 
+
1711  // Float matrix types
+
1712 
+
1715  //typedef lowp_f32 lowp_fmat1x1;
+
1716 
+
1719  typedef tmat2x2<f32, lowp> lowp_fmat2x2;
+
1720 
+
1723  typedef tmat2x3<f32, lowp> lowp_fmat2x3;
+
1724 
+
1727  typedef tmat2x4<f32, lowp> lowp_fmat2x4;
+
1728 
+
1731  typedef tmat3x2<f32, lowp> lowp_fmat3x2;
+
1732 
+
1735  typedef tmat3x3<f32, lowp> lowp_fmat3x3;
+
1736 
+
1739  typedef tmat3x4<f32, lowp> lowp_fmat3x4;
+
1740 
+
1743  typedef tmat4x2<f32, lowp> lowp_fmat4x2;
+
1744 
+
1747  typedef tmat4x3<f32, lowp> lowp_fmat4x3;
+
1748 
+
1751  typedef tmat4x4<f32, lowp> lowp_fmat4x4;
+
1752 
+
1755  //typedef lowp_fmat1x1 lowp_fmat1;
+
1756 
+
1759  typedef lowp_fmat2x2 lowp_fmat2;
+
1760 
+
1763  typedef lowp_fmat3x3 lowp_fmat3;
+
1764 
+
1767  typedef lowp_fmat4x4 lowp_fmat4;
+
1768 
+
1769 
+
1772  //typedef mediump_f32 mediump_fmat1x1;
+
1773 
+
1776  typedef tmat2x2<f32, mediump> mediump_fmat2x2;
+
1777 
+
1780  typedef tmat2x3<f32, mediump> mediump_fmat2x3;
+
1781 
+
1784  typedef tmat2x4<f32, mediump> mediump_fmat2x4;
+
1785 
+
1788  typedef tmat3x2<f32, mediump> mediump_fmat3x2;
+
1789 
+
1792  typedef tmat3x3<f32, mediump> mediump_fmat3x3;
+
1793 
+
1796  typedef tmat3x4<f32, mediump> mediump_fmat3x4;
+
1797 
+
1800  typedef tmat4x2<f32, mediump> mediump_fmat4x2;
+
1801 
+
1804  typedef tmat4x3<f32, mediump> mediump_fmat4x3;
+
1805 
+
1808  typedef tmat4x4<f32, mediump> mediump_fmat4x4;
+
1809 
+
1812  //typedef mediump_fmat1x1 mediump_fmat1;
+
1813 
+
1816  typedef mediump_fmat2x2 mediump_fmat2;
+
1817 
+
1820  typedef mediump_fmat3x3 mediump_fmat3;
+
1821 
+
1824  typedef mediump_fmat4x4 mediump_fmat4;
+
1825 
+
1826 
+
1829  //typedef highp_f32 highp_fmat1x1;
+
1830 
+
1833  typedef tmat2x2<f32, highp> highp_fmat2x2;
+
1834 
+
1837  typedef tmat2x3<f32, highp> highp_fmat2x3;
+
1838 
+
1841  typedef tmat2x4<f32, highp> highp_fmat2x4;
+
1842 
+
1845  typedef tmat3x2<f32, highp> highp_fmat3x2;
+
1846 
+
1849  typedef tmat3x3<f32, highp> highp_fmat3x3;
+
1850 
+
1853  typedef tmat3x4<f32, highp> highp_fmat3x4;
+
1854 
+
1857  typedef tmat4x2<f32, highp> highp_fmat4x2;
+
1858 
+
1861  typedef tmat4x3<f32, highp> highp_fmat4x3;
+
1862 
+
1865  typedef tmat4x4<f32, highp> highp_fmat4x4;
+
1866 
+
1869  //typedef highp_fmat1x1 highp_fmat1;
+
1870 
+
1873  typedef highp_fmat2x2 highp_fmat2;
+
1874 
+
1877  typedef highp_fmat3x3 highp_fmat3;
+
1878 
+
1881  typedef highp_fmat4x4 highp_fmat4;
+
1882 
+
1883 
+
1886  //typedef f32 lowp_f32mat1x1;
+
1887 
+
1890  typedef tmat2x2<f32, lowp> lowp_f32mat2x2;
+
1891 
+
1894  typedef tmat2x3<f32, lowp> lowp_f32mat2x3;
+
1895 
+
1898  typedef tmat2x4<f32, lowp> lowp_f32mat2x4;
+
1899 
+
1902  typedef tmat3x2<f32, lowp> lowp_f32mat3x2;
+
1903 
+
1906  typedef tmat3x3<f32, lowp> lowp_f32mat3x3;
+
1907 
+
1910  typedef tmat3x4<f32, lowp> lowp_f32mat3x4;
+
1911 
+
1914  typedef tmat4x2<f32, lowp> lowp_f32mat4x2;
+
1915 
+
1918  typedef tmat4x3<f32, lowp> lowp_f32mat4x3;
+
1919 
+
1922  typedef tmat4x4<f32, lowp> lowp_f32mat4x4;
+
1923 
+
1926  //typedef detail::tmat1x1<f32, lowp> lowp_f32mat1;
+
1927 
+
1930  typedef lowp_f32mat2x2 lowp_f32mat2;
+
1931 
+
1934  typedef lowp_f32mat3x3 lowp_f32mat3;
+
1935 
+
1938  typedef lowp_f32mat4x4 lowp_f32mat4;
+
1939 
+
1940 
+
1943  //typedef f32 mediump_f32mat1x1;
+
1944 
+
1947  typedef tmat2x2<f32, mediump> mediump_f32mat2x2;
+
1948 
+
1951  typedef tmat2x3<f32, mediump> mediump_f32mat2x3;
+
1952 
+
1955  typedef tmat2x4<f32, mediump> mediump_f32mat2x4;
+
1956 
+
1959  typedef tmat3x2<f32, mediump> mediump_f32mat3x2;
+
1960 
+
1963  typedef tmat3x3<f32, mediump> mediump_f32mat3x3;
+
1964 
+
1967  typedef tmat3x4<f32, mediump> mediump_f32mat3x4;
+
1968 
+
1971  typedef tmat4x2<f32, mediump> mediump_f32mat4x2;
+
1972 
+
1975  typedef tmat4x3<f32, mediump> mediump_f32mat4x3;
+
1976 
+
1979  typedef tmat4x4<f32, mediump> mediump_f32mat4x4;
+
1980 
+
1983  //typedef detail::tmat1x1<f32, mediump> f32mat1;
+
1984 
+
1987  typedef mediump_f32mat2x2 mediump_f32mat2;
+
1988 
+
1991  typedef mediump_f32mat3x3 mediump_f32mat3;
+
1992 
+
1995  typedef mediump_f32mat4x4 mediump_f32mat4;
+
1996 
+
1997 
+
2000  //typedef f32 highp_f32mat1x1;
+
2001 
+
2004  typedef tmat2x2<f32, highp> highp_f32mat2x2;
+
2005 
+
2008  typedef tmat2x3<f32, highp> highp_f32mat2x3;
+
2009 
+
2012  typedef tmat2x4<f32, highp> highp_f32mat2x4;
+
2013 
+
2016  typedef tmat3x2<f32, highp> highp_f32mat3x2;
+
2017 
+
2020  typedef tmat3x3<f32, highp> highp_f32mat3x3;
+
2021 
+
2024  typedef tmat3x4<f32, highp> highp_f32mat3x4;
+
2025 
+
2028  typedef tmat4x2<f32, highp> highp_f32mat4x2;
+
2029 
+
2032  typedef tmat4x3<f32, highp> highp_f32mat4x3;
+
2033 
+
2036  typedef tmat4x4<f32, highp> highp_f32mat4x4;
+
2037 
+
2040  //typedef detail::tmat1x1<f32, highp> f32mat1;
+
2041 
+
2044  typedef highp_f32mat2x2 highp_f32mat2;
+
2045 
+
2048  typedef highp_f32mat3x3 highp_f32mat3;
+
2049 
+
2052  typedef highp_f32mat4x4 highp_f32mat4;
+
2053 
+
2054 
+
2057  //typedef f64 lowp_f64mat1x1;
+
2058 
+
2061  typedef tmat2x2<f64, lowp> lowp_f64mat2x2;
+
2062 
+
2065  typedef tmat2x3<f64, lowp> lowp_f64mat2x3;
+
2066 
+
2069  typedef tmat2x4<f64, lowp> lowp_f64mat2x4;
+
2070 
+
2073  typedef tmat3x2<f64, lowp> lowp_f64mat3x2;
+
2074 
+
2077  typedef tmat3x3<f64, lowp> lowp_f64mat3x3;
+
2078 
+
2081  typedef tmat3x4<f64, lowp> lowp_f64mat3x4;
+
2082 
+
2085  typedef tmat4x2<f64, lowp> lowp_f64mat4x2;
+
2086 
+
2089  typedef tmat4x3<f64, lowp> lowp_f64mat4x3;
+
2090 
+
2093  typedef tmat4x4<f64, lowp> lowp_f64mat4x4;
+
2094 
+
2097  //typedef lowp_f64mat1x1 lowp_f64mat1;
+
2098 
+
2101  typedef lowp_f64mat2x2 lowp_f64mat2;
+
2102 
+
2105  typedef lowp_f64mat3x3 lowp_f64mat3;
+
2106 
+
2109  typedef lowp_f64mat4x4 lowp_f64mat4;
+
2110 
+
2111 
+
2114  //typedef f64 Highp_f64mat1x1;
+
2115 
+
2118  typedef tmat2x2<f64, mediump> mediump_f64mat2x2;
+
2119 
+
2122  typedef tmat2x3<f64, mediump> mediump_f64mat2x3;
+
2123 
+
2126  typedef tmat2x4<f64, mediump> mediump_f64mat2x4;
+
2127 
+
2130  typedef tmat3x2<f64, mediump> mediump_f64mat3x2;
+
2131 
+
2134  typedef tmat3x3<f64, mediump> mediump_f64mat3x3;
+
2135 
+
2138  typedef tmat3x4<f64, mediump> mediump_f64mat3x4;
+
2139 
+
2142  typedef tmat4x2<f64, mediump> mediump_f64mat4x2;
+
2143 
+
2146  typedef tmat4x3<f64, mediump> mediump_f64mat4x3;
+
2147 
+
2150  typedef tmat4x4<f64, mediump> mediump_f64mat4x4;
+
2151 
+
2154  //typedef mediump_f64mat1x1 mediump_f64mat1;
+
2155 
+
2158  typedef mediump_f64mat2x2 mediump_f64mat2;
+
2159 
+
2162  typedef mediump_f64mat3x3 mediump_f64mat3;
+
2163 
+
2166  typedef mediump_f64mat4x4 mediump_f64mat4;
+
2167 
+
2170  //typedef f64 highp_f64mat1x1;
+
2171 
+
2174  typedef tmat2x2<f64, highp> highp_f64mat2x2;
+
2175 
+
2178  typedef tmat2x3<f64, highp> highp_f64mat2x3;
+
2179 
+
2182  typedef tmat2x4<f64, highp> highp_f64mat2x4;
+
2183 
+
2186  typedef tmat3x2<f64, highp> highp_f64mat3x2;
+
2187 
+
2190  typedef tmat3x3<f64, highp> highp_f64mat3x3;
+
2191 
+
2194  typedef tmat3x4<f64, highp> highp_f64mat3x4;
+
2195 
+
2198  typedef tmat4x2<f64, highp> highp_f64mat4x2;
+
2199 
+
2202  typedef tmat4x3<f64, highp> highp_f64mat4x3;
+
2203 
+
2206  typedef tmat4x4<f64, highp> highp_f64mat4x4;
+
2207 
+
2210  //typedef highp_f64mat1x1 highp_f64mat1;
+
2211 
+
2214  typedef highp_f64mat2x2 highp_f64mat2;
+
2215 
+
2218  typedef highp_f64mat3x3 highp_f64mat3;
+
2219 
+
2222  typedef highp_f64mat4x4 highp_f64mat4;
+
2223 
+
2225  // Quaternion types
+
2226 
+
2229  typedef tquat<f32, lowp> lowp_f32quat;
+
2230 
+
2233  typedef tquat<f64, lowp> lowp_f64quat;
+
2234 
+
2237  typedef tquat<f32, mediump> mediump_f32quat;
+
2238 
+
2241  typedef tquat<f64, mediump> mediump_f64quat;
+
2242 
+
2245  typedef tquat<f32, highp> highp_f32quat;
+
2246 
+
2249  typedef tquat<f64, highp> highp_f64quat;
+
2250 
+
2251 
+
2252 #if(defined(GLM_PRECISION_LOWP_FLOAT))
+
2253  typedef lowp_f32vec1 fvec1;
+
2254  typedef lowp_f32vec2 fvec2;
+
2255  typedef lowp_f32vec3 fvec3;
+
2256  typedef lowp_f32vec4 fvec4;
+
2257  typedef lowp_f32mat2 fmat2;
+
2258  typedef lowp_f32mat3 fmat3;
+
2259  typedef lowp_f32mat4 fmat4;
+
2260  typedef lowp_f32mat2x2 fmat2x2;
+
2261  typedef lowp_f32mat3x2 fmat3x2;
+
2262  typedef lowp_f32mat4x2 fmat4x2;
+
2263  typedef lowp_f32mat2x3 fmat2x3;
+
2264  typedef lowp_f32mat3x3 fmat3x3;
+
2265  typedef lowp_f32mat4x3 fmat4x3;
+
2266  typedef lowp_f32mat2x4 fmat2x4;
+
2267  typedef lowp_f32mat3x4 fmat3x4;
+
2268  typedef lowp_f32mat4x4 fmat4x4;
+
2269  typedef lowp_f32quat fquat;
+
2270 
+
2271  typedef lowp_f32vec1 f32vec1;
+
2272  typedef lowp_f32vec2 f32vec2;
+
2273  typedef lowp_f32vec3 f32vec3;
+
2274  typedef lowp_f32vec4 f32vec4;
+
2275  typedef lowp_f32mat2 f32mat2;
+
2276  typedef lowp_f32mat3 f32mat3;
+
2277  typedef lowp_f32mat4 f32mat4;
+
2278  typedef lowp_f32mat2x2 f32mat2x2;
+
2279  typedef lowp_f32mat3x2 f32mat3x2;
+
2280  typedef lowp_f32mat4x2 f32mat4x2;
+
2281  typedef lowp_f32mat2x3 f32mat2x3;
+
2282  typedef lowp_f32mat3x3 f32mat3x3;
+
2283  typedef lowp_f32mat4x3 f32mat4x3;
+
2284  typedef lowp_f32mat2x4 f32mat2x4;
+
2285  typedef lowp_f32mat3x4 f32mat3x4;
+
2286  typedef lowp_f32mat4x4 f32mat4x4;
+
2287  typedef lowp_f32quat f32quat;
+
2288 #elif(defined(GLM_PRECISION_MEDIUMP_FLOAT))
+
2289  typedef mediump_f32vec1 fvec1;
+
2290  typedef mediump_f32vec2 fvec2;
+
2291  typedef mediump_f32vec3 fvec3;
+
2292  typedef mediump_f32vec4 fvec4;
+
2293  typedef mediump_f32mat2 fmat2;
+
2294  typedef mediump_f32mat3 fmat3;
+
2295  typedef mediump_f32mat4 fmat4;
+
2296  typedef mediump_f32mat2x2 fmat2x2;
+
2297  typedef mediump_f32mat3x2 fmat3x2;
+
2298  typedef mediump_f32mat4x2 fmat4x2;
+
2299  typedef mediump_f32mat2x3 fmat2x3;
+
2300  typedef mediump_f32mat3x3 fmat3x3;
+
2301  typedef mediump_f32mat4x3 fmat4x3;
+
2302  typedef mediump_f32mat2x4 fmat2x4;
+
2303  typedef mediump_f32mat3x4 fmat3x4;
+
2304  typedef mediump_f32mat4x4 fmat4x4;
+
2305  typedef mediump_f32quat fquat;
+
2306 
+
2307  typedef mediump_f32vec1 f32vec1;
+
2308  typedef mediump_f32vec2 f32vec2;
+
2309  typedef mediump_f32vec3 f32vec3;
+
2310  typedef mediump_f32vec4 f32vec4;
+
2311  typedef mediump_f32mat2 f32mat2;
+
2312  typedef mediump_f32mat3 f32mat3;
+
2313  typedef mediump_f32mat4 f32mat4;
+
2314  typedef mediump_f32mat2x2 f32mat2x2;
+
2315  typedef mediump_f32mat3x2 f32mat3x2;
+
2316  typedef mediump_f32mat4x2 f32mat4x2;
+
2317  typedef mediump_f32mat2x3 f32mat2x3;
+
2318  typedef mediump_f32mat3x3 f32mat3x3;
+
2319  typedef mediump_f32mat4x3 f32mat4x3;
+
2320  typedef mediump_f32mat2x4 f32mat2x4;
+
2321  typedef mediump_f32mat3x4 f32mat3x4;
+
2322  typedef mediump_f32mat4x4 f32mat4x4;
+
2323  typedef mediump_f32quat f32quat;
+
2324 #else//if(defined(GLM_PRECISION_HIGHP_FLOAT))
+
2325  typedef highp_f32vec1 fvec1;
+
2328 
+
2331  typedef highp_f32vec2 fvec2;
+
2332 
+
2335  typedef highp_f32vec3 fvec3;
+
2336 
+
2339  typedef highp_f32vec4 fvec4;
+
2340 
+
2343  typedef highp_f32mat2x2 fmat2x2;
+
2344 
+
2347  typedef highp_f32mat2x3 fmat2x3;
+
2348 
+
2351  typedef highp_f32mat2x4 fmat2x4;
+
2352 
+
2355  typedef highp_f32mat3x2 fmat3x2;
+
2356 
+
2359  typedef highp_f32mat3x3 fmat3x3;
+
2360 
+
2363  typedef highp_f32mat3x4 fmat3x4;
+
2364 
+
2367  typedef highp_f32mat4x2 fmat4x2;
+
2368 
+
2371  typedef highp_f32mat4x3 fmat4x3;
+
2372 
+
2375  typedef highp_f32mat4x4 fmat4x4;
+
2376 
+
2379  typedef fmat2x2 fmat2;
+
2380 
+
2383  typedef fmat3x3 fmat3;
+
2384 
+
2387  typedef fmat4x4 fmat4;
+
2388 
+
2391  typedef highp_fquat fquat;
+
2392 
+
2393 
+
2394 
+
2397  typedef highp_f32vec1 f32vec1;
+
2398 
+
2401  typedef highp_f32vec2 f32vec2;
+
2402 
+
2405  typedef highp_f32vec3 f32vec3;
+
2406 
+
2409  typedef highp_f32vec4 f32vec4;
+
2410 
+
2413  typedef highp_f32mat2x2 f32mat2x2;
+
2414 
+
2417  typedef highp_f32mat2x3 f32mat2x3;
+
2418 
+
2421  typedef highp_f32mat2x4 f32mat2x4;
+
2422 
+
2425  typedef highp_f32mat3x2 f32mat3x2;
+
2426 
+
2429  typedef highp_f32mat3x3 f32mat3x3;
+
2430 
+
2433  typedef highp_f32mat3x4 f32mat3x4;
+
2434 
+
2437  typedef highp_f32mat4x2 f32mat4x2;
+
2438 
+
2441  typedef highp_f32mat4x3 f32mat4x3;
+
2442 
+
2445  typedef highp_f32mat4x4 f32mat4x4;
+
2446 
+
2449  typedef f32mat2x2 f32mat2;
+
2450 
+
2453  typedef f32mat3x3 f32mat3;
+
2454 
+
2457  typedef f32mat4x4 f32mat4;
+
2458 
+
2461  typedef highp_f32quat f32quat;
+
2462 #endif
+
2463 
+
2464 #if(defined(GLM_PRECISION_LOWP_DOUBLE))
+
2465  typedef lowp_f64vec1 f64vec1;
+
2466  typedef lowp_f64vec2 f64vec2;
+
2467  typedef lowp_f64vec3 f64vec3;
+
2468  typedef lowp_f64vec4 f64vec4;
+
2469  typedef lowp_f64mat2 f64mat2;
+
2470  typedef lowp_f64mat3 f64mat3;
+
2471  typedef lowp_f64mat4 f64mat4;
+
2472  typedef lowp_f64mat2x2 f64mat2x2;
+
2473  typedef lowp_f64mat3x2 f64mat3x2;
+
2474  typedef lowp_f64mat4x2 f64mat4x2;
+
2475  typedef lowp_f64mat2x3 f64mat2x3;
+
2476  typedef lowp_f64mat3x3 f64mat3x3;
+
2477  typedef lowp_f64mat4x3 f64mat4x3;
+
2478  typedef lowp_f64mat2x4 f64mat2x4;
+
2479  typedef lowp_f64mat3x4 f64mat3x4;
+
2480  typedef lowp_f64mat4x4 f64mat4x4;
+
2481  typedef lowp_f64quat f64quat;
+
2482 #elif(defined(GLM_PRECISION_MEDIUMP_DOUBLE))
+
2483  typedef mediump_f64vec1 f64vec1;
+
2484  typedef mediump_f64vec2 f64vec2;
+
2485  typedef mediump_f64vec3 f64vec3;
+
2486  typedef mediump_f64vec4 f64vec4;
+
2487  typedef mediump_f64mat2 f64mat2;
+
2488  typedef mediump_f64mat3 f64mat3;
+
2489  typedef mediump_f64mat4 f64mat4;
+
2490  typedef mediump_f64mat2x2 f64mat2x2;
+
2491  typedef mediump_f64mat3x2 f64mat3x2;
+
2492  typedef mediump_f64mat4x2 f64mat4x2;
+
2493  typedef mediump_f64mat2x3 f64mat2x3;
+
2494  typedef mediump_f64mat3x3 f64mat3x3;
+
2495  typedef mediump_f64mat4x3 f64mat4x3;
+
2496  typedef mediump_f64mat2x4 f64mat2x4;
+
2497  typedef mediump_f64mat3x4 f64mat3x4;
+
2498  typedef mediump_f64mat4x4 f64mat4x4;
+
2499  typedef mediump_f64quat f64quat;
+
2500 #else
+
2501  typedef highp_f64vec1 f64vec1;
+
2504 
+
2507  typedef highp_f64vec2 f64vec2;
+
2508 
+
2511  typedef highp_f64vec3 f64vec3;
+
2512 
+
2515  typedef highp_f64vec4 f64vec4;
+
2516 
+
2519  typedef highp_f64mat2x2 f64mat2x2;
+
2520 
+
2523  typedef highp_f64mat2x3 f64mat2x3;
+
2524 
+
2527  typedef highp_f64mat2x4 f64mat2x4;
+
2528 
+
2531  typedef highp_f64mat3x2 f64mat3x2;
+
2532 
+
2535  typedef highp_f64mat3x3 f64mat3x3;
+
2536 
+
2539  typedef highp_f64mat3x4 f64mat3x4;
+
2540 
+
2543  typedef highp_f64mat4x2 f64mat4x2;
+
2544 
+
2547  typedef highp_f64mat4x3 f64mat4x3;
+
2548 
+
2551  typedef highp_f64mat4x4 f64mat4x4;
+
2552 
+
2555  typedef f64mat2x2 f64mat2;
+
2556 
+
2559  typedef f64mat3x3 f64mat3;
+
2560 
+
2563  typedef f64mat4x4 f64mat4;
+
2564 
+
2567  typedef highp_f64quat f64quat;
+
2568 #endif
+
2569 
+
2570 }//namespace glm
+
detail::int8 lowp_int8_t
Low precision 8 bit signed integer type.
Definition: fwd.hpp:116
+
f32mat4x4 f32mat4
Default single-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2457
+
highp_i16vec1 i16vec1
Default precision 16 bit signed integer scalar type.
Definition: fwd.hpp:444
+
float float32
Default 32 bit single-precision floating-point scalar.
Definition: type_float.hpp:55
+
highp_f32vec1 f32vec1
Default single-precision floating-point vector of 1 components.
Definition: fwd.hpp:2397
+
highp_f32mat2x4 f32mat2x4
Default single-precision floating-point 2x4 matrix.
Definition: fwd.hpp:2421
+
detail::uint8 lowp_uint8
Low precision 8 bit unsigned integer type.
Definition: fwd.hpp:703
+
highp_f64vec4 f64vec4
Default double-precision floating-point vector of 4 components.
Definition: fwd.hpp:2515
+
highp_u32vec1 u32vec1
Default precision 32 bit unsigned integer scalar type.
Definition: fwd.hpp:1132
+ +
tvec4< float, lowp > lowp_vec4
4 components vector of low single-precision floating-point numbers.
Definition: type_vec.hpp:363
+
detail::int8 mediump_int8
Medium precision 8 bit signed integer type.
Definition: fwd.hpp:148
+
detail::int8 mediump_i8
Medium precision 8 bit signed integer type.
Definition: fwd.hpp:180
+
detail::uint8 highp_u8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:837
+
tvec2< float, lowp > lowp_vec2
2 components vector of low single-precision floating-point numbers.
Definition: type_vec.hpp:149
+
detail::int8 mediump_int8_t
Medium precision 8 bit signed integer type.
Definition: fwd.hpp:164
+
detail::uint64 highp_uint64_t
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:833
+
detail::uint16 highp_uint16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:809
+
detail::uint32 highp_uint32_t
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:829
+
detail::int32 mediump_i32
Medium precision 32 bit signed integer type.
Definition: fwd.hpp:188
+
tvec3< float, highp > highp_vec3
3 components vector of high single-precision floating-point numbers.
Definition: type_vec.hpp:245
+
GLM Core
+
detail::int8 highp_i8
High precision 8 bit signed integer type.
Definition: fwd.hpp:228
+
highp_i64vec2 i64vec2
Default precision 64 bit signed integer vector of 2 components type.
Definition: fwd.hpp:686
+
highp_u32vec3 u32vec3
Default precision 32 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:1140
+
detail::uint16 lowp_uint16
Low precision 16 bit unsigned integer type.
Definition: fwd.hpp:707
+
highp_u8vec3 u8vec3
Default precision 8 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:981
+
highp_f32mat3x3 f32mat3x3
Default single-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2429
+
detail::int64 mediump_i64
Medium precision 64 bit signed integer type.
Definition: fwd.hpp:192
+
highp_u16vec4 u16vec4
Default precision 16 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:1065
+
detail::uint64 highp_u64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:849
+
highp_float64_t f64
Default 64 bit double-precision floating-point scalar.
Definition: fwd.hpp:1509
+
highp_f64vec1 f64vec1
Default double-precision floating-point vector of 1 components.
Definition: fwd.hpp:2503
+
highp_u64vec4 u64vec4
Default precision 64 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:1303
+
detail::int8 lowp_int8
Low precision 8 bit signed integer type.
Definition: fwd.hpp:100
+
detail::int16 lowp_int16
Low precision 16 bit signed integer type.
Definition: fwd.hpp:104
+
highp_i16vec4 i16vec4
Default precision 16 bit signed integer vector of 4 components type.
Definition: fwd.hpp:456
+
detail::int16 i16
16 bit signed integer type.
Definition: fwd.hpp:289
+
highp_f64mat3x2 f64mat3x2
Default double-precision floating-point 3x2 matrix.
Definition: fwd.hpp:2531
+
fmat3x3 fmat3
Default single-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2383
+
detail::int8 int8
8 bit signed integer type.
Definition: type_int.hpp:206
+
detail::int32 lowp_i32
Low precision 32 bit signed integer type.
Definition: fwd.hpp:140
+
detail::uint8 uint8_t
8 bit unsigned integer type.
Definition: fwd.hpp:877
+
detail::int32 lowp_int32_t
Low precision 32 bit signed integer type.
Definition: fwd.hpp:124
+
tvec4< float, mediump > mediump_vec4
4 components vector of medium single-precision floating-point numbers.
Definition: type_vec.hpp:357
+
detail::uint8 highp_uint8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:805
+
detail::int32 highp_i32
High precision 32 bit signed integer type.
Definition: fwd.hpp:236
+
detail::uint8 mediump_uint8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:755
+
detail::uint8 mediump_u8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:787
+
highp_f32mat2x3 fmat2x3
Default single-precision floating-point 2x3 matrix.
Definition: fwd.hpp:2347
+
highp_f32mat4x2 f32mat4x2
Default single-precision floating-point 4x2 matrix.
Definition: fwd.hpp:2437
+
detail::uint16 highp_u16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:841
+
detail::uint32 highp_u32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:845
+
detail::int64 int64
64 bit signed integer type.
Definition: type_int.hpp:209
+
detail::uint32 u32
32 bit unsigned integer type.
Definition: fwd.hpp:902
+
highp_f64mat4x4 f64mat4x4
Default double-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2551
+
double float64
Default 64 bit double-precision floating-point scalar.
Definition: type_float.hpp:56
+
detail::int8 highp_int8
High precision 8 bit signed integer type.
Definition: fwd.hpp:196
+
highp_f64mat2x3 f64mat2x3
Default double-precision floating-point 2x3 matrix.
Definition: fwd.hpp:2523
+
highp_u16vec3 u16vec3
Default precision 16 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:1061
+
highp_i16vec2 i16vec2
Default precision 16 bit signed integer vector of 2 components type.
Definition: fwd.hpp:448
+
f32mat2x2 f32mat2
Default single-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2449
+
detail::uint32 lowp_uint32
Low precision 32 bit unsigned integer type.
Definition: fwd.hpp:711
+
tvec3< float, lowp > lowp_vec3
3 components vector of low single-precision floating-point numbers.
Definition: type_vec.hpp:259
+
detail::int16 mediump_int16_t
Medium precision 16 bit signed integer type.
Definition: fwd.hpp:168
+
detail::int8 int8_t
8 bit signed integer type.
Definition: fwd.hpp:268
+
detail::uint64 mediump_uint64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:767
+
detail::uint16 uint16
16 bit unsigned integer type.
Definition: type_int.hpp:212
+
highp_f32mat4x3 fmat4x3
Default single-precision floating-point 4x3 matrix.
Definition: fwd.hpp:2371
+
detail::uint16 u16
16 bit unsigned integer type.
Definition: fwd.hpp:898
+
highp_f32vec4 fvec4
Default single-precision floating-point vector of 4 components.
Definition: fwd.hpp:2339
+
Definition: _noise.hpp:11
+
highp_u32vec2 u32vec2
Default precision 32 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:1136
+
highp_f32mat2x2 f32mat2x2
Default single-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2413
+
f64mat4x4 f64mat4
Default double-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2563
+
detail::int32 mediump_int32
Medium precision 32 bit signed integer type.
Definition: fwd.hpp:156
+
detail::int16 highp_i16
High precision 16 bit signed integer type.
Definition: fwd.hpp:232
+
highp_f32mat3x2 f32mat3x2
Default single-precision floating-point 3x2 matrix.
Definition: fwd.hpp:2425
+
detail::uint8 highp_uint8_t
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:821
+
highp_f64mat4x2 f64mat4x2
Default double-precision floating-point 4x2 matrix.
Definition: fwd.hpp:2543
+
highp_f64mat3x4 f64mat3x4
Default double-precision floating-point 3x4 matrix.
Definition: fwd.hpp:2539
+
highp_f32mat4x4 fmat4x4
Default single-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2375
+
highp_float32_t float32_t
Default 32 bit single-precision floating-point scalar.
Definition: fwd.hpp:1497
+
detail::uint64 highp_uint64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:817
+
tvec4< float, highp > highp_vec4
4 components vector of high single-precision floating-point numbers.
Definition: type_vec.hpp:351
+
highp_u64vec1 u64vec1
Default precision 64 bit unsigned integer scalar type.
Definition: fwd.hpp:1291
+
detail::int64 lowp_i64
Low precision 64 bit signed integer type.
Definition: fwd.hpp:144
+
highp_f64vec3 f64vec3
Default double-precision floating-point vector of 3 components.
Definition: fwd.hpp:2511
+
detail::int16 int16
16 bit signed integer type.
Definition: type_int.hpp:207
+
detail::int32 lowp_int32
Low precision 32 bit signed integer type.
Definition: fwd.hpp:108
+
detail::uint64 lowp_uint64_t
Low precision 64 bit unsigned integer type.
Definition: fwd.hpp:732
+
highp_i32vec1 i32vec1
Default precision 32 bit signed integer scalar type.
Definition: fwd.hpp:523
+
detail::uint32 lowp_u32
Low precision 32 bit unsigned integer type.
Definition: fwd.hpp:745
+
highp_u8vec2 u8vec2
Default precision 8 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:977
+
highp_i16vec3 i16vec3
Default precision 16 bit signed integer vector of 3 components type.
Definition: fwd.hpp:452
+
highp_f32vec2 f32vec2
Default single-precision floating-point vector of 2 components.
Definition: fwd.hpp:2401
+
detail::uint8 lowp_uint8_t
Low precision 8 bit unsigned integer type.
Definition: fwd.hpp:720
+
GLM Core
+
highp_i64vec4 i64vec4
Default precision 64 bit signed integer vector of 4 components type.
Definition: fwd.hpp:694
+
highp_f32vec2 fvec2
Default single-precision floating-point vector of 2 components.
Definition: fwd.hpp:2331
+
fmat4x4 fmat4
Default single-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2387
+
highp_f32vec4 f32vec4
Default single-precision floating-point vector of 4 components.
Definition: fwd.hpp:2409
+
detail::uint64 lowp_u64
Low precision 64 bit unsigned integer type.
Definition: fwd.hpp:749
+
detail::int8 i8
8 bit signed integer type.
Definition: fwd.hpp:285
+
highp_f32mat2x2 fmat2x2
Default single-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2343
+
highp_i64vec3 i64vec3
Default precision 64 bit signed integer vector of 3 components type.
Definition: fwd.hpp:690
+
tvec3< float, mediump > mediump_vec3
3 components vector of medium single-precision floating-point numbers.
Definition: type_vec.hpp:252
+
detail::int16 lowp_i16
Low precision 16 bit signed integer type.
Definition: fwd.hpp:136
+
detail::uint64 lowp_uint64
Low precision 64 bit unsigned integer type.
Definition: fwd.hpp:715
+
detail::int64 highp_int64
High precision 64 bit signed integer type.
Definition: fwd.hpp:208
+
detail::uint8 u8
8 bit unsigned integer type.
Definition: fwd.hpp:894
+
detail::uint32 mediump_u32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:795
+
f64mat2x2 f64mat2
Default double-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2555
+
highp_f64mat2x2 f64mat2x2
Default double-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2519
+
detail::int64 lowp_int64_t
Low precision 64 bit signed integer type.
Definition: fwd.hpp:128
+
detail::uint16 lowp_u16
Low precision 16 bit unsigned integer type.
Definition: fwd.hpp:741
+
highp_u16vec2 u16vec2
Default precision 16 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:1057
+
detail::uint32 mediump_uint32_t
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:779
+
highp_u16vec1 u16vec1
Default precision 16 bit unsigned integer scalar type.
Definition: fwd.hpp:1053
+
tvec2< float, mediump > mediump_vec2
2 components vector of medium single-precision floating-point numbers.
Definition: type_vec.hpp:142
+
tvec2< float, highp > highp_vec2
2 components vector of high single-precision floating-point numbers.
Definition: type_vec.hpp:135
+
highp_f64quat f64quat
Default double-precision floating-point quaternion.
Definition: fwd.hpp:2567
+
detail::uint16 lowp_uint16_t
Low precision 16 bit unsigned integer type.
Definition: fwd.hpp:724
+
detail::int64 highp_i64
High precision 64 bit signed integer type.
Definition: fwd.hpp:240
+
detail::int16 mediump_i16
Medium precision 16 bit signed integer type.
Definition: fwd.hpp:184
+
highp_u64vec2 u64vec2
Default precision 64 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:1295
+
detail::int32 highp_int32
High precision 32 bit signed integer type.
Definition: fwd.hpp:204
+
highp_f32mat2x3 f32mat2x3
Default single-precision floating-point 2x3 matrix.
Definition: fwd.hpp:2417
+
highp_u32vec4 u32vec4
Default precision 32 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:1144
+
detail::uint8 uint8
8 bit unsigned integer type.
Definition: type_int.hpp:211
+
detail::int32 mediump_int32_t
Medium precision 32 bit signed integer type.
Definition: fwd.hpp:172
+
detail::uint32 uint32
32 bit unsigned integer type.
Definition: type_int.hpp:213
+
detail::int32 int32_t
32 bit signed integer type.
Definition: fwd.hpp:276
+
fmat2x2 fmat2
Default single-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2379
+
detail::uint16 mediump_u16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:791
+
GLM Core
+
detail::uint16 highp_uint16_t
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:825
+
detail::uint32 mediump_uint32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:763
+
detail::uint64 uint64_t
64 bit unsigned integer type.
Definition: fwd.hpp:889
+
highp_i8vec2 i8vec2
Default precision 8 bit signed integer vector of 2 components type.
Definition: fwd.hpp:368
+
highp_f32mat4x3 f32mat4x3
Default single-precision floating-point 4x3 matrix.
Definition: fwd.hpp:2441
+
highp_f64mat4x3 f64mat4x3
Default double-precision floating-point 4x3 matrix.
Definition: fwd.hpp:2547
+
detail::uint64 uint64
64 bit unsigned integer type.
Definition: type_int.hpp:214
+
highp_f32mat2x4 fmat2x4
Default single-precision floating-point 2x4 matrix.
Definition: fwd.hpp:2351
+
detail::uint8 mediump_uint8_t
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:771
+
highp_f32mat3x4 fmat3x4
Default single-precision floating-point 3x4 matrix.
Definition: fwd.hpp:2363
+
highp_i32vec2 i32vec2
Default precision 32 bit signed integer vector of 2 components type.
Definition: fwd.hpp:527
+
highp_float64_t float64_t
Default 64 bit double-precision floating-point scalar.
Definition: fwd.hpp:1501
+
highp_i8vec3 i8vec3
Default precision 8 bit signed integer vector of 3 components type.
Definition: fwd.hpp:372
+
detail::int64 mediump_int64_t
Medium precision 64 bit signed integer type.
Definition: fwd.hpp:176
+
highp_f32mat4x4 f32mat4x4
Default single-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2445
+
highp_i8vec1 i8vec1
Default precision 8 bit signed integer scalar type.
Definition: fwd.hpp:364
+
highp_i32vec4 i32vec4
Default precision 32 bit signed integer vector of 4 components type.
Definition: fwd.hpp:535
+
detail::int8 lowp_i8
Low precision 8 bit signed integer type.
Definition: fwd.hpp:132
+
highp_f32vec3 f32vec3
Default single-precision floating-point vector of 3 components.
Definition: fwd.hpp:2405
+
highp_f32vec1 fvec1
Default single-precision floating-point vector of 1 components.
Definition: fwd.hpp:2327
+
detail::int32 highp_int32_t
32 bit signed integer type.
Definition: fwd.hpp:220
+
detail::int64 mediump_int64
Medium precision 64 bit signed integer type.
Definition: fwd.hpp:160
+
detail::uint64 mediump_u64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:799
+
highp_u64vec3 u64vec3
Default precision 64 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:1299
+
highp_f32mat3x3 fmat3x3
Default single-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2359
+
highp_i8vec4 i8vec4
Default precision 8 bit signed integer vector of 4 components type.
Definition: fwd.hpp:376
+
highp_f32vec3 fvec3
Default single-precision floating-point vector of 3 components.
Definition: fwd.hpp:2335
+
detail::uint8 lowp_u8
Low precision 8 bit unsigned integer type.
Definition: fwd.hpp:737
+
detail::uint32 highp_uint32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:813
+
highp_f32mat4x2 fmat4x2
Default single-precision floating-point 4x2 matrix.
Definition: fwd.hpp:2367
+
detail::uint16 mediump_uint16_t
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:775
+
detail::uint32 uint32_t
32 bit unsigned integer type.
Definition: fwd.hpp:885
+
detail::uint64 mediump_uint64_t
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:783
+
highp_i32vec3 i32vec3
Default precision 32 bit signed integer vector of 3 components type.
Definition: fwd.hpp:531
+
highp_f32mat3x4 f32mat3x4
Default single-precision floating-point 3x4 matrix.
Definition: fwd.hpp:2433
+
detail::int32 int32
32 bit signed integer type.
Definition: type_int.hpp:208
+
highp_u8vec4 u8vec4
Default precision 8 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:985
+
detail::int64 highp_int64_t
High precision 64 bit signed integer type.
Definition: fwd.hpp:224
+
highp_i64vec1 i64vec1
Default precision 64 bit signed integer scalar type.
Definition: fwd.hpp:682
+
detail::uint16 mediump_uint16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:759
+
detail::uint64 u64
64 bit unsigned integer type.
Definition: fwd.hpp:906
+
detail::int64 lowp_int64
Low precision 64 bit signed integer type.
Definition: fwd.hpp:112
+
detail::int16 lowp_int16_t
Low precision 16 bit signed integer type.
Definition: fwd.hpp:120
+
detail::int16 mediump_int16
Medium precision 16 bit signed integer type.
Definition: fwd.hpp:152
+
detail::int16 int16_t
16 bit signed integer type.
Definition: fwd.hpp:272
+
detail::int64 int64_t
64 bit signed integer type.
Definition: fwd.hpp:280
+
detail::int32 i32
32 bit signed integer type.
Definition: fwd.hpp:293
+
detail::uint32 lowp_uint32_t
Low precision 32 bit unsigned integer type.
Definition: fwd.hpp:728
+
detail::int16 highp_int16
High precision 16 bit signed integer type.
Definition: fwd.hpp:200
+
detail::uint16 uint16_t
16 bit unsigned integer type.
Definition: fwd.hpp:881
+
highp_f32quat f32quat
Default single-precision floating-point quaternion.
Definition: fwd.hpp:2461
+
f64mat3x3 f64mat3
Default double-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2559
+
highp_f64vec2 f64vec2
Default double-precision floating-point vector of 2 components.
Definition: fwd.hpp:2507
+
detail::int64 i64
64 bit signed integer type.
Definition: fwd.hpp:297
+
highp_f64mat2x4 f64mat2x4
Default double-precision floating-point 2x4 matrix.
Definition: fwd.hpp:2527
+
highp_f64mat3x3 f64mat3x3
Default double-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2535
+
detail::int16 highp_int16_t
High precision 16 bit signed integer type.
Definition: fwd.hpp:216
+
highp_f32mat3x2 fmat3x2
Default single-precision floating-point 3x2 matrix.
Definition: fwd.hpp:2355
+
highp_u8vec1 u8vec1
Default precision 8 bit unsigned integer scalar type.
Definition: fwd.hpp:973
+
highp_float32_t f32
Default 32 bit single-precision floating-point scalar.
Definition: fwd.hpp:1505
+
detail::int8 highp_int8_t
High precision 8 bit signed integer type.
Definition: fwd.hpp:212
+
f32mat3x3 f32mat3
Default single-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2453
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00039.html b/third_party/glm_test/doc/api/a00039.html new file mode 100644 index 0000000000000..35a7e3802ebc5 --- /dev/null +++ b/third_party/glm_test/doc/api/a00039.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: geometric.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
geometric.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file geometric.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00039_source.html b/third_party/glm_test/doc/api/a00039_source.html new file mode 100644 index 0000000000000..b52d63448892d --- /dev/null +++ b/third_party/glm_test/doc/api/a00039_source.html @@ -0,0 +1,65 @@ + + + + + + +0.9.8: geometric.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
geometric.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+ + +
+ + + + diff --git a/third_party/glm_test/doc/api/a00040.html b/third_party/glm_test/doc/api/a00040.html new file mode 100644 index 0000000000000..af523f1555361 --- /dev/null +++ b/third_party/glm_test/doc/api/a00040.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: glm.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
glm.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file glm.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00040_source.html b/third_party/glm_test/doc/api/a00040_source.html new file mode 100644 index 0000000000000..ce7af3f6ca504 --- /dev/null +++ b/third_party/glm_test/doc/api/a00040_source.html @@ -0,0 +1,119 @@ + + + + + + +0.9.8: glm.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
glm.hpp
+
+
+Go to the documentation of this file.
1 
+
52 #include "detail/_fixes.hpp"
+
53 
+
54 #pragma once
+
55 
+
56 #include <cmath>
+
57 #include <climits>
+
58 #include <cfloat>
+
59 #include <limits>
+
60 #include <cassert>
+
61 #include "fwd.hpp"
+
62 
+
63 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_MESSAGE_CORE_INCLUDED_DISPLAYED)
+
64 # define GLM_MESSAGE_CORE_INCLUDED_DISPLAYED
+
65 # pragma message("GLM: Core library included")
+
66 #endif//GLM_MESSAGES
+
67 
+
68 #include "vec2.hpp"
+
69 #include "vec3.hpp"
+
70 #include "vec4.hpp"
+
71 #include "mat2x2.hpp"
+
72 #include "mat2x3.hpp"
+
73 #include "mat2x4.hpp"
+
74 #include "mat3x2.hpp"
+
75 #include "mat3x3.hpp"
+
76 #include "mat3x4.hpp"
+
77 #include "mat4x2.hpp"
+
78 #include "mat4x3.hpp"
+
79 #include "mat4x4.hpp"
+
80 
+
81 #include "trigonometric.hpp"
+
82 #include "exponential.hpp"
+
83 #include "common.hpp"
+
84 #include "packing.hpp"
+
85 #include "geometric.hpp"
+
86 #include "matrix.hpp"
+
87 #include "vector_relational.hpp"
+
88 #include "integer.hpp"
+ +
GLM Core
+ +
GLM Core
+
GLM Core
+
GLM Core
+
GLM Core
+
GLM Core
+
GLM Core
+
GLM Core
+
GLM Core
+
GLM Core
+
GLM Core
+
GLM Core
+
GLM Core
+
GLM Core
+
GLM Core
+
GLM Core
+
GLM Core
+
GLM Core
+ +
+ + + + diff --git a/third_party/glm_test/doc/api/a00041.html b/third_party/glm_test/doc/api/a00041.html new file mode 100644 index 0000000000000..c0c311b8926a2 --- /dev/null +++ b/third_party/glm_test/doc/api/a00041.html @@ -0,0 +1,81 @@ + + + + + + +0.9.8: gradient_paint.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
gradient_paint.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL T linearGradient (tvec2< T, P > const &Point0, tvec2< T, P > const &Point1, tvec2< T, P > const &Position)
 
template<typename T , precision P>
GLM_FUNC_DECL T radialGradient (tvec2< T, P > const &Center, T const &Radius, tvec2< T, P > const &Focal, tvec2< T, P > const &Position)
 
+

Detailed Description

+

GLM_GTX_gradient_paint

+
See also
GLM Core (dependence)
+
+GLM_GTX_optimum_pow (dependence)
+ +

Definition in file gradient_paint.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00041_source.html b/third_party/glm_test/doc/api/a00041_source.html new file mode 100644 index 0000000000000..9f26eda03eba7 --- /dev/null +++ b/third_party/glm_test/doc/api/a00041_source.html @@ -0,0 +1,93 @@ + + + + + + +0.9.8: gradient_paint.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
gradient_paint.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 #include "../gtx/optimum_pow.hpp"
+
18 
+
19 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
20 # pragma message("GLM: GLM_GTX_gradient_paint extension included")
+
21 #endif
+
22 
+
23 namespace glm
+
24 {
+
27 
+
30  template <typename T, precision P>
+
31  GLM_FUNC_DECL T radialGradient(
+
32  tvec2<T, P> const & Center,
+
33  T const & Radius,
+
34  tvec2<T, P> const & Focal,
+
35  tvec2<T, P> const & Position);
+
36 
+
39  template <typename T, precision P>
+
40  GLM_FUNC_DECL T linearGradient(
+
41  tvec2<T, P> const & Point0,
+
42  tvec2<T, P> const & Point1,
+
43  tvec2<T, P> const & Position);
+
44 
+
46 }// namespace glm
+
47 
+
48 #include "gradient_paint.inl"
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL T linearGradient(tvec2< T, P > const &Point0, tvec2< T, P > const &Point1, tvec2< T, P > const &Position)
Return a color from a linear gradient.
+
GLM_FUNC_DECL T radialGradient(tvec2< T, P > const &Center, T const &Radius, tvec2< T, P > const &Focal, tvec2< T, P > const &Position)
Return a color from a radial gradient.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00042.html b/third_party/glm_test/doc/api/a00042.html new file mode 100644 index 0000000000000..91e863da0ac18 --- /dev/null +++ b/third_party/glm_test/doc/api/a00042.html @@ -0,0 +1,79 @@ + + + + + + +0.9.8: handed_coordinate_space.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
handed_coordinate_space.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL bool leftHanded (tvec3< T, P > const &tangent, tvec3< T, P > const &binormal, tvec3< T, P > const &normal)
 
template<typename T , precision P>
GLM_FUNC_DECL bool rightHanded (tvec3< T, P > const &tangent, tvec3< T, P > const &binormal, tvec3< T, P > const &normal)
 
+

Detailed Description

+

GLM_GTX_handed_coordinate_space

+
See also
GLM Core (dependence)
+ +

Definition in file handed_coordinate_space.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00042_source.html b/third_party/glm_test/doc/api/a00042_source.html new file mode 100644 index 0000000000000..8ec37715e2f42 --- /dev/null +++ b/third_party/glm_test/doc/api/a00042_source.html @@ -0,0 +1,91 @@ + + + + + + +0.9.8: handed_coordinate_space.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
handed_coordinate_space.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 
+
18 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
19 # pragma message("GLM: GLM_GTX_handed_coordinate_space extension included")
+
20 #endif
+
21 
+
22 namespace glm
+
23 {
+
26 
+
29  template <typename T, precision P>
+
30  GLM_FUNC_DECL bool rightHanded(
+
31  tvec3<T, P> const & tangent,
+
32  tvec3<T, P> const & binormal,
+
33  tvec3<T, P> const & normal);
+
34 
+
37  template <typename T, precision P>
+
38  GLM_FUNC_DECL bool leftHanded(
+
39  tvec3<T, P> const & tangent,
+
40  tvec3<T, P> const & binormal,
+
41  tvec3<T, P> const & normal);
+
42 
+
44 }// namespace glm
+
45 
+
46 #include "handed_coordinate_space.inl"
+
GLM_FUNC_DECL bool leftHanded(tvec3< T, P > const &tangent, tvec3< T, P > const &binormal, tvec3< T, P > const &normal)
Return if a trihedron left handed or not.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL bool rightHanded(tvec3< T, P > const &tangent, tvec3< T, P > const &binormal, tvec3< T, P > const &normal)
Return if a trihedron right handed or not.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00043.html b/third_party/glm_test/doc/api/a00043.html new file mode 100644 index 0000000000000..a085f1bafcb98 --- /dev/null +++ b/third_party/glm_test/doc/api/a00043.html @@ -0,0 +1,67 @@ + + + + + + +0.9.8: hash.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
hash.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM_GTX_hash

+
See also
GLM Core (dependence)
+ +

Definition in file hash.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00043_source.html b/third_party/glm_test/doc/api/a00043_source.html new file mode 100644 index 0000000000000..740f658280d83 --- /dev/null +++ b/third_party/glm_test/doc/api/a00043_source.html @@ -0,0 +1,185 @@ + + + + + + +0.9.8: hash.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
hash.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 #include <functional>
+
16 
+
17 #include "../vec2.hpp"
+
18 #include "../vec3.hpp"
+
19 #include "../vec4.hpp"
+
20 #include "../gtc/vec1.hpp"
+
21 
+
22 #include "../gtc/quaternion.hpp"
+
23 #include "../gtx/dual_quaternion.hpp"
+
24 
+
25 #include "../mat2x2.hpp"
+
26 #include "../mat2x3.hpp"
+
27 #include "../mat2x4.hpp"
+
28 
+
29 #include "../mat3x2.hpp"
+
30 #include "../mat3x3.hpp"
+
31 #include "../mat3x4.hpp"
+
32 
+
33 #include "../mat4x2.hpp"
+
34 #include "../mat4x3.hpp"
+
35 #include "../mat4x4.hpp"
+
36 
+
37 #if !GLM_HAS_CXX11_STL
+
38 # error "GLM_GTX_hash requires C++11 standard library support"
+
39 #endif
+
40 
+
41 namespace std
+
42 {
+
43  template <typename T, glm::precision P>
+
44  struct hash<glm::tvec1<T,P> >
+
45  {
+
46  GLM_FUNC_DECL size_t operator()(glm::tvec1<T, P> const & v) const;
+
47  };
+
48 
+
49  template <typename T, glm::precision P>
+
50  struct hash<glm::tvec2<T,P> >
+
51  {
+
52  GLM_FUNC_DECL size_t operator()(glm::tvec2<T, P> const & v) const;
+
53  };
+
54 
+
55  template <typename T, glm::precision P>
+
56  struct hash<glm::tvec3<T,P> >
+
57  {
+
58  GLM_FUNC_DECL size_t operator()(glm::tvec3<T, P> const & v) const;
+
59  };
+
60 
+
61  template <typename T, glm::precision P>
+
62  struct hash<glm::tvec4<T,P> >
+
63  {
+
64  GLM_FUNC_DECL size_t operator()(glm::tvec4<T, P> const & v) const;
+
65  };
+
66 
+
67  template <typename T, glm::precision P>
+
68  struct hash<glm::tquat<T,P>>
+
69  {
+
70  GLM_FUNC_DECL size_t operator()(glm::tquat<T, P> const & q) const;
+
71  };
+
72 
+
73  template <typename T, glm::precision P>
+
74  struct hash<glm::tdualquat<T,P> >
+
75  {
+
76  GLM_FUNC_DECL size_t operator()(glm::tdualquat<T,P> const & q) const;
+
77  };
+
78 
+
79  template <typename T, glm::precision P>
+
80  struct hash<glm::tmat2x2<T,P> >
+
81  {
+
82  GLM_FUNC_DECL size_t operator()(glm::tmat2x2<T,P> const & m) const;
+
83  };
+
84 
+
85  template <typename T, glm::precision P>
+
86  struct hash<glm::tmat2x3<T,P> >
+
87  {
+
88  GLM_FUNC_DECL size_t operator()(glm::tmat2x3<T,P> const & m) const;
+
89  };
+
90 
+
91  template <typename T, glm::precision P>
+
92  struct hash<glm::tmat2x4<T,P> >
+
93  {
+
94  GLM_FUNC_DECL size_t operator()(glm::tmat2x4<T,P> const & m) const;
+
95  };
+
96 
+
97  template <typename T, glm::precision P>
+
98  struct hash<glm::tmat3x2<T,P> >
+
99  {
+
100  GLM_FUNC_DECL size_t operator()(glm::tmat3x2<T,P> const & m) const;
+
101  };
+
102 
+
103  template <typename T, glm::precision P>
+
104  struct hash<glm::tmat3x3<T,P> >
+
105  {
+
106  GLM_FUNC_DECL size_t operator()(glm::tmat3x3<T,P> const & m) const;
+
107  };
+
108 
+
109  template <typename T, glm::precision P>
+
110  struct hash<glm::tmat3x4<T,P> >
+
111  {
+
112  GLM_FUNC_DECL size_t operator()(glm::tmat3x4<T,P> const & m) const;
+
113  };
+
114 
+
115  template <typename T, glm::precision P>
+
116  struct hash<glm::tmat4x2<T,P> >
+
117  {
+
118  GLM_FUNC_DECL size_t operator()(glm::tmat4x2<T,P> const & m) const;
+
119  };
+
120 
+
121  template <typename T, glm::precision P>
+
122  struct hash<glm::tmat4x3<T,P> >
+
123  {
+
124  GLM_FUNC_DECL size_t operator()(glm::tmat4x3<T,P> const & m) const;
+
125  };
+
126 
+
127  template <typename T, glm::precision P>
+
128  struct hash<glm::tmat4x4<T,P> >
+
129  {
+
130  GLM_FUNC_DECL size_t operator()(glm::tmat4x4<T,P> const & m) const;
+
131  };
+
132 } // namespace std
+
133 
+
134 #include "hash.inl"
+
Definition: _noise.hpp:11
+
Definition: hash.hpp:41
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00044.html b/third_party/glm_test/doc/api/a00044.html new file mode 100644 index 0000000000000..c336ff64126cd --- /dev/null +++ b/third_party/glm_test/doc/api/a00044.html @@ -0,0 +1,93 @@ + + + + + + +0.9.8: integer.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
gtc/integer.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< int, P > iround (vecType< T, P > const &x)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType log2 (genIUType x)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType mod (genIUType x, genIUType y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > mod (vecType< T, P > const &x, T y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > mod (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< uint, P > uround (vecType< T, P > const &x)
 
+

Detailed Description

+

GLM_GTC_integer

+
See also
GLM Core (dependence)
+
+GLM_GTC_integer (dependence)
+ +

Definition in file gtc/integer.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00044_source.html b/third_party/glm_test/doc/api/a00044_source.html new file mode 100644 index 0000000000000..7b6e1733eddc6 --- /dev/null +++ b/third_party/glm_test/doc/api/a00044_source.html @@ -0,0 +1,104 @@ + + + + + + +0.9.8: integer.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
gtc/integer.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependencies
+
17 #include "../detail/setup.hpp"
+
18 #include "../detail/precision.hpp"
+
19 #include "../detail/func_common.hpp"
+
20 #include "../detail/func_integer.hpp"
+
21 #include "../detail/func_exponential.hpp"
+
22 #include <limits>
+
23 
+
24 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
25 # pragma message("GLM: GLM_GTC_integer extension included")
+
26 #endif
+
27 
+
28 namespace glm
+
29 {
+
32 
+
35  template <typename genIUType>
+
36  GLM_FUNC_DECL genIUType log2(genIUType x);
+
37 
+
46  template <typename genIUType>
+
47  GLM_FUNC_DECL genIUType mod(genIUType x, genIUType y);
+
48 
+
58  template <typename T, precision P, template <typename, precision> class vecType>
+
59  GLM_FUNC_DECL vecType<T, P> mod(vecType<T, P> const & x, T y);
+
60 
+
70  template <typename T, precision P, template <typename, precision> class vecType>
+
71  GLM_FUNC_DECL vecType<T, P> mod(vecType<T, P> const & x, vecType<T, P> const & y);
+
72 
+
83  template <typename T, precision P, template <typename, precision> class vecType>
+
84  GLM_FUNC_DECL vecType<int, P> iround(vecType<T, P> const & x);
+
85 
+
96  template <typename T, precision P, template <typename, precision> class vecType>
+
97  GLM_FUNC_DECL vecType<uint, P> uround(vecType<T, P> const & x);
+
98 
+
100 } //namespace glm
+
101 
+
102 #include "integer.inl"
+
GLM_FUNC_DECL vecType< uint, P > uround(vecType< T, P > const &x)
Returns a value equal to the nearest integer to x.
+
GLM_FUNC_DECL genIUType log2(genIUType x)
Returns the log2 of x for integer values.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL genIUType mod(genIUType x, genIUType y)
Modulus.
+
GLM_FUNC_DECL vecType< int, P > iround(vecType< T, P > const &x)
Returns a value equal to the nearest integer to x.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00045.html b/third_party/glm_test/doc/api/a00045.html new file mode 100644 index 0000000000000..6e6218862fa18 --- /dev/null +++ b/third_party/glm_test/doc/api/a00045.html @@ -0,0 +1,98 @@ + + + + + + +0.9.8: integer.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
gtx/integer.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + +

+Typedefs

typedef signed int sint
 
+ + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType factorial (genType const &x)
 
GLM_FUNC_DECL unsigned int floor_log2 (unsigned int x)
 
GLM_FUNC_DECL int mod (int x, int y)
 
GLM_FUNC_DECL uint mod (uint x, uint y)
 
GLM_FUNC_DECL uint nlz (uint x)
 
GLM_FUNC_DECL int pow (int x, int y)
 
GLM_FUNC_DECL uint pow (uint x, uint y)
 
GLM_FUNC_DECL int sqrt (int x)
 
GLM_FUNC_DECL uint sqrt (uint x)
 
+

Detailed Description

+

GLM_GTX_integer

+
See also
GLM Core (dependence)
+ +

Definition in file gtx/integer.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00045_source.html b/third_party/glm_test/doc/api/a00045_source.html new file mode 100644 index 0000000000000..4c7c4b4344374 --- /dev/null +++ b/third_party/glm_test/doc/api/a00045_source.html @@ -0,0 +1,107 @@ + + + + + + +0.9.8: integer.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
gtx/integer.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 #include "../gtc/integer.hpp"
+
18 
+
19 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
20 # pragma message("GLM: GLM_GTX_integer extension included")
+
21 #endif
+
22 
+
23 namespace glm
+
24 {
+
27 
+
30  GLM_FUNC_DECL int pow(int x, int y);
+
31 
+
34  GLM_FUNC_DECL int sqrt(int x);
+
35 
+
38  GLM_FUNC_DECL unsigned int floor_log2(unsigned int x);
+
39 
+
42  GLM_FUNC_DECL int mod(int x, int y);
+
43 
+
46  template <typename genType>
+
47  GLM_FUNC_DECL genType factorial(genType const & x);
+
48 
+
51  typedef signed int sint;
+
52 
+
55  GLM_FUNC_DECL uint pow(uint x, uint y);
+
56 
+
59  GLM_FUNC_DECL uint sqrt(uint x);
+
60 
+
63  GLM_FUNC_DECL uint mod(uint x, uint y);
+
64 
+
67  GLM_FUNC_DECL uint nlz(uint x);
+
68 
+
70 }//namespace glm
+
71 
+
72 #include "integer.inl"
+
GLM_FUNC_DECL uint mod(uint x, uint y)
Modulus.
+
signed int sint
32bit signed integer.
Definition: gtx/integer.hpp:51
+
unsigned int uint
Unsigned integer type.
Definition: type_int.hpp:288
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL uint pow(uint x, uint y)
Returns x raised to the y power.
+
GLM_FUNC_DECL uint nlz(uint x)
Returns the number of leading zeros.
+
GLM_FUNC_DECL uint sqrt(uint x)
Returns the positive square root of x.
+
GLM_FUNC_DECL genType factorial(genType const &x)
Return the factorial value of a number (!12 max, integer only) From GLM_GTX_integer extension...
+
GLM_FUNC_DECL unsigned int floor_log2(unsigned int x)
Returns the floor log2 of x.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00046.html b/third_party/glm_test/doc/api/a00046.html new file mode 100644 index 0000000000000..fa9127c29c369 --- /dev/null +++ b/third_party/glm_test/doc/api/a00046.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: integer.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
integer.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file integer.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00046_source.html b/third_party/glm_test/doc/api/a00046_source.html new file mode 100644 index 0000000000000..3fecbe498ae39 --- /dev/null +++ b/third_party/glm_test/doc/api/a00046_source.html @@ -0,0 +1,65 @@ + + + + + + +0.9.8: integer.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
integer.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+ + +
+ + + + diff --git a/third_party/glm_test/doc/api/a00047.html b/third_party/glm_test/doc/api/a00047.html new file mode 100644 index 0000000000000..b78868f0a117b --- /dev/null +++ b/third_party/glm_test/doc/api/a00047.html @@ -0,0 +1,93 @@ + + + + + + +0.9.8: intersect.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
intersect.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL bool intersectLineSphere (genType const &point0, genType const &point1, genType const &sphereCenter, typename genType::value_type sphereRadius, genType &intersectionPosition1, genType &intersectionNormal1, genType &intersectionPosition2=genType(), genType &intersectionNormal2=genType())
 
template<typename genType >
GLM_FUNC_DECL bool intersectLineTriangle (genType const &orig, genType const &dir, genType const &vert0, genType const &vert1, genType const &vert2, genType &position)
 
template<typename genType >
GLM_FUNC_DECL bool intersectRayPlane (genType const &orig, genType const &dir, genType const &planeOrig, genType const &planeNormal, typename genType::value_type &intersectionDistance)
 
template<typename genType >
GLM_FUNC_DECL bool intersectRaySphere (genType const &rayStarting, genType const &rayNormalizedDirection, genType const &sphereCenter, typename genType::value_type const sphereRadiusSquered, typename genType::value_type &intersectionDistance)
 
template<typename genType >
GLM_FUNC_DECL bool intersectRaySphere (genType const &rayStarting, genType const &rayNormalizedDirection, genType const &sphereCenter, const typename genType::value_type sphereRadius, genType &intersectionPosition, genType &intersectionNormal)
 
template<typename genType >
GLM_FUNC_DECL bool intersectRayTriangle (genType const &orig, genType const &dir, genType const &vert0, genType const &vert1, genType const &vert2, genType &baryPosition)
 
+

Detailed Description

+

GLM_GTX_intersect

+
See also
GLM Core (dependence)
+
+GLM_GTX_closest_point (dependence)
+ +

Definition in file intersect.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00047_source.html b/third_party/glm_test/doc/api/a00047_source.html new file mode 100644 index 0000000000000..4b4b2fbf30b9f --- /dev/null +++ b/third_party/glm_test/doc/api/a00047_source.html @@ -0,0 +1,124 @@ + + + + + + +0.9.8: intersect.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
intersect.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include <cfloat>
+
18 #include <limits>
+
19 #include "../glm.hpp"
+
20 #include "../geometric.hpp"
+
21 #include "../gtx/closest_point.hpp"
+
22 #include "../gtx/vector_query.hpp"
+
23 
+
24 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
25 # pragma message("GLM: GLM_GTX_closest_point extension included")
+
26 #endif
+
27 
+
28 namespace glm
+
29 {
+
32 
+
36  template <typename genType>
+
37  GLM_FUNC_DECL bool intersectRayPlane(
+
38  genType const & orig, genType const & dir,
+
39  genType const & planeOrig, genType const & planeNormal,
+
40  typename genType::value_type & intersectionDistance);
+
41 
+
44  template <typename genType>
+
45  GLM_FUNC_DECL bool intersectRayTriangle(
+
46  genType const & orig, genType const & dir,
+
47  genType const & vert0, genType const & vert1, genType const & vert2,
+
48  genType & baryPosition);
+
49 
+
52  template <typename genType>
+
53  GLM_FUNC_DECL bool intersectLineTriangle(
+
54  genType const & orig, genType const & dir,
+
55  genType const & vert0, genType const & vert1, genType const & vert2,
+
56  genType & position);
+
57 
+
61  template <typename genType>
+
62  GLM_FUNC_DECL bool intersectRaySphere(
+
63  genType const & rayStarting, genType const & rayNormalizedDirection,
+
64  genType const & sphereCenter, typename genType::value_type const sphereRadiusSquered,
+
65  typename genType::value_type & intersectionDistance);
+
66 
+
69  template <typename genType>
+
70  GLM_FUNC_DECL bool intersectRaySphere(
+
71  genType const & rayStarting, genType const & rayNormalizedDirection,
+
72  genType const & sphereCenter, const typename genType::value_type sphereRadius,
+
73  genType & intersectionPosition, genType & intersectionNormal);
+
74 
+
77  template <typename genType>
+
78  GLM_FUNC_DECL bool intersectLineSphere(
+
79  genType const & point0, genType const & point1,
+
80  genType const & sphereCenter, typename genType::value_type sphereRadius,
+
81  genType & intersectionPosition1, genType & intersectionNormal1,
+
82  genType & intersectionPosition2 = genType(), genType & intersectionNormal2 = genType());
+
83 
+
85 }//namespace glm
+
86 
+
87 #include "intersect.inl"
+
GLM_FUNC_DECL bool intersectRaySphere(genType const &rayStarting, genType const &rayNormalizedDirection, genType const &sphereCenter, const typename genType::value_type sphereRadius, genType &intersectionPosition, genType &intersectionNormal)
Compute the intersection of a ray and a sphere.
+
GLM_FUNC_DECL bool intersectRayPlane(genType const &orig, genType const &dir, genType const &planeOrig, genType const &planeNormal, typename genType::value_type &intersectionDistance)
Compute the intersection of a ray and a plane.
+
GLM_FUNC_DECL bool intersectLineTriangle(genType const &orig, genType const &dir, genType const &vert0, genType const &vert1, genType const &vert2, genType &position)
Compute the intersection of a line and a triangle.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL bool intersectLineSphere(genType const &point0, genType const &point1, genType const &sphereCenter, typename genType::value_type sphereRadius, genType &intersectionPosition1, genType &intersectionNormal1, genType &intersectionPosition2=genType(), genType &intersectionNormal2=genType())
Compute the intersection of a line and a sphere.
+
GLM_FUNC_DECL bool intersectRayTriangle(genType const &orig, genType const &dir, genType const &vert0, genType const &vert1, genType const &vert2, genType &baryPosition)
Compute the intersection of a ray and a triangle.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00048.html b/third_party/glm_test/doc/api/a00048.html new file mode 100644 index 0000000000000..3e91e939fc73f --- /dev/null +++ b/third_party/glm_test/doc/api/a00048.html @@ -0,0 +1,72 @@ + + + + + + +0.9.8: io.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
io.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM_GTX_io

+
Author
Jan P Springer (regni.nosp@m.rpsj.nosp@m.@gmai.nosp@m.l.co.nosp@m.m)
+
See also
GLM Core (dependence)
+
+GLM_GTC_matrix_access (dependence)
+
+GLM_GTC_quaternion (dependence)
+ +

Definition in file io.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00048_source.html b/third_party/glm_test/doc/api/a00048_source.html new file mode 100644 index 0000000000000..0d324175b8a56 --- /dev/null +++ b/third_party/glm_test/doc/api/a00048_source.html @@ -0,0 +1,237 @@ + + + + + + +0.9.8: io.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
io.hpp
+
+
+Go to the documentation of this file.
1 
+
20 #pragma once
+
21 
+
22 // Dependency:
+
23 #include "../glm.hpp"
+
24 #include "../gtx/quaternion.hpp"
+
25 
+
26 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
27 # pragma message("GLM: GLM_GTX_io extension included")
+
28 #endif
+
29 
+
30 #include <iosfwd> // std::basic_ostream<> (fwd)
+
31 #include <locale> // std::locale, std::locale::facet, std::locale::id
+
32 #include <utility> // std::pair<>
+
33 
+
34 namespace glm
+
35 {
+
38 
+
39  namespace io
+
40  {
+
41  enum order_type { column_major, row_major};
+
42 
+
43  template <typename CTy>
+
44  class format_punct : public std::locale::facet
+
45  {
+
46  typedef CTy char_type;
+
47 
+
48  public:
+
49 
+
50  static std::locale::id id;
+
51 
+
52  bool formatted;
+
53  unsigned precision;
+
54  unsigned width;
+
55  char_type separator;
+
56  char_type delim_left;
+
57  char_type delim_right;
+
58  char_type space;
+
59  char_type newline;
+
60  order_type order;
+
61 
+
62  GLM_FUNC_DECL explicit format_punct(size_t a = 0);
+
63  GLM_FUNC_DECL explicit format_punct(format_punct const&);
+
64  };
+
65 
+
66  template <typename CTy, typename CTr = std::char_traits<CTy> >
+
67  class basic_state_saver {
+
68 
+
69  public:
+
70 
+
71  GLM_FUNC_DECL explicit basic_state_saver(std::basic_ios<CTy,CTr>&);
+
72  GLM_FUNC_DECL ~basic_state_saver();
+
73 
+
74  private:
+
75 
+
76  typedef ::std::basic_ios<CTy,CTr> state_type;
+
77  typedef typename state_type::char_type char_type;
+
78  typedef ::std::ios_base::fmtflags flags_type;
+
79  typedef ::std::streamsize streamsize_type;
+
80  typedef ::std::locale const locale_type;
+
81 
+
82  state_type& state_;
+
83  flags_type flags_;
+
84  streamsize_type precision_;
+
85  streamsize_type width_;
+
86  char_type fill_;
+
87  locale_type locale_;
+
88 
+
89  GLM_FUNC_DECL basic_state_saver& operator=(basic_state_saver const&);
+
90  };
+
91 
+
92  typedef basic_state_saver<char> state_saver;
+
93  typedef basic_state_saver<wchar_t> wstate_saver;
+
94 
+
95  template <typename CTy, typename CTr = std::char_traits<CTy> >
+
96  class basic_format_saver
+
97  {
+
98  public:
+
99 
+
100  GLM_FUNC_DECL explicit basic_format_saver(std::basic_ios<CTy,CTr>&);
+
101  GLM_FUNC_DECL ~basic_format_saver();
+
102 
+
103  private:
+
104 
+
105  basic_state_saver<CTy> const bss_;
+
106 
+
107  GLM_FUNC_DECL basic_format_saver& operator=(basic_format_saver const&);
+
108  };
+
109 
+
110  typedef basic_format_saver<char> format_saver;
+
111  typedef basic_format_saver<wchar_t> wformat_saver;
+
112 
+
113  struct precision
+
114  {
+
115  unsigned value;
+
116 
+
117  GLM_FUNC_DECL explicit precision(unsigned);
+
118  };
+
119 
+
120  struct width
+
121  {
+
122  unsigned value;
+
123 
+
124  GLM_FUNC_DECL explicit width(unsigned);
+
125  };
+
126 
+
127  template <typename CTy>
+
128  struct delimeter
+
129  {
+
130  CTy value[3];
+
131 
+
132  GLM_FUNC_DECL explicit delimeter(CTy /* left */, CTy /* right */, CTy /* separator */ = ',');
+
133  };
+
134 
+
135  struct order
+
136  {
+
137  order_type value;
+
138 
+
139  GLM_FUNC_DECL explicit order(order_type);
+
140  };
+
141 
+
142  // functions, inlined (inline)
+
143 
+
144  template <typename FTy, typename CTy, typename CTr>
+
145  FTy const& get_facet(std::basic_ios<CTy,CTr>&);
+
146  template <typename FTy, typename CTy, typename CTr>
+
147  std::basic_ios<CTy,CTr>& formatted(std::basic_ios<CTy,CTr>&);
+
148  template <typename FTy, typename CTy, typename CTr>
+
149  std::basic_ios<CTy,CTr>& unformattet(std::basic_ios<CTy,CTr>&);
+
150 
+
151  template <typename CTy, typename CTr>
+
152  std::basic_ostream<CTy, CTr>& operator<<(std::basic_ostream<CTy, CTr>&, precision const&);
+
153  template <typename CTy, typename CTr>
+
154  std::basic_ostream<CTy, CTr>& operator<<(std::basic_ostream<CTy, CTr>&, width const&);
+
155  template <typename CTy, typename CTr>
+
156  std::basic_ostream<CTy, CTr>& operator<<(std::basic_ostream<CTy, CTr>&, delimeter<CTy> const&);
+
157  template <typename CTy, typename CTr>
+
158  std::basic_ostream<CTy, CTr>& operator<<(std::basic_ostream<CTy, CTr>&, order const&);
+
159  }//namespace io
+
160 
+
161  template <typename CTy, typename CTr, typename T, precision P>
+
162  GLM_FUNC_DECL std::basic_ostream<CTy,CTr>& operator<<(std::basic_ostream<CTy,CTr>&, tquat<T,P> const&);
+
163  template <typename CTy, typename CTr, typename T, precision P>
+
164  GLM_FUNC_DECL std::basic_ostream<CTy,CTr>& operator<<(std::basic_ostream<CTy,CTr>&, tvec1<T,P> const&);
+
165  template <typename CTy, typename CTr, typename T, precision P>
+
166  GLM_FUNC_DECL std::basic_ostream<CTy,CTr>& operator<<(std::basic_ostream<CTy,CTr>&, tvec2<T,P> const&);
+
167  template <typename CTy, typename CTr, typename T, precision P>
+
168  GLM_FUNC_DECL std::basic_ostream<CTy,CTr>& operator<<(std::basic_ostream<CTy,CTr>&, tvec3<T,P> const&);
+
169  template <typename CTy, typename CTr, typename T, precision P>
+
170  GLM_FUNC_DECL std::basic_ostream<CTy,CTr>& operator<<(std::basic_ostream<CTy,CTr>&, tvec4<T,P> const&);
+
171  template <typename CTy, typename CTr, typename T, precision P>
+
172  GLM_FUNC_DECL std::basic_ostream<CTy,CTr>& operator<<(std::basic_ostream<CTy,CTr>&, tmat2x2<T,P> const&);
+
173  template <typename CTy, typename CTr, typename T, precision P>
+
174  GLM_FUNC_DECL std::basic_ostream<CTy,CTr>& operator<<(std::basic_ostream<CTy,CTr>&, tmat2x3<T,P> const&);
+
175  template <typename CTy, typename CTr, typename T, precision P>
+
176  GLM_FUNC_DECL std::basic_ostream<CTy,CTr>& operator<<(std::basic_ostream<CTy,CTr>&, tmat2x4<T,P> const&);
+
177  template <typename CTy, typename CTr, typename T, precision P>
+
178  GLM_FUNC_DECL std::basic_ostream<CTy,CTr>& operator<<(std::basic_ostream<CTy,CTr>&, tmat3x2<T,P> const&);
+
179  template <typename CTy, typename CTr, typename T, precision P>
+
180  GLM_FUNC_DECL std::basic_ostream<CTy,CTr>& operator<<(std::basic_ostream<CTy,CTr>&, tmat3x3<T,P> const&);
+
181  template <typename CTy, typename CTr, typename T, precision P>
+
182  GLM_FUNC_DECL std::basic_ostream<CTy,CTr>& operator<<(std::basic_ostream<CTy,CTr>&, tmat3x4<T,P> const&);
+
183  template <typename CTy, typename CTr, typename T, precision P>
+
184  GLM_FUNC_DECL std::basic_ostream<CTy,CTr>& operator<<(std::basic_ostream<CTy,CTr>&, tmat4x2<T,P> const&);
+
185  template <typename CTy, typename CTr, typename T, precision P>
+
186  GLM_FUNC_DECL std::basic_ostream<CTy,CTr>& operator<<(std::basic_ostream<CTy,CTr>&, tmat4x3<T,P> const&);
+
187  template <typename CTy, typename CTr, typename T, precision P>
+
188  GLM_FUNC_DECL std::basic_ostream<CTy,CTr>& operator<<(std::basic_ostream<CTy,CTr>&, tmat4x4<T,P> const&);
+
189 
+
190  template <typename CTy, typename CTr, typename T, precision P>
+
191  GLM_FUNC_DECL std::basic_ostream<CTy,CTr> & operator<<(std::basic_ostream<CTy,CTr> &,
+
192  std::pair<tmat4x4<T,P> const, tmat4x4<T,P> const> const &);
+
193 
+
195 }//namespace glm
+
196 
+
197 #include "io.inl"
+
Definition: _noise.hpp:11
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00049.html b/third_party/glm_test/doc/api/a00049.html new file mode 100644 index 0000000000000..24d373fbd18bb --- /dev/null +++ b/third_party/glm_test/doc/api/a00049.html @@ -0,0 +1,79 @@ + + + + + + +0.9.8: log_base.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
log_base.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType log (genType const &x, genType const &base)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > sign (vecType< T, P > const &x, vecType< T, P > const &base)
 
+

Detailed Description

+

GLM_GTX_log_base

+
See also
GLM Core (dependence)
+ +

Definition in file log_base.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00049_source.html b/third_party/glm_test/doc/api/a00049_source.html new file mode 100644 index 0000000000000..7fc658bc8076c --- /dev/null +++ b/third_party/glm_test/doc/api/a00049_source.html @@ -0,0 +1,89 @@ + + + + + + +0.9.8: log_base.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
log_base.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 
+
18 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
19 # pragma message("GLM: GLM_GTX_log_base extension included")
+
20 #endif
+
21 
+
22 namespace glm
+
23 {
+
26 
+
29  template <typename genType>
+
30  GLM_FUNC_DECL genType log(
+
31  genType const & x,
+
32  genType const & base);
+
33 
+
36  template <typename T, precision P, template <typename, precision> class vecType>
+
37  GLM_FUNC_DECL vecType<T, P> sign(
+
38  vecType<T, P> const & x,
+
39  vecType<T, P> const & base);
+
40 
+
42 }//namespace glm
+
43 
+
44 #include "log_base.inl"
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL genType log(genType const &x, genType const &base)
Logarithm for any base.
+
GLM_FUNC_DECL vecType< T, P > sign(vecType< T, P > const &x, vecType< T, P > const &base)
Logarithm for any base.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00050_source.html b/third_party/glm_test/doc/api/a00050_source.html new file mode 100644 index 0000000000000..45269dbe20746 --- /dev/null +++ b/third_party/glm_test/doc/api/a00050_source.html @@ -0,0 +1,2457 @@ + + + + + + +0.9.8: man.doxy Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
man.doxy
+
+
+
1 # Doxyfile 1.8.10
+
2 
+
3 # This file describes the settings to be used by the documentation system
+
4 # doxygen (www.doxygen.org) for a project.
+
5 #
+
6 # All text after a double hash (##) is considered a comment and is placed in
+
7 # front of the TAG it is preceding.
+
8 #
+
9 # All text after a single hash (#) is considered a comment and will be ignored.
+
10 # The format is:
+
11 # TAG = value [value, ...]
+
12 # For lists, items can also be appended using:
+
13 # TAG += value [value, ...]
+
14 # Values that contain spaces should be placed between quotes (\" \").
+
15 
+
16 #---------------------------------------------------------------------------
+
17 # Project related configuration options
+
18 #---------------------------------------------------------------------------
+
19 
+
20 # This tag specifies the encoding used for all characters in the config file
+
21 # that follow. The default is UTF-8 which is also the encoding used for all text
+
22 # before the first occurrence of this tag. Doxygen uses libiconv (or the iconv
+
23 # built into libc) for the transcoding. See http://www.gnu.org/software/libiconv
+
24 # for the list of possible encodings.
+
25 # The default value is: UTF-8.
+
26 
+
27 DOXYFILE_ENCODING = UTF-8
+
28 
+
29 # The PROJECT_NAME tag is a single word (or a sequence of words surrounded by
+
30 # double-quotes, unless you are using Doxywizard) that should identify the
+
31 # project for which the documentation is generated. This name is used in the
+
32 # title of most generated pages and in a few other places.
+
33 # The default value is: My Project.
+
34 
+
35 PROJECT_NAME = 0.9.7
+
36 
+
37 # The PROJECT_NUMBER tag can be used to enter a project or revision number. This
+
38 # could be handy for archiving the generated documentation or if some version
+
39 # control system is used.
+
40 
+
41 PROJECT_NUMBER =
+
42 
+
43 # Using the PROJECT_BRIEF tag one can provide an optional one line description
+
44 # for a project that appears at the top of each page and should give viewer a
+
45 # quick idea about the purpose of the project. Keep the description short.
+
46 
+
47 PROJECT_BRIEF =
+
48 
+
49 # With the PROJECT_LOGO tag one can specify a logo or an icon that is included
+
50 # in the documentation. The maximum height of the logo should not exceed 55
+
51 # pixels and the maximum width should not exceed 200 pixels. Doxygen will copy
+
52 # the logo to the output directory.
+
53 
+
54 PROJECT_LOGO = D:/Source/G-Truc/glm/doc/logo.png
+
55 
+
56 # The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) path
+
57 # into which the generated documentation will be written. If a relative path is
+
58 # entered, it will be relative to the location where doxygen was started. If
+
59 # left blank the current directory will be used.
+
60 
+
61 OUTPUT_DIRECTORY = .
+
62 
+
63 # If the CREATE_SUBDIRS tag is set to YES then doxygen will create 4096 sub-
+
64 # directories (in 2 levels) under the output directory of each output format and
+
65 # will distribute the generated files over these directories. Enabling this
+
66 # option can be useful when feeding doxygen a huge amount of source files, where
+
67 # putting all generated files in the same directory would otherwise causes
+
68 # performance problems for the file system.
+
69 # The default value is: NO.
+
70 
+
71 CREATE_SUBDIRS = NO
+
72 
+
73 # If the ALLOW_UNICODE_NAMES tag is set to YES, doxygen will allow non-ASCII
+
74 # characters to appear in the names of generated files. If set to NO, non-ASCII
+
75 # characters will be escaped, for example _xE3_x81_x84 will be used for Unicode
+
76 # U+3044.
+
77 # The default value is: NO.
+
78 
+
79 ALLOW_UNICODE_NAMES = NO
+
80 
+
81 # The OUTPUT_LANGUAGE tag is used to specify the language in which all
+
82 # documentation generated by doxygen is written. Doxygen will use this
+
83 # information to generate all constant output in the proper language.
+
84 # Possible values are: Afrikaans, Arabic, Armenian, Brazilian, Catalan, Chinese,
+
85 # Chinese-Traditional, Croatian, Czech, Danish, Dutch, English (United States),
+
86 # Esperanto, Farsi (Persian), Finnish, French, German, Greek, Hungarian,
+
87 # Indonesian, Italian, Japanese, Japanese-en (Japanese with English messages),
+
88 # Korean, Korean-en (Korean with English messages), Latvian, Lithuanian,
+
89 # Macedonian, Norwegian, Persian (Farsi), Polish, Portuguese, Romanian, Russian,
+
90 # Serbian, Serbian-Cyrillic, Slovak, Slovene, Spanish, Swedish, Turkish,
+
91 # Ukrainian and Vietnamese.
+
92 # The default value is: English.
+
93 
+
94 OUTPUT_LANGUAGE = English
+
95 
+
96 # If the BRIEF_MEMBER_DESC tag is set to YES, doxygen will include brief member
+
97 # descriptions after the members that are listed in the file and class
+
98 # documentation (similar to Javadoc). Set to NO to disable this.
+
99 # The default value is: YES.
+
100 
+
101 BRIEF_MEMBER_DESC = NO
+
102 
+
103 # If the REPEAT_BRIEF tag is set to YES, doxygen will prepend the brief
+
104 # description of a member or function before the detailed description
+
105 #
+
106 # Note: If both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the
+
107 # brief descriptions will be completely suppressed.
+
108 # The default value is: YES.
+
109 
+
110 REPEAT_BRIEF = YES
+
111 
+
112 # This tag implements a quasi-intelligent brief description abbreviator that is
+
113 # used to form the text in various listings. Each string in this list, if found
+
114 # as the leading text of the brief description, will be stripped from the text
+
115 # and the result, after processing the whole list, is used as the annotated
+
116 # text. Otherwise, the brief description is used as-is. If left blank, the
+
117 # following values are used ($name is automatically replaced with the name of
+
118 # the entity):The $name class, The $name widget, The $name file, is, provides,
+
119 # specifies, contains, represents, a, an and the.
+
120 
+
121 ABBREVIATE_BRIEF = "The $name class " \
+
122  "The $name widget " \
+
123  "The $name file " \
+
124  is \
+
125  provides \
+
126  specifies \
+
127  contains \
+
128  represents \
+
129  a \
+
130  an \
+
131  the
+
132 
+
133 # If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then
+
134 # doxygen will generate a detailed section even if there is only a brief
+
135 # description.
+
136 # The default value is: NO.
+
137 
+
138 ALWAYS_DETAILED_SEC = NO
+
139 
+
140 # If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
+
141 # inherited members of a class in the documentation of that class as if those
+
142 # members were ordinary class members. Constructors, destructors and assignment
+
143 # operators of the base classes will not be shown.
+
144 # The default value is: NO.
+
145 
+
146 INLINE_INHERITED_MEMB = NO
+
147 
+
148 # If the FULL_PATH_NAMES tag is set to YES, doxygen will prepend the full path
+
149 # before files name in the file list and in the header files. If set to NO the
+
150 # shortest path that makes the file name unique will be used
+
151 # The default value is: YES.
+
152 
+
153 FULL_PATH_NAMES = NO
+
154 
+
155 # The STRIP_FROM_PATH tag can be used to strip a user-defined part of the path.
+
156 # Stripping is only done if one of the specified strings matches the left-hand
+
157 # part of the path. The tag can be used to show relative paths in the file list.
+
158 # If left blank the directory from which doxygen is run is used as the path to
+
159 # strip.
+
160 #
+
161 # Note that you can specify absolute paths here, but also relative paths, which
+
162 # will be relative from the directory where doxygen is started.
+
163 # This tag requires that the tag FULL_PATH_NAMES is set to YES.
+
164 
+
165 STRIP_FROM_PATH = "C:/Documents and Settings/Groove/ "
+
166 
+
167 # The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the
+
168 # path mentioned in the documentation of a class, which tells the reader which
+
169 # header file to include in order to use a class. If left blank only the name of
+
170 # the header file containing the class definition is used. Otherwise one should
+
171 # specify the list of include paths that are normally passed to the compiler
+
172 # using the -I flag.
+
173 
+
174 STRIP_FROM_INC_PATH =
+
175 
+
176 # If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter (but
+
177 # less readable) file names. This can be useful is your file systems doesn't
+
178 # support long names like on DOS, Mac, or CD-ROM.
+
179 # The default value is: NO.
+
180 
+
181 SHORT_NAMES = YES
+
182 
+
183 # If the JAVADOC_AUTOBRIEF tag is set to YES then doxygen will interpret the
+
184 # first line (until the first dot) of a Javadoc-style comment as the brief
+
185 # description. If set to NO, the Javadoc-style will behave just like regular Qt-
+
186 # style comments (thus requiring an explicit @brief command for a brief
+
187 # description.)
+
188 # The default value is: NO.
+
189 
+
190 JAVADOC_AUTOBRIEF = YES
+
191 
+
192 # If the QT_AUTOBRIEF tag is set to YES then doxygen will interpret the first
+
193 # line (until the first dot) of a Qt-style comment as the brief description. If
+
194 # set to NO, the Qt-style will behave just like regular Qt-style comments (thus
+
195 # requiring an explicit \brief command for a brief description.)
+
196 # The default value is: NO.
+
197 
+
198 QT_AUTOBRIEF = NO
+
199 
+
200 # The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make doxygen treat a
+
201 # multi-line C++ special comment block (i.e. a block of
+
202 # a brief description. This used to be the default behavior. The new default is
+
203 # to treat a multi-line C++ comment block as a detailed description. Set this
+
204 # tag to YES if you prefer the old behavior instead.
+
205 #
+
206 # Note that setting this tag to YES also means that rational rose comments are
+
207 # not recognized any more.
+
208 # The default value is: NO.
+
209 
+
210 MULTILINE_CPP_IS_BRIEF = NO
+
211 
+
212 # If the INHERIT_DOCS tag is set to YES then an undocumented member inherits the
+
213 # documentation from any documented member that it re-implements.
+
214 # The default value is: YES.
+
215 
+
216 INHERIT_DOCS = YES
+
217 
+
218 # If the SEPARATE_MEMBER_PAGES tag is set to YES then doxygen will produce a new
+
219 # page for each member. If set to NO, the documentation of a member will be part
+
220 # of the file/class/namespace that contains it.
+
221 # The default value is: NO.
+
222 
+
223 SEPARATE_MEMBER_PAGES = NO
+
224 
+
225 # The TAB_SIZE tag can be used to set the number of spaces in a tab. Doxygen
+
226 # uses this value to replace tabs by spaces in code fragments.
+
227 # Minimum value: 1, maximum value: 16, default value: 4.
+
228 
+
229 TAB_SIZE = 8
+
230 
+
231 # This tag can be used to specify a number of aliases that act as commands in
+
232 # the documentation. An alias has the form:
+
233 # name=value
+
234 # For example adding
+
235 # "sideeffect=@par Side Effects:\n"
+
236 # will allow you to put the command \sideeffect (or @sideeffect) in the
+
237 # documentation, which will result in a user-defined paragraph with heading
+
238 # "Side Effects:". You can put \n's in the value part of an alias to insert
+
239 # newlines.
+
240 
+
241 ALIASES =
+
242 
+
243 # This tag can be used to specify a number of word-keyword mappings (TCL only).
+
244 # A mapping has the form "name=value". For example adding "class=itcl::class"
+
245 # will allow you to use the command class in the itcl::class meaning.
+
246 
+
247 TCL_SUBST =
+
248 
+
249 # Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
+
250 # only. Doxygen will then generate output that is more tailored for C. For
+
251 # instance, some of the names that are used will be different. The list of all
+
252 # members will be omitted, etc.
+
253 # The default value is: NO.
+
254 
+
255 OPTIMIZE_OUTPUT_FOR_C = NO
+
256 
+
257 # Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java or
+
258 # Python sources only. Doxygen will then generate output that is more tailored
+
259 # for that language. For instance, namespaces will be presented as packages,
+
260 # qualified scopes will look different, etc.
+
261 # The default value is: NO.
+
262 
+
263 OPTIMIZE_OUTPUT_JAVA = NO
+
264 
+
265 # Set the OPTIMIZE_FOR_FORTRAN tag to YES if your project consists of Fortran
+
266 # sources. Doxygen will then generate output that is tailored for Fortran.
+
267 # The default value is: NO.
+
268 
+
269 OPTIMIZE_FOR_FORTRAN = NO
+
270 
+
271 # Set the OPTIMIZE_OUTPUT_VHDL tag to YES if your project consists of VHDL
+
272 # sources. Doxygen will then generate output that is tailored for VHDL.
+
273 # The default value is: NO.
+
274 
+
275 OPTIMIZE_OUTPUT_VHDL = NO
+
276 
+
277 # Doxygen selects the parser to use depending on the extension of the files it
+
278 # parses. With this tag you can assign which parser to use for a given
+
279 # extension. Doxygen has a built-in mapping, but you can override or extend it
+
280 # using this tag. The format is ext=language, where ext is a file extension, and
+
281 # language is one of the parsers supported by doxygen: IDL, Java, Javascript,
+
282 # C#, C, C++, D, PHP, Objective-C, Python, Fortran (fixed format Fortran:
+
283 # FortranFixed, free formatted Fortran: FortranFree, unknown formatted Fortran:
+
284 # Fortran. In the later case the parser tries to guess whether the code is fixed
+
285 # or free formatted code, this is the default for Fortran type files), VHDL. For
+
286 # instance to make doxygen treat .inc files as Fortran files (default is PHP),
+
287 # and .f files as C (default is Fortran), use: inc=Fortran f=C.
+
288 #
+
289 # Note: For files without extension you can use no_extension as a placeholder.
+
290 #
+
291 # Note that for custom extensions you also need to set FILE_PATTERNS otherwise
+
292 # the files are not read by doxygen.
+
293 
+
294 EXTENSION_MAPPING =
+
295 
+
296 # If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
+
297 # according to the Markdown format, which allows for more readable
+
298 # documentation. See http://daringfireball.net/projects/markdown/ for details.
+
299 # The output of markdown processing is further processed by doxygen, so you can
+
300 # mix doxygen, HTML, and XML commands with Markdown formatting. Disable only in
+
301 # case of backward compatibilities issues.
+
302 # The default value is: YES.
+
303 
+
304 MARKDOWN_SUPPORT = YES
+
305 
+
306 # When enabled doxygen tries to link words that correspond to documented
+
307 # classes, or namespaces to their corresponding documentation. Such a link can
+
308 # be prevented in individual cases by putting a % sign in front of the word or
+
309 # globally by setting AUTOLINK_SUPPORT to NO.
+
310 # The default value is: YES.
+
311 
+
312 AUTOLINK_SUPPORT = YES
+
313 
+
314 # If you use STL classes (i.e. std::string, std::vector, etc.) but do not want
+
315 # to include (a tag file for) the STL sources as input, then you should set this
+
316 # tag to YES in order to let doxygen match functions declarations and
+
317 # definitions whose arguments contain STL classes (e.g. func(std::string);
+
318 # versus func(std::string) {}). This also make the inheritance and collaboration
+
319 # diagrams that involve STL classes more complete and accurate.
+
320 # The default value is: NO.
+
321 
+
322 BUILTIN_STL_SUPPORT = NO
+
323 
+
324 # If you use Microsoft's C++/CLI language, you should set this option to YES to
+
325 # enable parsing support.
+
326 # The default value is: NO.
+
327 
+
328 CPP_CLI_SUPPORT = NO
+
329 
+
330 # Set the SIP_SUPPORT tag to YES if your project consists of sip (see:
+
331 # http://www.riverbankcomputing.co.uk/software/sip/intro) sources only. Doxygen
+
332 # will parse them like normal C++ but will assume all classes use public instead
+
333 # of private inheritance when no explicit protection keyword is present.
+
334 # The default value is: NO.
+
335 
+
336 SIP_SUPPORT = NO
+
337 
+
338 # For Microsoft's IDL there are propget and propput attributes to indicate
+
339 # getter and setter methods for a property. Setting this option to YES will make
+
340 # doxygen to replace the get and set methods by a property in the documentation.
+
341 # This will only work if the methods are indeed getting or setting a simple
+
342 # type. If this is not the case, or you want to show the methods anyway, you
+
343 # should set this option to NO.
+
344 # The default value is: YES.
+
345 
+
346 IDL_PROPERTY_SUPPORT = YES
+
347 
+
348 # If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC
+
349 # tag is set to YES then doxygen will reuse the documentation of the first
+
350 # member in the group (if any) for the other members of the group. By default
+
351 # all members of a group must be documented explicitly.
+
352 # The default value is: NO.
+
353 
+
354 DISTRIBUTE_GROUP_DOC = NO
+
355 
+
356 # If one adds a struct or class to a group and this option is enabled, then also
+
357 # any nested class or struct is added to the same group. By default this option
+
358 # is disabled and one has to add nested compounds explicitly via \ingroup.
+
359 # The default value is: NO.
+
360 
+
361 GROUP_NESTED_COMPOUNDS = NO
+
362 
+
363 # Set the SUBGROUPING tag to YES to allow class member groups of the same type
+
364 # (for instance a group of public functions) to be put as a subgroup of that
+
365 # type (e.g. under the Public Functions section). Set it to NO to prevent
+
366 # subgrouping. Alternatively, this can be done per class using the
+
367 # \nosubgrouping command.
+
368 # The default value is: YES.
+
369 
+
370 SUBGROUPING = NO
+
371 
+
372 # When the INLINE_GROUPED_CLASSES tag is set to YES, classes, structs and unions
+
373 # are shown inside the group in which they are included (e.g. using \ingroup)
+
374 # instead of on a separate page (for HTML and Man pages) or section (for LaTeX
+
375 # and RTF).
+
376 #
+
377 # Note that this feature does not work in combination with
+
378 # SEPARATE_MEMBER_PAGES.
+
379 # The default value is: NO.
+
380 
+
381 INLINE_GROUPED_CLASSES = NO
+
382 
+
383 # When the INLINE_SIMPLE_STRUCTS tag is set to YES, structs, classes, and unions
+
384 # with only public data fields or simple typedef fields will be shown inline in
+
385 # the documentation of the scope in which they are defined (i.e. file,
+
386 # namespace, or group documentation), provided this scope is documented. If set
+
387 # to NO, structs, classes, and unions are shown on a separate page (for HTML and
+
388 # Man pages) or section (for LaTeX and RTF).
+
389 # The default value is: NO.
+
390 
+
391 INLINE_SIMPLE_STRUCTS = NO
+
392 
+
393 # When TYPEDEF_HIDES_STRUCT tag is enabled, a typedef of a struct, union, or
+
394 # enum is documented as struct, union, or enum with the name of the typedef. So
+
395 # typedef struct TypeS {} TypeT, will appear in the documentation as a struct
+
396 # with name TypeT. When disabled the typedef will appear as a member of a file,
+
397 # namespace, or class. And the struct will be named TypeS. This can typically be
+
398 # useful for C code in case the coding convention dictates that all compound
+
399 # types are typedef'ed and only the typedef is referenced, never the tag name.
+
400 # The default value is: NO.
+
401 
+
402 TYPEDEF_HIDES_STRUCT = NO
+
403 
+
404 # The size of the symbol lookup cache can be set using LOOKUP_CACHE_SIZE. This
+
405 # cache is used to resolve symbols given their name and scope. Since this can be
+
406 # an expensive process and often the same symbol appears multiple times in the
+
407 # code, doxygen keeps a cache of pre-resolved symbols. If the cache is too small
+
408 # doxygen will become slower. If the cache is too large, memory is wasted. The
+
409 # cache size is given by this formula: 2^(16+LOOKUP_CACHE_SIZE). The valid range
+
410 # is 0..9, the default is 0, corresponding to a cache size of 2^16=65536
+
411 # symbols. At the end of a run doxygen will report the cache usage and suggest
+
412 # the optimal cache size from a speed point of view.
+
413 # Minimum value: 0, maximum value: 9, default value: 0.
+
414 
+
415 LOOKUP_CACHE_SIZE = 0
+
416 
+
417 #---------------------------------------------------------------------------
+
418 # Build related configuration options
+
419 #---------------------------------------------------------------------------
+
420 
+
421 # If the EXTRACT_ALL tag is set to YES, doxygen will assume all entities in
+
422 # documentation are documented, even if no documentation was available. Private
+
423 # class members and static file members will be hidden unless the
+
424 # EXTRACT_PRIVATE respectively EXTRACT_STATIC tags are set to YES.
+
425 # Note: This will also disable the warnings about undocumented members that are
+
426 # normally produced when WARNINGS is set to YES.
+
427 # The default value is: NO.
+
428 
+
429 EXTRACT_ALL = NO
+
430 
+
431 # If the EXTRACT_PRIVATE tag is set to YES, all private members of a class will
+
432 # be included in the documentation.
+
433 # The default value is: NO.
+
434 
+
435 EXTRACT_PRIVATE = NO
+
436 
+
437 # If the EXTRACT_PACKAGE tag is set to YES, all members with package or internal
+
438 # scope will be included in the documentation.
+
439 # The default value is: NO.
+
440 
+
441 EXTRACT_PACKAGE = NO
+
442 
+
443 # If the EXTRACT_STATIC tag is set to YES, all static members of a file will be
+
444 # included in the documentation.
+
445 # The default value is: NO.
+
446 
+
447 EXTRACT_STATIC = YES
+
448 
+
449 # If the EXTRACT_LOCAL_CLASSES tag is set to YES, classes (and structs) defined
+
450 # locally in source files will be included in the documentation. If set to NO,
+
451 # only classes defined in header files are included. Does not have any effect
+
452 # for Java sources.
+
453 # The default value is: YES.
+
454 
+
455 EXTRACT_LOCAL_CLASSES = NO
+
456 
+
457 # This flag is only useful for Objective-C code. If set to YES, local methods,
+
458 # which are defined in the implementation section but not in the interface are
+
459 # included in the documentation. If set to NO, only methods in the interface are
+
460 # included.
+
461 # The default value is: NO.
+
462 
+
463 EXTRACT_LOCAL_METHODS = NO
+
464 
+
465 # If this flag is set to YES, the members of anonymous namespaces will be
+
466 # extracted and appear in the documentation as a namespace called
+
467 # 'anonymous_namespace{file}', where file will be replaced with the base name of
+
468 # the file that contains the anonymous namespace. By default anonymous namespace
+
469 # are hidden.
+
470 # The default value is: NO.
+
471 
+
472 EXTRACT_ANON_NSPACES = NO
+
473 
+
474 # If the HIDE_UNDOC_MEMBERS tag is set to YES, doxygen will hide all
+
475 # undocumented members inside documented classes or files. If set to NO these
+
476 # members will be included in the various overviews, but no documentation
+
477 # section is generated. This option has no effect if EXTRACT_ALL is enabled.
+
478 # The default value is: NO.
+
479 
+
480 HIDE_UNDOC_MEMBERS = YES
+
481 
+
482 # If the HIDE_UNDOC_CLASSES tag is set to YES, doxygen will hide all
+
483 # undocumented classes that are normally visible in the class hierarchy. If set
+
484 # to NO, these classes will be included in the various overviews. This option
+
485 # has no effect if EXTRACT_ALL is enabled.
+
486 # The default value is: NO.
+
487 
+
488 HIDE_UNDOC_CLASSES = YES
+
489 
+
490 # If the HIDE_FRIEND_COMPOUNDS tag is set to YES, doxygen will hide all friend
+
491 # (class|struct|union) declarations. If set to NO, these declarations will be
+
492 # included in the documentation.
+
493 # The default value is: NO.
+
494 
+
495 HIDE_FRIEND_COMPOUNDS = YES
+
496 
+
497 # If the HIDE_IN_BODY_DOCS tag is set to YES, doxygen will hide any
+
498 # documentation blocks found inside the body of a function. If set to NO, these
+
499 # blocks will be appended to the function's detailed documentation block.
+
500 # The default value is: NO.
+
501 
+
502 HIDE_IN_BODY_DOCS = YES
+
503 
+
504 # The INTERNAL_DOCS tag determines if documentation that is typed after a
+
505 # \internal command is included. If the tag is set to NO then the documentation
+
506 # will be excluded. Set it to YES to include the internal documentation.
+
507 # The default value is: NO.
+
508 
+
509 INTERNAL_DOCS = NO
+
510 
+
511 # If the CASE_SENSE_NAMES tag is set to NO then doxygen will only generate file
+
512 # names in lower-case letters. If set to YES, upper-case letters are also
+
513 # allowed. This is useful if you have classes or files whose names only differ
+
514 # in case and if your file system supports case sensitive file names. Windows
+
515 # and Mac users are advised to set this option to NO.
+
516 # The default value is: system dependent.
+
517 
+
518 CASE_SENSE_NAMES = YES
+
519 
+
520 # If the HIDE_SCOPE_NAMES tag is set to NO then doxygen will show members with
+
521 # their full class and namespace scopes in the documentation. If set to YES, the
+
522 # scope will be hidden.
+
523 # The default value is: NO.
+
524 
+
525 HIDE_SCOPE_NAMES = YES
+
526 
+
527 # If the HIDE_COMPOUND_REFERENCE tag is set to NO (default) then doxygen will
+
528 # append additional text to a page's title, such as Class Reference. If set to
+
529 # YES the compound reference will be hidden.
+
530 # The default value is: NO.
+
531 
+
532 HIDE_COMPOUND_REFERENCE= NO
+
533 
+
534 # If the SHOW_INCLUDE_FILES tag is set to YES then doxygen will put a list of
+
535 # the files that are included by a file in the documentation of that file.
+
536 # The default value is: YES.
+
537 
+
538 SHOW_INCLUDE_FILES = NO
+
539 
+
540 # If the SHOW_GROUPED_MEMB_INC tag is set to YES then Doxygen will add for each
+
541 # grouped member an include statement to the documentation, telling the reader
+
542 # which file to include in order to use the member.
+
543 # The default value is: NO.
+
544 
+
545 SHOW_GROUPED_MEMB_INC = NO
+
546 
+
547 # If the FORCE_LOCAL_INCLUDES tag is set to YES then doxygen will list include
+
548 # files with double quotes in the documentation rather than with sharp brackets.
+
549 # The default value is: NO.
+
550 
+
551 FORCE_LOCAL_INCLUDES = NO
+
552 
+
553 # If the INLINE_INFO tag is set to YES then a tag [inline] is inserted in the
+
554 # documentation for inline members.
+
555 # The default value is: YES.
+
556 
+
557 INLINE_INFO = NO
+
558 
+
559 # If the SORT_MEMBER_DOCS tag is set to YES then doxygen will sort the
+
560 # (detailed) documentation of file and class members alphabetically by member
+
561 # name. If set to NO, the members will appear in declaration order.
+
562 # The default value is: YES.
+
563 
+
564 SORT_MEMBER_DOCS = YES
+
565 
+
566 # If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the brief
+
567 # descriptions of file, namespace and class members alphabetically by member
+
568 # name. If set to NO, the members will appear in declaration order. Note that
+
569 # this will also influence the order of the classes in the class list.
+
570 # The default value is: NO.
+
571 
+
572 SORT_BRIEF_DOCS = YES
+
573 
+
574 # If the SORT_MEMBERS_CTORS_1ST tag is set to YES then doxygen will sort the
+
575 # (brief and detailed) documentation of class members so that constructors and
+
576 # destructors are listed first. If set to NO the constructors will appear in the
+
577 # respective orders defined by SORT_BRIEF_DOCS and SORT_MEMBER_DOCS.
+
578 # Note: If SORT_BRIEF_DOCS is set to NO this option is ignored for sorting brief
+
579 # member documentation.
+
580 # Note: If SORT_MEMBER_DOCS is set to NO this option is ignored for sorting
+
581 # detailed member documentation.
+
582 # The default value is: NO.
+
583 
+
584 SORT_MEMBERS_CTORS_1ST = NO
+
585 
+
586 # If the SORT_GROUP_NAMES tag is set to YES then doxygen will sort the hierarchy
+
587 # of group names into alphabetical order. If set to NO the group names will
+
588 # appear in their defined order.
+
589 # The default value is: NO.
+
590 
+
591 SORT_GROUP_NAMES = NO
+
592 
+
593 # If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be sorted by
+
594 # fully-qualified names, including namespaces. If set to NO, the class list will
+
595 # be sorted only by class name, not including the namespace part.
+
596 # Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
+
597 # Note: This option applies only to the class list, not to the alphabetical
+
598 # list.
+
599 # The default value is: NO.
+
600 
+
601 SORT_BY_SCOPE_NAME = YES
+
602 
+
603 # If the STRICT_PROTO_MATCHING option is enabled and doxygen fails to do proper
+
604 # type resolution of all parameters of a function it will reject a match between
+
605 # the prototype and the implementation of a member function even if there is
+
606 # only one candidate or it is obvious which candidate to choose by doing a
+
607 # simple string match. By disabling STRICT_PROTO_MATCHING doxygen will still
+
608 # accept a match between prototype and implementation in such cases.
+
609 # The default value is: NO.
+
610 
+
611 STRICT_PROTO_MATCHING = NO
+
612 
+
613 # The GENERATE_TODOLIST tag can be used to enable (YES) or disable (NO) the todo
+
614 # list. This list is created by putting \todo commands in the documentation.
+
615 # The default value is: YES.
+
616 
+
617 GENERATE_TODOLIST = YES
+
618 
+
619 # The GENERATE_TESTLIST tag can be used to enable (YES) or disable (NO) the test
+
620 # list. This list is created by putting \test commands in the documentation.
+
621 # The default value is: YES.
+
622 
+
623 GENERATE_TESTLIST = YES
+
624 
+
625 # The GENERATE_BUGLIST tag can be used to enable (YES) or disable (NO) the bug
+
626 # list. This list is created by putting \bug commands in the documentation.
+
627 # The default value is: YES.
+
628 
+
629 GENERATE_BUGLIST = YES
+
630 
+
631 # The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or disable (NO)
+
632 # the deprecated list. This list is created by putting \deprecated commands in
+
633 # the documentation.
+
634 # The default value is: YES.
+
635 
+
636 GENERATE_DEPRECATEDLIST= YES
+
637 
+
638 # The ENABLED_SECTIONS tag can be used to enable conditional documentation
+
639 # sections, marked by \if <section_label> ... \endif and \cond <section_label>
+
640 # ... \endcond blocks.
+
641 
+
642 ENABLED_SECTIONS =
+
643 
+
644 # The MAX_INITIALIZER_LINES tag determines the maximum number of lines that the
+
645 # initial value of a variable or macro / define can have for it to appear in the
+
646 # documentation. If the initializer consists of more lines than specified here
+
647 # it will be hidden. Use a value of 0 to hide initializers completely. The
+
648 # appearance of the value of individual variables and macros / defines can be
+
649 # controlled using \showinitializer or \hideinitializer command in the
+
650 # documentation regardless of this setting.
+
651 # Minimum value: 0, maximum value: 10000, default value: 30.
+
652 
+
653 MAX_INITIALIZER_LINES = 30
+
654 
+
655 # Set the SHOW_USED_FILES tag to NO to disable the list of files generated at
+
656 # the bottom of the documentation of classes and structs. If set to YES, the
+
657 # list will mention the files that were used to generate the documentation.
+
658 # The default value is: YES.
+
659 
+
660 SHOW_USED_FILES = NO
+
661 
+
662 # Set the SHOW_FILES tag to NO to disable the generation of the Files page. This
+
663 # will remove the Files entry from the Quick Index and from the Folder Tree View
+
664 # (if specified).
+
665 # The default value is: YES.
+
666 
+
667 SHOW_FILES = YES
+
668 
+
669 # Set the SHOW_NAMESPACES tag to NO to disable the generation of the Namespaces
+
670 # page. This will remove the Namespaces entry from the Quick Index and from the
+
671 # Folder Tree View (if specified).
+
672 # The default value is: YES.
+
673 
+
674 SHOW_NAMESPACES = YES
+
675 
+
676 # The FILE_VERSION_FILTER tag can be used to specify a program or script that
+
677 # doxygen should invoke to get the current version for each file (typically from
+
678 # the version control system). Doxygen will invoke the program by executing (via
+
679 # popen()) the command command input-file, where command is the value of the
+
680 # FILE_VERSION_FILTER tag, and input-file is the name of an input file provided
+
681 # by doxygen. Whatever the program writes to standard output is used as the file
+
682 # version. For an example see the documentation.
+
683 
+
684 FILE_VERSION_FILTER =
+
685 
+
686 # The LAYOUT_FILE tag can be used to specify a layout file which will be parsed
+
687 # by doxygen. The layout file controls the global structure of the generated
+
688 # output files in an output format independent way. To create the layout file
+
689 # that represents doxygen's defaults, run doxygen with the -l option. You can
+
690 # optionally specify a file name after the option, if omitted DoxygenLayout.xml
+
691 # will be used as the name of the layout file.
+
692 #
+
693 # Note that if you run doxygen from a directory containing a file called
+
694 # DoxygenLayout.xml, doxygen will parse it automatically even if the LAYOUT_FILE
+
695 # tag is left empty.
+
696 
+
697 LAYOUT_FILE =
+
698 
+
699 # The CITE_BIB_FILES tag can be used to specify one or more bib files containing
+
700 # the reference definitions. This must be a list of .bib files. The .bib
+
701 # extension is automatically appended if omitted. This requires the bibtex tool
+
702 # to be installed. See also http://en.wikipedia.org/wiki/BibTeX for more info.
+
703 # For LaTeX the style of the bibliography can be controlled using
+
704 # LATEX_BIB_STYLE. To use this feature you need bibtex and perl available in the
+
705 # search path. See also \cite for info how to create references.
+
706 
+
707 CITE_BIB_FILES =
+
708 
+
709 #---------------------------------------------------------------------------
+
710 # Configuration options related to warning and progress messages
+
711 #---------------------------------------------------------------------------
+
712 
+
713 # The QUIET tag can be used to turn on/off the messages that are generated to
+
714 # standard output by doxygen. If QUIET is set to YES this implies that the
+
715 # messages are off.
+
716 # The default value is: NO.
+
717 
+
718 QUIET = NO
+
719 
+
720 # The WARNINGS tag can be used to turn on/off the warning messages that are
+
721 # generated to standard error (stderr) by doxygen. If WARNINGS is set to YES
+
722 # this implies that the warnings are on.
+
723 #
+
724 # Tip: Turn warnings on while writing the documentation.
+
725 # The default value is: YES.
+
726 
+
727 WARNINGS = YES
+
728 
+
729 # If the WARN_IF_UNDOCUMENTED tag is set to YES then doxygen will generate
+
730 # warnings for undocumented members. If EXTRACT_ALL is set to YES then this flag
+
731 # will automatically be disabled.
+
732 # The default value is: YES.
+
733 
+
734 WARN_IF_UNDOCUMENTED = YES
+
735 
+
736 # If the WARN_IF_DOC_ERROR tag is set to YES, doxygen will generate warnings for
+
737 # potential errors in the documentation, such as not documenting some parameters
+
738 # in a documented function, or documenting parameters that don't exist or using
+
739 # markup commands wrongly.
+
740 # The default value is: YES.
+
741 
+
742 WARN_IF_DOC_ERROR = YES
+
743 
+
744 # This WARN_NO_PARAMDOC option can be enabled to get warnings for functions that
+
745 # are documented, but have no documentation for their parameters or return
+
746 # value. If set to NO, doxygen will only warn about wrong or incomplete
+
747 # parameter documentation, but not about the absence of documentation.
+
748 # The default value is: NO.
+
749 
+
750 WARN_NO_PARAMDOC = NO
+
751 
+
752 # The WARN_FORMAT tag determines the format of the warning messages that doxygen
+
753 # can produce. The string should contain the $file, $line, and $text tags, which
+
754 # will be replaced by the file and line number from which the warning originated
+
755 # and the warning text. Optionally the format may contain $version, which will
+
756 # be replaced by the version of the file (if it could be obtained via
+
757 # FILE_VERSION_FILTER)
+
758 # The default value is: $file:$line: $text.
+
759 
+
760 WARN_FORMAT = "$file:$line: $text"
+
761 
+
762 # The WARN_LOGFILE tag can be used to specify a file to which warning and error
+
763 # messages should be written. If left blank the output is written to standard
+
764 # error (stderr).
+
765 
+
766 WARN_LOGFILE =
+
767 
+
768 #---------------------------------------------------------------------------
+
769 # Configuration options related to the input files
+
770 #---------------------------------------------------------------------------
+
771 
+
772 # The INPUT tag is used to specify the files and/or directories that contain
+
773 # documented source files. You may enter file names like myfile.cpp or
+
774 # directories like /usr/src/myproject. Separate the files or directories with
+
775 # spaces. See also FILE_PATTERNS and EXTENSION_MAPPING
+
776 # Note: If this tag is empty the current directory is searched.
+
777 
+
778 INPUT = ../glm \
+
779  .
+
780 
+
781 # This tag can be used to specify the character encoding of the source files
+
782 # that doxygen parses. Internally doxygen uses the UTF-8 encoding. Doxygen uses
+
783 # libiconv (or the iconv built into libc) for the transcoding. See the libiconv
+
784 # documentation (see: http://www.gnu.org/software/libiconv) for the list of
+
785 # possible encodings.
+
786 # The default value is: UTF-8.
+
787 
+
788 INPUT_ENCODING = UTF-8
+
789 
+
790 # If the value of the INPUT tag contains directories, you can use the
+
791 # FILE_PATTERNS tag to specify one or more wildcard patterns (like *.cpp and
+
792 # *.h) to filter out the source-files in the directories.
+
793 #
+
794 # Note that for custom extensions or not directly supported extensions you also
+
795 # need to set EXTENSION_MAPPING for the extension otherwise the files are not
+
796 # read by doxygen.
+
797 #
+
798 # If left blank the following patterns are tested:*.c, *.cc, *.cxx, *.cpp,
+
799 # *.c++, *.java, *.ii, *.ixx, *.ipp, *.i++, *.inl, *.idl, *.ddl, *.odl, *.h,
+
800 # *.hh, *.hxx, *.hpp, *.h++, *.cs, *.d, *.php, *.php4, *.php5, *.phtml, *.inc,
+
801 # *.m, *.markdown, *.md, *.mm, *.dox, *.py, *.f90, *.f, *.for, *.tcl, *.vhd,
+
802 # *.vhdl, *.ucf, *.qsf, *.as and *.js.
+
803 
+
804 FILE_PATTERNS = *.hpp \
+
805  *.doxy
+
806 
+
807 # The RECURSIVE tag can be used to specify whether or not subdirectories should
+
808 # be searched for input files as well.
+
809 # The default value is: NO.
+
810 
+
811 RECURSIVE = YES
+
812 
+
813 # The EXCLUDE tag can be used to specify files and/or directories that should be
+
814 # excluded from the INPUT source files. This way you can easily exclude a
+
815 # subdirectory from a directory tree whose root is specified with the INPUT tag.
+
816 #
+
817 # Note that relative paths are relative to the directory from which doxygen is
+
818 # run.
+
819 
+
820 EXCLUDE =
+
821 
+
822 # The EXCLUDE_SYMLINKS tag can be used to select whether or not files or
+
823 # directories that are symbolic links (a Unix file system feature) are excluded
+
824 # from the input.
+
825 # The default value is: NO.
+
826 
+
827 EXCLUDE_SYMLINKS = NO
+
828 
+
829 # If the value of the INPUT tag contains directories, you can use the
+
830 # EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude
+
831 # certain files from those directories.
+
832 #
+
833 # Note that the wildcards are matched against the file with absolute path, so to
+
834 # exclude all test directories for example use the pattern */test/*
+
835 
+
836 EXCLUDE_PATTERNS =
+
837 
+
838 # The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names
+
839 # (namespaces, classes, functions, etc.) that should be excluded from the
+
840 # output. The symbol name can be a fully qualified name, a word, or if the
+
841 # wildcard * is used, a substring. Examples: ANamespace, AClass,
+
842 # AClass::ANamespace, ANamespace::*Test
+
843 #
+
844 # Note that the wildcards are matched against the file with absolute path, so to
+
845 # exclude all test directories use the pattern */test/*
+
846 
+
847 EXCLUDE_SYMBOLS =
+
848 
+
849 # The EXAMPLE_PATH tag can be used to specify one or more files or directories
+
850 # that contain example code fragments that are included (see the \include
+
851 # command).
+
852 
+
853 EXAMPLE_PATH =
+
854 
+
855 # If the value of the EXAMPLE_PATH tag contains directories, you can use the
+
856 # EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp and
+
857 # *.h) to filter out the source-files in the directories. If left blank all
+
858 # files are included.
+
859 
+
860 EXAMPLE_PATTERNS = *
+
861 
+
862 # If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be
+
863 # searched for input files to be used with the \include or \dontinclude commands
+
864 # irrespective of the value of the RECURSIVE tag.
+
865 # The default value is: NO.
+
866 
+
867 EXAMPLE_RECURSIVE = NO
+
868 
+
869 # The IMAGE_PATH tag can be used to specify one or more files or directories
+
870 # that contain images that are to be included in the documentation (see the
+
871 # \image command).
+
872 
+
873 IMAGE_PATH =
+
874 
+
875 # The INPUT_FILTER tag can be used to specify a program that doxygen should
+
876 # invoke to filter for each input file. Doxygen will invoke the filter program
+
877 # by executing (via popen()) the command:
+
878 #
+
879 # <filter> <input-file>
+
880 #
+
881 # where <filter> is the value of the INPUT_FILTER tag, and <input-file> is the
+
882 # name of an input file. Doxygen will then use the output that the filter
+
883 # program writes to standard output. If FILTER_PATTERNS is specified, this tag
+
884 # will be ignored.
+
885 #
+
886 # Note that the filter must not add or remove lines; it is applied before the
+
887 # code is scanned, but not when the output code is generated. If lines are added
+
888 # or removed, the anchors will not be placed correctly.
+
889 
+
890 INPUT_FILTER =
+
891 
+
892 # The FILTER_PATTERNS tag can be used to specify filters on a per file pattern
+
893 # basis. Doxygen will compare the file name with each pattern and apply the
+
894 # filter if there is a match. The filters are a list of the form: pattern=filter
+
895 # (like *.cpp=my_cpp_filter). See INPUT_FILTER for further information on how
+
896 # filters are used. If the FILTER_PATTERNS tag is empty or if none of the
+
897 # patterns match the file name, INPUT_FILTER is applied.
+
898 
+
899 FILTER_PATTERNS =
+
900 
+
901 # If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using
+
902 # INPUT_FILTER) will also be used to filter the input files that are used for
+
903 # producing the source files to browse (i.e. when SOURCE_BROWSER is set to YES).
+
904 # The default value is: NO.
+
905 
+
906 FILTER_SOURCE_FILES = NO
+
907 
+
908 # The FILTER_SOURCE_PATTERNS tag can be used to specify source filters per file
+
909 # pattern. A pattern will override the setting for FILTER_PATTERN (if any) and
+
910 # it is also possible to disable source filtering for a specific pattern using
+
911 # *.ext= (so without naming a filter).
+
912 # This tag requires that the tag FILTER_SOURCE_FILES is set to YES.
+
913 
+
914 FILTER_SOURCE_PATTERNS =
+
915 
+
916 # If the USE_MDFILE_AS_MAINPAGE tag refers to the name of a markdown file that
+
917 # is part of the input, its contents will be placed on the main page
+
918 # (index.html). This can be useful if you have a project on for instance GitHub
+
919 # and want to reuse the introduction page also for the doxygen output.
+
920 
+
921 USE_MDFILE_AS_MAINPAGE =
+
922 
+
923 #---------------------------------------------------------------------------
+
924 # Configuration options related to source browsing
+
925 #---------------------------------------------------------------------------
+
926 
+
927 # If the SOURCE_BROWSER tag is set to YES then a list of source files will be
+
928 # generated. Documented entities will be cross-referenced with these sources.
+
929 #
+
930 # Note: To get rid of all source code in the generated output, make sure that
+
931 # also VERBATIM_HEADERS is set to NO.
+
932 # The default value is: NO.
+
933 
+
934 SOURCE_BROWSER = YES
+
935 
+
936 # Setting the INLINE_SOURCES tag to YES will include the body of functions,
+
937 # classes and enums directly into the documentation.
+
938 # The default value is: NO.
+
939 
+
940 INLINE_SOURCES = NO
+
941 
+
942 # Setting the STRIP_CODE_COMMENTS tag to YES will instruct doxygen to hide any
+
943 # special comment blocks from generated source code fragments. Normal C, C++ and
+
944 # Fortran comments will always remain visible.
+
945 # The default value is: YES.
+
946 
+
947 STRIP_CODE_COMMENTS = YES
+
948 
+
949 # If the REFERENCED_BY_RELATION tag is set to YES then for each documented
+
950 # function all documented functions referencing it will be listed.
+
951 # The default value is: NO.
+
952 
+
953 REFERENCED_BY_RELATION = YES
+
954 
+
955 # If the REFERENCES_RELATION tag is set to YES then for each documented function
+
956 # all documented entities called/used by that function will be listed.
+
957 # The default value is: NO.
+
958 
+
959 REFERENCES_RELATION = YES
+
960 
+
961 # If the REFERENCES_LINK_SOURCE tag is set to YES and SOURCE_BROWSER tag is set
+
962 # to YES then the hyperlinks from functions in REFERENCES_RELATION and
+
963 # REFERENCED_BY_RELATION lists will link to the source code. Otherwise they will
+
964 # link to the documentation.
+
965 # The default value is: YES.
+
966 
+
967 REFERENCES_LINK_SOURCE = YES
+
968 
+
969 # If SOURCE_TOOLTIPS is enabled (the default) then hovering a hyperlink in the
+
970 # source code will show a tooltip with additional information such as prototype,
+
971 # brief description and links to the definition and documentation. Since this
+
972 # will make the HTML file larger and loading of large files a bit slower, you
+
973 # can opt to disable this feature.
+
974 # The default value is: YES.
+
975 # This tag requires that the tag SOURCE_BROWSER is set to YES.
+
976 
+
977 SOURCE_TOOLTIPS = YES
+
978 
+
979 # If the USE_HTAGS tag is set to YES then the references to source code will
+
980 # point to the HTML generated by the htags(1) tool instead of doxygen built-in
+
981 # source browser. The htags tool is part of GNU's global source tagging system
+
982 # (see http://www.gnu.org/software/global/global.html). You will need version
+
983 # 4.8.6 or higher.
+
984 #
+
985 # To use it do the following:
+
986 # - Install the latest version of global
+
987 # - Enable SOURCE_BROWSER and USE_HTAGS in the config file
+
988 # - Make sure the INPUT points to the root of the source tree
+
989 # - Run doxygen as normal
+
990 #
+
991 # Doxygen will invoke htags (and that will in turn invoke gtags), so these
+
992 # tools must be available from the command line (i.e. in the search path).
+
993 #
+
994 # The result: instead of the source browser generated by doxygen, the links to
+
995 # source code will now point to the output of htags.
+
996 # The default value is: NO.
+
997 # This tag requires that the tag SOURCE_BROWSER is set to YES.
+
998 
+
999 USE_HTAGS = NO
+
1000 
+
1001 # If the VERBATIM_HEADERS tag is set the YES then doxygen will generate a
+
1002 # verbatim copy of the header file for each class for which an include is
+
1003 # specified. Set to NO to disable this.
+
1004 # See also: Section \class.
+
1005 # The default value is: YES.
+
1006 
+
1007 VERBATIM_HEADERS = YES
+
1008 
+
1009 #---------------------------------------------------------------------------
+
1010 # Configuration options related to the alphabetical class index
+
1011 #---------------------------------------------------------------------------
+
1012 
+
1013 # If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index of all
+
1014 # compounds will be generated. Enable this if the project contains a lot of
+
1015 # classes, structs, unions or interfaces.
+
1016 # The default value is: YES.
+
1017 
+
1018 ALPHABETICAL_INDEX = NO
+
1019 
+
1020 # The COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns in
+
1021 # which the alphabetical index list will be split.
+
1022 # Minimum value: 1, maximum value: 20, default value: 5.
+
1023 # This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
+
1024 
+
1025 COLS_IN_ALPHA_INDEX = 5
+
1026 
+
1027 # In case all classes in a project start with a common prefix, all classes will
+
1028 # be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
+
1029 # can be used to specify a prefix (or a list of prefixes) that should be ignored
+
1030 # while generating the index headers.
+
1031 # This tag requires that the tag ALPHABETICAL_INDEX is set to YES.
+
1032 
+
1033 IGNORE_PREFIX =
+
1034 
+
1035 #---------------------------------------------------------------------------
+
1036 # Configuration options related to the HTML output
+
1037 #---------------------------------------------------------------------------
+
1038 
+
1039 # If the GENERATE_HTML tag is set to YES, doxygen will generate HTML output
+
1040 # The default value is: YES.
+
1041 
+
1042 GENERATE_HTML = YES
+
1043 
+
1044 # The HTML_OUTPUT tag is used to specify where the HTML docs will be put. If a
+
1045 # relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+
1046 # it.
+
1047 # The default directory is: html.
+
1048 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1049 
+
1050 HTML_OUTPUT = html
+
1051 
+
1052 # The HTML_FILE_EXTENSION tag can be used to specify the file extension for each
+
1053 # generated HTML page (for example: .htm, .php, .asp).
+
1054 # The default value is: .html.
+
1055 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1056 
+
1057 HTML_FILE_EXTENSION = .html
+
1058 
+
1059 # The HTML_HEADER tag can be used to specify a user-defined HTML header file for
+
1060 # each generated HTML page. If the tag is left blank doxygen will generate a
+
1061 # standard header.
+
1062 #
+
1063 # To get valid HTML the header file that includes any scripts and style sheets
+
1064 # that doxygen needs, which is dependent on the configuration options used (e.g.
+
1065 # the setting GENERATE_TREEVIEW). It is highly recommended to start with a
+
1066 # default header using
+
1067 # doxygen -w html new_header.html new_footer.html new_stylesheet.css
+
1068 # YourConfigFile
+
1069 # and then modify the file new_header.html. See also section "Doxygen usage"
+
1070 # for information on how to generate the default header that doxygen normally
+
1071 # uses.
+
1072 # Note: The header is subject to change so you typically have to regenerate the
+
1073 # default header when upgrading to a newer version of doxygen. For a description
+
1074 # of the possible markers and block names see the documentation.
+
1075 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1076 
+
1077 HTML_HEADER =
+
1078 
+
1079 # The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
+
1080 # generated HTML page. If the tag is left blank doxygen will generate a standard
+
1081 # footer. See HTML_HEADER for more information on how to generate a default
+
1082 # footer and what special commands can be used inside the footer. See also
+
1083 # section "Doxygen usage" for information on how to generate the default footer
+
1084 # that doxygen normally uses.
+
1085 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1086 
+
1087 HTML_FOOTER =
+
1088 
+
1089 # The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
+
1090 # sheet that is used by each HTML page. It can be used to fine-tune the look of
+
1091 # the HTML output. If left blank doxygen will generate a default style sheet.
+
1092 # See also section "Doxygen usage" for information on how to generate the style
+
1093 # sheet that doxygen normally uses.
+
1094 # Note: It is recommended to use HTML_EXTRA_STYLESHEET instead of this tag, as
+
1095 # it is more robust and this tag (HTML_STYLESHEET) will in the future become
+
1096 # obsolete.
+
1097 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1098 
+
1099 HTML_STYLESHEET =
+
1100 
+
1101 # The HTML_EXTRA_STYLESHEET tag can be used to specify additional user-defined
+
1102 # cascading style sheets that are included after the standard style sheets
+
1103 # created by doxygen. Using this option one can overrule certain style aspects.
+
1104 # This is preferred over using HTML_STYLESHEET since it does not replace the
+
1105 # standard style sheet and is therefore more robust against future updates.
+
1106 # Doxygen will copy the style sheet files to the output directory.
+
1107 # Note: The order of the extra style sheet files is of importance (e.g. the last
+
1108 # style sheet in the list overrules the setting of the previous ones in the
+
1109 # list). For an example see the documentation.
+
1110 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1111 
+
1112 HTML_EXTRA_STYLESHEET =
+
1113 
+
1114 # The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
+
1115 # other source files which should be copied to the HTML output directory. Note
+
1116 # that these files will be copied to the base HTML output directory. Use the
+
1117 # $relpath^ marker in the HTML_HEADER and/or HTML_FOOTER files to load these
+
1118 # files. In the HTML_STYLESHEET file, use the file name only. Also note that the
+
1119 # files will be copied as-is; there are no commands or markers available.
+
1120 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1121 
+
1122 HTML_EXTRA_FILES =
+
1123 
+
1124 # The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
+
1125 # will adjust the colors in the style sheet and background images according to
+
1126 # this color. Hue is specified as an angle on a colorwheel, see
+
1127 # http://en.wikipedia.org/wiki/Hue for more information. For instance the value
+
1128 # 0 represents red, 60 is yellow, 120 is green, 180 is cyan, 240 is blue, 300
+
1129 # purple, and 360 is red again.
+
1130 # Minimum value: 0, maximum value: 359, default value: 220.
+
1131 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1132 
+
1133 HTML_COLORSTYLE_HUE = 220
+
1134 
+
1135 # The HTML_COLORSTYLE_SAT tag controls the purity (or saturation) of the colors
+
1136 # in the HTML output. For a value of 0 the output will use grayscales only. A
+
1137 # value of 255 will produce the most vivid colors.
+
1138 # Minimum value: 0, maximum value: 255, default value: 100.
+
1139 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1140 
+
1141 HTML_COLORSTYLE_SAT = 100
+
1142 
+
1143 # The HTML_COLORSTYLE_GAMMA tag controls the gamma correction applied to the
+
1144 # luminance component of the colors in the HTML output. Values below 100
+
1145 # gradually make the output lighter, whereas values above 100 make the output
+
1146 # darker. The value divided by 100 is the actual gamma applied, so 80 represents
+
1147 # a gamma of 0.8, The value 220 represents a gamma of 2.2, and 100 does not
+
1148 # change the gamma.
+
1149 # Minimum value: 40, maximum value: 240, default value: 80.
+
1150 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1151 
+
1152 HTML_COLORSTYLE_GAMMA = 80
+
1153 
+
1154 # If the HTML_TIMESTAMP tag is set to YES then the footer of each generated HTML
+
1155 # page will contain the date and time when the page was generated. Setting this
+
1156 # to YES can help to show when doxygen was last run and thus if the
+
1157 # documentation is up to date.
+
1158 # The default value is: NO.
+
1159 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1160 
+
1161 HTML_TIMESTAMP = NO
+
1162 
+
1163 # If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML
+
1164 # documentation will contain sections that can be hidden and shown after the
+
1165 # page has loaded.
+
1166 # The default value is: NO.
+
1167 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1168 
+
1169 HTML_DYNAMIC_SECTIONS = NO
+
1170 
+
1171 # With HTML_INDEX_NUM_ENTRIES one can control the preferred number of entries
+
1172 # shown in the various tree structured indices initially; the user can expand
+
1173 # and collapse entries dynamically later on. Doxygen will expand the tree to
+
1174 # such a level that at most the specified number of entries are visible (unless
+
1175 # a fully collapsed tree already exceeds this amount). So setting the number of
+
1176 # entries 1 will produce a full collapsed tree by default. 0 is a special value
+
1177 # representing an infinite number of entries and will result in a full expanded
+
1178 # tree by default.
+
1179 # Minimum value: 0, maximum value: 9999, default value: 100.
+
1180 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1181 
+
1182 HTML_INDEX_NUM_ENTRIES = 100
+
1183 
+
1184 # If the GENERATE_DOCSET tag is set to YES, additional index files will be
+
1185 # generated that can be used as input for Apple's Xcode 3 integrated development
+
1186 # environment (see: http://developer.apple.com/tools/xcode/), introduced with
+
1187 # OSX 10.5 (Leopard). To create a documentation set, doxygen will generate a
+
1188 # Makefile in the HTML output directory. Running make will produce the docset in
+
1189 # that directory and running make install will install the docset in
+
1190 # ~/Library/Developer/Shared/Documentation/DocSets so that Xcode will find it at
+
1191 # startup. See http://developer.apple.com/tools/creatingdocsetswithdoxygen.html
+
1192 # for more information.
+
1193 # The default value is: NO.
+
1194 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1195 
+
1196 GENERATE_DOCSET = NO
+
1197 
+
1198 # This tag determines the name of the docset feed. A documentation feed provides
+
1199 # an umbrella under which multiple documentation sets from a single provider
+
1200 # (such as a company or product suite) can be grouped.
+
1201 # The default value is: Doxygen generated docs.
+
1202 # This tag requires that the tag GENERATE_DOCSET is set to YES.
+
1203 
+
1204 DOCSET_FEEDNAME = "Doxygen generated docs"
+
1205 
+
1206 # This tag specifies a string that should uniquely identify the documentation
+
1207 # set bundle. This should be a reverse domain-name style string, e.g.
+
1208 # com.mycompany.MyDocSet. Doxygen will append .docset to the name.
+
1209 # The default value is: org.doxygen.Project.
+
1210 # This tag requires that the tag GENERATE_DOCSET is set to YES.
+
1211 
+
1212 DOCSET_BUNDLE_ID = org.doxygen.Project
+
1213 
+
1214 # The DOCSET_PUBLISHER_ID tag specifies a string that should uniquely identify
+
1215 # the documentation publisher. This should be a reverse domain-name style
+
1216 # string, e.g. com.mycompany.MyDocSet.documentation.
+
1217 # The default value is: org.doxygen.Publisher.
+
1218 # This tag requires that the tag GENERATE_DOCSET is set to YES.
+
1219 
+
1220 DOCSET_PUBLISHER_ID = org.doxygen.Publisher
+
1221 
+
1222 # The DOCSET_PUBLISHER_NAME tag identifies the documentation publisher.
+
1223 # The default value is: Publisher.
+
1224 # This tag requires that the tag GENERATE_DOCSET is set to YES.
+
1225 
+
1226 DOCSET_PUBLISHER_NAME = Publisher
+
1227 
+
1228 # If the GENERATE_HTMLHELP tag is set to YES then doxygen generates three
+
1229 # additional HTML index files: index.hhp, index.hhc, and index.hhk. The
+
1230 # index.hhp is a project file that can be read by Microsoft's HTML Help Workshop
+
1231 # (see: http://www.microsoft.com/en-us/download/details.aspx?id=21138) on
+
1232 # Windows.
+
1233 #
+
1234 # The HTML Help Workshop contains a compiler that can convert all HTML output
+
1235 # generated by doxygen into a single compiled HTML file (.chm). Compiled HTML
+
1236 # files are now used as the Windows 98 help format, and will replace the old
+
1237 # Windows help format (.hlp) on all Windows platforms in the future. Compressed
+
1238 # HTML files also contain an index, a table of contents, and you can search for
+
1239 # words in the documentation. The HTML workshop also contains a viewer for
+
1240 # compressed HTML files.
+
1241 # The default value is: NO.
+
1242 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1243 
+
1244 GENERATE_HTMLHELP = NO
+
1245 
+
1246 # The CHM_FILE tag can be used to specify the file name of the resulting .chm
+
1247 # file. You can add a path in front of the file if the result should not be
+
1248 # written to the html output directory.
+
1249 # This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
1250 
+
1251 CHM_FILE =
+
1252 
+
1253 # The HHC_LOCATION tag can be used to specify the location (absolute path
+
1254 # including file name) of the HTML help compiler (hhc.exe). If non-empty,
+
1255 # doxygen will try to run the HTML help compiler on the generated index.hhp.
+
1256 # The file has to be specified with full path.
+
1257 # This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
1258 
+
1259 HHC_LOCATION =
+
1260 
+
1261 # The GENERATE_CHI flag controls if a separate .chi index file is generated
+
1262 # (YES) or that it should be included in the master .chm file (NO).
+
1263 # The default value is: NO.
+
1264 # This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
1265 
+
1266 GENERATE_CHI = NO
+
1267 
+
1268 # The CHM_INDEX_ENCODING is used to encode HtmlHelp index (hhk), content (hhc)
+
1269 # and project file content.
+
1270 # This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
1271 
+
1272 CHM_INDEX_ENCODING =
+
1273 
+
1274 # The BINARY_TOC flag controls whether a binary table of contents is generated
+
1275 # (YES) or a normal table of contents (NO) in the .chm file. Furthermore it
+
1276 # enables the Previous and Next buttons.
+
1277 # The default value is: NO.
+
1278 # This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
1279 
+
1280 BINARY_TOC = NO
+
1281 
+
1282 # The TOC_EXPAND flag can be set to YES to add extra items for group members to
+
1283 # the table of contents of the HTML help documentation and to the tree view.
+
1284 # The default value is: NO.
+
1285 # This tag requires that the tag GENERATE_HTMLHELP is set to YES.
+
1286 
+
1287 TOC_EXPAND = NO
+
1288 
+
1289 # If the GENERATE_QHP tag is set to YES and both QHP_NAMESPACE and
+
1290 # QHP_VIRTUAL_FOLDER are set, an additional index file will be generated that
+
1291 # can be used as input for Qt's qhelpgenerator to generate a Qt Compressed Help
+
1292 # (.qch) of the generated HTML documentation.
+
1293 # The default value is: NO.
+
1294 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1295 
+
1296 GENERATE_QHP = NO
+
1297 
+
1298 # If the QHG_LOCATION tag is specified, the QCH_FILE tag can be used to specify
+
1299 # the file name of the resulting .qch file. The path specified is relative to
+
1300 # the HTML output folder.
+
1301 # This tag requires that the tag GENERATE_QHP is set to YES.
+
1302 
+
1303 QCH_FILE =
+
1304 
+
1305 # The QHP_NAMESPACE tag specifies the namespace to use when generating Qt Help
+
1306 # Project output. For more information please see Qt Help Project / Namespace
+
1307 # (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#namespace).
+
1308 # The default value is: org.doxygen.Project.
+
1309 # This tag requires that the tag GENERATE_QHP is set to YES.
+
1310 
+
1311 QHP_NAMESPACE = org.doxygen.Project
+
1312 
+
1313 # The QHP_VIRTUAL_FOLDER tag specifies the namespace to use when generating Qt
+
1314 # Help Project output. For more information please see Qt Help Project / Virtual
+
1315 # Folders (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#virtual-
+
1316 # folders).
+
1317 # The default value is: doc.
+
1318 # This tag requires that the tag GENERATE_QHP is set to YES.
+
1319 
+
1320 QHP_VIRTUAL_FOLDER = doc
+
1321 
+
1322 # If the QHP_CUST_FILTER_NAME tag is set, it specifies the name of a custom
+
1323 # filter to add. For more information please see Qt Help Project / Custom
+
1324 # Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-
+
1325 # filters).
+
1326 # This tag requires that the tag GENERATE_QHP is set to YES.
+
1327 
+
1328 QHP_CUST_FILTER_NAME =
+
1329 
+
1330 # The QHP_CUST_FILTER_ATTRS tag specifies the list of the attributes of the
+
1331 # custom filter to add. For more information please see Qt Help Project / Custom
+
1332 # Filters (see: http://qt-project.org/doc/qt-4.8/qthelpproject.html#custom-
+
1333 # filters).
+
1334 # This tag requires that the tag GENERATE_QHP is set to YES.
+
1335 
+
1336 QHP_CUST_FILTER_ATTRS =
+
1337 
+
1338 # The QHP_SECT_FILTER_ATTRS tag specifies the list of the attributes this
+
1339 # project's filter section matches. Qt Help Project / Filter Attributes (see:
+
1340 # http://qt-project.org/doc/qt-4.8/qthelpproject.html#filter-attributes).
+
1341 # This tag requires that the tag GENERATE_QHP is set to YES.
+
1342 
+
1343 QHP_SECT_FILTER_ATTRS =
+
1344 
+
1345 # The QHG_LOCATION tag can be used to specify the location of Qt's
+
1346 # qhelpgenerator. If non-empty doxygen will try to run qhelpgenerator on the
+
1347 # generated .qhp file.
+
1348 # This tag requires that the tag GENERATE_QHP is set to YES.
+
1349 
+
1350 QHG_LOCATION =
+
1351 
+
1352 # If the GENERATE_ECLIPSEHELP tag is set to YES, additional index files will be
+
1353 # generated, together with the HTML files, they form an Eclipse help plugin. To
+
1354 # install this plugin and make it available under the help contents menu in
+
1355 # Eclipse, the contents of the directory containing the HTML and XML files needs
+
1356 # to be copied into the plugins directory of eclipse. The name of the directory
+
1357 # within the plugins directory should be the same as the ECLIPSE_DOC_ID value.
+
1358 # After copying Eclipse needs to be restarted before the help appears.
+
1359 # The default value is: NO.
+
1360 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1361 
+
1362 GENERATE_ECLIPSEHELP = NO
+
1363 
+
1364 # A unique identifier for the Eclipse help plugin. When installing the plugin
+
1365 # the directory name containing the HTML and XML files should also have this
+
1366 # name. Each documentation set should have its own identifier.
+
1367 # The default value is: org.doxygen.Project.
+
1368 # This tag requires that the tag GENERATE_ECLIPSEHELP is set to YES.
+
1369 
+
1370 ECLIPSE_DOC_ID = org.doxygen.Project
+
1371 
+
1372 # If you want full control over the layout of the generated HTML pages it might
+
1373 # be necessary to disable the index and replace it with your own. The
+
1374 # DISABLE_INDEX tag can be used to turn on/off the condensed index (tabs) at top
+
1375 # of each HTML page. A value of NO enables the index and the value YES disables
+
1376 # it. Since the tabs in the index contain the same information as the navigation
+
1377 # tree, you can set this option to YES if you also set GENERATE_TREEVIEW to YES.
+
1378 # The default value is: NO.
+
1379 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1380 
+
1381 DISABLE_INDEX = NO
+
1382 
+
1383 # The GENERATE_TREEVIEW tag is used to specify whether a tree-like index
+
1384 # structure should be generated to display hierarchical information. If the tag
+
1385 # value is set to YES, a side panel will be generated containing a tree-like
+
1386 # index structure (just like the one that is generated for HTML Help). For this
+
1387 # to work a browser that supports JavaScript, DHTML, CSS and frames is required
+
1388 # (i.e. any modern browser). Windows users are probably better off using the
+
1389 # HTML help feature. Via custom style sheets (see HTML_EXTRA_STYLESHEET) one can
+
1390 # further fine-tune the look of the index. As an example, the default style
+
1391 # sheet generated by doxygen has an example that shows how to put an image at
+
1392 # the root of the tree instead of the PROJECT_NAME. Since the tree basically has
+
1393 # the same information as the tab index, you could consider setting
+
1394 # DISABLE_INDEX to YES when enabling this option.
+
1395 # The default value is: NO.
+
1396 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1397 
+
1398 GENERATE_TREEVIEW = NO
+
1399 
+
1400 # The ENUM_VALUES_PER_LINE tag can be used to set the number of enum values that
+
1401 # doxygen will group on one line in the generated HTML documentation.
+
1402 #
+
1403 # Note that a value of 0 will completely suppress the enum values from appearing
+
1404 # in the overview section.
+
1405 # Minimum value: 0, maximum value: 20, default value: 4.
+
1406 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1407 
+
1408 ENUM_VALUES_PER_LINE = 4
+
1409 
+
1410 # If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be used
+
1411 # to set the initial width (in pixels) of the frame in which the tree is shown.
+
1412 # Minimum value: 0, maximum value: 1500, default value: 250.
+
1413 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1414 
+
1415 TREEVIEW_WIDTH = 250
+
1416 
+
1417 # If the EXT_LINKS_IN_WINDOW option is set to YES, doxygen will open links to
+
1418 # external symbols imported via tag files in a separate window.
+
1419 # The default value is: NO.
+
1420 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1421 
+
1422 EXT_LINKS_IN_WINDOW = NO
+
1423 
+
1424 # Use this tag to change the font size of LaTeX formulas included as images in
+
1425 # the HTML documentation. When you change the font size after a successful
+
1426 # doxygen run you need to manually remove any form_*.png images from the HTML
+
1427 # output directory to force them to be regenerated.
+
1428 # Minimum value: 8, maximum value: 50, default value: 10.
+
1429 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1430 
+
1431 FORMULA_FONTSIZE = 10
+
1432 
+
1433 # Use the FORMULA_TRANPARENT tag to determine whether or not the images
+
1434 # generated for formulas are transparent PNGs. Transparent PNGs are not
+
1435 # supported properly for IE 6.0, but are supported on all modern browsers.
+
1436 #
+
1437 # Note that when changing this option you need to delete any form_*.png files in
+
1438 # the HTML output directory before the changes have effect.
+
1439 # The default value is: YES.
+
1440 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1441 
+
1442 FORMULA_TRANSPARENT = YES
+
1443 
+
1444 # Enable the USE_MATHJAX option to render LaTeX formulas using MathJax (see
+
1445 # http://www.mathjax.org) which uses client side Javascript for the rendering
+
1446 # instead of using pre-rendered bitmaps. Use this if you do not have LaTeX
+
1447 # installed or if you want to formulas look prettier in the HTML output. When
+
1448 # enabled you may also need to install MathJax separately and configure the path
+
1449 # to it using the MATHJAX_RELPATH option.
+
1450 # The default value is: NO.
+
1451 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1452 
+
1453 USE_MATHJAX = NO
+
1454 
+
1455 # When MathJax is enabled you can set the default output format to be used for
+
1456 # the MathJax output. See the MathJax site (see:
+
1457 # http://docs.mathjax.org/en/latest/output.html) for more details.
+
1458 # Possible values are: HTML-CSS (which is slower, but has the best
+
1459 # compatibility), NativeMML (i.e. MathML) and SVG.
+
1460 # The default value is: HTML-CSS.
+
1461 # This tag requires that the tag USE_MATHJAX is set to YES.
+
1462 
+
1463 MATHJAX_FORMAT = HTML-CSS
+
1464 
+
1465 # When MathJax is enabled you need to specify the location relative to the HTML
+
1466 # output directory using the MATHJAX_RELPATH option. The destination directory
+
1467 # should contain the MathJax.js script. For instance, if the mathjax directory
+
1468 # is located at the same level as the HTML output directory, then
+
1469 # MATHJAX_RELPATH should be ../mathjax. The default value points to the MathJax
+
1470 # Content Delivery Network so you can quickly see the result without installing
+
1471 # MathJax. However, it is strongly recommended to install a local copy of
+
1472 # MathJax from http://www.mathjax.org before deployment.
+
1473 # The default value is: http://cdn.mathjax.org/mathjax/latest.
+
1474 # This tag requires that the tag USE_MATHJAX is set to YES.
+
1475 
+
1476 MATHJAX_RELPATH = http://www.mathjax.org/mathjax
+
1477 
+
1478 # The MATHJAX_EXTENSIONS tag can be used to specify one or more MathJax
+
1479 # extension names that should be enabled during MathJax rendering. For example
+
1480 # MATHJAX_EXTENSIONS = TeX/AMSmath TeX/AMSsymbols
+
1481 # This tag requires that the tag USE_MATHJAX is set to YES.
+
1482 
+
1483 MATHJAX_EXTENSIONS =
+
1484 
+
1485 # The MATHJAX_CODEFILE tag can be used to specify a file with javascript pieces
+
1486 # of code that will be used on startup of the MathJax code. See the MathJax site
+
1487 # (see: http://docs.mathjax.org/en/latest/output.html) for more details. For an
+
1488 # example see the documentation.
+
1489 # This tag requires that the tag USE_MATHJAX is set to YES.
+
1490 
+
1491 MATHJAX_CODEFILE =
+
1492 
+
1493 # When the SEARCHENGINE tag is enabled doxygen will generate a search box for
+
1494 # the HTML output. The underlying search engine uses javascript and DHTML and
+
1495 # should work on any modern browser. Note that when using HTML help
+
1496 # (GENERATE_HTMLHELP), Qt help (GENERATE_QHP), or docsets (GENERATE_DOCSET)
+
1497 # there is already a search function so this one should typically be disabled.
+
1498 # For large projects the javascript based search engine can be slow, then
+
1499 # enabling SERVER_BASED_SEARCH may provide a better solution. It is possible to
+
1500 # search using the keyboard; to jump to the search box use <access key> + S
+
1501 # (what the <access key> is depends on the OS and browser, but it is typically
+
1502 # <CTRL>, <ALT>/<option>, or both). Inside the search box use the <cursor down
+
1503 # key> to jump into the search results window, the results can be navigated
+
1504 # using the <cursor keys>. Press <Enter> to select an item or <escape> to cancel
+
1505 # the search. The filter options can be selected when the cursor is inside the
+
1506 # search box by pressing <Shift>+<cursor down>. Also here use the <cursor keys>
+
1507 # to select a filter and <Enter> or <escape> to activate or cancel the filter
+
1508 # option.
+
1509 # The default value is: YES.
+
1510 # This tag requires that the tag GENERATE_HTML is set to YES.
+
1511 
+
1512 SEARCHENGINE = NO
+
1513 
+
1514 # When the SERVER_BASED_SEARCH tag is enabled the search engine will be
+
1515 # implemented using a web server instead of a web client using Javascript. There
+
1516 # are two flavors of web server based searching depending on the EXTERNAL_SEARCH
+
1517 # setting. When disabled, doxygen will generate a PHP script for searching and
+
1518 # an index file used by the script. When EXTERNAL_SEARCH is enabled the indexing
+
1519 # and searching needs to be provided by external tools. See the section
+
1520 # "External Indexing and Searching" for details.
+
1521 # The default value is: NO.
+
1522 # This tag requires that the tag SEARCHENGINE is set to YES.
+
1523 
+
1524 SERVER_BASED_SEARCH = NO
+
1525 
+
1526 # When EXTERNAL_SEARCH tag is enabled doxygen will no longer generate the PHP
+
1527 # script for searching. Instead the search results are written to an XML file
+
1528 # which needs to be processed by an external indexer. Doxygen will invoke an
+
1529 # external search engine pointed to by the SEARCHENGINE_URL option to obtain the
+
1530 # search results.
+
1531 #
+
1532 # Doxygen ships with an example indexer (doxyindexer) and search engine
+
1533 # (doxysearch.cgi) which are based on the open source search engine library
+
1534 # Xapian (see: http://xapian.org/).
+
1535 #
+
1536 # See the section "External Indexing and Searching" for details.
+
1537 # The default value is: NO.
+
1538 # This tag requires that the tag SEARCHENGINE is set to YES.
+
1539 
+
1540 EXTERNAL_SEARCH = NO
+
1541 
+
1542 # The SEARCHENGINE_URL should point to a search engine hosted by a web server
+
1543 # which will return the search results when EXTERNAL_SEARCH is enabled.
+
1544 #
+
1545 # Doxygen ships with an example indexer (doxyindexer) and search engine
+
1546 # (doxysearch.cgi) which are based on the open source search engine library
+
1547 # Xapian (see: http://xapian.org/). See the section "External Indexing and
+
1548 # Searching" for details.
+
1549 # This tag requires that the tag SEARCHENGINE is set to YES.
+
1550 
+
1551 SEARCHENGINE_URL =
+
1552 
+
1553 # When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the unindexed
+
1554 # search data is written to a file for indexing by an external tool. With the
+
1555 # SEARCHDATA_FILE tag the name of this file can be specified.
+
1556 # The default file is: searchdata.xml.
+
1557 # This tag requires that the tag SEARCHENGINE is set to YES.
+
1558 
+
1559 SEARCHDATA_FILE = searchdata.xml
+
1560 
+
1561 # When SERVER_BASED_SEARCH and EXTERNAL_SEARCH are both enabled the
+
1562 # EXTERNAL_SEARCH_ID tag can be used as an identifier for the project. This is
+
1563 # useful in combination with EXTRA_SEARCH_MAPPINGS to search through multiple
+
1564 # projects and redirect the results back to the right project.
+
1565 # This tag requires that the tag SEARCHENGINE is set to YES.
+
1566 
+
1567 EXTERNAL_SEARCH_ID =
+
1568 
+
1569 # The EXTRA_SEARCH_MAPPINGS tag can be used to enable searching through doxygen
+
1570 # projects other than the one defined by this configuration file, but that are
+
1571 # all added to the same external search index. Each project needs to have a
+
1572 # unique id set via EXTERNAL_SEARCH_ID. The search mapping then maps the id of
+
1573 # to a relative location where the documentation can be found. The format is:
+
1574 # EXTRA_SEARCH_MAPPINGS = tagname1=loc1 tagname2=loc2 ...
+
1575 # This tag requires that the tag SEARCHENGINE is set to YES.
+
1576 
+
1577 EXTRA_SEARCH_MAPPINGS =
+
1578 
+
1579 #---------------------------------------------------------------------------
+
1580 # Configuration options related to the LaTeX output
+
1581 #---------------------------------------------------------------------------
+
1582 
+
1583 # If the GENERATE_LATEX tag is set to YES, doxygen will generate LaTeX output.
+
1584 # The default value is: YES.
+
1585 
+
1586 GENERATE_LATEX = NO
+
1587 
+
1588 # The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. If a
+
1589 # relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+
1590 # it.
+
1591 # The default directory is: latex.
+
1592 # This tag requires that the tag GENERATE_LATEX is set to YES.
+
1593 
+
1594 LATEX_OUTPUT = latex
+
1595 
+
1596 # The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be
+
1597 # invoked.
+
1598 #
+
1599 # Note that when enabling USE_PDFLATEX this option is only used for generating
+
1600 # bitmaps for formulas in the HTML output, but not in the Makefile that is
+
1601 # written to the output directory.
+
1602 # The default file is: latex.
+
1603 # This tag requires that the tag GENERATE_LATEX is set to YES.
+
1604 
+
1605 LATEX_CMD_NAME = latex
+
1606 
+
1607 # The MAKEINDEX_CMD_NAME tag can be used to specify the command name to generate
+
1608 # index for LaTeX.
+
1609 # The default file is: makeindex.
+
1610 # This tag requires that the tag GENERATE_LATEX is set to YES.
+
1611 
+
1612 MAKEINDEX_CMD_NAME = makeindex
+
1613 
+
1614 # If the COMPACT_LATEX tag is set to YES, doxygen generates more compact LaTeX
+
1615 # documents. This may be useful for small projects and may help to save some
+
1616 # trees in general.
+
1617 # The default value is: NO.
+
1618 # This tag requires that the tag GENERATE_LATEX is set to YES.
+
1619 
+
1620 COMPACT_LATEX = NO
+
1621 
+
1622 # The PAPER_TYPE tag can be used to set the paper type that is used by the
+
1623 # printer.
+
1624 # Possible values are: a4 (210 x 297 mm), letter (8.5 x 11 inches), legal (8.5 x
+
1625 # 14 inches) and executive (7.25 x 10.5 inches).
+
1626 # The default value is: a4.
+
1627 # This tag requires that the tag GENERATE_LATEX is set to YES.
+
1628 
+
1629 PAPER_TYPE = a4wide
+
1630 
+
1631 # The EXTRA_PACKAGES tag can be used to specify one or more LaTeX package names
+
1632 # that should be included in the LaTeX output. The package can be specified just
+
1633 # by its name or with the correct syntax as to be used with the LaTeX
+
1634 # \usepackage command. To get the times font for instance you can specify :
+
1635 # EXTRA_PACKAGES=times or EXTRA_PACKAGES={times}
+
1636 # To use the option intlimits with the amsmath package you can specify:
+
1637 # EXTRA_PACKAGES=[intlimits]{amsmath}
+
1638 # If left blank no extra packages will be included.
+
1639 # This tag requires that the tag GENERATE_LATEX is set to YES.
+
1640 
+
1641 EXTRA_PACKAGES =
+
1642 
+
1643 # The LATEX_HEADER tag can be used to specify a personal LaTeX header for the
+
1644 # generated LaTeX document. The header should contain everything until the first
+
1645 # chapter. If it is left blank doxygen will generate a standard header. See
+
1646 # section "Doxygen usage" for information on how to let doxygen write the
+
1647 # default header to a separate file.
+
1648 #
+
1649 # Note: Only use a user-defined header if you know what you are doing! The
+
1650 # following commands have a special meaning inside the header: $title,
+
1651 # $datetime, $date, $doxygenversion, $projectname, $projectnumber,
+
1652 # $projectbrief, $projectlogo. Doxygen will replace $title with the empty
+
1653 # string, for the replacement values of the other commands the user is referred
+
1654 # to HTML_HEADER.
+
1655 # This tag requires that the tag GENERATE_LATEX is set to YES.
+
1656 
+
1657 LATEX_HEADER =
+
1658 
+
1659 # The LATEX_FOOTER tag can be used to specify a personal LaTeX footer for the
+
1660 # generated LaTeX document. The footer should contain everything after the last
+
1661 # chapter. If it is left blank doxygen will generate a standard footer. See
+
1662 # LATEX_HEADER for more information on how to generate a default footer and what
+
1663 # special commands can be used inside the footer.
+
1664 #
+
1665 # Note: Only use a user-defined footer if you know what you are doing!
+
1666 # This tag requires that the tag GENERATE_LATEX is set to YES.
+
1667 
+
1668 LATEX_FOOTER =
+
1669 
+
1670 # The LATEX_EXTRA_STYLESHEET tag can be used to specify additional user-defined
+
1671 # LaTeX style sheets that are included after the standard style sheets created
+
1672 # by doxygen. Using this option one can overrule certain style aspects. Doxygen
+
1673 # will copy the style sheet files to the output directory.
+
1674 # Note: The order of the extra style sheet files is of importance (e.g. the last
+
1675 # style sheet in the list overrules the setting of the previous ones in the
+
1676 # list).
+
1677 # This tag requires that the tag GENERATE_LATEX is set to YES.
+
1678 
+
1679 LATEX_EXTRA_STYLESHEET =
+
1680 
+
1681 # The LATEX_EXTRA_FILES tag can be used to specify one or more extra images or
+
1682 # other source files which should be copied to the LATEX_OUTPUT output
+
1683 # directory. Note that the files will be copied as-is; there are no commands or
+
1684 # markers available.
+
1685 # This tag requires that the tag GENERATE_LATEX is set to YES.
+
1686 
+
1687 LATEX_EXTRA_FILES =
+
1688 
+
1689 # If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated is
+
1690 # prepared for conversion to PDF (using ps2pdf or pdflatex). The PDF file will
+
1691 # contain links (just like the HTML output) instead of page references. This
+
1692 # makes the output suitable for online browsing using a PDF viewer.
+
1693 # The default value is: YES.
+
1694 # This tag requires that the tag GENERATE_LATEX is set to YES.
+
1695 
+
1696 PDF_HYPERLINKS = NO
+
1697 
+
1698 # If the USE_PDFLATEX tag is set to YES, doxygen will use pdflatex to generate
+
1699 # the PDF file directly from the LaTeX files. Set this option to YES, to get a
+
1700 # higher quality PDF documentation.
+
1701 # The default value is: YES.
+
1702 # This tag requires that the tag GENERATE_LATEX is set to YES.
+
1703 
+
1704 USE_PDFLATEX = YES
+
1705 
+
1706 # If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \batchmode
+
1707 # command to the generated LaTeX files. This will instruct LaTeX to keep running
+
1708 # if errors occur, instead of asking the user for help. This option is also used
+
1709 # when generating formulas in HTML.
+
1710 # The default value is: NO.
+
1711 # This tag requires that the tag GENERATE_LATEX is set to YES.
+
1712 
+
1713 LATEX_BATCHMODE = NO
+
1714 
+
1715 # If the LATEX_HIDE_INDICES tag is set to YES then doxygen will not include the
+
1716 # index chapters (such as File Index, Compound Index, etc.) in the output.
+
1717 # The default value is: NO.
+
1718 # This tag requires that the tag GENERATE_LATEX is set to YES.
+
1719 
+
1720 LATEX_HIDE_INDICES = NO
+
1721 
+
1722 # If the LATEX_SOURCE_CODE tag is set to YES then doxygen will include source
+
1723 # code with syntax highlighting in the LaTeX output.
+
1724 #
+
1725 # Note that which sources are shown also depends on other settings such as
+
1726 # SOURCE_BROWSER.
+
1727 # The default value is: NO.
+
1728 # This tag requires that the tag GENERATE_LATEX is set to YES.
+
1729 
+
1730 LATEX_SOURCE_CODE = NO
+
1731 
+
1732 # The LATEX_BIB_STYLE tag can be used to specify the style to use for the
+
1733 # bibliography, e.g. plainnat, or ieeetr. See
+
1734 # http://en.wikipedia.org/wiki/BibTeX and \cite for more info.
+
1735 # The default value is: plain.
+
1736 # This tag requires that the tag GENERATE_LATEX is set to YES.
+
1737 
+
1738 LATEX_BIB_STYLE = plain
+
1739 
+
1740 #---------------------------------------------------------------------------
+
1741 # Configuration options related to the RTF output
+
1742 #---------------------------------------------------------------------------
+
1743 
+
1744 # If the GENERATE_RTF tag is set to YES, doxygen will generate RTF output. The
+
1745 # RTF output is optimized for Word 97 and may not look too pretty with other RTF
+
1746 # readers/editors.
+
1747 # The default value is: NO.
+
1748 
+
1749 GENERATE_RTF = NO
+
1750 
+
1751 # The RTF_OUTPUT tag is used to specify where the RTF docs will be put. If a
+
1752 # relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+
1753 # it.
+
1754 # The default directory is: rtf.
+
1755 # This tag requires that the tag GENERATE_RTF is set to YES.
+
1756 
+
1757 RTF_OUTPUT = glm.rtf
+
1758 
+
1759 # If the COMPACT_RTF tag is set to YES, doxygen generates more compact RTF
+
1760 # documents. This may be useful for small projects and may help to save some
+
1761 # trees in general.
+
1762 # The default value is: NO.
+
1763 # This tag requires that the tag GENERATE_RTF is set to YES.
+
1764 
+
1765 COMPACT_RTF = NO
+
1766 
+
1767 # If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated will
+
1768 # contain hyperlink fields. The RTF file will contain links (just like the HTML
+
1769 # output) instead of page references. This makes the output suitable for online
+
1770 # browsing using Word or some other Word compatible readers that support those
+
1771 # fields.
+
1772 #
+
1773 # Note: WordPad (write) and others do not support links.
+
1774 # The default value is: NO.
+
1775 # This tag requires that the tag GENERATE_RTF is set to YES.
+
1776 
+
1777 RTF_HYPERLINKS = YES
+
1778 
+
1779 # Load stylesheet definitions from file. Syntax is similar to doxygen's config
+
1780 # file, i.e. a series of assignments. You only have to provide replacements,
+
1781 # missing definitions are set to their default value.
+
1782 #
+
1783 # See also section "Doxygen usage" for information on how to generate the
+
1784 # default style sheet that doxygen normally uses.
+
1785 # This tag requires that the tag GENERATE_RTF is set to YES.
+
1786 
+
1787 RTF_STYLESHEET_FILE =
+
1788 
+
1789 # Set optional variables used in the generation of an RTF document. Syntax is
+
1790 # similar to doxygen's config file. A template extensions file can be generated
+
1791 # using doxygen -e rtf extensionFile.
+
1792 # This tag requires that the tag GENERATE_RTF is set to YES.
+
1793 
+
1794 RTF_EXTENSIONS_FILE =
+
1795 
+
1796 # If the RTF_SOURCE_CODE tag is set to YES then doxygen will include source code
+
1797 # with syntax highlighting in the RTF output.
+
1798 #
+
1799 # Note that which sources are shown also depends on other settings such as
+
1800 # SOURCE_BROWSER.
+
1801 # The default value is: NO.
+
1802 # This tag requires that the tag GENERATE_RTF is set to YES.
+
1803 
+
1804 RTF_SOURCE_CODE = NO
+
1805 
+
1806 #---------------------------------------------------------------------------
+
1807 # Configuration options related to the man page output
+
1808 #---------------------------------------------------------------------------
+
1809 
+
1810 # If the GENERATE_MAN tag is set to YES, doxygen will generate man pages for
+
1811 # classes and files.
+
1812 # The default value is: NO.
+
1813 
+
1814 GENERATE_MAN = NO
+
1815 
+
1816 # The MAN_OUTPUT tag is used to specify where the man pages will be put. If a
+
1817 # relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+
1818 # it. A directory man3 will be created inside the directory specified by
+
1819 # MAN_OUTPUT.
+
1820 # The default directory is: man.
+
1821 # This tag requires that the tag GENERATE_MAN is set to YES.
+
1822 
+
1823 MAN_OUTPUT = man
+
1824 
+
1825 # The MAN_EXTENSION tag determines the extension that is added to the generated
+
1826 # man pages. In case the manual section does not start with a number, the number
+
1827 # 3 is prepended. The dot (.) at the beginning of the MAN_EXTENSION tag is
+
1828 # optional.
+
1829 # The default value is: .3.
+
1830 # This tag requires that the tag GENERATE_MAN is set to YES.
+
1831 
+
1832 MAN_EXTENSION = .3
+
1833 
+
1834 # The MAN_SUBDIR tag determines the name of the directory created within
+
1835 # MAN_OUTPUT in which the man pages are placed. If defaults to man followed by
+
1836 # MAN_EXTENSION with the initial . removed.
+
1837 # This tag requires that the tag GENERATE_MAN is set to YES.
+
1838 
+
1839 MAN_SUBDIR =
+
1840 
+
1841 # If the MAN_LINKS tag is set to YES and doxygen generates man output, then it
+
1842 # will generate one additional man file for each entity documented in the real
+
1843 # man page(s). These additional files only source the real man page, but without
+
1844 # them the man command would be unable to find the correct page.
+
1845 # The default value is: NO.
+
1846 # This tag requires that the tag GENERATE_MAN is set to YES.
+
1847 
+
1848 MAN_LINKS = NO
+
1849 
+
1850 #---------------------------------------------------------------------------
+
1851 # Configuration options related to the XML output
+
1852 #---------------------------------------------------------------------------
+
1853 
+
1854 # If the GENERATE_XML tag is set to YES, doxygen will generate an XML file that
+
1855 # captures the structure of the code including all documentation.
+
1856 # The default value is: NO.
+
1857 
+
1858 GENERATE_XML = NO
+
1859 
+
1860 # The XML_OUTPUT tag is used to specify where the XML pages will be put. If a
+
1861 # relative path is entered the value of OUTPUT_DIRECTORY will be put in front of
+
1862 # it.
+
1863 # The default directory is: xml.
+
1864 # This tag requires that the tag GENERATE_XML is set to YES.
+
1865 
+
1866 XML_OUTPUT = xml
+
1867 
+
1868 # If the XML_PROGRAMLISTING tag is set to YES, doxygen will dump the program
+
1869 # listings (including syntax highlighting and cross-referencing information) to
+
1870 # the XML output. Note that enabling this will significantly increase the size
+
1871 # of the XML output.
+
1872 # The default value is: YES.
+
1873 # This tag requires that the tag GENERATE_XML is set to YES.
+
1874 
+
1875 XML_PROGRAMLISTING = YES
+
1876 
+
1877 #---------------------------------------------------------------------------
+
1878 # Configuration options related to the DOCBOOK output
+
1879 #---------------------------------------------------------------------------
+
1880 
+
1881 # If the GENERATE_DOCBOOK tag is set to YES, doxygen will generate Docbook files
+
1882 # that can be used to generate PDF.
+
1883 # The default value is: NO.
+
1884 
+
1885 GENERATE_DOCBOOK = NO
+
1886 
+
1887 # The DOCBOOK_OUTPUT tag is used to specify where the Docbook pages will be put.
+
1888 # If a relative path is entered the value of OUTPUT_DIRECTORY will be put in
+
1889 # front of it.
+
1890 # The default directory is: docbook.
+
1891 # This tag requires that the tag GENERATE_DOCBOOK is set to YES.
+
1892 
+
1893 DOCBOOK_OUTPUT = docbook
+
1894 
+
1895 # If the DOCBOOK_PROGRAMLISTING tag is set to YES, doxygen will include the
+
1896 # program listings (including syntax highlighting and cross-referencing
+
1897 # information) to the DOCBOOK output. Note that enabling this will significantly
+
1898 # increase the size of the DOCBOOK output.
+
1899 # The default value is: NO.
+
1900 # This tag requires that the tag GENERATE_DOCBOOK is set to YES.
+
1901 
+
1902 DOCBOOK_PROGRAMLISTING = NO
+
1903 
+
1904 #---------------------------------------------------------------------------
+
1905 # Configuration options for the AutoGen Definitions output
+
1906 #---------------------------------------------------------------------------
+
1907 
+
1908 # If the GENERATE_AUTOGEN_DEF tag is set to YES, doxygen will generate an
+
1909 # AutoGen Definitions (see http://autogen.sf.net) file that captures the
+
1910 # structure of the code including all documentation. Note that this feature is
+
1911 # still experimental and incomplete at the moment.
+
1912 # The default value is: NO.
+
1913 
+
1914 GENERATE_AUTOGEN_DEF = NO
+
1915 
+
1916 #---------------------------------------------------------------------------
+
1917 # Configuration options related to the Perl module output
+
1918 #---------------------------------------------------------------------------
+
1919 
+
1920 # If the GENERATE_PERLMOD tag is set to YES, doxygen will generate a Perl module
+
1921 # file that captures the structure of the code including all documentation.
+
1922 #
+
1923 # Note that this feature is still experimental and incomplete at the moment.
+
1924 # The default value is: NO.
+
1925 
+
1926 GENERATE_PERLMOD = NO
+
1927 
+
1928 # If the PERLMOD_LATEX tag is set to YES, doxygen will generate the necessary
+
1929 # Makefile rules, Perl scripts and LaTeX code to be able to generate PDF and DVI
+
1930 # output from the Perl module output.
+
1931 # The default value is: NO.
+
1932 # This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
1933 
+
1934 PERLMOD_LATEX = NO
+
1935 
+
1936 # If the PERLMOD_PRETTY tag is set to YES, the Perl module output will be nicely
+
1937 # formatted so it can be parsed by a human reader. This is useful if you want to
+
1938 # understand what is going on. On the other hand, if this tag is set to NO, the
+
1939 # size of the Perl module output will be much smaller and Perl will parse it
+
1940 # just the same.
+
1941 # The default value is: YES.
+
1942 # This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
1943 
+
1944 PERLMOD_PRETTY = YES
+
1945 
+
1946 # The names of the make variables in the generated doxyrules.make file are
+
1947 # prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. This is useful
+
1948 # so different doxyrules.make files included by the same Makefile don't
+
1949 # overwrite each other's variables.
+
1950 # This tag requires that the tag GENERATE_PERLMOD is set to YES.
+
1951 
+
1952 PERLMOD_MAKEVAR_PREFIX =
+
1953 
+
1954 #---------------------------------------------------------------------------
+
1955 # Configuration options related to the preprocessor
+
1956 #---------------------------------------------------------------------------
+
1957 
+
1958 # If the ENABLE_PREPROCESSING tag is set to YES, doxygen will evaluate all
+
1959 # C-preprocessor directives found in the sources and include files.
+
1960 # The default value is: YES.
+
1961 
+
1962 ENABLE_PREPROCESSING = YES
+
1963 
+
1964 # If the MACRO_EXPANSION tag is set to YES, doxygen will expand all macro names
+
1965 # in the source code. If set to NO, only conditional compilation will be
+
1966 # performed. Macro expansion can be done in a controlled way by setting
+
1967 # EXPAND_ONLY_PREDEF to YES.
+
1968 # The default value is: NO.
+
1969 # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
1970 
+
1971 MACRO_EXPANSION = NO
+
1972 
+
1973 # If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES then
+
1974 # the macro expansion is limited to the macros specified with the PREDEFINED and
+
1975 # EXPAND_AS_DEFINED tags.
+
1976 # The default value is: NO.
+
1977 # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
1978 
+
1979 EXPAND_ONLY_PREDEF = NO
+
1980 
+
1981 # If the SEARCH_INCLUDES tag is set to YES, the include files in the
+
1982 # INCLUDE_PATH will be searched if a #include is found.
+
1983 # The default value is: YES.
+
1984 # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
1985 
+
1986 SEARCH_INCLUDES = YES
+
1987 
+
1988 # The INCLUDE_PATH tag can be used to specify one or more directories that
+
1989 # contain include files that are not input files but should be processed by the
+
1990 # preprocessor.
+
1991 # This tag requires that the tag SEARCH_INCLUDES is set to YES.
+
1992 
+
1993 INCLUDE_PATH =
+
1994 
+
1995 # You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard
+
1996 # patterns (like *.h and *.hpp) to filter out the header-files in the
+
1997 # directories. If left blank, the patterns specified with FILE_PATTERNS will be
+
1998 # used.
+
1999 # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
2000 
+
2001 INCLUDE_FILE_PATTERNS =
+
2002 
+
2003 # The PREDEFINED tag can be used to specify one or more macro names that are
+
2004 # defined before the preprocessor is started (similar to the -D option of e.g.
+
2005 # gcc). The argument of the tag is a list of macros of the form: name or
+
2006 # name=definition (no spaces). If the definition and the "=" are omitted, "=1"
+
2007 # is assumed. To prevent a macro definition from being undefined via #undef or
+
2008 # recursively expanded use the := operator instead of the = operator.
+
2009 # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
2010 
+
2011 PREDEFINED =
+
2012 
+
2013 # If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
+
2014 # tag can be used to specify a list of macro names that should be expanded. The
+
2015 # macro definition that is found in the sources will be used. Use the PREDEFINED
+
2016 # tag if you want to use a different macro definition that overrules the
+
2017 # definition found in the source code.
+
2018 # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
2019 
+
2020 EXPAND_AS_DEFINED =
+
2021 
+
2022 # If the SKIP_FUNCTION_MACROS tag is set to YES then doxygen's preprocessor will
+
2023 # remove all references to function-like macros that are alone on a line, have
+
2024 # an all uppercase name, and do not end with a semicolon. Such function macros
+
2025 # are typically used for boiler-plate code, and will confuse the parser if not
+
2026 # removed.
+
2027 # The default value is: YES.
+
2028 # This tag requires that the tag ENABLE_PREPROCESSING is set to YES.
+
2029 
+
2030 SKIP_FUNCTION_MACROS = YES
+
2031 
+
2032 #---------------------------------------------------------------------------
+
2033 # Configuration options related to external references
+
2034 #---------------------------------------------------------------------------
+
2035 
+
2036 # The TAGFILES tag can be used to specify one or more tag files. For each tag
+
2037 # file the location of the external documentation should be added. The format of
+
2038 # a tag file without this location is as follows:
+
2039 # TAGFILES = file1 file2 ...
+
2040 # Adding location for the tag files is done as follows:
+
2041 # TAGFILES = file1=loc1 "file2 = loc2" ...
+
2042 # where loc1 and loc2 can be relative or absolute paths or URLs. See the
+
2043 # section "Linking to external documentation" for more information about the use
+
2044 # of tag files.
+
2045 # Note: Each tag file must have a unique name (where the name does NOT include
+
2046 # the path). If a tag file is not located in the directory in which doxygen is
+
2047 # run, you must also specify the path to the tagfile here.
+
2048 
+
2049 TAGFILES =
+
2050 
+
2051 # When a file name is specified after GENERATE_TAGFILE, doxygen will create a
+
2052 # tag file that is based on the input files it reads. See section "Linking to
+
2053 # external documentation" for more information about the usage of tag files.
+
2054 
+
2055 GENERATE_TAGFILE =
+
2056 
+
2057 # If the ALLEXTERNALS tag is set to YES, all external class will be listed in
+
2058 # the class index. If set to NO, only the inherited external classes will be
+
2059 # listed.
+
2060 # The default value is: NO.
+
2061 
+
2062 ALLEXTERNALS = NO
+
2063 
+
2064 # If the EXTERNAL_GROUPS tag is set to YES, all external groups will be listed
+
2065 # in the modules index. If set to NO, only the current project's groups will be
+
2066 # listed.
+
2067 # The default value is: YES.
+
2068 
+
2069 EXTERNAL_GROUPS = YES
+
2070 
+
2071 # If the EXTERNAL_PAGES tag is set to YES, all external pages will be listed in
+
2072 # the related pages index. If set to NO, only the current project's pages will
+
2073 # be listed.
+
2074 # The default value is: YES.
+
2075 
+
2076 EXTERNAL_PAGES = YES
+
2077 
+
2078 # The PERL_PATH should be the absolute path and name of the perl script
+
2079 # interpreter (i.e. the result of 'which perl').
+
2080 # The default file (with absolute path) is: /usr/bin/perl.
+
2081 
+
2082 PERL_PATH = /usr/bin/perl
+
2083 
+
2084 #---------------------------------------------------------------------------
+
2085 # Configuration options related to the dot tool
+
2086 #---------------------------------------------------------------------------
+
2087 
+
2088 # If the CLASS_DIAGRAMS tag is set to YES, doxygen will generate a class diagram
+
2089 # (in HTML and LaTeX) for classes with base or super classes. Setting the tag to
+
2090 # NO turns the diagrams off. Note that this option also works with HAVE_DOT
+
2091 # disabled, but it is recommended to install and use dot, since it yields more
+
2092 # powerful graphs.
+
2093 # The default value is: YES.
+
2094 
+
2095 CLASS_DIAGRAMS = YES
+
2096 
+
2097 # You can define message sequence charts within doxygen comments using the \msc
+
2098 # command. Doxygen will then run the mscgen tool (see:
+
2099 # http://www.mcternan.me.uk/mscgen/)) to produce the chart and insert it in the
+
2100 # documentation. The MSCGEN_PATH tag allows you to specify the directory where
+
2101 # the mscgen tool resides. If left empty the tool is assumed to be found in the
+
2102 # default search path.
+
2103 
+
2104 MSCGEN_PATH =
+
2105 
+
2106 # You can include diagrams made with dia in doxygen documentation. Doxygen will
+
2107 # then run dia to produce the diagram and insert it in the documentation. The
+
2108 # DIA_PATH tag allows you to specify the directory where the dia binary resides.
+
2109 # If left empty dia is assumed to be found in the default search path.
+
2110 
+
2111 DIA_PATH =
+
2112 
+
2113 # If set to YES the inheritance and collaboration graphs will hide inheritance
+
2114 # and usage relations if the target is undocumented or is not a class.
+
2115 # The default value is: YES.
+
2116 
+
2117 HIDE_UNDOC_RELATIONS = YES
+
2118 
+
2119 # If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is
+
2120 # available from the path. This tool is part of Graphviz (see:
+
2121 # http://www.graphviz.org/), a graph visualization toolkit from AT&T and Lucent
+
2122 # Bell Labs. The other options in this section have no effect if this option is
+
2123 # set to NO
+
2124 # The default value is: NO.
+
2125 
+
2126 HAVE_DOT = NO
+
2127 
+
2128 # The DOT_NUM_THREADS specifies the number of dot invocations doxygen is allowed
+
2129 # to run in parallel. When set to 0 doxygen will base this on the number of
+
2130 # processors available in the system. You can set it explicitly to a value
+
2131 # larger than 0 to get control over the balance between CPU load and processing
+
2132 # speed.
+
2133 # Minimum value: 0, maximum value: 32, default value: 0.
+
2134 # This tag requires that the tag HAVE_DOT is set to YES.
+
2135 
+
2136 DOT_NUM_THREADS = 0
+
2137 
+
2138 # When you want a differently looking font in the dot files that doxygen
+
2139 # generates you can specify the font name using DOT_FONTNAME. You need to make
+
2140 # sure dot is able to find the font, which can be done by putting it in a
+
2141 # standard location or by setting the DOTFONTPATH environment variable or by
+
2142 # setting DOT_FONTPATH to the directory containing the font.
+
2143 # The default value is: Helvetica.
+
2144 # This tag requires that the tag HAVE_DOT is set to YES.
+
2145 
+
2146 DOT_FONTNAME = Helvetica
+
2147 
+
2148 # The DOT_FONTSIZE tag can be used to set the size (in points) of the font of
+
2149 # dot graphs.
+
2150 # Minimum value: 4, maximum value: 24, default value: 10.
+
2151 # This tag requires that the tag HAVE_DOT is set to YES.
+
2152 
+
2153 DOT_FONTSIZE = 10
+
2154 
+
2155 # By default doxygen will tell dot to use the default font as specified with
+
2156 # DOT_FONTNAME. If you specify a different font using DOT_FONTNAME you can set
+
2157 # the path where dot can find it using this tag.
+
2158 # This tag requires that the tag HAVE_DOT is set to YES.
+
2159 
+
2160 DOT_FONTPATH =
+
2161 
+
2162 # If the CLASS_GRAPH tag is set to YES then doxygen will generate a graph for
+
2163 # each documented class showing the direct and indirect inheritance relations.
+
2164 # Setting this tag to YES will force the CLASS_DIAGRAMS tag to NO.
+
2165 # The default value is: YES.
+
2166 # This tag requires that the tag HAVE_DOT is set to YES.
+
2167 
+
2168 CLASS_GRAPH = YES
+
2169 
+
2170 # If the COLLABORATION_GRAPH tag is set to YES then doxygen will generate a
+
2171 # graph for each documented class showing the direct and indirect implementation
+
2172 # dependencies (inheritance, containment, and class references variables) of the
+
2173 # class with other documented classes.
+
2174 # The default value is: YES.
+
2175 # This tag requires that the tag HAVE_DOT is set to YES.
+
2176 
+
2177 COLLABORATION_GRAPH = YES
+
2178 
+
2179 # If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for
+
2180 # groups, showing the direct groups dependencies.
+
2181 # The default value is: YES.
+
2182 # This tag requires that the tag HAVE_DOT is set to YES.
+
2183 
+
2184 GROUP_GRAPHS = YES
+
2185 
+
2186 # If the UML_LOOK tag is set to YES, doxygen will generate inheritance and
+
2187 # collaboration diagrams in a style similar to the OMG's Unified Modeling
+
2188 # Language.
+
2189 # The default value is: NO.
+
2190 # This tag requires that the tag HAVE_DOT is set to YES.
+
2191 
+
2192 UML_LOOK = NO
+
2193 
+
2194 # If the UML_LOOK tag is enabled, the fields and methods are shown inside the
+
2195 # class node. If there are many fields or methods and many nodes the graph may
+
2196 # become too big to be useful. The UML_LIMIT_NUM_FIELDS threshold limits the
+
2197 # number of items for each type to make the size more manageable. Set this to 0
+
2198 # for no limit. Note that the threshold may be exceeded by 50% before the limit
+
2199 # is enforced. So when you set the threshold to 10, up to 15 fields may appear,
+
2200 # but if the number exceeds 15, the total amount of fields shown is limited to
+
2201 # 10.
+
2202 # Minimum value: 0, maximum value: 100, default value: 10.
+
2203 # This tag requires that the tag HAVE_DOT is set to YES.
+
2204 
+
2205 UML_LIMIT_NUM_FIELDS = 10
+
2206 
+
2207 # If the TEMPLATE_RELATIONS tag is set to YES then the inheritance and
+
2208 # collaboration graphs will show the relations between templates and their
+
2209 # instances.
+
2210 # The default value is: NO.
+
2211 # This tag requires that the tag HAVE_DOT is set to YES.
+
2212 
+
2213 TEMPLATE_RELATIONS = NO
+
2214 
+
2215 # If the INCLUDE_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are set to
+
2216 # YES then doxygen will generate a graph for each documented file showing the
+
2217 # direct and indirect include dependencies of the file with other documented
+
2218 # files.
+
2219 # The default value is: YES.
+
2220 # This tag requires that the tag HAVE_DOT is set to YES.
+
2221 
+
2222 INCLUDE_GRAPH = YES
+
2223 
+
2224 # If the INCLUDED_BY_GRAPH, ENABLE_PREPROCESSING and SEARCH_INCLUDES tags are
+
2225 # set to YES then doxygen will generate a graph for each documented file showing
+
2226 # the direct and indirect include dependencies of the file with other documented
+
2227 # files.
+
2228 # The default value is: YES.
+
2229 # This tag requires that the tag HAVE_DOT is set to YES.
+
2230 
+
2231 INCLUDED_BY_GRAPH = YES
+
2232 
+
2233 # If the CALL_GRAPH tag is set to YES then doxygen will generate a call
+
2234 # dependency graph for every global function or class method.
+
2235 #
+
2236 # Note that enabling this option will significantly increase the time of a run.
+
2237 # So in most cases it will be better to enable call graphs for selected
+
2238 # functions only using the \callgraph command. Disabling a call graph can be
+
2239 # accomplished by means of the command \hidecallgraph.
+
2240 # The default value is: NO.
+
2241 # This tag requires that the tag HAVE_DOT is set to YES.
+
2242 
+
2243 CALL_GRAPH = YES
+
2244 
+
2245 # If the CALLER_GRAPH tag is set to YES then doxygen will generate a caller
+
2246 # dependency graph for every global function or class method.
+
2247 #
+
2248 # Note that enabling this option will significantly increase the time of a run.
+
2249 # So in most cases it will be better to enable caller graphs for selected
+
2250 # functions only using the \callergraph command. Disabling a caller graph can be
+
2251 # accomplished by means of the command \hidecallergraph.
+
2252 # The default value is: NO.
+
2253 # This tag requires that the tag HAVE_DOT is set to YES.
+
2254 
+
2255 CALLER_GRAPH = YES
+
2256 
+
2257 # If the GRAPHICAL_HIERARCHY tag is set to YES then doxygen will graphical
+
2258 # hierarchy of all classes instead of a textual one.
+
2259 # The default value is: YES.
+
2260 # This tag requires that the tag HAVE_DOT is set to YES.
+
2261 
+
2262 GRAPHICAL_HIERARCHY = YES
+
2263 
+
2264 # If the DIRECTORY_GRAPH tag is set to YES then doxygen will show the
+
2265 # dependencies a directory has on other directories in a graphical way. The
+
2266 # dependency relations are determined by the #include relations between the
+
2267 # files in the directories.
+
2268 # The default value is: YES.
+
2269 # This tag requires that the tag HAVE_DOT is set to YES.
+
2270 
+
2271 DIRECTORY_GRAPH = YES
+
2272 
+
2273 # The DOT_IMAGE_FORMAT tag can be used to set the image format of the images
+
2274 # generated by dot. For an explanation of the image formats see the section
+
2275 # output formats in the documentation of the dot tool (Graphviz (see:
+
2276 # http://www.graphviz.org/)).
+
2277 # Note: If you choose svg you need to set HTML_FILE_EXTENSION to xhtml in order
+
2278 # to make the SVG files visible in IE 9+ (other browsers do not have this
+
2279 # requirement).
+
2280 # Possible values are: png, jpg, gif, svg, png:gd, png:gd:gd, png:cairo,
+
2281 # png:cairo:gd, png:cairo:cairo, png:cairo:gdiplus, png:gdiplus and
+
2282 # png:gdiplus:gdiplus.
+
2283 # The default value is: png.
+
2284 # This tag requires that the tag HAVE_DOT is set to YES.
+
2285 
+
2286 DOT_IMAGE_FORMAT = png
+
2287 
+
2288 # If DOT_IMAGE_FORMAT is set to svg, then this option can be set to YES to
+
2289 # enable generation of interactive SVG images that allow zooming and panning.
+
2290 #
+
2291 # Note that this requires a modern browser other than Internet Explorer. Tested
+
2292 # and working are Firefox, Chrome, Safari, and Opera.
+
2293 # Note: For IE 9+ you need to set HTML_FILE_EXTENSION to xhtml in order to make
+
2294 # the SVG files visible. Older versions of IE do not have SVG support.
+
2295 # The default value is: NO.
+
2296 # This tag requires that the tag HAVE_DOT is set to YES.
+
2297 
+
2298 INTERACTIVE_SVG = NO
+
2299 
+
2300 # The DOT_PATH tag can be used to specify the path where the dot tool can be
+
2301 # found. If left blank, it is assumed the dot tool can be found in the path.
+
2302 # This tag requires that the tag HAVE_DOT is set to YES.
+
2303 
+
2304 DOT_PATH =
+
2305 
+
2306 # The DOTFILE_DIRS tag can be used to specify one or more directories that
+
2307 # contain dot files that are included in the documentation (see the \dotfile
+
2308 # command).
+
2309 # This tag requires that the tag HAVE_DOT is set to YES.
+
2310 
+
2311 DOTFILE_DIRS =
+
2312 
+
2313 # The MSCFILE_DIRS tag can be used to specify one or more directories that
+
2314 # contain msc files that are included in the documentation (see the \mscfile
+
2315 # command).
+
2316 
+
2317 MSCFILE_DIRS =
+
2318 
+
2319 # The DIAFILE_DIRS tag can be used to specify one or more directories that
+
2320 # contain dia files that are included in the documentation (see the \diafile
+
2321 # command).
+
2322 
+
2323 DIAFILE_DIRS =
+
2324 
+
2325 # When using plantuml, the PLANTUML_JAR_PATH tag should be used to specify the
+
2326 # path where java can find the plantuml.jar file. If left blank, it is assumed
+
2327 # PlantUML is not used or called during a preprocessing step. Doxygen will
+
2328 # generate a warning when it encounters a \startuml command in this case and
+
2329 # will not generate output for the diagram.
+
2330 
+
2331 PLANTUML_JAR_PATH =
+
2332 
+
2333 # When using plantuml, the specified paths are searched for files specified by
+
2334 # the !include statement in a plantuml block.
+
2335 
+
2336 PLANTUML_INCLUDE_PATH =
+
2337 
+
2338 # The DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of nodes
+
2339 # that will be shown in the graph. If the number of nodes in a graph becomes
+
2340 # larger than this value, doxygen will truncate the graph, which is visualized
+
2341 # by representing a node as a red box. Note that doxygen if the number of direct
+
2342 # children of the root node in a graph is already larger than
+
2343 # DOT_GRAPH_MAX_NODES then the graph will not be shown at all. Also note that
+
2344 # the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
+
2345 # Minimum value: 0, maximum value: 10000, default value: 50.
+
2346 # This tag requires that the tag HAVE_DOT is set to YES.
+
2347 
+
2348 DOT_GRAPH_MAX_NODES = 50
+
2349 
+
2350 # The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the graphs
+
2351 # generated by dot. A depth value of 3 means that only nodes reachable from the
+
2352 # root by following a path via at most 3 edges will be shown. Nodes that lay
+
2353 # further from the root node will be omitted. Note that setting this option to 1
+
2354 # or 2 may greatly reduce the computation time needed for large code bases. Also
+
2355 # note that the size of a graph can be further restricted by
+
2356 # DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
+
2357 # Minimum value: 0, maximum value: 1000, default value: 0.
+
2358 # This tag requires that the tag HAVE_DOT is set to YES.
+
2359 
+
2360 MAX_DOT_GRAPH_DEPTH = 1000
+
2361 
+
2362 # Set the DOT_TRANSPARENT tag to YES to generate images with a transparent
+
2363 # background. This is disabled by default, because dot on Windows does not seem
+
2364 # to support this out of the box.
+
2365 #
+
2366 # Warning: Depending on the platform used, enabling this option may lead to
+
2367 # badly anti-aliased labels on the edges of a graph (i.e. they become hard to
+
2368 # read).
+
2369 # The default value is: NO.
+
2370 # This tag requires that the tag HAVE_DOT is set to YES.
+
2371 
+
2372 DOT_TRANSPARENT = NO
+
2373 
+
2374 # Set the DOT_MULTI_TARGETS tag to YES to allow dot to generate multiple output
+
2375 # files in one run (i.e. multiple -o and -T options on the command line). This
+
2376 # makes dot run faster, but since only newer versions of dot (>1.8.10) support
+
2377 # this, this feature is disabled by default.
+
2378 # The default value is: NO.
+
2379 # This tag requires that the tag HAVE_DOT is set to YES.
+
2380 
+
2381 DOT_MULTI_TARGETS = NO
+
2382 
+
2383 # If the GENERATE_LEGEND tag is set to YES doxygen will generate a legend page
+
2384 # explaining the meaning of the various boxes and arrows in the dot generated
+
2385 # graphs.
+
2386 # The default value is: YES.
+
2387 # This tag requires that the tag HAVE_DOT is set to YES.
+
2388 
+
2389 GENERATE_LEGEND = YES
+
2390 
+
2391 # If the DOT_CLEANUP tag is set to YES, doxygen will remove the intermediate dot
+
2392 # files that are used to generate the various graphs.
+
2393 # The default value is: YES.
+
2394 # This tag requires that the tag HAVE_DOT is set to YES.
+
2395 
+
2396 DOT_CLEANUP = YES
+
Definition: _noise.hpp:11
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00051.html b/third_party/glm_test/doc/api/a00051.html new file mode 100644 index 0000000000000..5dc17c1244ce1 --- /dev/null +++ b/third_party/glm_test/doc/api/a00051.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: mat2x2.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mat2x2.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file mat2x2.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00051_source.html b/third_party/glm_test/doc/api/a00051_source.html new file mode 100644 index 0000000000000..8147043a3a192 --- /dev/null +++ b/third_party/glm_test/doc/api/a00051_source.html @@ -0,0 +1,88 @@ + + + + + + +0.9.8: mat2x2.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mat2x2.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "detail/type_mat2x2.hpp"
+
7 
+
8 namespace glm
+
9 {
+
15  typedef tmat2x2<float, lowp> lowp_mat2;
+
16 
+
22  typedef tmat2x2<float, mediump> mediump_mat2;
+
23 
+
29  typedef tmat2x2<float, highp> highp_mat2;
+
30 
+
36  typedef tmat2x2<float, lowp> lowp_mat2x2;
+
37 
+
43  typedef tmat2x2<float, mediump> mediump_mat2x2;
+
44 
+
50  typedef tmat2x2<float, highp> highp_mat2x2;
+
51 
+
52 }//namespace glm
+
tmat2x2< float, mediump > mediump_mat2
2 columns of 2 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:46
+ +
tmat2x2< float, lowp > lowp_mat2
2 columns of 2 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:39
+
Definition: _noise.hpp:11
+
tmat2x2< float, highp > highp_mat2x2
2 columns of 2 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:74
+
tmat2x2< float, mediump > mediump_mat2x2
2 columns of 2 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:67
+
tmat2x2< float, lowp > lowp_mat2x2
2 columns of 2 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:60
+
tmat2x2< float, highp > highp_mat2
2 columns of 2 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:53
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00052.html b/third_party/glm_test/doc/api/a00052.html new file mode 100644 index 0000000000000..b2bd9f51f52ff --- /dev/null +++ b/third_party/glm_test/doc/api/a00052.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: mat2x3.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mat2x3.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file mat2x3.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00052_source.html b/third_party/glm_test/doc/api/a00052_source.html new file mode 100644 index 0000000000000..bfc7dcd29c48f --- /dev/null +++ b/third_party/glm_test/doc/api/a00052_source.html @@ -0,0 +1,80 @@ + + + + + + +0.9.8: mat2x3.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mat2x3.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "detail/type_mat2x3.hpp"
+
7 
+
8 namespace glm
+
9 {
+
15  typedef tmat2x3<float, lowp> lowp_mat2x3;
+
16 
+
22  typedef tmat2x3<float, mediump> mediump_mat2x3;
+
23 
+
29  typedef tmat2x3<float, highp> highp_mat2x3;
+
30 
+
31 }//namespace glm
+
32 
+
Definition: _noise.hpp:11
+
tmat2x3< float, lowp > lowp_mat2x3
2 columns of 3 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:86
+
tmat2x3< float, mediump > mediump_mat2x3
2 columns of 3 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:93
+ +
tmat2x3< float, highp > highp_mat2x3
2 columns of 3 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:100
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00053.html b/third_party/glm_test/doc/api/a00053.html new file mode 100644 index 0000000000000..53bcc06831586 --- /dev/null +++ b/third_party/glm_test/doc/api/a00053.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: mat2x4.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mat2x4.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file mat2x4.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00053_source.html b/third_party/glm_test/doc/api/a00053_source.html new file mode 100644 index 0000000000000..8eef9f51c1644 --- /dev/null +++ b/third_party/glm_test/doc/api/a00053_source.html @@ -0,0 +1,79 @@ + + + + + + +0.9.8: mat2x4.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mat2x4.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "detail/type_mat2x4.hpp"
+
7 
+
8 namespace glm
+
9 {
+
15  typedef tmat2x4<float, lowp> lowp_mat2x4;
+
16 
+
22  typedef tmat2x4<float, mediump> mediump_mat2x4;
+
23 
+
29  typedef tmat2x4<float, highp> highp_mat2x4;
+
30 
+
31 }//namespace glm
+
Definition: _noise.hpp:11
+
tmat2x4< float, lowp > lowp_mat2x4
2 columns of 4 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:112
+ +
tmat2x4< float, highp > highp_mat2x4
2 columns of 4 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:126
+
tmat2x4< float, mediump > mediump_mat2x4
2 columns of 4 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:119
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00054.html b/third_party/glm_test/doc/api/a00054.html new file mode 100644 index 0000000000000..0777a27809e74 --- /dev/null +++ b/third_party/glm_test/doc/api/a00054.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: mat3x2.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mat3x2.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file mat3x2.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00054_source.html b/third_party/glm_test/doc/api/a00054_source.html new file mode 100644 index 0000000000000..e56e553161b7c --- /dev/null +++ b/third_party/glm_test/doc/api/a00054_source.html @@ -0,0 +1,79 @@ + + + + + + +0.9.8: mat3x2.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mat3x2.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "detail/type_mat3x2.hpp"
+
7 
+
8 namespace glm
+
9 {
+
15  typedef tmat3x2<float, lowp> lowp_mat3x2;
+
16 
+
22  typedef tmat3x2<float, mediump> mediump_mat3x2;
+
23 
+
29  typedef tmat3x2<float, highp> highp_mat3x2;
+
30 
+
31 }//namespace
+ +
Definition: _noise.hpp:11
+
tmat3x2< float, mediump > mediump_mat3x2
3 columns of 2 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:145
+
tmat3x2< float, highp > highp_mat3x2
3 columns of 2 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:152
+
tmat3x2< float, lowp > lowp_mat3x2
3 columns of 2 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:138
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00055.html b/third_party/glm_test/doc/api/a00055.html new file mode 100644 index 0000000000000..8df165f94de6f --- /dev/null +++ b/third_party/glm_test/doc/api/a00055.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: mat3x3.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mat3x3.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file mat3x3.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00055_source.html b/third_party/glm_test/doc/api/a00055_source.html new file mode 100644 index 0000000000000..ef15c8b601abe --- /dev/null +++ b/third_party/glm_test/doc/api/a00055_source.html @@ -0,0 +1,88 @@ + + + + + + +0.9.8: mat3x3.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mat3x3.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "detail/type_mat3x3.hpp"
+
7 
+
8 namespace glm
+
9 {
+
15  typedef tmat3x3<float, lowp> lowp_mat3;
+
16 
+
22  typedef tmat3x3<float, mediump> mediump_mat3;
+
23 
+
29  typedef tmat3x3<float, highp> highp_mat3;
+
30 
+
36  typedef tmat3x3<float, lowp> lowp_mat3x3;
+
37 
+
43  typedef tmat3x3<float, mediump> mediump_mat3x3;
+
44 
+
50  typedef tmat3x3<float, highp> highp_mat3x3;
+
51 
+
52 }//namespace glm
+
tmat3x3< float, lowp > lowp_mat3x3
3 columns of 3 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:185
+
tmat3x3< float, highp > highp_mat3
3 columns of 3 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:178
+
Definition: _noise.hpp:11
+
tmat3x3< float, mediump > mediump_mat3
3 columns of 3 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:171
+
tmat3x3< float, highp > highp_mat3x3
3 columns of 3 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:199
+
tmat3x3< float, mediump > mediump_mat3x3
3 columns of 3 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:192
+
tmat3x3< float, lowp > lowp_mat3
3 columns of 3 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:164
+ +
+ + + + diff --git a/third_party/glm_test/doc/api/a00056.html b/third_party/glm_test/doc/api/a00056.html new file mode 100644 index 0000000000000..f3b8cd107ac4c --- /dev/null +++ b/third_party/glm_test/doc/api/a00056.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: mat3x4.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mat3x4.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file mat3x4.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00056_source.html b/third_party/glm_test/doc/api/a00056_source.html new file mode 100644 index 0000000000000..468f2473d5e88 --- /dev/null +++ b/third_party/glm_test/doc/api/a00056_source.html @@ -0,0 +1,79 @@ + + + + + + +0.9.8: mat3x4.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mat3x4.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "detail/type_mat3x4.hpp"
+
7 
+
8 namespace glm
+
9 {
+
15  typedef tmat3x4<float, lowp> lowp_mat3x4;
+
16 
+
22  typedef tmat3x4<float, mediump> mediump_mat3x4;
+
23 
+
29  typedef tmat3x4<float, highp> highp_mat3x4;
+
30 
+
31 }//namespace glm
+
tmat3x4< float, highp > highp_mat3x4
3 columns of 4 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:225
+
Definition: _noise.hpp:11
+
tmat3x4< float, lowp > lowp_mat3x4
3 columns of 4 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:211
+
tmat3x4< float, mediump > mediump_mat3x4
3 columns of 4 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:218
+ +
+ + + + diff --git a/third_party/glm_test/doc/api/a00057.html b/third_party/glm_test/doc/api/a00057.html new file mode 100644 index 0000000000000..dd2a847d232f4 --- /dev/null +++ b/third_party/glm_test/doc/api/a00057.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: mat4x2.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mat4x2.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file mat4x2.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00057_source.html b/third_party/glm_test/doc/api/a00057_source.html new file mode 100644 index 0000000000000..937bd88c4136a --- /dev/null +++ b/third_party/glm_test/doc/api/a00057_source.html @@ -0,0 +1,79 @@ + + + + + + +0.9.8: mat4x2.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mat4x2.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "detail/type_mat4x2.hpp"
+
7 
+
8 namespace glm
+
9 {
+
15  typedef tmat4x2<float, lowp> lowp_mat4x2;
+
16 
+
22  typedef tmat4x2<float, mediump> mediump_mat4x2;
+
23 
+
29  typedef tmat4x2<float, highp> highp_mat4x2;
+
30 
+
31 }//namespace glm
+
tmat4x2< float, lowp > lowp_mat4x2
4 columns of 2 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:237
+
tmat4x2< float, highp > highp_mat4x2
4 columns of 2 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:251
+ +
tmat4x2< float, mediump > mediump_mat4x2
4 columns of 2 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:244
+
Definition: _noise.hpp:11
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00058_source.html b/third_party/glm_test/doc/api/a00058_source.html new file mode 100644 index 0000000000000..5e355e6920020 --- /dev/null +++ b/third_party/glm_test/doc/api/a00058_source.html @@ -0,0 +1,79 @@ + + + + + + +0.9.8: mat4x3.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mat4x3.hpp
+
+
+
1 
+
4 #pragma once
+
5 
+
6 #include "detail/type_mat4x3.hpp"
+
7 
+
8 namespace glm
+
9 {
+
15  typedef tmat4x3<float, lowp> lowp_mat4x3;
+
16 
+
22  typedef tmat4x3<float, mediump> mediump_mat4x3;
+
23 
+
29  typedef tmat4x3<float, highp> highp_mat4x3;
+
30 
+
31 }//namespace glm
+
tmat4x3< float, highp > highp_mat4x3
4 columns of 3 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:277
+ +
tmat4x3< float, mediump > mediump_mat4x3
4 columns of 3 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:270
+
Definition: _noise.hpp:11
+
tmat4x3< float, lowp > lowp_mat4x3
4 columns of 3 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:263
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00059.html b/third_party/glm_test/doc/api/a00059.html new file mode 100644 index 0000000000000..16837dabf9a2d --- /dev/null +++ b/third_party/glm_test/doc/api/a00059.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: mat4x4.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mat4x4.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file mat4x4.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00059_source.html b/third_party/glm_test/doc/api/a00059_source.html new file mode 100644 index 0000000000000..aa441e57cf6a4 --- /dev/null +++ b/third_party/glm_test/doc/api/a00059_source.html @@ -0,0 +1,88 @@ + + + + + + +0.9.8: mat4x4.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mat4x4.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "detail/type_mat4x4.hpp"
+
7 
+
8 namespace glm
+
9 {
+
15  typedef tmat4x4<float, lowp> lowp_mat4;
+
16 
+
22  typedef tmat4x4<float, mediump> mediump_mat4;
+
23 
+
29  typedef tmat4x4<float, highp> highp_mat4;
+
30 
+
36  typedef tmat4x4<float, lowp> lowp_mat4x4;
+
37 
+
43  typedef tmat4x4<float, mediump> mediump_mat4x4;
+
44 
+
50  typedef tmat4x4<float, highp> highp_mat4x4;
+
51 
+
52 }//namespace glm
+
tmat4x4< float, mediump > mediump_mat4x4
4 columns of 4 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:318
+
tmat4x4< float, lowp > lowp_mat4x4
4 columns of 4 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:311
+ +
tmat4x4< float, highp > highp_mat4
4 columns of 4 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:304
+
Definition: _noise.hpp:11
+
tmat4x4< float, lowp > lowp_mat4
4 columns of 4 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:290
+
tmat4x4< float, highp > highp_mat4x4
4 columns of 4 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:325
+
tmat4x4< float, mediump > mediump_mat4
4 columns of 4 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:297
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00060.html b/third_party/glm_test/doc/api/a00060.html new file mode 100644 index 0000000000000..f0f7c58dc073f --- /dev/null +++ b/third_party/glm_test/doc/api/a00060.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: matrix.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
matrix.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file matrix.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00060_source.html b/third_party/glm_test/doc/api/a00060_source.html new file mode 100644 index 0000000000000..b2112bc04f673 --- /dev/null +++ b/third_party/glm_test/doc/api/a00060_source.html @@ -0,0 +1,65 @@ + + + + + + +0.9.8: matrix.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
matrix.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "detail/func_matrix.hpp"
+ +
+ + + + diff --git a/third_party/glm_test/doc/api/a00061.html b/third_party/glm_test/doc/api/a00061.html new file mode 100644 index 0000000000000..bba35e9eb1c25 --- /dev/null +++ b/third_party/glm_test/doc/api/a00061.html @@ -0,0 +1,85 @@ + + + + + + +0.9.8: matrix_access.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
matrix_access.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType::col_type column (genType const &m, length_t index)
 
template<typename genType >
GLM_FUNC_DECL genType column (genType const &m, length_t index, typename genType::col_type const &x)
 
template<typename genType >
GLM_FUNC_DECL genType::row_type row (genType const &m, length_t index)
 
template<typename genType >
GLM_FUNC_DECL genType row (genType const &m, length_t index, typename genType::row_type const &x)
 
+

Detailed Description

+

GLM_GTC_matrix_access

+
See also
GLM Core (dependence)
+ +

Definition in file matrix_access.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00061_source.html b/third_party/glm_test/doc/api/a00061_source.html new file mode 100644 index 0000000000000..251cdea98eb42 --- /dev/null +++ b/third_party/glm_test/doc/api/a00061_source.html @@ -0,0 +1,101 @@ + + + + + + +0.9.8: matrix_access.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
matrix_access.hpp
+
+
+Go to the documentation of this file.
1 
+
12 #pragma once
+
13 
+
14 // Dependency:
+
15 #include "../detail/setup.hpp"
+
16 
+
17 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
18 # pragma message("GLM: GLM_GTC_matrix_access extension included")
+
19 #endif
+
20 
+
21 namespace glm
+
22 {
+
25 
+
28  template <typename genType>
+
29  GLM_FUNC_DECL typename genType::row_type row(
+
30  genType const & m,
+
31  length_t index);
+
32 
+
35  template <typename genType>
+
36  GLM_FUNC_DECL genType row(
+
37  genType const & m,
+
38  length_t index,
+
39  typename genType::row_type const & x);
+
40 
+
43  template <typename genType>
+
44  GLM_FUNC_DECL typename genType::col_type column(
+
45  genType const & m,
+
46  length_t index);
+
47 
+
50  template <typename genType>
+
51  GLM_FUNC_DECL genType column(
+
52  genType const & m,
+
53  length_t index,
+
54  typename genType::col_type const & x);
+
55 
+
57 }//namespace glm
+
58 
+
59 #include "matrix_access.inl"
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL genType row(genType const &m, length_t index, typename genType::row_type const &x)
Set a specific row to a matrix.
+
GLM_FUNC_DECL genType column(genType const &m, length_t index, typename genType::col_type const &x)
Set a specific column to a matrix.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00062.html b/third_party/glm_test/doc/api/a00062.html new file mode 100644 index 0000000000000..4cefc7680166f --- /dev/null +++ b/third_party/glm_test/doc/api/a00062.html @@ -0,0 +1,81 @@ + + + + + + +0.9.8: matrix_cross_product.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
matrix_cross_product.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > matrixCross3 (tvec3< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > matrixCross4 (tvec3< T, P > const &x)
 
+

Detailed Description

+

GLM_GTX_matrix_cross_product

+
See also
GLM Core (dependence)
+
+GLM_GTX_extented_min_max (dependence)
+ +

Definition in file matrix_cross_product.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00062_source.html b/third_party/glm_test/doc/api/a00062_source.html new file mode 100644 index 0000000000000..8585573f02b4b --- /dev/null +++ b/third_party/glm_test/doc/api/a00062_source.html @@ -0,0 +1,87 @@ + + + + + + +0.9.8: matrix_cross_product.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
matrix_cross_product.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "../glm.hpp"
+
18 
+
19 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
20 # pragma message("GLM: GLM_GTX_matrix_cross_product extension included")
+
21 #endif
+
22 
+
23 namespace glm
+
24 {
+
27 
+
30  template <typename T, precision P>
+
31  GLM_FUNC_DECL tmat3x3<T, P> matrixCross3(
+
32  tvec3<T, P> const & x);
+
33 
+
36  template <typename T, precision P>
+
37  GLM_FUNC_DECL tmat4x4<T, P> matrixCross4(
+
38  tvec3<T, P> const & x);
+
39 
+
41 }//namespace glm
+
42 
+
43 #include "matrix_cross_product.inl"
+
GLM_FUNC_DECL tmat4x4< T, P > matrixCross4(tvec3< T, P > const &x)
Build a cross product matrix.
+
GLM_FUNC_DECL tmat3x3< T, P > matrixCross3(tvec3< T, P > const &x)
Build a cross product matrix.
+
Definition: _noise.hpp:11
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00063.html b/third_party/glm_test/doc/api/a00063.html new file mode 100644 index 0000000000000..e462dc938f7fc --- /dev/null +++ b/third_party/glm_test/doc/api/a00063.html @@ -0,0 +1,76 @@ + + + + + + +0.9.8: matrix_decompose.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
matrix_decompose.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL bool decompose (tmat4x4< T, P > const &modelMatrix, tvec3< T, P > &scale, tquat< T, P > &orientation, tvec3< T, P > &translation, tvec3< T, P > &skew, tvec4< T, P > &perspective)
 
+

Detailed Description

+

GLM_GTX_matrix_decompose

+
See also
GLM Core (dependence)
+ +

Definition in file matrix_decompose.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00063_source.html b/third_party/glm_test/doc/api/a00063_source.html new file mode 100644 index 0000000000000..2881a5200362c --- /dev/null +++ b/third_party/glm_test/doc/api/a00063_source.html @@ -0,0 +1,91 @@ + + + + + + +0.9.8: matrix_decompose.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
matrix_decompose.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependencies
+
16 #include "../mat4x4.hpp"
+
17 #include "../vec3.hpp"
+
18 #include "../vec4.hpp"
+
19 #include "../geometric.hpp"
+
20 #include "../gtc/quaternion.hpp"
+
21 #include "../gtc/matrix_transform.hpp"
+
22 
+
23 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
24 # pragma message("GLM: GLM_GTX_matrix_decompose extension included")
+
25 #endif
+
26 
+
27 namespace glm
+
28 {
+
31 
+
34  template <typename T, precision P>
+
35  GLM_FUNC_DECL bool decompose(
+
36  tmat4x4<T, P> const & modelMatrix,
+
37  tvec3<T, P> & scale, tquat<T, P> & orientation, tvec3<T, P> & translation, tvec3<T, P> & skew, tvec4<T, P> & perspective);
+
38 
+
40 }//namespace glm
+
41 
+
42 #include "matrix_decompose.inl"
+
GLM_FUNC_DECL tmat4x4< T, P > orientation(tvec3< T, P > const &Normal, tvec3< T, P > const &Up)
Build a rotation matrix from a normal and a up vector.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tmat4x4< T, P > scale(tmat4x4< T, P > const &m, tvec3< T, P > const &v)
Builds a scale 4 * 4 matrix created from 3 scalars.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > perspective(T fovy, T aspect, T near, T far)
Creates a matrix for a symetric perspective-view frustum based on the default handedness.
+
GLM_FUNC_DECL bool decompose(tmat4x4< T, P > const &modelMatrix, tvec3< T, P > &scale, tquat< T, P > &orientation, tvec3< T, P > &translation, tvec3< T, P > &skew, tvec4< T, P > &perspective)
Decomposes a model matrix to translations, rotation and scale components.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00064.html b/third_party/glm_test/doc/api/a00064.html new file mode 100644 index 0000000000000..5a85643975735 --- /dev/null +++ b/third_party/glm_test/doc/api/a00064.html @@ -0,0 +1,265 @@ + + + + + + +0.9.8: matrix_integer.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
matrix_integer.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef tmat2x2< int, highp > highp_imat2
 
typedef tmat2x2< int, highp > highp_imat2x2
 
typedef tmat2x3< int, highp > highp_imat2x3
 
typedef tmat2x4< int, highp > highp_imat2x4
 
typedef tmat3x3< int, highp > highp_imat3
 
typedef tmat3x2< int, highp > highp_imat3x2
 
typedef tmat3x3< int, highp > highp_imat3x3
 
typedef tmat3x4< int, highp > highp_imat3x4
 
typedef tmat4x4< int, highp > highp_imat4
 
typedef tmat4x2< int, highp > highp_imat4x2
 
typedef tmat4x3< int, highp > highp_imat4x3
 
typedef tmat4x4< int, highp > highp_imat4x4
 
typedef tmat2x2< uint, highp > highp_umat2
 
typedef tmat2x2< uint, highp > highp_umat2x2
 
typedef tmat2x3< uint, highp > highp_umat2x3
 
typedef tmat2x4< uint, highp > highp_umat2x4
 
typedef tmat3x3< uint, highp > highp_umat3
 
typedef tmat3x2< uint, highp > highp_umat3x2
 
typedef tmat3x3< uint, highp > highp_umat3x3
 
typedef tmat3x4< uint, highp > highp_umat3x4
 
typedef tmat4x4< uint, highp > highp_umat4
 
typedef tmat4x2< uint, highp > highp_umat4x2
 
typedef tmat4x3< uint, highp > highp_umat4x3
 
typedef tmat4x4< uint, highp > highp_umat4x4
 
typedef mediump_imat2 imat2
 
typedef mediump_imat2x2 imat2x2
 
typedef mediump_imat2x3 imat2x3
 
typedef mediump_imat2x4 imat2x4
 
typedef mediump_imat3 imat3
 
typedef mediump_imat3x2 imat3x2
 
typedef mediump_imat3x3 imat3x3
 
typedef mediump_imat3x4 imat3x4
 
typedef mediump_imat4 imat4
 
typedef mediump_imat4x2 imat4x2
 
typedef mediump_imat4x3 imat4x3
 
typedef mediump_imat4x4 imat4x4
 
typedef tmat2x2< int, lowp > lowp_imat2
 
typedef tmat2x2< int, lowp > lowp_imat2x2
 
typedef tmat2x3< int, lowp > lowp_imat2x3
 
typedef tmat2x4< int, lowp > lowp_imat2x4
 
typedef tmat3x3< int, lowp > lowp_imat3
 
typedef tmat3x2< int, lowp > lowp_imat3x2
 
typedef tmat3x3< int, lowp > lowp_imat3x3
 
typedef tmat3x4< int, lowp > lowp_imat3x4
 
typedef tmat4x4< int, lowp > lowp_imat4
 
typedef tmat4x2< int, lowp > lowp_imat4x2
 
typedef tmat4x3< int, lowp > lowp_imat4x3
 
typedef tmat4x4< int, lowp > lowp_imat4x4
 
typedef tmat2x2< uint, lowp > lowp_umat2
 
typedef tmat2x2< uint, lowp > lowp_umat2x2
 
typedef tmat2x3< uint, lowp > lowp_umat2x3
 
typedef tmat2x4< uint, lowp > lowp_umat2x4
 
typedef tmat3x3< uint, lowp > lowp_umat3
 
typedef tmat3x2< uint, lowp > lowp_umat3x2
 
typedef tmat3x3< uint, lowp > lowp_umat3x3
 
typedef tmat3x4< uint, lowp > lowp_umat3x4
 
typedef tmat4x4< uint, lowp > lowp_umat4
 
typedef tmat4x2< uint, lowp > lowp_umat4x2
 
typedef tmat4x3< uint, lowp > lowp_umat4x3
 
typedef tmat4x4< uint, lowp > lowp_umat4x4
 
typedef tmat2x2< int, mediump > mediump_imat2
 
typedef tmat2x2< int, mediump > mediump_imat2x2
 
typedef tmat2x3< int, mediump > mediump_imat2x3
 
typedef tmat2x4< int, mediump > mediump_imat2x4
 
typedef tmat3x3< int, mediump > mediump_imat3
 
typedef tmat3x2< int, mediump > mediump_imat3x2
 
typedef tmat3x3< int, mediump > mediump_imat3x3
 
typedef tmat3x4< int, mediump > mediump_imat3x4
 
typedef tmat4x4< int, mediump > mediump_imat4
 
typedef tmat4x2< int, mediump > mediump_imat4x2
 
typedef tmat4x3< int, mediump > mediump_imat4x3
 
typedef tmat4x4< int, mediump > mediump_imat4x4
 
typedef tmat2x2< uint, mediump > mediump_umat2
 
typedef tmat2x2< uint, mediump > mediump_umat2x2
 
typedef tmat2x3< uint, mediump > mediump_umat2x3
 
typedef tmat2x4< uint, mediump > mediump_umat2x4
 
typedef tmat3x3< uint, mediump > mediump_umat3
 
typedef tmat3x2< uint, mediump > mediump_umat3x2
 
typedef tmat3x3< uint, mediump > mediump_umat3x3
 
typedef tmat3x4< uint, mediump > mediump_umat3x4
 
typedef tmat4x4< uint, mediump > mediump_umat4
 
typedef tmat4x2< uint, mediump > mediump_umat4x2
 
typedef tmat4x3< uint, mediump > mediump_umat4x3
 
typedef tmat4x4< uint, mediump > mediump_umat4x4
 
typedef mediump_umat2 umat2
 
typedef mediump_umat2x2 umat2x2
 
typedef mediump_umat2x3 umat2x3
 
typedef mediump_umat2x4 umat2x4
 
typedef mediump_umat3 umat3
 
typedef mediump_umat3x2 umat3x2
 
typedef mediump_umat3x3 umat3x3
 
typedef mediump_umat3x4 umat3x4
 
typedef mediump_umat4 umat4
 
typedef mediump_umat4x2 umat4x2
 
typedef mediump_umat4x3 umat4x3
 
typedef mediump_umat4x4 umat4x4
 
+

Detailed Description

+

GLM_GTC_matrix_integer

+
See also
GLM Core (dependence)
+ +

Definition in file matrix_integer.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00064_source.html b/third_party/glm_test/doc/api/a00064_source.html new file mode 100644 index 0000000000000..59a8291c74c27 --- /dev/null +++ b/third_party/glm_test/doc/api/a00064_source.html @@ -0,0 +1,438 @@ + + + + + + +0.9.8: matrix_integer.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
matrix_integer.hpp
+
+
+Go to the documentation of this file.
1 
+
12 #pragma once
+
13 
+
14 // Dependency:
+
15 #include "../mat2x2.hpp"
+
16 #include "../mat2x3.hpp"
+
17 #include "../mat2x4.hpp"
+
18 #include "../mat3x2.hpp"
+
19 #include "../mat3x3.hpp"
+
20 #include "../mat3x4.hpp"
+
21 #include "../mat4x2.hpp"
+
22 #include "../mat4x3.hpp"
+
23 #include "../mat4x4.hpp"
+
24 
+
25 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
26 # pragma message("GLM: GLM_GTC_matrix_integer extension included")
+
27 #endif
+
28 
+
29 namespace glm
+
30 {
+
33 
+
36  typedef tmat2x2<int, highp> highp_imat2;
+
37 
+
40  typedef tmat3x3<int, highp> highp_imat3;
+
41 
+
44  typedef tmat4x4<int, highp> highp_imat4;
+
45 
+
48  typedef tmat2x2<int, highp> highp_imat2x2;
+
49 
+
52  typedef tmat2x3<int, highp> highp_imat2x3;
+
53 
+
56  typedef tmat2x4<int, highp> highp_imat2x4;
+
57 
+
60  typedef tmat3x2<int, highp> highp_imat3x2;
+
61 
+
64  typedef tmat3x3<int, highp> highp_imat3x3;
+
65 
+
68  typedef tmat3x4<int, highp> highp_imat3x4;
+
69 
+
72  typedef tmat4x2<int, highp> highp_imat4x2;
+
73 
+
76  typedef tmat4x3<int, highp> highp_imat4x3;
+
77 
+
80  typedef tmat4x4<int, highp> highp_imat4x4;
+
81 
+
82 
+
85  typedef tmat2x2<int, mediump> mediump_imat2;
+
86 
+
89  typedef tmat3x3<int, mediump> mediump_imat3;
+
90 
+
93  typedef tmat4x4<int, mediump> mediump_imat4;
+
94 
+
95 
+
98  typedef tmat2x2<int, mediump> mediump_imat2x2;
+
99 
+
102  typedef tmat2x3<int, mediump> mediump_imat2x3;
+
103 
+
106  typedef tmat2x4<int, mediump> mediump_imat2x4;
+
107 
+
110  typedef tmat3x2<int, mediump> mediump_imat3x2;
+
111 
+
114  typedef tmat3x3<int, mediump> mediump_imat3x3;
+
115 
+
118  typedef tmat3x4<int, mediump> mediump_imat3x4;
+
119 
+
122  typedef tmat4x2<int, mediump> mediump_imat4x2;
+
123 
+
126  typedef tmat4x3<int, mediump> mediump_imat4x3;
+
127 
+
130  typedef tmat4x4<int, mediump> mediump_imat4x4;
+
131 
+
132 
+
135  typedef tmat2x2<int, lowp> lowp_imat2;
+
136 
+
139  typedef tmat3x3<int, lowp> lowp_imat3;
+
140 
+
143  typedef tmat4x4<int, lowp> lowp_imat4;
+
144 
+
145 
+
148  typedef tmat2x2<int, lowp> lowp_imat2x2;
+
149 
+
152  typedef tmat2x3<int, lowp> lowp_imat2x3;
+
153 
+
156  typedef tmat2x4<int, lowp> lowp_imat2x4;
+
157 
+
160  typedef tmat3x2<int, lowp> lowp_imat3x2;
+
161 
+
164  typedef tmat3x3<int, lowp> lowp_imat3x3;
+
165 
+
168  typedef tmat3x4<int, lowp> lowp_imat3x4;
+
169 
+
172  typedef tmat4x2<int, lowp> lowp_imat4x2;
+
173 
+
176  typedef tmat4x3<int, lowp> lowp_imat4x3;
+
177 
+
180  typedef tmat4x4<int, lowp> lowp_imat4x4;
+
181 
+
182 
+
185  typedef tmat2x2<uint, highp> highp_umat2;
+
186 
+
189  typedef tmat3x3<uint, highp> highp_umat3;
+
190 
+
193  typedef tmat4x4<uint, highp> highp_umat4;
+
194 
+
197  typedef tmat2x2<uint, highp> highp_umat2x2;
+
198 
+
201  typedef tmat2x3<uint, highp> highp_umat2x3;
+
202 
+
205  typedef tmat2x4<uint, highp> highp_umat2x4;
+
206 
+
209  typedef tmat3x2<uint, highp> highp_umat3x2;
+
210 
+
213  typedef tmat3x3<uint, highp> highp_umat3x3;
+
214 
+
217  typedef tmat3x4<uint, highp> highp_umat3x4;
+
218 
+
221  typedef tmat4x2<uint, highp> highp_umat4x2;
+
222 
+
225  typedef tmat4x3<uint, highp> highp_umat4x3;
+
226 
+
229  typedef tmat4x4<uint, highp> highp_umat4x4;
+
230 
+
231 
+
234  typedef tmat2x2<uint, mediump> mediump_umat2;
+
235 
+
238  typedef tmat3x3<uint, mediump> mediump_umat3;
+
239 
+
242  typedef tmat4x4<uint, mediump> mediump_umat4;
+
243 
+
244 
+
247  typedef tmat2x2<uint, mediump> mediump_umat2x2;
+
248 
+
251  typedef tmat2x3<uint, mediump> mediump_umat2x3;
+
252 
+
255  typedef tmat2x4<uint, mediump> mediump_umat2x4;
+
256 
+
259  typedef tmat3x2<uint, mediump> mediump_umat3x2;
+
260 
+
263  typedef tmat3x3<uint, mediump> mediump_umat3x3;
+
264 
+
267  typedef tmat3x4<uint, mediump> mediump_umat3x4;
+
268 
+
271  typedef tmat4x2<uint, mediump> mediump_umat4x2;
+
272 
+
275  typedef tmat4x3<uint, mediump> mediump_umat4x3;
+
276 
+
279  typedef tmat4x4<uint, mediump> mediump_umat4x4;
+
280 
+
281 
+
284  typedef tmat2x2<uint, lowp> lowp_umat2;
+
285 
+
288  typedef tmat3x3<uint, lowp> lowp_umat3;
+
289 
+
292  typedef tmat4x4<uint, lowp> lowp_umat4;
+
293 
+
294 
+
297  typedef tmat2x2<uint, lowp> lowp_umat2x2;
+
298 
+
301  typedef tmat2x3<uint, lowp> lowp_umat2x3;
+
302 
+
305  typedef tmat2x4<uint, lowp> lowp_umat2x4;
+
306 
+
309  typedef tmat3x2<uint, lowp> lowp_umat3x2;
+
310 
+
313  typedef tmat3x3<uint, lowp> lowp_umat3x3;
+
314 
+
317  typedef tmat3x4<uint, lowp> lowp_umat3x4;
+
318 
+
321  typedef tmat4x2<uint, lowp> lowp_umat4x2;
+
322 
+
325  typedef tmat4x3<uint, lowp> lowp_umat4x3;
+
326 
+
329  typedef tmat4x4<uint, lowp> lowp_umat4x4;
+
330 
+
331 #if(defined(GLM_PRECISION_HIGHP_INT))
+
332  typedef highp_imat2 imat2;
+
333  typedef highp_imat3 imat3;
+
334  typedef highp_imat4 imat4;
+
335  typedef highp_imat2x2 imat2x2;
+
336  typedef highp_imat2x3 imat2x3;
+
337  typedef highp_imat2x4 imat2x4;
+
338  typedef highp_imat3x2 imat3x2;
+
339  typedef highp_imat3x3 imat3x3;
+
340  typedef highp_imat3x4 imat3x4;
+
341  typedef highp_imat4x2 imat4x2;
+
342  typedef highp_imat4x3 imat4x3;
+
343  typedef highp_imat4x4 imat4x4;
+
344 #elif(defined(GLM_PRECISION_LOWP_INT))
+
345  typedef lowp_imat2 imat2;
+
346  typedef lowp_imat3 imat3;
+
347  typedef lowp_imat4 imat4;
+
348  typedef lowp_imat2x2 imat2x2;
+
349  typedef lowp_imat2x3 imat2x3;
+
350  typedef lowp_imat2x4 imat2x4;
+
351  typedef lowp_imat3x2 imat3x2;
+
352  typedef lowp_imat3x3 imat3x3;
+
353  typedef lowp_imat3x4 imat3x4;
+
354  typedef lowp_imat4x2 imat4x2;
+
355  typedef lowp_imat4x3 imat4x3;
+
356  typedef lowp_imat4x4 imat4x4;
+
357 #else //if(defined(GLM_PRECISION_MEDIUMP_INT))
+
358 
+
361  typedef mediump_imat2 imat2;
+
362 
+
365  typedef mediump_imat3 imat3;
+
366 
+
369  typedef mediump_imat4 imat4;
+
370 
+
373  typedef mediump_imat2x2 imat2x2;
+
374 
+
377  typedef mediump_imat2x3 imat2x3;
+
378 
+
381  typedef mediump_imat2x4 imat2x4;
+
382 
+
385  typedef mediump_imat3x2 imat3x2;
+
386 
+
389  typedef mediump_imat3x3 imat3x3;
+
390 
+
393  typedef mediump_imat3x4 imat3x4;
+
394 
+
397  typedef mediump_imat4x2 imat4x2;
+
398 
+
401  typedef mediump_imat4x3 imat4x3;
+
402 
+
405  typedef mediump_imat4x4 imat4x4;
+
406 #endif//GLM_PRECISION
+
407 
+
408 #if(defined(GLM_PRECISION_HIGHP_UINT))
+
409  typedef highp_umat2 umat2;
+
410  typedef highp_umat3 umat3;
+
411  typedef highp_umat4 umat4;
+
412  typedef highp_umat2x2 umat2x2;
+
413  typedef highp_umat2x3 umat2x3;
+
414  typedef highp_umat2x4 umat2x4;
+
415  typedef highp_umat3x2 umat3x2;
+
416  typedef highp_umat3x3 umat3x3;
+
417  typedef highp_umat3x4 umat3x4;
+
418  typedef highp_umat4x2 umat4x2;
+
419  typedef highp_umat4x3 umat4x3;
+
420  typedef highp_umat4x4 umat4x4;
+
421 #elif(defined(GLM_PRECISION_LOWP_UINT))
+
422  typedef lowp_umat2 umat2;
+
423  typedef lowp_umat3 umat3;
+
424  typedef lowp_umat4 umat4;
+
425  typedef lowp_umat2x2 umat2x2;
+
426  typedef lowp_umat2x3 umat2x3;
+
427  typedef lowp_umat2x4 umat2x4;
+
428  typedef lowp_umat3x2 umat3x2;
+
429  typedef lowp_umat3x3 umat3x3;
+
430  typedef lowp_umat3x4 umat3x4;
+
431  typedef lowp_umat4x2 umat4x2;
+
432  typedef lowp_umat4x3 umat4x3;
+
433  typedef lowp_umat4x4 umat4x4;
+
434 #else //if(defined(GLM_PRECISION_MEDIUMP_UINT))
+
435 
+
438  typedef mediump_umat2 umat2;
+
439 
+
442  typedef mediump_umat3 umat3;
+
443 
+
446  typedef mediump_umat4 umat4;
+
447 
+
450  typedef mediump_umat2x2 umat2x2;
+
451 
+
454  typedef mediump_umat2x3 umat2x3;
+
455 
+
458  typedef mediump_umat2x4 umat2x4;
+
459 
+
462  typedef mediump_umat3x2 umat3x2;
+
463 
+
466  typedef mediump_umat3x3 umat3x3;
+
467 
+
470  typedef mediump_umat3x4 umat3x4;
+
471 
+
474  typedef mediump_umat4x2 umat4x2;
+
475 
+
478  typedef mediump_umat4x3 umat4x3;
+
479 
+
482  typedef mediump_umat4x4 umat4x4;
+
483 #endif//GLM_PRECISION
+
484 
+
486 }//namespace glm
+
mediump_imat4x3 imat4x3
Signed integer 4x3 matrix.
+
tmat3x3< int, lowp > lowp_imat3
Low-precision signed integer 3x3 matrix.
+
tmat2x2< int, mediump > mediump_imat2x2
Medium-precision signed integer 2x2 matrix.
+
tmat3x4< int, mediump > mediump_imat3x4
Medium-precision signed integer 3x4 matrix.
+
tmat3x2< int, highp > highp_imat3x2
High-precision signed integer 3x2 matrix.
+
tmat4x2< uint, lowp > lowp_umat4x2
Low-precision unsigned integer 4x2 matrix.
+
tmat3x2< uint, mediump > mediump_umat3x2
Medium-precision unsigned integer 3x2 matrix.
+
tmat3x3< int, mediump > mediump_imat3x3
Medium-precision signed integer 3x3 matrix.
+
mediump_imat2x3 imat2x3
Signed integer 2x3 matrix.
+
mediump_umat4x2 umat4x2
Unsigned integer 4x2 matrix.
+
tmat3x3< int, highp > highp_imat3
High-precision signed integer 3x3 matrix.
+
tmat4x2< int, highp > highp_imat4x2
High-precision signed integer 4x2 matrix.
+
tmat4x4< int, highp > highp_imat4x4
High-precision signed integer 4x4 matrix.
+
tmat3x2< int, lowp > lowp_imat3x2
Low-precision signed integer 3x2 matrix.
+
tmat3x2< int, mediump > mediump_imat3x2
Medium-precision signed integer 3x2 matrix.
+
mediump_umat2 umat2
Unsigned integer 2x2 matrix.
+
tmat2x4< int, mediump > mediump_imat2x4
Medium-precision signed integer 2x4 matrix.
+
mediump_imat2x2 imat2x2
Signed integer 2x2 matrix.
+
tmat2x2< uint, mediump > mediump_umat2x2
Medium-precision unsigned integer 2x2 matrix.
+
tmat3x3< uint, highp > highp_umat3x3
High-precision unsigned integer 3x3 matrix.
+
tmat3x4< int, lowp > lowp_imat3x4
Low-precision signed integer 3x4 matrix.
+
mediump_umat2x2 umat2x2
Unsigned integer 2x2 matrix.
+
mediump_umat4x4 umat4x4
Unsigned integer 4x4 matrix.
+
mediump_imat4 imat4
Signed integer 4x4 matrix.
+
mediump_umat3 umat3
Unsigned integer 3x3 matrix.
+
tmat2x3< int, lowp > lowp_imat2x3
Low-precision signed integer 2x3 matrix.
+
tmat2x3< uint, lowp > lowp_umat2x3
Low-precision unsigned integer 2x3 matrix.
+
mediump_imat3 imat3
Signed integer 3x3 matrix.
+
mediump_umat2x3 umat2x3
Unsigned integer 2x3 matrix.
+
tmat4x4< uint, highp > highp_umat4
High-precision unsigned integer 4x4 matrix.
+
tmat4x3< uint, lowp > lowp_umat4x3
Low-precision unsigned integer 4x3 matrix.
+
tmat4x2< uint, mediump > mediump_umat4x2
Medium-precision unsigned integer 4x2 matrix.
+
tmat3x3< uint, lowp > lowp_umat3
Low-precision unsigned integer 3x3 matrix.
+
tmat2x2< int, highp > highp_imat2x2
High-precision signed integer 2x2 matrix.
+
tmat2x4< uint, highp > highp_umat2x4
High-precision unsigned integer 2x4 matrix.
+
tmat4x3< uint, mediump > mediump_umat4x3
Medium-precision unsigned integer 4x3 matrix.
+
tmat4x4< int, mediump > mediump_imat4x4
Medium-precision signed integer 4x4 matrix.
+
Definition: _noise.hpp:11
+
tmat3x3< int, mediump > mediump_imat3
Medium-precision signed integer 3x3 matrix.
+
tmat2x3< uint, mediump > mediump_umat2x3
Medium-precision unsigned integer 2x3 matrix.
+
mediump_imat3x4 imat3x4
Signed integer 3x4 matrix.
+
tmat4x4< uint, mediump > mediump_umat4
Medium-precision unsigned integer 4x4 matrix.
+
tmat2x4< int, lowp > lowp_imat2x4
Low-precision signed integer 2x4 matrix.
+
tmat3x3< int, highp > highp_imat3x3
High-precision signed integer 3x3 matrix.
+
tmat3x4< uint, lowp > lowp_umat3x4
Low-precision unsigned integer 3x4 matrix.
+
tmat3x3< uint, lowp > lowp_umat3x3
Low-precision unsigned integer 3x3 matrix.
+
tmat4x4< uint, mediump > mediump_umat4x4
Medium-precision unsigned integer 4x4 matrix.
+
tmat2x2< uint, highp > highp_umat2
High-precision unsigned integer 2x2 matrix.
+
mediump_umat2x4 umat2x4
Unsigned integer 2x4 matrix.
+
tmat2x3< int, mediump > mediump_imat2x3
Medium-precision signed integer 2x3 matrix.
+
tmat3x4< uint, highp > highp_umat3x4
High-precision unsigned integer 3x4 matrix.
+
tmat2x2< int, lowp > lowp_imat2x2
Low-precision signed integer 2x2 matrix.
+
tmat2x2< int, lowp > lowp_imat2
Low-precision signed integer 2x2 matrix.
+
tmat2x2< int, highp > highp_imat2
High-precision signed integer 2x2 matrix.
+
tmat2x4< uint, mediump > mediump_umat2x4
Medium-precision unsigned integer 2x4 matrix.
+
mediump_umat4x3 umat4x3
Unsigned integer 4x3 matrix.
+
tmat2x2< uint, lowp > lowp_umat2
Low-precision unsigned integer 2x2 matrix.
+
tmat2x2< uint, highp > highp_umat2x2
High-precision unsigned integer 2x2 matrix.
+
tmat3x3< uint, highp > highp_umat3
High-precision unsigned integer 3x3 matrix.
+
tmat3x4< uint, mediump > mediump_umat3x4
Medium-precision unsigned integer 3x4 matrix.
+
tmat4x3< int, mediump > mediump_imat4x3
Medium-precision signed integer 4x3 matrix.
+
tmat2x4< int, highp > highp_imat2x4
High-precision signed integer 2x4 matrix.
+
mediump_imat4x4 imat4x4
Signed integer 4x4 matrix.
+
tmat3x2< uint, lowp > lowp_umat3x2
Low-precision unsigned integer 3x2 matrix.
+
tmat4x2< int, mediump > mediump_imat4x2
Medium-precision signed integer 4x2 matrix.
+
tmat4x4< int, lowp > lowp_imat4x4
Low-precision signed integer 4x4 matrix.
+
tmat2x3< uint, highp > highp_umat2x3
High-precision unsigned integer 2x3 matrix.
+
mediump_imat2x4 imat2x4
Signed integer 2x4 matrix.
+
tmat4x4< uint, highp > highp_umat4x4
High-precision unsigned integer 4x4 matrix.
+
mediump_imat2 imat2
Signed integer 2x2 matrix.
+
mediump_imat4x2 imat4x2
Signed integer 4x2 matrix.
+
tmat4x4< uint, lowp > lowp_umat4
Low-precision unsigned integer 4x4 matrix.
+
tmat2x2< uint, lowp > lowp_umat2x2
Low-precision unsigned integer 2x2 matrix.
+
tmat4x2< int, lowp > lowp_imat4x2
Low-precision signed integer 4x2 matrix.
+
tmat4x3< int, lowp > lowp_imat4x3
Low-precision signed integer 4x3 matrix.
+
mediump_umat3x2 umat3x2
Unsigned integer 3x2 matrix.
+
mediump_umat3x4 umat3x4
Unsigned integer 3x4 matrix.
+
tmat2x2< uint, mediump > mediump_umat2
Medium-precision unsigned integer 2x2 matrix.
+
mediump_imat3x3 imat3x3
Signed integer 3x3 matrix.
+
tmat3x3< uint, mediump > mediump_umat3x3
Medium-precision unsigned integer 3x3 matrix.
+
tmat4x4< int, lowp > lowp_imat4
Low-precision signed integer 4x4 matrix.
+
tmat3x3< int, lowp > lowp_imat3x3
Low-precision signed integer 3x3 matrix.
+
tmat2x2< int, mediump > mediump_imat2
Medium-precision signed integer 2x2 matrix.
+
mediump_umat3x3 umat3x3
Unsigned integer 3x3 matrix.
+
tmat4x4< int, mediump > mediump_imat4
Medium-precision signed integer 4x4 matrix.
+
tmat3x3< uint, mediump > mediump_umat3
Medium-precision unsigned integer 3x3 matrix.
+
tmat4x4< uint, lowp > lowp_umat4x4
Low-precision unsigned integer 4x4 matrix.
+
tmat2x3< int, highp > highp_imat2x3
High-precision signed integer 2x3 matrix.
+
tmat2x4< uint, lowp > lowp_umat2x4
Low-precision unsigned integer 2x4 matrix.
+
mediump_umat4 umat4
Unsigned integer 4x4 matrix.
+
mediump_imat3x2 imat3x2
Signed integer 3x2 matrix.
+
tmat4x4< int, highp > highp_imat4
High-precision signed integer 4x4 matrix.
+
tmat3x4< int, highp > highp_imat3x4
High-precision signed integer 3x4 matrix.
+
tmat3x2< uint, highp > highp_umat3x2
High-precision unsigned integer 3x2 matrix.
+
tmat4x3< int, highp > highp_imat4x3
High-precision signed integer 4x3 matrix.
+
tmat4x3< uint, highp > highp_umat4x3
High-precision unsigned integer 4x3 matrix.
+
tmat4x2< uint, highp > highp_umat4x2
High-precision unsigned integer 4x2 matrix.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00065.html b/third_party/glm_test/doc/api/a00065.html new file mode 100644 index 0000000000000..fbdb1800d52d0 --- /dev/null +++ b/third_party/glm_test/doc/api/a00065.html @@ -0,0 +1,86 @@ + + + + + + +0.9.8: matrix_interpolation.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
matrix_interpolation.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL void axisAngle (tmat4x4< T, P > const &mat, tvec3< T, P > &axis, T &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > axisAngleMatrix (tvec3< T, P > const &axis, T const angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > extractMatrixRotation (tmat4x4< T, P > const &mat)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > interpolate (tmat4x4< T, P > const &m1, tmat4x4< T, P > const &m2, T const delta)
 
+

Detailed Description

+

GLM_GTX_matrix_interpolation

+
Author
Ghenadii Ursachi (the.a.nosp@m.ster.nosp@m.oth@g.nosp@m.mail.nosp@m..com)
+
See also
GLM Core (dependence)
+ +

Definition in file matrix_interpolation.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00065_source.html b/third_party/glm_test/doc/api/a00065_source.html new file mode 100644 index 0000000000000..00f306967ed73 --- /dev/null +++ b/third_party/glm_test/doc/api/a00065_source.html @@ -0,0 +1,104 @@ + + + + + + +0.9.8: matrix_interpolation.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
matrix_interpolation.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "../glm.hpp"
+
18 
+
19 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
20 # pragma message("GLM: GLM_GTX_matrix_interpolation extension included")
+
21 #endif
+
22 
+
23 namespace glm
+
24 {
+
27 
+
30  template <typename T, precision P>
+
31  GLM_FUNC_DECL void axisAngle(
+
32  tmat4x4<T, P> const & mat,
+
33  tvec3<T, P> & axis,
+
34  T & angle);
+
35 
+
38  template <typename T, precision P>
+
39  GLM_FUNC_DECL tmat4x4<T, P> axisAngleMatrix(
+
40  tvec3<T, P> const & axis,
+
41  T const angle);
+
42 
+
45  template <typename T, precision P>
+
46  GLM_FUNC_DECL tmat4x4<T, P> extractMatrixRotation(
+
47  tmat4x4<T, P> const & mat);
+
48 
+
52  template <typename T, precision P>
+
53  GLM_FUNC_DECL tmat4x4<T, P> interpolate(
+
54  tmat4x4<T, P> const & m1,
+
55  tmat4x4<T, P> const & m2,
+
56  T const delta);
+
57 
+
59 }//namespace glm
+
60 
+
61 #include "matrix_interpolation.inl"
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tvec3< T, P > axis(tquat< T, P > const &x)
Returns the q rotation axis.
+
GLM_FUNC_DECL tmat4x4< T, P > axisAngleMatrix(tvec3< T, P > const &axis, T const angle)
Build a matrix from axis and angle.
+
GLM_FUNC_DECL void axisAngle(tmat4x4< T, P > const &mat, tvec3< T, P > &axis, T &angle)
Get the axis and angle of the rotation from a matrix.
+
GLM_FUNC_DECL T angle(tquat< T, P > const &x)
Returns the quaternion rotation angle.
+
GLM_FUNC_DECL tmat4x4< T, P > extractMatrixRotation(tmat4x4< T, P > const &mat)
Extracts the rotation part of a matrix.
+
GLM_FUNC_DECL tmat4x4< T, P > interpolate(tmat4x4< T, P > const &m1, tmat4x4< T, P > const &m2, T const delta)
Build a interpolation of 4 * 4 matrixes.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00066.html b/third_party/glm_test/doc/api/a00066.html new file mode 100644 index 0000000000000..93a36b5d32529 --- /dev/null +++ b/third_party/glm_test/doc/api/a00066.html @@ -0,0 +1,79 @@ + + + + + + +0.9.8: matrix_inverse.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
matrix_inverse.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType affineInverse (genType const &m)
 
template<typename genType >
GLM_FUNC_DECL genType inverseTranspose (genType const &m)
 
+

Detailed Description

+

GLM_GTC_matrix_inverse

+
See also
GLM Core (dependence)
+ +

Definition in file matrix_inverse.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00066_source.html b/third_party/glm_test/doc/api/a00066_source.html new file mode 100644 index 0000000000000..f140a9a6e92ae --- /dev/null +++ b/third_party/glm_test/doc/api/a00066_source.html @@ -0,0 +1,89 @@ + + + + + + +0.9.8: matrix_inverse.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
matrix_inverse.hpp
+
+
+Go to the documentation of this file.
1 
+
12 #pragma once
+
13 
+
14 // Dependencies
+
15 #include "../detail/setup.hpp"
+
16 #include "../matrix.hpp"
+
17 #include "../mat2x2.hpp"
+
18 #include "../mat3x3.hpp"
+
19 #include "../mat4x4.hpp"
+
20 
+
21 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
22 # pragma message("GLM: GLM_GTC_matrix_inverse extension included")
+
23 #endif
+
24 
+
25 namespace glm
+
26 {
+
29 
+
35  template <typename genType>
+
36  GLM_FUNC_DECL genType affineInverse(genType const & m);
+
37 
+
43  template <typename genType>
+
44  GLM_FUNC_DECL genType inverseTranspose(genType const & m);
+
45 
+
47 }//namespace glm
+
48 
+
49 #include "matrix_inverse.inl"
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL genType inverseTranspose(genType const &m)
Compute the inverse transpose of a matrix.
+
GLM_FUNC_DECL genType affineInverse(genType const &m)
Fast matrix inverse for affine matrix.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00067.html b/third_party/glm_test/doc/api/a00067.html new file mode 100644 index 0000000000000..fe620805fa9aa --- /dev/null +++ b/third_party/glm_test/doc/api/a00067.html @@ -0,0 +1,111 @@ + + + + + + +0.9.8: matrix_major_storage.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
matrix_major_storage.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tmat2x2< T, P > colMajor2 (tvec2< T, P > const &v1, tvec2< T, P > const &v2)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat2x2< T, P > colMajor2 (tmat2x2< T, P > const &m)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > colMajor3 (tvec3< T, P > const &v1, tvec3< T, P > const &v2, tvec3< T, P > const &v3)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > colMajor3 (tmat3x3< T, P > const &m)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > colMajor4 (tvec4< T, P > const &v1, tvec4< T, P > const &v2, tvec4< T, P > const &v3, tvec4< T, P > const &v4)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > colMajor4 (tmat4x4< T, P > const &m)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat2x2< T, P > rowMajor2 (tvec2< T, P > const &v1, tvec2< T, P > const &v2)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat2x2< T, P > rowMajor2 (tmat2x2< T, P > const &m)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > rowMajor3 (tvec3< T, P > const &v1, tvec3< T, P > const &v2, tvec3< T, P > const &v3)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > rowMajor3 (tmat3x3< T, P > const &m)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > rowMajor4 (tvec4< T, P > const &v1, tvec4< T, P > const &v2, tvec4< T, P > const &v3, tvec4< T, P > const &v4)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > rowMajor4 (tmat4x4< T, P > const &m)
 
+

Detailed Description

+

GLM_GTX_matrix_major_storage

+
See also
GLM Core (dependence)
+
+GLM_GTX_extented_min_max (dependence)
+ +

Definition in file matrix_major_storage.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00067_source.html b/third_party/glm_test/doc/api/a00067_source.html new file mode 100644 index 0000000000000..cf16e86d5623f --- /dev/null +++ b/third_party/glm_test/doc/api/a00067_source.html @@ -0,0 +1,143 @@ + + + + + + +0.9.8: matrix_major_storage.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
matrix_major_storage.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "../glm.hpp"
+
18 
+
19 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
20 # pragma message("GLM: GLM_GTX_matrix_major_storage extension included")
+
21 #endif
+
22 
+
23 namespace glm
+
24 {
+
27 
+
30  template <typename T, precision P>
+
31  GLM_FUNC_DECL tmat2x2<T, P> rowMajor2(
+
32  tvec2<T, P> const & v1,
+
33  tvec2<T, P> const & v2);
+
34 
+
37  template <typename T, precision P>
+
38  GLM_FUNC_DECL tmat2x2<T, P> rowMajor2(
+
39  tmat2x2<T, P> const & m);
+
40 
+
43  template <typename T, precision P>
+
44  GLM_FUNC_DECL tmat3x3<T, P> rowMajor3(
+
45  tvec3<T, P> const & v1,
+
46  tvec3<T, P> const & v2,
+
47  tvec3<T, P> const & v3);
+
48 
+
51  template <typename T, precision P>
+
52  GLM_FUNC_DECL tmat3x3<T, P> rowMajor3(
+
53  tmat3x3<T, P> const & m);
+
54 
+
57  template <typename T, precision P>
+
58  GLM_FUNC_DECL tmat4x4<T, P> rowMajor4(
+
59  tvec4<T, P> const & v1,
+
60  tvec4<T, P> const & v2,
+
61  tvec4<T, P> const & v3,
+
62  tvec4<T, P> const & v4);
+
63 
+
66  template <typename T, precision P>
+
67  GLM_FUNC_DECL tmat4x4<T, P> rowMajor4(
+
68  tmat4x4<T, P> const & m);
+
69 
+
72  template <typename T, precision P>
+
73  GLM_FUNC_DECL tmat2x2<T, P> colMajor2(
+
74  tvec2<T, P> const & v1,
+
75  tvec2<T, P> const & v2);
+
76 
+
79  template <typename T, precision P>
+
80  GLM_FUNC_DECL tmat2x2<T, P> colMajor2(
+
81  tmat2x2<T, P> const & m);
+
82 
+
85  template <typename T, precision P>
+
86  GLM_FUNC_DECL tmat3x3<T, P> colMajor3(
+
87  tvec3<T, P> const & v1,
+
88  tvec3<T, P> const & v2,
+
89  tvec3<T, P> const & v3);
+
90 
+
93  template <typename T, precision P>
+
94  GLM_FUNC_DECL tmat3x3<T, P> colMajor3(
+
95  tmat3x3<T, P> const & m);
+
96 
+
99  template <typename T, precision P>
+
100  GLM_FUNC_DECL tmat4x4<T, P> colMajor4(
+
101  tvec4<T, P> const & v1,
+
102  tvec4<T, P> const & v2,
+
103  tvec4<T, P> const & v3,
+
104  tvec4<T, P> const & v4);
+
105 
+
108  template <typename T, precision P>
+
109  GLM_FUNC_DECL tmat4x4<T, P> colMajor4(
+
110  tmat4x4<T, P> const & m);
+
111 
+
113 }//namespace glm
+
114 
+
115 #include "matrix_major_storage.inl"
+
GLM_FUNC_DECL tmat4x4< T, P > colMajor4(tmat4x4< T, P > const &m)
Build a column major matrix from other matrix.
+
GLM_FUNC_DECL tmat2x2< T, P > rowMajor2(tmat2x2< T, P > const &m)
Build a row major matrix from other matrix.
+
GLM_FUNC_DECL tmat3x3< T, P > rowMajor3(tmat3x3< T, P > const &m)
Build a row major matrix from other matrix.
+
GLM_FUNC_DECL tmat2x2< T, P > colMajor2(tmat2x2< T, P > const &m)
Build a column major matrix from other matrix.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tmat3x3< T, P > colMajor3(tmat3x3< T, P > const &m)
Build a column major matrix from other matrix.
+
GLM_FUNC_DECL tmat4x4< T, P > rowMajor4(tmat4x4< T, P > const &m)
Build a row major matrix from other matrix.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00068.html b/third_party/glm_test/doc/api/a00068.html new file mode 100644 index 0000000000000..db84d167b99c6 --- /dev/null +++ b/third_party/glm_test/doc/api/a00068.html @@ -0,0 +1,100 @@ + + + + + + +0.9.8: matrix_operation.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
matrix_operation.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tmat2x2< T, P > diagonal2x2 (tvec2< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat2x3< T, P > diagonal2x3 (tvec2< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat2x4< T, P > diagonal2x4 (tvec2< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x2< T, P > diagonal3x2 (tvec2< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > diagonal3x3 (tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x4< T, P > diagonal3x4 (tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x2< T, P > diagonal4x2 (tvec2< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x3< T, P > diagonal4x3 (tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > diagonal4x4 (tvec4< T, P > const &v)
 
+

Detailed Description

+

GLM_GTX_matrix_operation

+
See also
GLM Core (dependence)
+ +

Definition in file matrix_operation.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00068_source.html b/third_party/glm_test/doc/api/a00068_source.html new file mode 100644 index 0000000000000..f36fde1cacb62 --- /dev/null +++ b/third_party/glm_test/doc/api/a00068_source.html @@ -0,0 +1,122 @@ + + + + + + +0.9.8: matrix_operation.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
matrix_operation.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 
+
18 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
19 # pragma message("GLM: GLM_GTX_matrix_operation extension included")
+
20 #endif
+
21 
+
22 namespace glm
+
23 {
+
26 
+
29  template <typename T, precision P>
+
30  GLM_FUNC_DECL tmat2x2<T, P> diagonal2x2(
+
31  tvec2<T, P> const & v);
+
32 
+
35  template <typename T, precision P>
+
36  GLM_FUNC_DECL tmat2x3<T, P> diagonal2x3(
+
37  tvec2<T, P> const & v);
+
38 
+
41  template <typename T, precision P>
+
42  GLM_FUNC_DECL tmat2x4<T, P> diagonal2x4(
+
43  tvec2<T, P> const & v);
+
44 
+
47  template <typename T, precision P>
+
48  GLM_FUNC_DECL tmat3x2<T, P> diagonal3x2(
+
49  tvec2<T, P> const & v);
+
50 
+
53  template <typename T, precision P>
+
54  GLM_FUNC_DECL tmat3x3<T, P> diagonal3x3(
+
55  tvec3<T, P> const & v);
+
56 
+
59  template <typename T, precision P>
+
60  GLM_FUNC_DECL tmat3x4<T, P> diagonal3x4(
+
61  tvec3<T, P> const & v);
+
62 
+
65  template <typename T, precision P>
+
66  GLM_FUNC_DECL tmat4x2<T, P> diagonal4x2(
+
67  tvec2<T, P> const & v);
+
68 
+
71  template <typename T, precision P>
+
72  GLM_FUNC_DECL tmat4x3<T, P> diagonal4x3(
+
73  tvec3<T, P> const & v);
+
74 
+
77  template <typename T, precision P>
+
78  GLM_FUNC_DECL tmat4x4<T, P> diagonal4x4(
+
79  tvec4<T, P> const & v);
+
80 
+
82 }//namespace glm
+
83 
+
84 #include "matrix_operation.inl"
+
GLM_FUNC_DECL tmat4x4< T, P > diagonal4x4(tvec4< T, P > const &v)
Build a diagonal matrix.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tmat2x4< T, P > diagonal2x4(tvec2< T, P > const &v)
Build a diagonal matrix.
+
GLM_FUNC_DECL tmat3x3< T, P > diagonal3x3(tvec3< T, P > const &v)
Build a diagonal matrix.
+
GLM_FUNC_DECL tmat4x2< T, P > diagonal4x2(tvec2< T, P > const &v)
Build a diagonal matrix.
+
GLM_FUNC_DECL tmat2x3< T, P > diagonal2x3(tvec2< T, P > const &v)
Build a diagonal matrix.
+
GLM_FUNC_DECL tmat2x2< T, P > diagonal2x2(tvec2< T, P > const &v)
Build a diagonal matrix.
+
GLM_FUNC_DECL tmat3x2< T, P > diagonal3x2(tvec2< T, P > const &v)
Build a diagonal matrix.
+
GLM_FUNC_DECL tmat3x4< T, P > diagonal3x4(tvec3< T, P > const &v)
Build a diagonal matrix.
+
GLM_FUNC_DECL tmat4x3< T, P > diagonal4x3(tvec3< T, P > const &v)
Build a diagonal matrix.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00069.html b/third_party/glm_test/doc/api/a00069.html new file mode 100644 index 0000000000000..80ac13364d1ae --- /dev/null +++ b/third_party/glm_test/doc/api/a00069.html @@ -0,0 +1,99 @@ + + + + + + +0.9.8: matrix_query.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
matrix_query.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class matType>
GLM_FUNC_DECL bool isIdentity (matType< T, P > const &m, T const &epsilon)
 
template<typename T , precision P>
GLM_FUNC_DECL bool isNormalized (tmat2x2< T, P > const &m, T const &epsilon)
 
template<typename T , precision P>
GLM_FUNC_DECL bool isNormalized (tmat3x3< T, P > const &m, T const &epsilon)
 
template<typename T , precision P>
GLM_FUNC_DECL bool isNormalized (tmat4x4< T, P > const &m, T const &epsilon)
 
template<typename T , precision P>
GLM_FUNC_DECL bool isNull (tmat2x2< T, P > const &m, T const &epsilon)
 
template<typename T , precision P>
GLM_FUNC_DECL bool isNull (tmat3x3< T, P > const &m, T const &epsilon)
 
template<typename T , precision P>
GLM_FUNC_DECL bool isNull (tmat4x4< T, P > const &m, T const &epsilon)
 
template<typename T , precision P, template< typename, precision > class matType>
GLM_FUNC_DECL bool isOrthogonal (matType< T, P > const &m, T const &epsilon)
 
+

Detailed Description

+

GLM_GTX_matrix_query

+
See also
GLM Core (dependence)
+
+GLM_GTX_vector_query (dependence)
+ +

Definition in file matrix_query.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00069_source.html b/third_party/glm_test/doc/api/a00069_source.html new file mode 100644 index 0000000000000..d5c42626cda6e --- /dev/null +++ b/third_party/glm_test/doc/api/a00069_source.html @@ -0,0 +1,108 @@ + + + + + + +0.9.8: matrix_query.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
matrix_query.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "../glm.hpp"
+
18 #include "../gtx/vector_query.hpp"
+
19 #include <limits>
+
20 
+
21 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
22 # pragma message("GLM: GLM_GTX_matrix_query extension included")
+
23 #endif
+
24 
+
25 namespace glm
+
26 {
+
29 
+
32  template<typename T, precision P>
+
33  GLM_FUNC_DECL bool isNull(tmat2x2<T, P> const & m, T const & epsilon);
+
34 
+
37  template<typename T, precision P>
+
38  GLM_FUNC_DECL bool isNull(tmat3x3<T, P> const & m, T const & epsilon);
+
39 
+
42  template<typename T, precision P>
+
43  GLM_FUNC_DECL bool isNull(tmat4x4<T, P> const & m, T const & epsilon);
+
44 
+
47  template<typename T, precision P, template <typename, precision> class matType>
+
48  GLM_FUNC_DECL bool isIdentity(matType<T, P> const & m, T const & epsilon);
+
49 
+
52  template<typename T, precision P>
+
53  GLM_FUNC_DECL bool isNormalized(tmat2x2<T, P> const & m, T const & epsilon);
+
54 
+
57  template<typename T, precision P>
+
58  GLM_FUNC_DECL bool isNormalized(tmat3x3<T, P> const & m, T const & epsilon);
+
59 
+
62  template<typename T, precision P>
+
63  GLM_FUNC_DECL bool isNormalized(tmat4x4<T, P> const & m, T const & epsilon);
+
64 
+
67  template<typename T, precision P, template <typename, precision> class matType>
+
68  GLM_FUNC_DECL bool isOrthogonal(matType<T, P> const & m, T const & epsilon);
+
69 
+
71 }//namespace glm
+
72 
+
73 #include "matrix_query.inl"
+
GLM_FUNC_DECL GLM_CONSTEXPR genType epsilon()
Return the epsilon constant for floating point types.
+
GLM_FUNC_DECL bool isNull(tmat4x4< T, P > const &m, T const &epsilon)
Return whether a matrix is a null matrix.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL bool isIdentity(matType< T, P > const &m, T const &epsilon)
Return whether a matrix is an identity matrix.
+
GLM_FUNC_DECL bool isNormalized(tmat4x4< T, P > const &m, T const &epsilon)
Return whether a matrix is a normalized matrix.
+
GLM_FUNC_DECL bool isOrthogonal(matType< T, P > const &m, T const &epsilon)
Return whether a matrix is an orthonormalized matrix.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00070.html b/third_party/glm_test/doc/api/a00070.html new file mode 100644 index 0000000000000..088f295b1190a --- /dev/null +++ b/third_party/glm_test/doc/api/a00070.html @@ -0,0 +1,158 @@ + + + + + + +0.9.8: matrix_transform.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
matrix_transform.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > frustum (T left, T right, T bottom, T top, T near, T far)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > frustumLH (T left, T right, T bottom, T top, T near, T far)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > frustumRH (T left, T right, T bottom, T top, T near, T far)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > infinitePerspective (T fovy, T aspect, T near)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > infinitePerspectiveLH (T fovy, T aspect, T near)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > infinitePerspectiveRH (T fovy, T aspect, T near)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > lookAt (tvec3< T, P > const &eye, tvec3< T, P > const &center, tvec3< T, P > const &up)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > lookAtLH (tvec3< T, P > const &eye, tvec3< T, P > const &center, tvec3< T, P > const &up)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > lookAtRH (tvec3< T, P > const &eye, tvec3< T, P > const &center, tvec3< T, P > const &up)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > ortho (T left, T right, T bottom, T top, T zNear, T zFar)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > ortho (T left, T right, T bottom, T top)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > orthoLH (T left, T right, T bottom, T top, T zNear, T zFar)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > orthoRH (T left, T right, T bottom, T top, T zNear, T zFar)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > perspective (T fovy, T aspect, T near, T far)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > perspectiveFov (T fov, T width, T height, T near, T far)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > perspectiveFovLH (T fov, T width, T height, T near, T far)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > perspectiveFovRH (T fov, T width, T height, T near, T far)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > perspectiveLH (T fovy, T aspect, T near, T far)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > perspectiveRH (T fovy, T aspect, T near, T far)
 
template<typename T , precision P, typename U >
GLM_FUNC_DECL tmat4x4< T, P > pickMatrix (tvec2< T, P > const &center, tvec2< T, P > const &delta, tvec4< U, P > const &viewport)
 
template<typename T , typename U , precision P>
GLM_FUNC_DECL tvec3< T, P > project (tvec3< T, P > const &obj, tmat4x4< T, P > const &model, tmat4x4< T, P > const &proj, tvec4< U, P > const &viewport)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > rotate (tmat4x4< T, P > const &m, T angle, tvec3< T, P > const &axis)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > scale (tmat4x4< T, P > const &m, tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > translate (tmat4x4< T, P > const &m, tvec3< T, P > const &v)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > tweakedInfinitePerspective (T fovy, T aspect, T near)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > tweakedInfinitePerspective (T fovy, T aspect, T near, T ep)
 
template<typename T , typename U , precision P>
GLM_FUNC_DECL tvec3< T, P > unProject (tvec3< T, P > const &win, tmat4x4< T, P > const &model, tmat4x4< T, P > const &proj, tvec4< U, P > const &viewport)
 
+

Detailed Description

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00070_source.html b/third_party/glm_test/doc/api/a00070_source.html new file mode 100644 index 0000000000000..a3a734ab85400 --- /dev/null +++ b/third_party/glm_test/doc/api/a00070_source.html @@ -0,0 +1,289 @@ + + + + + + +0.9.8: matrix_transform.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
matrix_transform.hpp
+
+
+Go to the documentation of this file.
1 
+
21 #pragma once
+
22 
+
23 // Dependencies
+
24 #include "../mat4x4.hpp"
+
25 #include "../vec2.hpp"
+
26 #include "../vec3.hpp"
+
27 #include "../vec4.hpp"
+
28 #include "../gtc/constants.hpp"
+
29 
+
30 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
31 # pragma message("GLM: GLM_GTC_matrix_transform extension included")
+
32 #endif
+
33 
+
34 namespace glm
+
35 {
+
38 
+
57  template <typename T, precision P>
+
58  GLM_FUNC_DECL tmat4x4<T, P> translate(
+
59  tmat4x4<T, P> const & m,
+
60  tvec3<T, P> const & v);
+
61 
+
71  template <typename T, precision P>
+
72  GLM_FUNC_DECL tmat4x4<T, P> rotate(
+
73  tmat4x4<T, P> const & m,
+
74  T angle,
+
75  tvec3<T, P> const & axis);
+
76 
+
85  template <typename T, precision P>
+
86  GLM_FUNC_DECL tmat4x4<T, P> scale(
+
87  tmat4x4<T, P> const & m,
+
88  tvec3<T, P> const & v);
+
89 
+
101  template <typename T>
+
102  GLM_FUNC_DECL tmat4x4<T, defaultp> ortho(
+
103  T left,
+
104  T right,
+
105  T bottom,
+
106  T top,
+
107  T zNear,
+
108  T zFar);
+
109 
+
121  template <typename T>
+
122  GLM_FUNC_DECL tmat4x4<T, defaultp> orthoLH(
+
123  T left,
+
124  T right,
+
125  T bottom,
+
126  T top,
+
127  T zNear,
+
128  T zFar);
+
129 
+
141  template <typename T>
+
142  GLM_FUNC_DECL tmat4x4<T, defaultp> orthoRH(
+
143  T left,
+
144  T right,
+
145  T bottom,
+
146  T top,
+
147  T zNear,
+
148  T zFar);
+
149 
+
159  template <typename T>
+
160  GLM_FUNC_DECL tmat4x4<T, defaultp> ortho(
+
161  T left,
+
162  T right,
+
163  T bottom,
+
164  T top);
+
165 
+
176  template <typename T>
+
177  GLM_FUNC_DECL tmat4x4<T, defaultp> frustum(
+
178  T left,
+
179  T right,
+
180  T bottom,
+
181  T top,
+
182  T near,
+
183  T far);
+
184 
+
195  template <typename T>
+
196  GLM_FUNC_DECL tmat4x4<T, defaultp> frustumLH(
+
197  T left,
+
198  T right,
+
199  T bottom,
+
200  T top,
+
201  T near,
+
202  T far);
+
203 
+
214  template <typename T>
+
215  GLM_FUNC_DECL tmat4x4<T, defaultp> frustumRH(
+
216  T left,
+
217  T right,
+
218  T bottom,
+
219  T top,
+
220  T near,
+
221  T far);
+
222 
+
231  template <typename T>
+
232  GLM_FUNC_DECL tmat4x4<T, defaultp> perspective(
+
233  T fovy,
+
234  T aspect,
+
235  T near,
+
236  T far);
+
237 
+
246  template <typename T>
+
247  GLM_FUNC_DECL tmat4x4<T, defaultp> perspectiveRH(
+
248  T fovy,
+
249  T aspect,
+
250  T near,
+
251  T far);
+
252 
+
261  template <typename T>
+
262  GLM_FUNC_DECL tmat4x4<T, defaultp> perspectiveLH(
+
263  T fovy,
+
264  T aspect,
+
265  T near,
+
266  T far);
+
267 
+
277  template <typename T>
+
278  GLM_FUNC_DECL tmat4x4<T, defaultp> perspectiveFov(
+
279  T fov,
+
280  T width,
+
281  T height,
+
282  T near,
+
283  T far);
+
284 
+
294  template <typename T>
+
295  GLM_FUNC_DECL tmat4x4<T, defaultp> perspectiveFovRH(
+
296  T fov,
+
297  T width,
+
298  T height,
+
299  T near,
+
300  T far);
+
301 
+
311  template <typename T>
+
312  GLM_FUNC_DECL tmat4x4<T, defaultp> perspectiveFovLH(
+
313  T fov,
+
314  T width,
+
315  T height,
+
316  T near,
+
317  T far);
+
318 
+
326  template <typename T>
+
327  GLM_FUNC_DECL tmat4x4<T, defaultp> infinitePerspective(
+
328  T fovy, T aspect, T near);
+
329 
+
337  template <typename T>
+
338  GLM_FUNC_DECL tmat4x4<T, defaultp> infinitePerspectiveLH(
+
339  T fovy, T aspect, T near);
+
340 
+
348  template <typename T>
+
349  GLM_FUNC_DECL tmat4x4<T, defaultp> infinitePerspectiveRH(
+
350  T fovy, T aspect, T near);
+
351 
+
359  template <typename T>
+
360  GLM_FUNC_DECL tmat4x4<T, defaultp> tweakedInfinitePerspective(
+
361  T fovy, T aspect, T near);
+
362 
+
371  template <typename T>
+
372  GLM_FUNC_DECL tmat4x4<T, defaultp> tweakedInfinitePerspective(
+
373  T fovy, T aspect, T near, T ep);
+
374 
+
385  template <typename T, typename U, precision P>
+
386  GLM_FUNC_DECL tvec3<T, P> project(
+
387  tvec3<T, P> const & obj,
+
388  tmat4x4<T, P> const & model,
+
389  tmat4x4<T, P> const & proj,
+
390  tvec4<U, P> const & viewport);
+
391 
+
402  template <typename T, typename U, precision P>
+
403  GLM_FUNC_DECL tvec3<T, P> unProject(
+
404  tvec3<T, P> const & win,
+
405  tmat4x4<T, P> const & model,
+
406  tmat4x4<T, P> const & proj,
+
407  tvec4<U, P> const & viewport);
+
408 
+
417  template <typename T, precision P, typename U>
+
418  GLM_FUNC_DECL tmat4x4<T, P> pickMatrix(
+
419  tvec2<T, P> const & center,
+
420  tvec2<T, P> const & delta,
+
421  tvec4<U, P> const & viewport);
+
422 
+
430  template <typename T, precision P>
+
431  GLM_FUNC_DECL tmat4x4<T, P> lookAt(
+
432  tvec3<T, P> const & eye,
+
433  tvec3<T, P> const & center,
+
434  tvec3<T, P> const & up);
+
435 
+
443  template <typename T, precision P>
+
444  GLM_FUNC_DECL tmat4x4<T, P> lookAtRH(
+
445  tvec3<T, P> const & eye,
+
446  tvec3<T, P> const & center,
+
447  tvec3<T, P> const & up);
+
448 
+
456  template <typename T, precision P>
+
457  GLM_FUNC_DECL tmat4x4<T, P> lookAtLH(
+
458  tvec3<T, P> const & eye,
+
459  tvec3<T, P> const & center,
+
460  tvec3<T, P> const & up);
+
461 
+
463 }//namespace glm
+
464 
+
465 #include "matrix_transform.inl"
+
GLM_FUNC_DECL tmat4x4< T, defaultp > infinitePerspectiveRH(T fovy, T aspect, T near)
Creates a matrix for a right handed, symmetric perspective-view frustum with far plane at infinite...
+
GLM_FUNC_DECL vecType proj(vecType const &x, vecType const &Normal)
Projects x on Normal.
+
GLM_FUNC_DECL tmat4x4< T, P > lookAtLH(tvec3< T, P > const &eye, tvec3< T, P > const &center, tvec3< T, P > const &up)
Build a left handed look at view matrix.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > frustum(T left, T right, T bottom, T top, T near, T far)
Creates a frustum matrix with default handedness.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > infinitePerspective(T fovy, T aspect, T near)
Creates a matrix for a symmetric perspective-view frustum with far plane at infinite with default han...
+
GLM_FUNC_DECL tmat4x4< T, P > lookAt(tvec3< T, P > const &eye, tvec3< T, P > const &center, tvec3< T, P > const &up)
Build a look at view matrix based on the default handedness.
+
GLM_FUNC_DECL tmat4x4< T, P > rotate(tmat4x4< T, P > const &m, T angle, tvec3< T, P > const &axis)
Builds a rotation 4 * 4 matrix created from an axis vector and an angle.
+
GLM_FUNC_DECL tvec3< T, P > project(tvec3< T, P > const &obj, tmat4x4< T, P > const &model, tmat4x4< T, P > const &proj, tvec4< U, P > const &viewport)
Map the specified object coordinates (obj.x, obj.y, obj.z) into window coordinates.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > perspectiveFovLH(T fov, T width, T height, T near, T far)
Builds a left handed perspective projection matrix based on a field of view.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tmat4x4< T, P > lookAtRH(tvec3< T, P > const &eye, tvec3< T, P > const &center, tvec3< T, P > const &up)
Build a right handed look at view matrix.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > perspectiveFovRH(T fov, T width, T height, T near, T far)
Builds a right handed perspective projection matrix based on a field of view.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > perspectiveFov(T fov, T width, T height, T near, T far)
Builds a perspective projection matrix based on a field of view and the default handedness.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > tweakedInfinitePerspective(T fovy, T aspect, T near, T ep)
Creates a matrix for a symmetric perspective-view frustum with far plane at infinite for graphics har...
+
GLM_FUNC_DECL tmat4x4< T, defaultp > orthoLH(T left, T right, T bottom, T top, T zNear, T zFar)
Creates a matrix for an orthographic parallel viewing volume, using left-handedness.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > orthoRH(T left, T right, T bottom, T top, T zNear, T zFar)
Creates a matrix for an orthographic parallel viewing volume, using right-handedness.
+
GLM_FUNC_DECL tmat4x4< T, P > translate(tmat4x4< T, P > const &m, tvec3< T, P > const &v)
Builds a translation 4 * 4 matrix created from a vector of 3 components.
+
GLM_FUNC_DECL tvec3< T, P > axis(tquat< T, P > const &x)
Returns the q rotation axis.
+
GLM_FUNC_DECL tmat4x4< T, P > scale(tmat4x4< T, P > const &m, tvec3< T, P > const &v)
Builds a scale 4 * 4 matrix created from 3 scalars.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > perspective(T fovy, T aspect, T near, T far)
Creates a matrix for a symetric perspective-view frustum based on the default handedness.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > infinitePerspectiveLH(T fovy, T aspect, T near)
Creates a matrix for a left handed, symmetric perspective-view frustum with far plane at infinite...
+
GLM_FUNC_DECL T angle(tquat< T, P > const &x)
Returns the quaternion rotation angle.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > frustumRH(T left, T right, T bottom, T top, T near, T far)
Creates a right handed frustum matrix.
+
GLM_FUNC_DECL tvec3< T, P > unProject(tvec3< T, P > const &win, tmat4x4< T, P > const &model, tmat4x4< T, P > const &proj, tvec4< U, P > const &viewport)
Map the specified window coordinates (win.x, win.y, win.z) into object coordinates.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > perspectiveRH(T fovy, T aspect, T near, T far)
Creates a matrix for a right handed, symetric perspective-view frustum.
+
GLM_FUNC_DECL tmat4x4< T, P > pickMatrix(tvec2< T, P > const &center, tvec2< T, P > const &delta, tvec4< U, P > const &viewport)
Define a picking region.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > frustumLH(T left, T right, T bottom, T top, T near, T far)
Creates a left handed frustum matrix.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > perspectiveLH(T fovy, T aspect, T near, T far)
Creates a matrix for a left handed, symetric perspective-view frustum.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > ortho(T left, T right, T bottom, T top)
Creates a matrix for projecting two-dimensional coordinates onto the screen.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00071.html b/third_party/glm_test/doc/api/a00071.html new file mode 100644 index 0000000000000..8d5091d39eaa1 --- /dev/null +++ b/third_party/glm_test/doc/api/a00071.html @@ -0,0 +1,89 @@ + + + + + + +0.9.8: matrix_transform_2d.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
matrix_transform_2d.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_QUALIFIER tmat3x3< T, P > rotate (tmat3x3< T, P > const &m, T angle)
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER tmat3x3< T, P > scale (tmat3x3< T, P > const &m, tvec2< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER tmat3x3< T, P > shearX (tmat3x3< T, P > const &m, T y)
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER tmat3x3< T, P > shearY (tmat3x3< T, P > const &m, T x)
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER tmat3x3< T, P > translate (tmat3x3< T, P > const &m, tvec2< T, P > const &v)
 
+

Detailed Description

+

GLM_GTX_matrix_transform_2d

+
Author
Miguel Ãngel Pérez Martínez
+
See also
GLM Core (dependence)
+ +

Definition in file matrix_transform_2d.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00071_source.html b/third_party/glm_test/doc/api/a00071_source.html new file mode 100644 index 0000000000000..4c4bd1be2ca88 --- /dev/null +++ b/third_party/glm_test/doc/api/a00071_source.html @@ -0,0 +1,110 @@ + + + + + + +0.9.8: matrix_transform_2d.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
matrix_transform_2d.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "../mat3x3.hpp"
+
18 #include "../vec2.hpp"
+
19 
+
20 
+
21 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
22 # pragma message("GLM: GLM_GTX_matrix_transform_2d extension included")
+
23 #endif
+
24 
+
25 namespace glm
+
26 {
+
29 
+
34  template <typename T, precision P>
+
35  GLM_FUNC_QUALIFIER tmat3x3<T, P> translate(
+
36  tmat3x3<T, P> const & m,
+
37  tvec2<T, P> const & v);
+
38 
+
43  template <typename T, precision P>
+
44  GLM_FUNC_QUALIFIER tmat3x3<T, P> rotate(
+
45  tmat3x3<T, P> const & m,
+
46  T angle);
+
47 
+
52  template <typename T, precision P>
+
53  GLM_FUNC_QUALIFIER tmat3x3<T, P> scale(
+
54  tmat3x3<T, P> const & m,
+
55  tvec2<T, P> const & v);
+
56 
+
61  template <typename T, precision P>
+
62  GLM_FUNC_QUALIFIER tmat3x3<T, P> shearX(
+
63  tmat3x3<T, P> const & m,
+
64  T y);
+
65 
+
70  template <typename T, precision P>
+
71  GLM_FUNC_QUALIFIER tmat3x3<T, P> shearY(
+
72  tmat3x3<T, P> const & m,
+
73  T x);
+
74 
+
76 }//namespace glm
+
77 
+
78 #include "matrix_transform_2d.inl"
+
GLM_FUNC_QUALIFIER tmat3x3< T, P > rotate(tmat3x3< T, P > const &m, T angle)
Builds a rotation 3 * 3 matrix created from an angle.
+
GLM_FUNC_QUALIFIER tmat3x3< T, P > shearY(tmat3x3< T, P > const &m, T x)
Builds a vertical (parallel to the y axis) shear 3 * 3 matrix.
+
Definition: _noise.hpp:11
+
GLM_FUNC_QUALIFIER tmat3x3< T, P > scale(tmat3x3< T, P > const &m, tvec2< T, P > const &v)
Builds a scale 3 * 3 matrix created from a vector of 2 components.
+
GLM_FUNC_QUALIFIER tmat3x3< T, P > shearX(tmat3x3< T, P > const &m, T y)
Builds an horizontal (parallel to the x axis) shear 3 * 3 matrix.
+
GLM_FUNC_DECL T angle(tquat< T, P > const &x)
Returns the quaternion rotation angle.
+
GLM_FUNC_QUALIFIER tmat3x3< T, P > translate(tmat3x3< T, P > const &m, tvec2< T, P > const &v)
Builds a translation 3 * 3 matrix created from a vector of 2 components.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00072.html b/third_party/glm_test/doc/api/a00072.html new file mode 100644 index 0000000000000..90a5b82e64d4c --- /dev/null +++ b/third_party/glm_test/doc/api/a00072.html @@ -0,0 +1,77 @@ + + + + + + +0.9.8: mixed_product.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
mixed_product.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Functions

+template<typename T , precision P>
GLM_FUNC_DECL T mixedProduct (tvec3< T, P > const &v1, tvec3< T, P > const &v2, tvec3< T, P > const &v3)
 
+

Detailed Description

+

GLM_GTX_mixed_producte

+
See also
GLM Core (dependence)
+ +

Definition in file mixed_product.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00072_source.html b/third_party/glm_test/doc/api/a00072_source.html new file mode 100644 index 0000000000000..208663e7afa45 --- /dev/null +++ b/third_party/glm_test/doc/api/a00072_source.html @@ -0,0 +1,84 @@ + + + + + + +0.9.8: mixed_product.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
mixed_product.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 
+
18 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
19 # pragma message("GLM: GLM_GTX_mixed_product extension included")
+
20 #endif
+
21 
+
22 namespace glm
+
23 {
+
26 
+
28  template <typename T, precision P>
+
29  GLM_FUNC_DECL T mixedProduct(
+
30  tvec3<T, P> const & v1,
+
31  tvec3<T, P> const & v2,
+
32  tvec3<T, P> const & v3);
+
33 
+
35 }// namespace glm
+
36 
+
37 #include "mixed_product.inl"
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL T mixedProduct(tvec3< T, P > const &v1, tvec3< T, P > const &v2, tvec3< T, P > const &v3)
Mixed product of 3 vectors (from GLM_GTX_mixed_product extension)
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00073.html b/third_party/glm_test/doc/api/a00073.html new file mode 100644 index 0000000000000..618648bf80a29 --- /dev/null +++ b/third_party/glm_test/doc/api/a00073.html @@ -0,0 +1,82 @@ + + + + + + +0.9.8: noise.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
noise.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T perlin (vecType< T, P > const &p)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T perlin (vecType< T, P > const &p, vecType< T, P > const &rep)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T simplex (vecType< T, P > const &p)
 
+

Detailed Description

+

GLM_GTC_noise

+
See also
GLM Core (dependence)
+ +

Definition in file noise.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00073_source.html b/third_party/glm_test/doc/api/a00073_source.html new file mode 100644 index 0000000000000..7546943cf10e6 --- /dev/null +++ b/third_party/glm_test/doc/api/a00073_source.html @@ -0,0 +1,100 @@ + + + + + + +0.9.8: noise.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
noise.hpp
+
+
+Go to the documentation of this file.
1 
+
16 #pragma once
+
17 
+
18 // Dependencies
+
19 #include "../detail/setup.hpp"
+
20 #include "../detail/precision.hpp"
+
21 #include "../detail/_noise.hpp"
+
22 #include "../geometric.hpp"
+
23 #include "../common.hpp"
+
24 #include "../vector_relational.hpp"
+
25 #include "../vec2.hpp"
+
26 #include "../vec3.hpp"
+
27 #include "../vec4.hpp"
+
28 
+
29 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
30 # pragma message("GLM: GLM_GTC_noise extension included")
+
31 #endif
+
32 
+
33 namespace glm
+
34 {
+
37 
+
40  template <typename T, precision P, template<typename, precision> class vecType>
+
41  GLM_FUNC_DECL T perlin(
+
42  vecType<T, P> const & p);
+
43 
+
46  template <typename T, precision P, template<typename, precision> class vecType>
+
47  GLM_FUNC_DECL T perlin(
+
48  vecType<T, P> const & p,
+
49  vecType<T, P> const & rep);
+
50 
+
53  template <typename T, precision P, template<typename, precision> class vecType>
+
54  GLM_FUNC_DECL T simplex(
+
55  vecType<T, P> const & p);
+
56 
+
58 }//namespace glm
+
59 
+
60 #include "noise.inl"
+
GLM_FUNC_DECL T perlin(vecType< T, P > const &p, vecType< T, P > const &rep)
Periodic perlin noise.
+
GLM_FUNC_DECL T simplex(vecType< T, P > const &p)
Simplex noise.
+
Definition: _noise.hpp:11
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00074.html b/third_party/glm_test/doc/api/a00074.html new file mode 100644 index 0000000000000..152caf8ccbcb7 --- /dev/null +++ b/third_party/glm_test/doc/api/a00074.html @@ -0,0 +1,99 @@ + + + + + + +0.9.8: norm.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
norm.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T distance2 (vecType< T, P > const &p0, vecType< T, P > const &p1)
 
template<typename T , precision P>
GLM_FUNC_DECL T l1Norm (tvec3< T, P > const &x, tvec3< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL T l1Norm (tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL T l2Norm (tvec3< T, P > const &x, tvec3< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL T l2Norm (tvec3< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T length2 (vecType< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL T lxNorm (tvec3< T, P > const &x, tvec3< T, P > const &y, unsigned int Depth)
 
template<typename T , precision P>
GLM_FUNC_DECL T lxNorm (tvec3< T, P > const &x, unsigned int Depth)
 
+

Detailed Description

+

GLM_GTX_norm

+
See also
GLM Core (dependence)
+
+GLM_GTX_quaternion (dependence)
+ +

Definition in file norm.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00074_source.html b/third_party/glm_test/doc/api/a00074_source.html new file mode 100644 index 0000000000000..338fb74a38da7 --- /dev/null +++ b/third_party/glm_test/doc/api/a00074_source.html @@ -0,0 +1,121 @@ + + + + + + +0.9.8: norm.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
norm.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "../detail/func_geometric.hpp"
+
18 #include "../gtx/quaternion.hpp"
+
19 
+
20 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
21 # pragma message("GLM: GLM_GTX_norm extension included")
+
22 #endif
+
23 
+
24 namespace glm
+
25 {
+
28 
+
31  template <typename T, precision P, template <typename, precision> class vecType>
+
32  GLM_FUNC_DECL T length2(
+
33  vecType<T, P> const & x);
+
34 
+
37  template <typename T, precision P, template <typename, precision> class vecType>
+
38  GLM_FUNC_DECL T distance2(
+
39  vecType<T, P> const & p0,
+
40  vecType<T, P> const & p1);
+
41 
+
44  template <typename T, precision P>
+
45  GLM_FUNC_DECL T l1Norm(
+
46  tvec3<T, P> const & x,
+
47  tvec3<T, P> const & y);
+
48 
+
51  template <typename T, precision P>
+
52  GLM_FUNC_DECL T l1Norm(
+
53  tvec3<T, P> const & v);
+
54 
+
57  template <typename T, precision P>
+
58  GLM_FUNC_DECL T l2Norm(
+
59  tvec3<T, P> const & x,
+
60  tvec3<T, P> const & y);
+
61 
+
64  template <typename T, precision P>
+
65  GLM_FUNC_DECL T l2Norm(
+
66  tvec3<T, P> const & x);
+
67 
+
70  template <typename T, precision P>
+
71  GLM_FUNC_DECL T lxNorm(
+
72  tvec3<T, P> const & x,
+
73  tvec3<T, P> const & y,
+
74  unsigned int Depth);
+
75 
+
78  template <typename T, precision P>
+
79  GLM_FUNC_DECL T lxNorm(
+
80  tvec3<T, P> const & x,
+
81  unsigned int Depth);
+
82 
+
84 }//namespace glm
+
85 
+
86 #include "norm.inl"
+
GLM_FUNC_DECL T l2Norm(tvec3< T, P > const &x)
Returns the L2 norm of v.
+
GLM_FUNC_DECL T distance2(vecType< T, P > const &p0, vecType< T, P > const &p1)
Returns the squared distance between p0 and p1, i.e., length2(p0 - p1).
+
GLM_FUNC_DECL T l1Norm(tvec3< T, P > const &v)
Returns the L1 norm of v.
+
GLM_FUNC_DECL T lxNorm(tvec3< T, P > const &x, unsigned int Depth)
Returns the L norm of v.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL T length2(vecType< T, P > const &x)
Returns the squared length of x.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00075.html b/third_party/glm_test/doc/api/a00075.html new file mode 100644 index 0000000000000..4b81acb8f8d79 --- /dev/null +++ b/third_party/glm_test/doc/api/a00075.html @@ -0,0 +1,78 @@ + + + + + + +0.9.8: normal.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
normal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > triangleNormal (tvec3< T, P > const &p1, tvec3< T, P > const &p2, tvec3< T, P > const &p3)
 
+

Detailed Description

+

GLM_GTX_normal

+
See also
GLM Core (dependence)
+
+GLM_GTX_extented_min_max (dependence)
+ +

Definition in file normal.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00075_source.html b/third_party/glm_test/doc/api/a00075_source.html new file mode 100644 index 0000000000000..10ded47f87cea --- /dev/null +++ b/third_party/glm_test/doc/api/a00075_source.html @@ -0,0 +1,84 @@ + + + + + + +0.9.8: normal.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
normal.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "../glm.hpp"
+
18 
+
19 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
20 # pragma message("GLM: GLM_GTX_normal extension included")
+
21 #endif
+
22 
+
23 namespace glm
+
24 {
+
27 
+
30  template <typename T, precision P>
+
31  GLM_FUNC_DECL tvec3<T, P> triangleNormal(
+
32  tvec3<T, P> const & p1,
+
33  tvec3<T, P> const & p2,
+
34  tvec3<T, P> const & p3);
+
35 
+
37 }//namespace glm
+
38 
+
39 #include "normal.inl"
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tvec3< T, P > triangleNormal(tvec3< T, P > const &p1, tvec3< T, P > const &p2, tvec3< T, P > const &p3)
Computes triangle normal from triangle points.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00076.html b/third_party/glm_test/doc/api/a00076.html new file mode 100644 index 0000000000000..006af46e5a2c0 --- /dev/null +++ b/third_party/glm_test/doc/api/a00076.html @@ -0,0 +1,81 @@ + + + + + + +0.9.8: normalize_dot.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
normalize_dot.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T fastNormalizeDot (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T normalizeDot (vecType< T, P > const &x, vecType< T, P > const &y)
 
+

Detailed Description

+

GLM_GTX_normalize_dot

+
See also
GLM Core (dependence)
+
+GLM_GTX_fast_square_root (dependence)
+ +

Definition in file normalize_dot.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00076_source.html b/third_party/glm_test/doc/api/a00076_source.html new file mode 100644 index 0000000000000..ebf199dead8c4 --- /dev/null +++ b/third_party/glm_test/doc/api/a00076_source.html @@ -0,0 +1,85 @@ + + + + + + +0.9.8: normalize_dot.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
normalize_dot.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "../gtx/fast_square_root.hpp"
+
18 
+
19 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
20 # pragma message("GLM: GLM_GTX_normalize_dot extension included")
+
21 #endif
+
22 
+
23 namespace glm
+
24 {
+
27 
+
32  template <typename T, precision P, template <typename, precision> class vecType>
+
33  GLM_FUNC_DECL T normalizeDot(vecType<T, P> const & x, vecType<T, P> const & y);
+
34 
+
39  template <typename T, precision P, template <typename, precision> class vecType>
+
40  GLM_FUNC_DECL T fastNormalizeDot(vecType<T, P> const & x, vecType<T, P> const & y);
+
41 
+
43 }//namespace glm
+
44 
+
45 #include "normalize_dot.inl"
+
GLM_FUNC_DECL T normalizeDot(vecType< T, P > const &x, vecType< T, P > const &y)
Normalize parameters and returns the dot product of x and y.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL T fastNormalizeDot(vecType< T, P > const &x, vecType< T, P > const &y)
Normalize parameters and returns the dot product of x and y.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00077.html b/third_party/glm_test/doc/api/a00077.html new file mode 100644 index 0000000000000..8a57be2811862 --- /dev/null +++ b/third_party/glm_test/doc/api/a00077.html @@ -0,0 +1,107 @@ + + + + + + +0.9.8: number_precision.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
number_precision.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

+typedef f32 f32mat1
 
+typedef f32 f32mat1x1
 
+typedef f32 f32vec1
 
+typedef f64 f64mat1
 
+typedef f64 f64mat1x1
 
+typedef f64 f64vec1
 
+typedef u16 u16vec1
 
+typedef u32 u32vec1
 
+typedef u64 u64vec1
 
+typedef u8 u8vec1
 
+

Detailed Description

+

GLM_GTX_number_precision

+
See also
GLM Core (dependence)
+
+GLM_GTC_type_precision (dependence)
+
+GLM_GTC_quaternion (dependence)
+ +

Definition in file number_precision.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00077_source.html b/third_party/glm_test/doc/api/a00077_source.html new file mode 100644 index 0000000000000..a5a344eb9bbae --- /dev/null +++ b/third_party/glm_test/doc/api/a00077_source.html @@ -0,0 +1,115 @@ + + + + + + +0.9.8: number_precision.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
number_precision.hpp
+
+
+Go to the documentation of this file.
1 
+
15 #pragma once
+
16 
+
17 // Dependency:
+
18 #include "../glm.hpp"
+
19 #include "../gtc/type_precision.hpp"
+
20 
+
21 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
22 # pragma message("GLM: GLM_GTX_number_precision extension included")
+
23 #endif
+
24 
+
25 namespace glm{
+
26 namespace gtx
+
27 {
+
29  // Unsigned int vector types
+
30 
+
33 
+
34  typedef u8 u8vec1;
+
35  typedef u16 u16vec1;
+
36  typedef u32 u32vec1;
+
37  typedef u64 u64vec1;
+
38 
+
40  // Float vector types
+
41 
+
42  typedef f32 f32vec1;
+
43  typedef f64 f64vec1;
+
44 
+
46  // Float matrix types
+
47 
+
48  typedef f32 f32mat1;
+
49  typedef f32 f32mat1x1;
+
50  typedef f64 f64mat1;
+
51  typedef f64 f64mat1x1;
+
52 
+
54 }//namespace gtx
+
55 }//namespace glm
+
56 
+
57 #include "number_precision.inl"
+
highp_float64_t f64
Default 64 bit double-precision floating-point scalar.
Definition: fwd.hpp:1509
+
f32 f32mat1x1
Single-precision floating-point scalar. (from GLM_GTX_number_precision extension) ...
+
f32 f32mat1
Single-precision floating-point scalar. (from GLM_GTX_number_precision extension) ...
+
detail::uint32 u32
32 bit unsigned integer type.
Definition: fwd.hpp:902
+
u32 u32vec1
32bit unsigned integer scalar. (from GLM_GTX_number_precision extension)
+
f64 f64mat1x1
Double-precision floating-point scalar. (from GLM_GTX_number_precision extension) ...
+
u64 u64vec1
64bit unsigned integer scalar. (from GLM_GTX_number_precision extension)
+
u8 u8vec1
8bit unsigned integer scalar. (from GLM_GTX_number_precision extension)
+
detail::uint16 u16
16 bit unsigned integer type.
Definition: fwd.hpp:898
+
Definition: _noise.hpp:11
+
f64 f64vec1
Single-precision floating-point scalar. (from GLM_GTX_number_precision extension) ...
+
f32 f32vec1
Single-precision floating-point scalar. (from GLM_GTX_number_precision extension) ...
+
f64 f64mat1
Double-precision floating-point scalar. (from GLM_GTX_number_precision extension) ...
+
detail::uint8 u8
8 bit unsigned integer type.
Definition: fwd.hpp:894
+
detail::uint64 u64
64 bit unsigned integer type.
Definition: fwd.hpp:906
+
u16 u16vec1
16bit unsigned integer scalar. (from GLM_GTX_number_precision extension)
+
highp_float32_t f32
Default 32 bit single-precision floating-point scalar.
Definition: fwd.hpp:1505
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00078.html b/third_party/glm_test/doc/api/a00078.html new file mode 100644 index 0000000000000..132cd1d3f095f --- /dev/null +++ b/third_party/glm_test/doc/api/a00078.html @@ -0,0 +1,82 @@ + + + + + + +0.9.8: optimum_pow.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
optimum_pow.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType pow2 (genType const &x)
 
template<typename genType >
GLM_FUNC_DECL genType pow3 (genType const &x)
 
template<typename genType >
GLM_FUNC_DECL genType pow4 (genType const &x)
 
+

Detailed Description

+

GLM_GTX_optimum_pow

+
See also
GLM Core (dependence)
+ +

Definition in file optimum_pow.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00078_source.html b/third_party/glm_test/doc/api/a00078_source.html new file mode 100644 index 0000000000000..56eded14e2c57 --- /dev/null +++ b/third_party/glm_test/doc/api/a00078_source.html @@ -0,0 +1,91 @@ + + + + + + +0.9.8: optimum_pow.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
optimum_pow.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 
+
18 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
19 # pragma message("GLM: GLM_GTX_optimum_pow extension included")
+
20 #endif
+
21 
+
22 namespace glm{
+
23 namespace gtx
+
24 {
+
27 
+
31  template <typename genType>
+
32  GLM_FUNC_DECL genType pow2(genType const & x);
+
33 
+
37  template <typename genType>
+
38  GLM_FUNC_DECL genType pow3(genType const & x);
+
39 
+
43  template <typename genType>
+
44  GLM_FUNC_DECL genType pow4(genType const & x);
+
45 
+
47 }//namespace gtx
+
48 }//namespace glm
+
49 
+
50 #include "optimum_pow.inl"
+
GLM_FUNC_DECL genType pow2(genType const &x)
Returns x raised to the power of 2.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL genType pow3(genType const &x)
Returns x raised to the power of 3.
+
GLM_FUNC_DECL genType pow4(genType const &x)
Returns x raised to the power of 4.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00079.html b/third_party/glm_test/doc/api/a00079.html new file mode 100644 index 0000000000000..1926924de147a --- /dev/null +++ b/third_party/glm_test/doc/api/a00079.html @@ -0,0 +1,81 @@ + + + + + + +0.9.8: orthonormalize.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
orthonormalize.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > orthonormalize (tmat3x3< T, P > const &m)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > orthonormalize (tvec3< T, P > const &x, tvec3< T, P > const &y)
 
+

Detailed Description

+

GLM_GTX_orthonormalize

+
See also
GLM Core (dependence)
+
+GLM_GTX_extented_min_max (dependence)
+ +

Definition in file orthonormalize.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00079_source.html b/third_party/glm_test/doc/api/a00079_source.html new file mode 100644 index 0000000000000..5152cb95f13bf --- /dev/null +++ b/third_party/glm_test/doc/api/a00079_source.html @@ -0,0 +1,86 @@ + + + + + + +0.9.8: orthonormalize.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
orthonormalize.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "../vec3.hpp"
+
18 #include "../mat3x3.hpp"
+
19 #include "../geometric.hpp"
+
20 
+
21 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
22 # pragma message("GLM: GLM_GTX_orthonormalize extension included")
+
23 #endif
+
24 
+
25 namespace glm
+
26 {
+
29 
+
33  template <typename T, precision P>
+
34  GLM_FUNC_DECL tmat3x3<T, P> orthonormalize(tmat3x3<T, P> const & m);
+
35 
+
39  template <typename T, precision P>
+
40  GLM_FUNC_DECL tvec3<T, P> orthonormalize(tvec3<T, P> const & x, tvec3<T, P> const & y);
+
41 
+
43 }//namespace glm
+
44 
+
45 #include "orthonormalize.inl"
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tvec3< T, P > orthonormalize(tvec3< T, P > const &x, tvec3< T, P > const &y)
Orthonormalizes x according y.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00080.html b/third_party/glm_test/doc/api/a00080.html new file mode 100644 index 0000000000000..fd1c602ce0acd --- /dev/null +++ b/third_party/glm_test/doc/api/a00080.html @@ -0,0 +1,175 @@ + + + + + + +0.9.8: packing.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
gtc/packing.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

GLM_FUNC_DECL uint32 packF2x11_1x10 (vec3 const &v)
 
GLM_FUNC_DECL uint32 packF3x9_E1x5 (vec3 const &v)
 
template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< uint16, P > packHalf (vecType< float, P > const &v)
 
GLM_FUNC_DECL uint16 packHalf1x16 (float v)
 
GLM_FUNC_DECL uint64 packHalf4x16 (vec4 const &v)
 
GLM_FUNC_DECL uint32 packI3x10_1x2 (ivec4 const &v)
 
template<typename intType , typename floatType , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< intType, P > packSnorm (vecType< floatType, P > const &v)
 
GLM_FUNC_DECL uint16 packSnorm1x16 (float v)
 
GLM_FUNC_DECL uint8 packSnorm1x8 (float s)
 
GLM_FUNC_DECL uint16 packSnorm2x8 (vec2 const &v)
 
GLM_FUNC_DECL uint32 packSnorm3x10_1x2 (vec4 const &v)
 
GLM_FUNC_DECL uint64 packSnorm4x16 (vec4 const &v)
 
GLM_FUNC_DECL uint32 packU3x10_1x2 (uvec4 const &v)
 
template<typename uintType , typename floatType , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< uintType, P > packUnorm (vecType< floatType, P > const &v)
 
GLM_FUNC_DECL uint16 packUnorm1x16 (float v)
 
GLM_FUNC_DECL uint16 packUnorm1x5_1x6_1x5 (vec3 const &v)
 
GLM_FUNC_DECL uint8 packUnorm1x8 (float v)
 
GLM_FUNC_DECL uint8 packUnorm2x3_1x2 (vec3 const &v)
 
GLM_FUNC_DECL uint8 packUnorm2x4 (vec2 const &v)
 
GLM_FUNC_DECL uint16 packUnorm2x8 (vec2 const &v)
 
GLM_FUNC_DECL uint32 packUnorm3x10_1x2 (vec4 const &v)
 
GLM_FUNC_DECL uint16 packUnorm3x5_1x1 (vec4 const &v)
 
GLM_FUNC_DECL uint64 packUnorm4x16 (vec4 const &v)
 
GLM_FUNC_DECL uint16 packUnorm4x4 (vec4 const &v)
 
GLM_FUNC_DECL vec3 unpackF2x11_1x10 (uint32 p)
 
GLM_FUNC_DECL vec3 unpackF3x9_E1x5 (uint32 p)
 
template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< float, P > unpackHalf (vecType< uint16, P > const &p)
 
GLM_FUNC_DECL float unpackHalf1x16 (uint16 v)
 
GLM_FUNC_DECL vec4 unpackHalf4x16 (uint64 p)
 
GLM_FUNC_DECL ivec4 unpackI3x10_1x2 (uint32 p)
 
template<typename intType , typename floatType , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< floatType, P > unpackSnorm (vecType< intType, P > const &v)
 
GLM_FUNC_DECL float unpackSnorm1x16 (uint16 p)
 
GLM_FUNC_DECL float unpackSnorm1x8 (uint8 p)
 
GLM_FUNC_DECL vec2 unpackSnorm2x8 (uint16 p)
 
GLM_FUNC_DECL vec4 unpackSnorm3x10_1x2 (uint32 p)
 
GLM_FUNC_DECL vec4 unpackSnorm4x16 (uint64 p)
 
GLM_FUNC_DECL uvec4 unpackU3x10_1x2 (uint32 p)
 
template<typename uintType , typename floatType , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< floatType, P > unpackUnorm (vecType< uintType, P > const &v)
 
GLM_FUNC_DECL float unpackUnorm1x16 (uint16 p)
 
GLM_FUNC_DECL vec3 unpackUnorm1x5_1x6_1x5 (uint16 p)
 
GLM_FUNC_DECL float unpackUnorm1x8 (uint8 p)
 
GLM_FUNC_DECL vec3 unpackUnorm2x3_1x2 (uint8 p)
 
GLM_FUNC_DECL vec2 unpackUnorm2x4 (uint8 p)
 
GLM_FUNC_DECL vec2 unpackUnorm2x8 (uint16 p)
 
GLM_FUNC_DECL vec4 unpackUnorm3x10_1x2 (uint32 p)
 
GLM_FUNC_DECL vec4 unpackUnorm3x5_1x1 (uint16 p)
 
GLM_FUNC_DECL vec4 unpackUnorm4x16 (uint64 p)
 
GLM_FUNC_DECL vec4 unpackUnorm4x4 (uint16 p)
 
+

Detailed Description

+

GLM_GTC_packing

+
See also
GLM Core (dependence)
+ +

Definition in file gtc/packing.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00080_source.html b/third_party/glm_test/doc/api/a00080_source.html new file mode 100644 index 0000000000000..19d8a7070587b --- /dev/null +++ b/third_party/glm_test/doc/api/a00080_source.html @@ -0,0 +1,233 @@ + + + + + + +0.9.8: packing.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
gtc/packing.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "type_precision.hpp"
+
18 
+
19 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
20 # pragma message("GLM: GLM_GTC_packing extension included")
+
21 #endif
+
22 
+
23 namespace glm
+
24 {
+
27 
+
39  GLM_FUNC_DECL uint8 packUnorm1x8(float v);
+
40 
+
51  GLM_FUNC_DECL float unpackUnorm1x8(uint8 p);
+
52 
+
67  GLM_FUNC_DECL uint16 packUnorm2x8(vec2 const & v);
+
68 
+
83  GLM_FUNC_DECL vec2 unpackUnorm2x8(uint16 p);
+
84 
+
96  GLM_FUNC_DECL uint8 packSnorm1x8(float s);
+
97 
+
109  GLM_FUNC_DECL float unpackSnorm1x8(uint8 p);
+
110 
+
125  GLM_FUNC_DECL uint16 packSnorm2x8(vec2 const & v);
+
126 
+
141  GLM_FUNC_DECL vec2 unpackSnorm2x8(uint16 p);
+
142 
+
154  GLM_FUNC_DECL uint16 packUnorm1x16(float v);
+
155 
+
167  GLM_FUNC_DECL float unpackUnorm1x16(uint16 p);
+
168 
+
183  GLM_FUNC_DECL uint64 packUnorm4x16(vec4 const & v);
+
184 
+
199  GLM_FUNC_DECL vec4 unpackUnorm4x16(uint64 p);
+
200 
+
212  GLM_FUNC_DECL uint16 packSnorm1x16(float v);
+
213 
+
225  GLM_FUNC_DECL float unpackSnorm1x16(uint16 p);
+
226 
+
241  GLM_FUNC_DECL uint64 packSnorm4x16(vec4 const & v);
+
242 
+
257  GLM_FUNC_DECL vec4 unpackSnorm4x16(uint64 p);
+
258 
+
268  GLM_FUNC_DECL uint16 packHalf1x16(float v);
+
269 
+
279  GLM_FUNC_DECL float unpackHalf1x16(uint16 v);
+
280 
+
292  GLM_FUNC_DECL uint64 packHalf4x16(vec4 const & v);
+
293 
+
305  GLM_FUNC_DECL vec4 unpackHalf4x16(uint64 p);
+
306 
+
318  GLM_FUNC_DECL uint32 packI3x10_1x2(ivec4 const & v);
+
319 
+
329  GLM_FUNC_DECL ivec4 unpackI3x10_1x2(uint32 p);
+
330 
+
342  GLM_FUNC_DECL uint32 packU3x10_1x2(uvec4 const & v);
+
343 
+
353  GLM_FUNC_DECL uvec4 unpackU3x10_1x2(uint32 p);
+
354 
+
371  GLM_FUNC_DECL uint32 packSnorm3x10_1x2(vec4 const & v);
+
372 
+
388  GLM_FUNC_DECL vec4 unpackSnorm3x10_1x2(uint32 p);
+
389 
+
406  GLM_FUNC_DECL uint32 packUnorm3x10_1x2(vec4 const & v);
+
407 
+
423  GLM_FUNC_DECL vec4 unpackUnorm3x10_1x2(uint32 p);
+
424 
+
434  GLM_FUNC_DECL uint32 packF2x11_1x10(vec3 const & v);
+
435 
+
444  GLM_FUNC_DECL vec3 unpackF2x11_1x10(uint32 p);
+
445 
+
446 
+
456  GLM_FUNC_DECL uint32 packF3x9_E1x5(vec3 const & v);
+
457 
+
466  GLM_FUNC_DECL vec3 unpackF3x9_E1x5(uint32 p);
+
467 
+
476  template <precision P, template <typename, precision> class vecType>
+
477  GLM_FUNC_DECL vecType<uint16, P> packHalf(vecType<float, P> const & v);
+
478 
+
486  template <precision P, template <typename, precision> class vecType>
+
487  GLM_FUNC_DECL vecType<float, P> unpackHalf(vecType<uint16, P> const & p);
+
488 
+
493  template <typename uintType, typename floatType, precision P, template <typename, precision> class vecType>
+
494  GLM_FUNC_DECL vecType<uintType, P> packUnorm(vecType<floatType, P> const & v);
+
495 
+
500  template <typename uintType, typename floatType, precision P, template <typename, precision> class vecType>
+
501  GLM_FUNC_DECL vecType<floatType, P> unpackUnorm(vecType<uintType, P> const & v);
+
502 
+
507  template <typename intType, typename floatType, precision P, template <typename, precision> class vecType>
+
508  GLM_FUNC_DECL vecType<intType, P> packSnorm(vecType<floatType, P> const & v);
+
509 
+
514  template <typename intType, typename floatType, precision P, template <typename, precision> class vecType>
+
515  GLM_FUNC_DECL vecType<floatType, P> unpackSnorm(vecType<intType, P> const & v);
+
516 
+
521  GLM_FUNC_DECL uint8 packUnorm2x4(vec2 const & v);
+
522 
+
527  GLM_FUNC_DECL vec2 unpackUnorm2x4(uint8 p);
+
528 
+
533  GLM_FUNC_DECL uint16 packUnorm4x4(vec4 const & v);
+
534 
+
539  GLM_FUNC_DECL vec4 unpackUnorm4x4(uint16 p);
+
540 
+
545  GLM_FUNC_DECL uint16 packUnorm1x5_1x6_1x5(vec3 const & v);
+
546 
+
551  GLM_FUNC_DECL vec3 unpackUnorm1x5_1x6_1x5(uint16 p);
+
552 
+
557  GLM_FUNC_DECL uint16 packUnorm3x5_1x1(vec4 const & v);
+
558 
+
563  GLM_FUNC_DECL vec4 unpackUnorm3x5_1x1(uint16 p);
+
564 
+
569  GLM_FUNC_DECL uint8 packUnorm2x3_1x2(vec3 const & v);
+
570 
+
575  GLM_FUNC_DECL vec3 unpackUnorm2x3_1x2(uint8 p);
+
577 }// namespace glm
+
578 
+
579 #include "packing.inl"
+
GLM_FUNC_DECL uint64 packSnorm4x16(vec4 const &v)
First, converts each component of the normalized floating-point value v into 16-bit integer values...
+
GLM_FUNC_DECL uint8 packUnorm2x3_1x2(vec3 const &v)
Convert each component of the normalized floating-point vector into unsigned integer values...
+
GLM_GTC_type_precision
+
GLM_FUNC_DECL uint32 packF3x9_E1x5(vec3 const &v)
First, converts the first two components of the normalized floating-point value v into 11-bit signles...
+
GLM_FUNC_DECL vec3 unpackUnorm1x5_1x6_1x5(uint16 p)
Convert each unsigned integer components of a vector to normalized floating-point values...
+
GLM_FUNC_DECL vecType< floatType, P > unpackUnorm(vecType< uintType, P > const &v)
Convert each unsigned integer components of a vector to normalized floating-point values...
+
GLM_FUNC_DECL uint16 packUnorm4x4(vec4 const &v)
Convert each component of the normalized floating-point vector into unsigned integer values...
+
GLM_FUNC_DECL float unpackHalf1x16(uint16 v)
Returns a floating-point scalar with components obtained by unpacking a 16-bit unsigned integer into ...
+
GLM_FUNC_DECL uint16 packSnorm1x16(float v)
First, converts the normalized floating-point value v into 16-bit integer value.
+
GLM_FUNC_DECL uint32 packI3x10_1x2(ivec4 const &v)
Returns an unsigned integer obtained by converting the components of a four-component signed integer ...
+
GLM_FUNC_DECL uint16 packUnorm1x16(float v)
First, converts the normalized floating-point value v into a 16-bit integer value.
+
GLM_FUNC_DECL vec4 unpackUnorm3x10_1x2(uint32 p)
First, unpacks a single 32-bit unsigned integer p into four 16-bit signed integers.
+
GLM_FUNC_DECL uint32 packU3x10_1x2(uvec4 const &v)
Returns an unsigned integer obtained by converting the components of a four-component unsigned intege...
+
highp_vec4 vec4
4 components vector of floating-point numbers.
Definition: type_vec.hpp:466
+
GLM_FUNC_DECL vec4 unpackUnorm4x16(uint64 p)
First, unpacks a single 64-bit unsigned integer p into four 16-bit unsigned integers.
+
GLM_FUNC_DECL vec2 unpackUnorm2x8(uint16 p)
First, unpacks a single 16-bit unsigned integer p into a pair of 8-bit unsigned integers.
+
GLM_FUNC_DECL float unpackUnorm1x16(uint16 p)
First, unpacks a single 16-bit unsigned integer p into a of 16-bit unsigned integers.
+
GLM_FUNC_DECL ivec4 unpackI3x10_1x2(uint32 p)
Unpacks a single 32-bit unsigned integer p into three 10-bit and one 2-bit signed integers...
+
GLM_FUNC_DECL vecType< intType, P > packSnorm(vecType< floatType, P > const &v)
Convert each component of the normalized floating-point vector into signed integer values...
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL vec4 unpackUnorm4x4(uint16 p)
Convert each unsigned integer components of a vector to normalized floating-point values...
+
GLM_FUNC_DECL float unpackUnorm1x8(uint8 p)
Convert a single 8-bit integer to a normalized floating-point value.
+
GLM_FUNC_DECL vecType< floatType, P > unpackSnorm(vecType< intType, P > const &v)
Convert each signed integer components of a vector to normalized floating-point values.
+
GLM_FUNC_DECL vecType< float, P > unpackHalf(vecType< uint16, P > const &p)
Returns a floating-point vector with components obtained by reinterpreting an integer vector as 16-bi...
+
GLM_FUNC_DECL vec4 unpackHalf4x16(uint64 p)
Returns a four-component floating-point vector with components obtained by unpacking a 64-bit unsigne...
+
GLM_FUNC_DECL uint16 packHalf1x16(float v)
Returns an unsigned integer obtained by converting the components of a floating-point scalar to the 1...
+
GLM_FUNC_DECL vec3 unpackF3x9_E1x5(uint32 p)
First, unpacks a single 32-bit unsigned integer p into two 11-bit signless floating-point values and ...
+
GLM_FUNC_DECL uvec4 unpackU3x10_1x2(uint32 p)
Unpacks a single 32-bit unsigned integer p into three 10-bit and one 2-bit unsigned integers...
+
GLM_FUNC_DECL vec3 unpackUnorm2x3_1x2(uint8 p)
Convert each unsigned integer components of a vector to normalized floating-point values...
+
GLM_FUNC_DECL uint16 packUnorm2x8(vec2 const &v)
First, converts each component of the normalized floating-point value v into 8-bit integer values...
+
GLM_FUNC_DECL uint8 packSnorm1x8(float s)
First, converts the normalized floating-point value v into 8-bit integer value.
+
GLM_FUNC_DECL vecType< uint16, P > packHalf(vecType< float, P > const &v)
Returns an unsigned integer vector obtained by converting the components of a floating-point vector t...
+
GLM_FUNC_DECL uint32 packSnorm3x10_1x2(vec4 const &v)
First, converts the first three components of the normalized floating-point value v into 10-bit signe...
+
GLM_FUNC_DECL uint8 packUnorm2x4(vec2 const &v)
Convert each component of the normalized floating-point vector into unsigned integer values...
+
GLM_FUNC_DECL vecType< uintType, P > packUnorm(vecType< floatType, P > const &v)
Convert each component of the normalized floating-point vector into unsigned integer values...
+
highp_uvec4 uvec4
4 components vector of unsigned integer numbers.
Definition: type_vec.hpp:547
+
GLM_FUNC_DECL uint64 packHalf4x16(vec4 const &v)
Returns an unsigned integer obtained by converting the components of a four-component floating-point ...
+
GLM_FUNC_DECL uint16 packUnorm3x5_1x1(vec4 const &v)
Convert each component of the normalized floating-point vector into unsigned integer values...
+
GLM_FUNC_DECL uint16 packUnorm1x5_1x6_1x5(vec3 const &v)
Convert each component of the normalized floating-point vector into unsigned integer values...
+
GLM_FUNC_DECL vec4 unpackSnorm4x16(uint64 p)
First, unpacks a single 64-bit unsigned integer p into four 16-bit signed integers.
+
GLM_FUNC_DECL uint16 packSnorm2x8(vec2 const &v)
First, converts each component of the normalized floating-point value v into 8-bit integer values...
+
GLM_FUNC_DECL uint32 packF2x11_1x10(vec3 const &v)
First, converts the first two components of the normalized floating-point value v into 11-bit signles...
+
GLM_FUNC_DECL float unpackSnorm1x8(uint8 p)
First, unpacks a single 8-bit unsigned integer p into a single 8-bit signed integers.
+
GLM_FUNC_DECL vec2 unpackUnorm2x4(uint8 p)
Convert each unsigned integer components of a vector to normalized floating-point values...
+
GLM_FUNC_DECL float unpackSnorm1x16(uint16 p)
First, unpacks a single 16-bit unsigned integer p into a single 16-bit signed integers.
+
GLM_FUNC_DECL vec2 unpackSnorm2x8(uint16 p)
First, unpacks a single 16-bit unsigned integer p into a pair of 8-bit signed integers.
+
GLM_FUNC_DECL uint8 packUnorm1x8(float v)
First, converts the normalized floating-point value v into a 8-bit integer value. ...
+
highp_vec3 vec3
3 components vector of floating-point numbers.
Definition: type_vec.hpp:461
+
GLM_FUNC_DECL vec4 unpackUnorm3x5_1x1(uint16 p)
Convert each unsigned integer components of a vector to normalized floating-point values...
+
highp_vec2 vec2
2 components vector of floating-point numbers.
Definition: type_vec.hpp:456
+
GLM_FUNC_DECL uint64 packUnorm4x16(vec4 const &v)
First, converts each component of the normalized floating-point value v into 16-bit integer values...
+
GLM_FUNC_DECL vec4 unpackSnorm3x10_1x2(uint32 p)
First, unpacks a single 32-bit unsigned integer p into four 16-bit signed integers.
+
highp_ivec4 ivec4
4 components vector of signed integer numbers.
Definition: type_vec.hpp:520
+
GLM_FUNC_DECL uint32 packUnorm3x10_1x2(vec4 const &v)
First, converts the first three components of the normalized floating-point value v into 10-bit unsig...
+
GLM_FUNC_DECL vec3 unpackF2x11_1x10(uint32 p)
First, unpacks a single 32-bit unsigned integer p into two 11-bit signless floating-point values and ...
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00081.html b/third_party/glm_test/doc/api/a00081.html new file mode 100644 index 0000000000000..69b6e3510b661 --- /dev/null +++ b/third_party/glm_test/doc/api/a00081.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: packing.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
packing.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file packing.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00081_source.html b/third_party/glm_test/doc/api/a00081_source.html new file mode 100644 index 0000000000000..2779db7399d67 --- /dev/null +++ b/third_party/glm_test/doc/api/a00081_source.html @@ -0,0 +1,65 @@ + + + + + + +0.9.8: packing.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
packing.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+ + +
+ + + + diff --git a/third_party/glm_test/doc/api/a00082_source.html b/third_party/glm_test/doc/api/a00082_source.html new file mode 100644 index 0000000000000..6ca7b8cffd52d --- /dev/null +++ b/third_party/glm_test/doc/api/a00082_source.html @@ -0,0 +1,61 @@ + + + + + + +0.9.8: pages.doxy Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
pages.doxy
+
+
+
1 
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00083.html b/third_party/glm_test/doc/api/a00083.html new file mode 100644 index 0000000000000..f837f202f2311 --- /dev/null +++ b/third_party/glm_test/doc/api/a00083.html @@ -0,0 +1,78 @@ + + + + + + +0.9.8: perpendicular.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
perpendicular.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Functions

template<typename vecType >
GLM_FUNC_DECL vecType perp (vecType const &x, vecType const &Normal)
 
+

Detailed Description

+

GLM_GTX_perpendicular

+
See also
GLM Core (dependence)
+
+GLM_GTX_projection (dependence)
+ +

Definition in file perpendicular.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00083_source.html b/third_party/glm_test/doc/api/a00083_source.html new file mode 100644 index 0000000000000..050d14a7f2588 --- /dev/null +++ b/third_party/glm_test/doc/api/a00083_source.html @@ -0,0 +1,84 @@ + + + + + + +0.9.8: perpendicular.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
perpendicular.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "../glm.hpp"
+
18 #include "../gtx/projection.hpp"
+
19 
+
20 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
21 # pragma message("GLM: GLM_GTX_perpendicular extension included")
+
22 #endif
+
23 
+
24 namespace glm
+
25 {
+
28 
+
31  template <typename vecType>
+
32  GLM_FUNC_DECL vecType perp(
+
33  vecType const & x,
+
34  vecType const & Normal);
+
35 
+
37 }//namespace glm
+
38 
+
39 #include "perpendicular.inl"
+
GLM_FUNC_DECL vecType perp(vecType const &x, vecType const &Normal)
Projects x a perpendicular axis of Normal.
+
Definition: _noise.hpp:11
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00084.html b/third_party/glm_test/doc/api/a00084.html new file mode 100644 index 0000000000000..793732af0efc9 --- /dev/null +++ b/third_party/glm_test/doc/api/a00084.html @@ -0,0 +1,79 @@ + + + + + + +0.9.8: polar_coordinates.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
polar_coordinates.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > euclidean (tvec2< T, P > const &polar)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > polar (tvec3< T, P > const &euclidean)
 
+

Detailed Description

+

GLM_GTX_polar_coordinates

+
See also
GLM Core (dependence)
+ +

Definition in file polar_coordinates.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00084_source.html b/third_party/glm_test/doc/api/a00084_source.html new file mode 100644 index 0000000000000..2c2c2a1ec2d2e --- /dev/null +++ b/third_party/glm_test/doc/api/a00084_source.html @@ -0,0 +1,87 @@ + + + + + + +0.9.8: polar_coordinates.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
polar_coordinates.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 
+
18 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
19 # pragma message("GLM: GLM_GTX_polar_coordinates extension included")
+
20 #endif
+
21 
+
22 namespace glm
+
23 {
+
26 
+
30  template <typename T, precision P>
+
31  GLM_FUNC_DECL tvec3<T, P> polar(
+
32  tvec3<T, P> const & euclidean);
+
33 
+
37  template <typename T, precision P>
+
38  GLM_FUNC_DECL tvec3<T, P> euclidean(
+
39  tvec2<T, P> const & polar);
+
40 
+
42 }//namespace glm
+
43 
+
44 #include "polar_coordinates.inl"
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tvec3< T, P > polar(tvec3< T, P > const &euclidean)
Convert Euclidean to Polar coordinates, x is the xz distance, y, the latitude and z the longitude...
+
GLM_FUNC_DECL tvec3< T, P > euclidean(tvec2< T, P > const &polar)
Convert Polar to Euclidean coordinates.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00085.html b/third_party/glm_test/doc/api/a00085.html new file mode 100644 index 0000000000000..8be5648abeb1e --- /dev/null +++ b/third_party/glm_test/doc/api/a00085.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: precision.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
precision.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file precision.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00085_source.html b/third_party/glm_test/doc/api/a00085_source.html new file mode 100644 index 0000000000000..efbdf16965f80 --- /dev/null +++ b/third_party/glm_test/doc/api/a00085_source.html @@ -0,0 +1,123 @@ + + + + + + +0.9.8: precision.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
precision.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "setup.hpp"
+
7 
+
8 namespace glm
+
9 {
+
10  enum precision
+
11  {
+
12  packed_highp,
+
13  packed_mediump,
+
14  packed_lowp,
+
15 
+
16 # if GLM_HAS_ALIGNED_TYPE
+
17  aligned_highp,
+
18  aligned_mediump,
+
19  aligned_lowp,
+
20  aligned = aligned_highp,
+
21 # endif
+
22 
+
23  highp = packed_highp,
+
24  mediump = packed_mediump,
+
25  lowp = packed_lowp,
+
26  packed = packed_highp,
+
27 
+
28 # if GLM_HAS_ALIGNED_TYPE && defined(GLM_FORCE_ALIGNED)
+
29  defaultp = aligned_highp
+
30 # else
+
31  defaultp = highp
+
32 # endif
+
33  };
+
34 
+
35 namespace detail
+
36 {
+
37  template <glm::precision P>
+
38  struct is_aligned
+
39  {
+
40  static const bool value = false;
+
41  };
+
42 
+
43 # if GLM_HAS_ALIGNED_TYPE
+
44  template<>
+
45  struct is_aligned<glm::aligned_lowp>
+
46  {
+
47  static const bool value = true;
+
48  };
+
49 
+
50  template<>
+
51  struct is_aligned<glm::aligned_mediump>
+
52  {
+
53  static const bool value = true;
+
54  };
+
55 
+
56  template<>
+
57  struct is_aligned<glm::aligned_highp>
+
58  {
+
59  static const bool value = true;
+
60  };
+
61 # endif
+
62 }//namespace detail
+
63 }//namespace glm
+
Definition: _noise.hpp:11
+
GLM Core
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00086.html b/third_party/glm_test/doc/api/a00086.html new file mode 100644 index 0000000000000..60718b684c36e --- /dev/null +++ b/third_party/glm_test/doc/api/a00086.html @@ -0,0 +1,76 @@ + + + + + + +0.9.8: projection.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
projection.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Functions

template<typename vecType >
GLM_FUNC_DECL vecType proj (vecType const &x, vecType const &Normal)
 
+

Detailed Description

+

GLM_GTX_projection

+
See also
GLM Core (dependence)
+ +

Definition in file projection.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00086_source.html b/third_party/glm_test/doc/api/a00086_source.html new file mode 100644 index 0000000000000..6feb4244882b8 --- /dev/null +++ b/third_party/glm_test/doc/api/a00086_source.html @@ -0,0 +1,81 @@ + + + + + + +0.9.8: projection.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
projection.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../geometric.hpp"
+
17 
+
18 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
19 # pragma message("GLM: GLM_GTX_projection extension included")
+
20 #endif
+
21 
+
22 namespace glm
+
23 {
+
26 
+
30  template <typename vecType>
+
31  GLM_FUNC_DECL vecType proj(vecType const & x, vecType const & Normal);
+
32 
+
34 }//namespace glm
+
35 
+
36 #include "projection.inl"
+
GLM_FUNC_DECL vecType proj(vecType const &x, vecType const &Normal)
Projects x on Normal.
+
Definition: _noise.hpp:11
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00087.html b/third_party/glm_test/doc/api/a00087.html new file mode 100644 index 0000000000000..c4a956aa0a212 --- /dev/null +++ b/third_party/glm_test/doc/api/a00087.html @@ -0,0 +1,161 @@ + + + + + + +0.9.8: quaternion.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
gtc/quaternion.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL T angle (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > angleAxis (T const &angle, tvec3< T, P > const &axis)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > axis (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > conjugate (tquat< T, P > const &q)
 
template<typename T , precision P, template< typename, precision > class quatType>
GLM_FUNC_DECL T dot (quatType< T, P > const &x, quatType< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > equal (tquat< T, P > const &x, tquat< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > eulerAngles (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > greaterThan (tquat< T, P > const &x, tquat< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > greaterThanEqual (tquat< T, P > const &x, tquat< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > inverse (tquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > isinf (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > isnan (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL T length (tquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > lerp (tquat< T, P > const &x, tquat< T, P > const &y, T a)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > lessThan (tquat< T, P > const &x, tquat< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > lessThanEqual (tquat< T, P > const &x, tquat< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > mat3_cast (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > mat4_cast (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > mix (tquat< T, P > const &x, tquat< T, P > const &y, T a)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > normalize (tquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > notEqual (tquat< T, P > const &x, tquat< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL T pitch (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > quat_cast (tmat3x3< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > quat_cast (tmat4x4< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL T roll (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > rotate (tquat< T, P > const &q, T const &angle, tvec3< T, P > const &axis)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > slerp (tquat< T, P > const &x, tquat< T, P > const &y, T a)
 
template<typename T , precision P>
GLM_FUNC_DECL T yaw (tquat< T, P > const &x)
 
+

Detailed Description

+

GLM_GTC_quaternion

+
See also
GLM Core (dependence)
+
+gtc_half_float (dependence)
+
+GLM_GTC_constants (dependence)
+ +

Definition in file gtc/quaternion.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00087_source.html b/third_party/glm_test/doc/api/a00087_source.html new file mode 100644 index 0000000000000..ffed5f92d0209 --- /dev/null +++ b/third_party/glm_test/doc/api/a00087_source.html @@ -0,0 +1,329 @@ + + + + + + +0.9.8: quaternion.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
gtc/quaternion.hpp
+
+
+Go to the documentation of this file.
1 
+
15 #pragma once
+
16 
+
17 // Dependency:
+
18 #include "../mat3x3.hpp"
+
19 #include "../mat4x4.hpp"
+
20 #include "../vec3.hpp"
+
21 #include "../vec4.hpp"
+
22 #include "../gtc/constants.hpp"
+
23 
+
24 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
25 # pragma message("GLM: GLM_GTC_quaternion extension included")
+
26 #endif
+
27 
+
28 namespace glm
+
29 {
+
32 
+
33  template <typename T, precision P = defaultp>
+
34  struct tquat
+
35  {
+
36  // -- Implementation detail --
+
37 
+
38  typedef tquat<T, P> type;
+
39  typedef T value_type;
+
40 
+
41  // -- Data --
+
42 
+
43 # if GLM_HAS_ALIGNED_TYPE
+
44 # if GLM_COMPILER & GLM_COMPILER_GCC
+
45 # pragma GCC diagnostic push
+
46 # pragma GCC diagnostic ignored "-pedantic"
+
47 # endif
+
48 # if GLM_COMPILER & GLM_COMPILER_CLANG
+
49 # pragma clang diagnostic push
+
50 # pragma clang diagnostic ignored "-Wgnu-anonymous-struct"
+
51 # pragma clang diagnostic ignored "-Wnested-anon-types"
+
52 # endif
+
53 
+
54  union
+
55  {
+
56  struct { T x, y, z, w;};
+
57  typename detail::storage<T, sizeof(T) * 4, detail::is_aligned<P>::value>::type data;
+
58  };
+
59 
+
60 # if GLM_COMPILER & GLM_COMPILER_CLANG
+
61 # pragma clang diagnostic pop
+
62 # endif
+
63 # if GLM_COMPILER & GLM_COMPILER_GCC
+
64 # pragma GCC diagnostic pop
+
65 # endif
+
66 # else
+
67  T x, y, z, w;
+
68 # endif
+
69 
+
70  // -- Component accesses --
+
71 
+
72  typedef length_t length_type;
+
74  GLM_FUNC_DECL GLM_CONSTEXPR length_type length() const;
+
75 
+
76  GLM_FUNC_DECL T & operator[](length_type i);
+
77  GLM_FUNC_DECL T const & operator[](length_type i) const;
+
78 
+
79  // -- Implicit basic constructors --
+
80 
+
81  GLM_FUNC_DECL GLM_CONSTEXPR tquat() GLM_DEFAULT_CTOR;
+
82  GLM_FUNC_DECL GLM_CONSTEXPR tquat(tquat<T, P> const & q) GLM_DEFAULT;
+
83  template <precision Q>
+
84  GLM_FUNC_DECL GLM_CONSTEXPR tquat(tquat<T, Q> const & q);
+
85 
+
86  // -- Explicit basic constructors --
+
87 
+
88  GLM_FUNC_DECL GLM_CONSTEXPR_CTOR explicit tquat(ctor);
+
89  GLM_FUNC_DECL GLM_CONSTEXPR tquat(T const & s, tvec3<T, P> const & v);
+
90  GLM_FUNC_DECL GLM_CONSTEXPR tquat(T const & w, T const & x, T const & y, T const & z);
+
91 
+
92  // -- Conversion constructors --
+
93 
+
94  template <typename U, precision Q>
+
95  GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT tquat(tquat<U, Q> const & q);
+
96 
+
98 # if GLM_HAS_EXPLICIT_CONVERSION_OPERATORS
+
99  GLM_FUNC_DECL explicit operator tmat3x3<T, P>();
+
100  GLM_FUNC_DECL explicit operator tmat4x4<T, P>();
+
101 # endif
+
102 
+
109  GLM_FUNC_DECL tquat(tvec3<T, P> const & u, tvec3<T, P> const & v);
+
110 
+
112  GLM_FUNC_DECL GLM_EXPLICIT tquat(tvec3<T, P> const & eulerAngles);
+
113  GLM_FUNC_DECL GLM_EXPLICIT tquat(tmat3x3<T, P> const & m);
+
114  GLM_FUNC_DECL GLM_EXPLICIT tquat(tmat4x4<T, P> const & m);
+
115 
+
116  // -- Unary arithmetic operators --
+
117 
+
118  GLM_FUNC_DECL tquat<T, P> & operator=(tquat<T, P> const & m) GLM_DEFAULT;
+
119 
+
120  template <typename U>
+
121  GLM_FUNC_DECL tquat<T, P> & operator=(tquat<U, P> const & m);
+
122  template <typename U>
+
123  GLM_FUNC_DECL tquat<T, P> & operator+=(tquat<U, P> const & q);
+
124  template <typename U>
+
125  GLM_FUNC_DECL tquat<T, P> & operator-=(tquat<U, P> const & q);
+
126  template <typename U>
+
127  GLM_FUNC_DECL tquat<T, P> & operator*=(tquat<U, P> const & q);
+
128  template <typename U>
+
129  GLM_FUNC_DECL tquat<T, P> & operator*=(U s);
+
130  template <typename U>
+
131  GLM_FUNC_DECL tquat<T, P> & operator/=(U s);
+
132  };
+
133 
+
134  // -- Unary bit operators --
+
135 
+
136  template <typename T, precision P>
+
137  GLM_FUNC_DECL tquat<T, P> operator+(tquat<T, P> const & q);
+
138 
+
139  template <typename T, precision P>
+
140  GLM_FUNC_DECL tquat<T, P> operator-(tquat<T, P> const & q);
+
141 
+
142  // -- Binary operators --
+
143 
+
144  template <typename T, precision P>
+
145  GLM_FUNC_DECL tquat<T, P> operator+(tquat<T, P> const & q, tquat<T, P> const & p);
+
146 
+
147  template <typename T, precision P>
+
148  GLM_FUNC_DECL tquat<T, P> operator*(tquat<T, P> const & q, tquat<T, P> const & p);
+
149 
+
150  template <typename T, precision P>
+
151  GLM_FUNC_DECL tvec3<T, P> operator*(tquat<T, P> const & q, tvec3<T, P> const & v);
+
152 
+
153  template <typename T, precision P>
+
154  GLM_FUNC_DECL tvec3<T, P> operator*(tvec3<T, P> const & v, tquat<T, P> const & q);
+
155 
+
156  template <typename T, precision P>
+
157  GLM_FUNC_DECL tvec4<T, P> operator*(tquat<T, P> const & q, tvec4<T, P> const & v);
+
158 
+
159  template <typename T, precision P>
+
160  GLM_FUNC_DECL tvec4<T, P> operator*(tvec4<T, P> const & v, tquat<T, P> const & q);
+
161 
+
162  template <typename T, precision P>
+
163  GLM_FUNC_DECL tquat<T, P> operator*(tquat<T, P> const & q, T const & s);
+
164 
+
165  template <typename T, precision P>
+
166  GLM_FUNC_DECL tquat<T, P> operator*(T const & s, tquat<T, P> const & q);
+
167 
+
168  template <typename T, precision P>
+
169  GLM_FUNC_DECL tquat<T, P> operator/(tquat<T, P> const & q, T const & s);
+
170 
+
171  // -- Boolean operators --
+
172 
+
173  template <typename T, precision P>
+
174  GLM_FUNC_DECL bool operator==(tquat<T, P> const & q1, tquat<T, P> const & q2);
+
175 
+
176  template <typename T, precision P>
+
177  GLM_FUNC_DECL bool operator!=(tquat<T, P> const & q1, tquat<T, P> const & q2);
+
178 
+
182  template <typename T, precision P>
+
183  GLM_FUNC_DECL T length(tquat<T, P> const & q);
+
184 
+
188  template <typename T, precision P>
+
189  GLM_FUNC_DECL tquat<T, P> normalize(tquat<T, P> const & q);
+
190 
+
194  template <typename T, precision P, template <typename, precision> class quatType>
+
195  GLM_FUNC_DECL T dot(quatType<T, P> const & x, quatType<T, P> const & y);
+
196 
+
207  template <typename T, precision P>
+
208  GLM_FUNC_DECL tquat<T, P> mix(tquat<T, P> const & x, tquat<T, P> const & y, T a);
+
209 
+
218  template <typename T, precision P>
+
219  GLM_FUNC_DECL tquat<T, P> lerp(tquat<T, P> const & x, tquat<T, P> const & y, T a);
+
220 
+
229  template <typename T, precision P>
+
230  GLM_FUNC_DECL tquat<T, P> slerp(tquat<T, P> const & x, tquat<T, P> const & y, T a);
+
231 
+
235  template <typename T, precision P>
+
236  GLM_FUNC_DECL tquat<T, P> conjugate(tquat<T, P> const & q);
+
237 
+
241  template <typename T, precision P>
+
242  GLM_FUNC_DECL tquat<T, P> inverse(tquat<T, P> const & q);
+
243 
+
251  template <typename T, precision P>
+
252  GLM_FUNC_DECL tquat<T, P> rotate(tquat<T, P> const & q, T const & angle, tvec3<T, P> const & axis);
+
253 
+
258  template <typename T, precision P>
+
259  GLM_FUNC_DECL tvec3<T, P> eulerAngles(tquat<T, P> const & x);
+
260 
+
264  template <typename T, precision P>
+
265  GLM_FUNC_DECL T roll(tquat<T, P> const & x);
+
266 
+
270  template <typename T, precision P>
+
271  GLM_FUNC_DECL T pitch(tquat<T, P> const & x);
+
272 
+
276  template <typename T, precision P>
+
277  GLM_FUNC_DECL T yaw(tquat<T, P> const & x);
+
278 
+
282  template <typename T, precision P>
+
283  GLM_FUNC_DECL tmat3x3<T, P> mat3_cast(tquat<T, P> const & x);
+
284 
+
288  template <typename T, precision P>
+
289  GLM_FUNC_DECL tmat4x4<T, P> mat4_cast(tquat<T, P> const & x);
+
290 
+
294  template <typename T, precision P>
+
295  GLM_FUNC_DECL tquat<T, P> quat_cast(tmat3x3<T, P> const & x);
+
296 
+
300  template <typename T, precision P>
+
301  GLM_FUNC_DECL tquat<T, P> quat_cast(tmat4x4<T, P> const & x);
+
302 
+
306  template <typename T, precision P>
+
307  GLM_FUNC_DECL T angle(tquat<T, P> const & x);
+
308 
+
312  template <typename T, precision P>
+
313  GLM_FUNC_DECL tvec3<T, P> axis(tquat<T, P> const & x);
+
314 
+
321  template <typename T, precision P>
+
322  GLM_FUNC_DECL tquat<T, P> angleAxis(T const & angle, tvec3<T, P> const & axis);
+
323 
+
329  template <typename T, precision P>
+
330  GLM_FUNC_DECL tvec4<bool, P> lessThan(tquat<T, P> const & x, tquat<T, P> const & y);
+
331 
+
337  template <typename T, precision P>
+
338  GLM_FUNC_DECL tvec4<bool, P> lessThanEqual(tquat<T, P> const & x, tquat<T, P> const & y);
+
339 
+
345  template <typename T, precision P>
+
346  GLM_FUNC_DECL tvec4<bool, P> greaterThan(tquat<T, P> const & x, tquat<T, P> const & y);
+
347 
+
353  template <typename T, precision P>
+
354  GLM_FUNC_DECL tvec4<bool, P> greaterThanEqual(tquat<T, P> const & x, tquat<T, P> const & y);
+
355 
+
361  template <typename T, precision P>
+
362  GLM_FUNC_DECL tvec4<bool, P> equal(tquat<T, P> const & x, tquat<T, P> const & y);
+
363 
+
369  template <typename T, precision P>
+
370  GLM_FUNC_DECL tvec4<bool, P> notEqual(tquat<T, P> const & x, tquat<T, P> const & y);
+
371 
+
381  template <typename T, precision P>
+
382  GLM_FUNC_DECL tvec4<bool, P> isnan(tquat<T, P> const & x);
+
383 
+
391  template <typename T, precision P>
+
392  GLM_FUNC_DECL tvec4<bool, P> isinf(tquat<T, P> const & x);
+
393 
+
395 } //namespace glm
+
396 
+
397 #include "quaternion.inl"
+
GLM_FUNC_DECL T roll(tquat< T, P > const &x)
Returns roll value of euler angles expressed in radians.
+
GLM_FUNC_DECL T pitch(tquat< T, P > const &x)
Returns pitch value of euler angles expressed in radians.
+
GLM_FUNC_DECL tvec4< bool, P > equal(tquat< T, P > const &x, tquat< T, P > const &y)
Returns the component-wise comparison of result x == y.
+
GLM_FUNC_DECL tquat< T, P > rotate(tquat< T, P > const &q, T const &angle, tvec3< T, P > const &axis)
Rotates a quaternion from a vector of 3 components axis and an angle.
+
GLM_FUNC_DECL tvec4< bool, P > greaterThanEqual(tquat< T, P > const &x, tquat< T, P > const &y)
Returns the component-wise comparison of result x >= y.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tquat< T, P > quat_cast(tmat4x4< T, P > const &x)
Converts a 4 * 4 matrix to a quaternion.
+
GLM_FUNC_DECL tvec4< bool, P > isnan(tquat< T, P > const &x)
Returns true if x holds a NaN (not a number) representation in the underlying implementation's set of...
+
GLM_FUNC_DECL tquat< T, P > conjugate(tquat< T, P > const &q)
Returns the q conjugate.
+
GLM_FUNC_DECL tvec4< bool, P > greaterThan(tquat< T, P > const &x, tquat< T, P > const &y)
Returns the component-wise comparison of result x > y.
+
GLM_FUNC_DECL tquat< T, P > lerp(tquat< T, P > const &x, tquat< T, P > const &y, T a)
Linear interpolation of two quaternions.
+
GLM_FUNC_DECL tmat4x4< T, P > mat4_cast(tquat< T, P > const &x)
Converts a quaternion to a 4 * 4 matrix.
+
GLM_FUNC_DECL tquat< T, P > normalize(tquat< T, P > const &q)
Returns the normalized quaternion.
+
GLM_FUNC_DECL T length(tquat< T, P > const &q)
Returns the length of the quaternion.
+
GLM_FUNC_DECL tvec3< T, P > axis(tquat< T, P > const &x)
Returns the q rotation axis.
+
GLM_FUNC_DECL T dot(quatType< T, P > const &x, quatType< T, P > const &y)
Returns dot product of q1 and q2, i.e., q1[0] * q2[0] + q1[1] * q2[1] + ...
+
GLM_FUNC_DECL tvec4< bool, P > lessThanEqual(tquat< T, P > const &x, tquat< T, P > const &y)
Returns the component-wise comparison of result x <= y.
+
GLM_FUNC_DECL tvec3< T, P > eulerAngles(tquat< T, P > const &x)
Returns euler angles, pitch as x, yaw as y, roll as z.
+
GLM_FUNC_DECL T angle(tquat< T, P > const &x)
Returns the quaternion rotation angle.
+
GLM_FUNC_DECL tquat< T, P > slerp(tquat< T, P > const &x, tquat< T, P > const &y, T a)
Spherical linear interpolation of two quaternions.
+
GLM_FUNC_DECL tvec4< bool, P > notEqual(tquat< T, P > const &x, tquat< T, P > const &y)
Returns the component-wise comparison of result x != y.
+
GLM_FUNC_DECL tmat3x3< T, P > mat3_cast(tquat< T, P > const &x)
Converts a quaternion to a 3 * 3 matrix.
+
GLM_FUNC_DECL tquat< T, P > angleAxis(T const &angle, tvec3< T, P > const &axis)
Build a quaternion from an angle and a normalized axis.
+
GLM_FUNC_DECL tvec4< bool, P > lessThan(tquat< T, P > const &x, tquat< T, P > const &y)
Returns the component-wise comparison result of x < y.
+
GLM_FUNC_DECL tvec4< bool, P > isinf(tquat< T, P > const &x)
Returns true if x holds a positive infinity or negative infinity representation in the underlying imp...
+
GLM_FUNC_DECL tquat< T, P > mix(tquat< T, P > const &x, tquat< T, P > const &y, T a)
Spherical linear interpolation of two quaternions.
+
GLM_FUNC_DECL tquat< T, P > inverse(tquat< T, P > const &q)
Returns the q inverse.
+
GLM_FUNC_DECL T yaw(tquat< T, P > const &x)
Returns yaw value of euler angles expressed in radians.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00088.html b/third_party/glm_test/doc/api/a00088.html new file mode 100644 index 0000000000000..76a3f544f142f --- /dev/null +++ b/third_party/glm_test/doc/api/a00088.html @@ -0,0 +1,129 @@ + + + + + + +0.9.8: quaternion.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
gtx/quaternion.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > cross (tquat< T, P > const &q, tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > cross (tvec3< T, P > const &v, tquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > exp (tquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL T extractRealComponent (tquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > fastMix (tquat< T, P > const &x, tquat< T, P > const &y, T const &a)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > intermediate (tquat< T, P > const &prev, tquat< T, P > const &curr, tquat< T, P > const &next)
 
template<typename T , precision P>
GLM_FUNC_DECL T length2 (tquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > log (tquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > pow (tquat< T, P > const &x, T const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > rotate (tquat< T, P > const &q, tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< T, P > rotate (tquat< T, P > const &q, tvec4< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > rotation (tvec3< T, P > const &orig, tvec3< T, P > const &dest)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > shortMix (tquat< T, P > const &x, tquat< T, P > const &y, T const &a)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > squad (tquat< T, P > const &q1, tquat< T, P > const &q2, tquat< T, P > const &s1, tquat< T, P > const &s2, T const &h)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > toMat3 (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > toMat4 (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > toQuat (tmat3x3< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > toQuat (tmat4x4< T, P > const &x)
 
+

Detailed Description

+

GLM_GTX_quaternion

+
See also
GLM Core (dependence)
+
+GLM_GTX_extented_min_max (dependence)
+ +

Definition in file gtx/quaternion.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00088_source.html b/third_party/glm_test/doc/api/a00088_source.html new file mode 100644 index 0000000000000..3a089c437ff60 --- /dev/null +++ b/third_party/glm_test/doc/api/a00088_source.html @@ -0,0 +1,189 @@ + + + + + + +0.9.8: quaternion.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
gtx/quaternion.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "../glm.hpp"
+
18 #include "../gtc/constants.hpp"
+
19 #include "../gtc/quaternion.hpp"
+
20 #include "../gtx/norm.hpp"
+
21 
+
22 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
23 # pragma message("GLM: GLM_GTX_quaternion extension included")
+
24 #endif
+
25 
+
26 namespace glm
+
27 {
+
30 
+
34  template<typename T, precision P>
+
35  GLM_FUNC_DECL tvec3<T, P> cross(
+
36  tquat<T, P> const & q,
+
37  tvec3<T, P> const & v);
+
38 
+
42  template<typename T, precision P>
+
43  GLM_FUNC_DECL tvec3<T, P> cross(
+
44  tvec3<T, P> const & v,
+
45  tquat<T, P> const & q);
+
46 
+
51  template<typename T, precision P>
+
52  GLM_FUNC_DECL tquat<T, P> squad(
+
53  tquat<T, P> const & q1,
+
54  tquat<T, P> const & q2,
+
55  tquat<T, P> const & s1,
+
56  tquat<T, P> const & s2,
+
57  T const & h);
+
58 
+
62  template<typename T, precision P>
+
63  GLM_FUNC_DECL tquat<T, P> intermediate(
+
64  tquat<T, P> const & prev,
+
65  tquat<T, P> const & curr,
+
66  tquat<T, P> const & next);
+
67 
+
71  template<typename T, precision P>
+
72  GLM_FUNC_DECL tquat<T, P> exp(
+
73  tquat<T, P> const & q);
+
74 
+
78  template<typename T, precision P>
+
79  GLM_FUNC_DECL tquat<T, P> log(
+
80  tquat<T, P> const & q);
+
81 
+
85  template<typename T, precision P>
+
86  GLM_FUNC_DECL tquat<T, P> pow(
+
87  tquat<T, P> const & x,
+
88  T const & y);
+
89 
+
93  //template<typename T, precision P>
+
94  //tquat<T, P> sqrt(
+
95  // tquat<T, P> const & q);
+
96 
+
100  template<typename T, precision P>
+
101  GLM_FUNC_DECL tvec3<T, P> rotate(
+
102  tquat<T, P> const & q,
+
103  tvec3<T, P> const & v);
+
104 
+
108  template<typename T, precision P>
+
109  GLM_FUNC_DECL tvec4<T, P> rotate(
+
110  tquat<T, P> const & q,
+
111  tvec4<T, P> const & v);
+
112 
+
116  template<typename T, precision P>
+
117  GLM_FUNC_DECL T extractRealComponent(
+
118  tquat<T, P> const & q);
+
119 
+
123  template<typename T, precision P>
+
124  GLM_FUNC_DECL tmat3x3<T, P> toMat3(
+
125  tquat<T, P> const & x){return mat3_cast(x);}
+
126 
+
130  template<typename T, precision P>
+
131  GLM_FUNC_DECL tmat4x4<T, P> toMat4(
+
132  tquat<T, P> const & x){return mat4_cast(x);}
+
133 
+
137  template<typename T, precision P>
+
138  GLM_FUNC_DECL tquat<T, P> toQuat(
+
139  tmat3x3<T, P> const & x){return quat_cast(x);}
+
140 
+
144  template<typename T, precision P>
+
145  GLM_FUNC_DECL tquat<T, P> toQuat(
+
146  tmat4x4<T, P> const & x){return quat_cast(x);}
+
147 
+
151  template<typename T, precision P>
+
152  GLM_FUNC_DECL tquat<T, P> shortMix(
+
153  tquat<T, P> const & x,
+
154  tquat<T, P> const & y,
+
155  T const & a);
+
156 
+
160  template<typename T, precision P>
+
161  GLM_FUNC_DECL tquat<T, P> fastMix(
+
162  tquat<T, P> const & x,
+
163  tquat<T, P> const & y,
+
164  T const & a);
+
165 
+
171  template<typename T, precision P>
+
172  GLM_FUNC_DECL tquat<T, P> rotation(
+
173  tvec3<T, P> const & orig,
+
174  tvec3<T, P> const & dest);
+
175 
+
179  template<typename T, precision P>
+
180  GLM_FUNC_DECL T length2(tquat<T, P> const & q);
+
181 
+
183 }//namespace glm
+
184 
+
185 #include "quaternion.inl"
+
GLM_FUNC_DECL tquat< T, P > pow(tquat< T, P > const &x, T const &y)
Returns x raised to the y power.
+
GLM_FUNC_DECL T length2(tquat< T, P > const &q)
Returns the squared length of x.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tmat4x4< T, P > toMat4(tquat< T, P > const &x)
Converts a quaternion to a 4 * 4 matrix.
+
GLM_FUNC_DECL tvec3< T, P > cross(tvec3< T, P > const &v, tquat< T, P > const &q)
Compute a cross product between a vector and a quaternion.
+
GLM_FUNC_DECL tquat< T, P > shortMix(tquat< T, P > const &x, tquat< T, P > const &y, T const &a)
Quaternion interpolation using the rotation short path.
+
GLM_FUNC_DECL tmat3x3< T, P > toMat3(tquat< T, P > const &x)
Converts a quaternion to a 3 * 3 matrix.
+
GLM_FUNC_DECL tquat< T, P > rotation(tvec3< T, P > const &orig, tvec3< T, P > const &dest)
Compute the rotation between two vectors.
+
GLM_FUNC_DECL tmat4x4< T, P > mat4_cast(tquat< T, P > const &x)
Converts a quaternion to a 4 * 4 matrix.
+
GLM_FUNC_DECL T extractRealComponent(tquat< T, P > const &q)
Extract the real component of a quaternion.
+
GLM_FUNC_DECL tquat< T, P > intermediate(tquat< T, P > const &prev, tquat< T, P > const &curr, tquat< T, P > const &next)
Returns an intermediate control point for squad interpolation.
+
GLM_FUNC_DECL tquat< T, P > exp(tquat< T, P > const &q)
Returns a exp of a quaternion.
+
GLM_FUNC_DECL tvec4< T, P > rotate(tquat< T, P > const &q, tvec4< T, P > const &v)
Rotates a 4 components vector by a quaternion.
+
GLM_FUNC_DECL tquat< T, P > fastMix(tquat< T, P > const &x, tquat< T, P > const &y, T const &a)
Quaternion normalized linear interpolation.
+
GLM_FUNC_DECL tquat< T, P > toQuat(tmat4x4< T, P > const &x)
Converts a 4 * 4 matrix to a quaternion.
+
GLM_FUNC_DECL tquat< T, P > quat_cast(tmat3x3< T, P > const &x)
Converts a 3 * 3 matrix to a quaternion.
+
GLM_FUNC_DECL tmat3x3< T, P > mat3_cast(tquat< T, P > const &x)
Converts a quaternion to a 3 * 3 matrix.
+
GLM_FUNC_DECL tquat< T, P > squad(tquat< T, P > const &q1, tquat< T, P > const &q2, tquat< T, P > const &s1, tquat< T, P > const &s2, T const &h)
Compute a point on a path according squad equation.
+
GLM_FUNC_DECL tquat< T, P > log(tquat< T, P > const &q)
Returns a log of a quaternion.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00089.html b/third_party/glm_test/doc/api/a00089.html new file mode 100644 index 0000000000000..c614afa54f92b --- /dev/null +++ b/third_party/glm_test/doc/api/a00089.html @@ -0,0 +1,98 @@ + + + + + + +0.9.8: random.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
random.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL tvec3< T, defaultp > ballRand (T Radius)
 
template<typename T >
GLM_FUNC_DECL tvec2< T, defaultp > circularRand (T Radius)
 
template<typename T >
GLM_FUNC_DECL tvec2< T, defaultp > diskRand (T Radius)
 
template<typename genType >
GLM_FUNC_DECL genType gaussRand (genType Mean, genType Deviation)
 
template<typename genTYpe >
GLM_FUNC_DECL genTYpe linearRand (genTYpe Min, genTYpe Max)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > linearRand (vecType< T, P > const &Min, vecType< T, P > const &Max)
 
template<typename T >
GLM_FUNC_DECL tvec3< T, defaultp > sphericalRand (T Radius)
 
+

Detailed Description

+

GLM_GTC_random

+
See also
GLM Core (dependence)
+
+gtc_half_float (dependence)
+
+gtx_random (extended)
+ +

Definition in file random.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00089_source.html b/third_party/glm_test/doc/api/a00089_source.html new file mode 100644 index 0000000000000..e5a32d5bccc9e --- /dev/null +++ b/third_party/glm_test/doc/api/a00089_source.html @@ -0,0 +1,115 @@ + + + + + + +0.9.8: random.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
random.hpp
+
+
+Go to the documentation of this file.
1 
+
15 #pragma once
+
16 
+
17 // Dependency:
+
18 #include "../vec2.hpp"
+
19 #include "../vec3.hpp"
+
20 
+
21 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
22 # pragma message("GLM: GLM_GTC_random extension included")
+
23 #endif
+
24 
+
25 namespace glm
+
26 {
+
29 
+
36  template <typename genTYpe>
+
37  GLM_FUNC_DECL genTYpe linearRand(
+
38  genTYpe Min,
+
39  genTYpe Max);
+
40 
+
48  template <typename T, precision P, template <typename, precision> class vecType>
+
49  GLM_FUNC_DECL vecType<T, P> linearRand(
+
50  vecType<T, P> const & Min,
+
51  vecType<T, P> const & Max);
+
52 
+
58  template <typename genType>
+
59  GLM_FUNC_DECL genType gaussRand(
+
60  genType Mean,
+
61  genType Deviation);
+
62 
+
67  template <typename T>
+
68  GLM_FUNC_DECL tvec2<T, defaultp> circularRand(
+
69  T Radius);
+
70 
+
75  template <typename T>
+
76  GLM_FUNC_DECL tvec3<T, defaultp> sphericalRand(
+
77  T Radius);
+
78 
+
83  template <typename T>
+
84  GLM_FUNC_DECL tvec2<T, defaultp> diskRand(
+
85  T Radius);
+
86 
+
91  template <typename T>
+
92  GLM_FUNC_DECL tvec3<T, defaultp> ballRand(
+
93  T Radius);
+
94 
+
96 }//namespace glm
+
97 
+
98 #include "random.inl"
+
GLM_FUNC_DECL tvec3< T, defaultp > sphericalRand(T Radius)
Generate a random 3D vector which coordinates are regulary distributed on a sphere of a given radius...
+
GLM_FUNC_DECL tvec2< T, defaultp > diskRand(T Radius)
Generate a random 2D vector which coordinates are regulary distributed within the area of a disk of a...
+
GLM_FUNC_DECL vecType< T, P > linearRand(vecType< T, P > const &Min, vecType< T, P > const &Max)
Generate random numbers in the interval [Min, Max], according a linear distribution.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tvec3< T, defaultp > ballRand(T Radius)
Generate a random 3D vector which coordinates are regulary distributed within the volume of a ball of...
+
GLM_FUNC_DECL tvec2< T, defaultp > circularRand(T Radius)
Generate a random 2D vector which coordinates are regulary distributed on a circle of a given radius...
+
GLM_FUNC_DECL genType gaussRand(genType Mean, genType Deviation)
Generate random numbers in the interval [Min, Max], according a gaussian distribution.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00090.html b/third_party/glm_test/doc/api/a00090.html new file mode 100644 index 0000000000000..62a0306cf5368 --- /dev/null +++ b/third_party/glm_test/doc/api/a00090.html @@ -0,0 +1,67 @@ + + + + + + +0.9.8: range.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
range.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM_GTX_range

+
Author
Joshua Moerman
+ +

Definition in file range.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00090_source.html b/third_party/glm_test/doc/api/a00090_source.html new file mode 100644 index 0000000000000..35b7ac2749780 --- /dev/null +++ b/third_party/glm_test/doc/api/a00090_source.html @@ -0,0 +1,133 @@ + + + + + + +0.9.8: range.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
range.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependencies
+
16 #include "../detail/setup.hpp"
+
17 
+
18 #if !GLM_HAS_RANGE_FOR
+
19 # error "GLM_GTX_range requires C++11 suppport or 'range for'"
+
20 #endif
+
21 
+
22 #include "../gtc/type_ptr.hpp"
+
23 #include "../gtc/vec1.hpp"
+
24 
+
25 namespace glm
+
26 {
+
29 
+
30  template <typename T, precision P>
+
31  inline length_t components(tvec1<T, P> const & v)
+
32  {
+
33  return v.length();
+
34  }
+
35 
+
36  template <typename T, precision P>
+
37  inline length_t components(tvec2<T, P> const & v)
+
38  {
+
39  return v.length();
+
40  }
+
41 
+
42  template <typename T, precision P>
+
43  inline length_t components(tvec3<T, P> const & v)
+
44  {
+
45  return v.length();
+
46  }
+
47 
+
48  template <typename T, precision P>
+
49  inline length_t components(tvec4<T, P> const & v)
+
50  {
+
51  return v.length();
+
52  }
+
53 
+
54  template <typename genType>
+
55  inline length_t components(genType const & m)
+
56  {
+
57  return m.length() * m[0].length();
+
58  }
+
59 
+
60  template <typename genType>
+
61  inline typename genType::value_type const * begin(genType const & v)
+
62  {
+
63  return value_ptr(v);
+
64  }
+
65 
+
66  template <typename genType>
+
67  inline typename genType::value_type const * end(genType const & v)
+
68  {
+
69  return begin(v) + components(v);
+
70  }
+
71 
+
72  template <typename genType>
+
73  inline typename genType::value_type * begin(genType& v)
+
74  {
+
75  return value_ptr(v);
+
76  }
+
77 
+
78  template <typename genType>
+
79  inline typename genType::value_type * end(genType& v)
+
80  {
+
81  return begin(v) + components(v);
+
82  }
+
83 
+
85 }//namespace glm
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL genType::value_type const * value_ptr(genType const &vec)
Return the constant address to the data of the input parameter.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00091.html b/third_party/glm_test/doc/api/a00091.html new file mode 100644 index 0000000000000..d9af15d044c80 --- /dev/null +++ b/third_party/glm_test/doc/api/a00091.html @@ -0,0 +1,81 @@ + + + + + + +0.9.8: raw_data.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
raw_data.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + +

+Typedefs

typedef detail::uint8 byte
 
typedef detail::uint32 dword
 
typedef detail::uint64 qword
 
typedef detail::uint16 word
 
+

Detailed Description

+

GLM_GTX_raw_data

+
See also
GLM Core (dependence)
+ +

Definition in file raw_data.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00091_source.html b/third_party/glm_test/doc/api/a00091_source.html new file mode 100644 index 0000000000000..af978ee06faf4 --- /dev/null +++ b/third_party/glm_test/doc/api/a00091_source.html @@ -0,0 +1,90 @@ + + + + + + +0.9.8: raw_data.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
raw_data.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependencies
+
16 #include "../detail/setup.hpp"
+
17 #include "../detail/type_int.hpp"
+
18 
+
19 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
20 # pragma message("GLM: GLM_GTX_raw_data extension included")
+
21 #endif
+
22 
+
23 namespace glm
+
24 {
+
27 
+
30  typedef detail::uint8 byte;
+
31 
+
34  typedef detail::uint16 word;
+
35 
+
38  typedef detail::uint32 dword;
+
39 
+
42  typedef detail::uint64 qword;
+
43 
+
45 }// namespace glm
+
46 
+
47 #include "raw_data.inl"
+
detail::uint64 qword
Type for qword numbers.
Definition: raw_data.hpp:42
+
Definition: _noise.hpp:11
+
detail::uint8 byte
Type for byte numbers.
Definition: raw_data.hpp:30
+
detail::uint16 word
Type for word numbers.
Definition: raw_data.hpp:34
+
detail::uint32 dword
Type for dword numbers.
Definition: raw_data.hpp:38
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00092.html b/third_party/glm_test/doc/api/a00092.html new file mode 100644 index 0000000000000..cacd7fa208923 --- /dev/null +++ b/third_party/glm_test/doc/api/a00092.html @@ -0,0 +1,109 @@ + + + + + + +0.9.8: reciprocal.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
reciprocal.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType acot (genType x)
 
template<typename genType >
GLM_FUNC_DECL genType acoth (genType x)
 
template<typename genType >
GLM_FUNC_DECL genType acsc (genType x)
 
template<typename genType >
GLM_FUNC_DECL genType acsch (genType x)
 
template<typename genType >
GLM_FUNC_DECL genType asec (genType x)
 
template<typename genType >
GLM_FUNC_DECL genType asech (genType x)
 
template<typename genType >
GLM_FUNC_DECL genType cot (genType angle)
 
template<typename genType >
GLM_FUNC_DECL genType coth (genType angle)
 
template<typename genType >
GLM_FUNC_DECL genType csc (genType angle)
 
template<typename genType >
GLM_FUNC_DECL genType csch (genType angle)
 
template<typename genType >
GLM_FUNC_DECL genType sec (genType angle)
 
template<typename genType >
GLM_FUNC_DECL genType sech (genType angle)
 
+

Detailed Description

+

GLM_GTC_reciprocal

+
See also
GLM Core (dependence)
+ +

Definition in file reciprocal.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00092_source.html b/third_party/glm_test/doc/api/a00092_source.html new file mode 100644 index 0000000000000..0a7798f1e80ba --- /dev/null +++ b/third_party/glm_test/doc/api/a00092_source.html @@ -0,0 +1,126 @@ + + + + + + +0.9.8: reciprocal.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
reciprocal.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependencies
+
16 #include "../detail/setup.hpp"
+
17 
+
18 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
19 # pragma message("GLM: GLM_GTC_reciprocal extension included")
+
20 #endif
+
21 
+
22 namespace glm
+
23 {
+
26 
+
33  template <typename genType>
+
34  GLM_FUNC_DECL genType sec(genType angle);
+
35 
+
42  template <typename genType>
+
43  GLM_FUNC_DECL genType csc(genType angle);
+
44 
+
51  template <typename genType>
+
52  GLM_FUNC_DECL genType cot(genType angle);
+
53 
+
60  template <typename genType>
+
61  GLM_FUNC_DECL genType asec(genType x);
+
62 
+
69  template <typename genType>
+
70  GLM_FUNC_DECL genType acsc(genType x);
+
71 
+
78  template <typename genType>
+
79  GLM_FUNC_DECL genType acot(genType x);
+
80 
+
86  template <typename genType>
+
87  GLM_FUNC_DECL genType sech(genType angle);
+
88 
+
94  template <typename genType>
+
95  GLM_FUNC_DECL genType csch(genType angle);
+
96 
+
102  template <typename genType>
+
103  GLM_FUNC_DECL genType coth(genType angle);
+
104 
+
111  template <typename genType>
+
112  GLM_FUNC_DECL genType asech(genType x);
+
113 
+
120  template <typename genType>
+
121  GLM_FUNC_DECL genType acsch(genType x);
+
122 
+
129  template <typename genType>
+
130  GLM_FUNC_DECL genType acoth(genType x);
+
131 
+
133 }//namespace glm
+
134 
+
135 #include "reciprocal.inl"
+
GLM_FUNC_DECL genType csc(genType angle)
Cosecant function.
+
GLM_FUNC_DECL genType coth(genType angle)
Cotangent hyperbolic function.
+
GLM_FUNC_DECL genType sech(genType angle)
Secant hyperbolic function.
+
GLM_FUNC_DECL genType acot(genType x)
Inverse cotangent function.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL genType cot(genType angle)
Cotangent function.
+
GLM_FUNC_DECL genType asech(genType x)
Inverse secant hyperbolic function.
+
GLM_FUNC_DECL genType sec(genType angle)
Secant function.
+
GLM_FUNC_DECL T angle(tquat< T, P > const &x)
Returns the quaternion rotation angle.
+
GLM_FUNC_DECL genType acsc(genType x)
Inverse cosecant function.
+
GLM_FUNC_DECL genType acoth(genType x)
Inverse cotangent hyperbolic function.
+
GLM_FUNC_DECL genType asec(genType x)
Inverse secant function.
+
GLM_FUNC_DECL genType csch(genType angle)
Cosecant hyperbolic function.
+
GLM_FUNC_DECL genType acsch(genType x)
Inverse cosecant hyperbolic function.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00093.html b/third_party/glm_test/doc/api/a00093.html new file mode 100644 index 0000000000000..6040ad20ccb3c --- /dev/null +++ b/third_party/glm_test/doc/api/a00093.html @@ -0,0 +1,83 @@ + + + + + + +0.9.8: rotate_normalized_axis.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
rotate_normalized_axis.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > rotateNormalizedAxis (tmat4x4< T, P > const &m, T const &angle, tvec3< T, P > const &axis)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > rotateNormalizedAxis (tquat< T, P > const &q, T const &angle, tvec3< T, P > const &axis)
 
+

Detailed Description

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00093_source.html b/third_party/glm_test/doc/api/a00093_source.html new file mode 100644 index 0000000000000..6c2b2ac74556b --- /dev/null +++ b/third_party/glm_test/doc/api/a00093_source.html @@ -0,0 +1,94 @@ + + + + + + +0.9.8: rotate_normalized_axis.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
rotate_normalized_axis.hpp
+
+
+Go to the documentation of this file.
1 
+
15 #pragma once
+
16 
+
17 // Dependency:
+
18 #include "../glm.hpp"
+
19 #include "../gtc/epsilon.hpp"
+
20 #include "../gtc/quaternion.hpp"
+
21 
+
22 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
23 # pragma message("GLM: GLM_GTX_rotate_normalized_axis extension included")
+
24 #endif
+
25 
+
26 namespace glm
+
27 {
+
30 
+
42  template <typename T, precision P>
+
43  GLM_FUNC_DECL tmat4x4<T, P> rotateNormalizedAxis(
+
44  tmat4x4<T, P> const & m,
+
45  T const & angle,
+
46  tvec3<T, P> const & axis);
+
47 
+
55  template <typename T, precision P>
+
56  GLM_FUNC_DECL tquat<T, P> rotateNormalizedAxis(
+
57  tquat<T, P> const & q,
+
58  T const & angle,
+
59  tvec3<T, P> const & axis);
+
60 
+
62 }//namespace glm
+
63 
+
64 #include "rotate_normalized_axis.inl"
+
GLM_FUNC_DECL tquat< T, P > rotateNormalizedAxis(tquat< T, P > const &q, T const &angle, tvec3< T, P > const &axis)
Rotates a quaternion from a vector of 3 components normalized axis and an angle.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tvec3< T, P > axis(tquat< T, P > const &x)
Returns the q rotation axis.
+
GLM_FUNC_DECL T angle(tquat< T, P > const &x)
Returns the quaternion rotation angle.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00094.html b/third_party/glm_test/doc/api/a00094.html new file mode 100644 index 0000000000000..ac05ee74bbfac --- /dev/null +++ b/third_party/glm_test/doc/api/a00094.html @@ -0,0 +1,108 @@ + + + + + + +0.9.8: rotate_vector.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
rotate_vector.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > orientation (tvec3< T, P > const &Normal, tvec3< T, P > const &Up)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec2< T, P > rotate (tvec2< T, P > const &v, T const &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > rotate (tvec3< T, P > const &v, T const &angle, tvec3< T, P > const &normal)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< T, P > rotate (tvec4< T, P > const &v, T const &angle, tvec3< T, P > const &normal)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > rotateX (tvec3< T, P > const &v, T const &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< T, P > rotateX (tvec4< T, P > const &v, T const &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > rotateY (tvec3< T, P > const &v, T const &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< T, P > rotateY (tvec4< T, P > const &v, T const &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > rotateZ (tvec3< T, P > const &v, T const &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< T, P > rotateZ (tvec4< T, P > const &v, T const &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > slerp (tvec3< T, P > const &x, tvec3< T, P > const &y, T const &a)
 
+

Detailed Description

+

GLM_GTX_rotate_vector

+
See also
GLM Core (dependence)
+
+GLM_GTX_transform (dependence)
+ +

Definition in file rotate_vector.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00094_source.html b/third_party/glm_test/doc/api/a00094_source.html new file mode 100644 index 0000000000000..b97dd436fcf40 --- /dev/null +++ b/third_party/glm_test/doc/api/a00094_source.html @@ -0,0 +1,143 @@ + + + + + + +0.9.8: rotate_vector.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
rotate_vector.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "../glm.hpp"
+
18 #include "../gtx/transform.hpp"
+
19 
+
20 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
21 # pragma message("GLM: GLM_GTX_rotate_vector extension included")
+
22 #endif
+
23 
+
24 namespace glm
+
25 {
+
28 
+
36  template <typename T, precision P>
+
37  GLM_FUNC_DECL tvec3<T, P> slerp(
+
38  tvec3<T, P> const & x,
+
39  tvec3<T, P> const & y,
+
40  T const & a);
+
41 
+
44  template <typename T, precision P>
+
45  GLM_FUNC_DECL tvec2<T, P> rotate(
+
46  tvec2<T, P> const & v,
+
47  T const & angle);
+
48 
+
51  template <typename T, precision P>
+
52  GLM_FUNC_DECL tvec3<T, P> rotate(
+
53  tvec3<T, P> const & v,
+
54  T const & angle,
+
55  tvec3<T, P> const & normal);
+
56 
+
59  template <typename T, precision P>
+
60  GLM_FUNC_DECL tvec4<T, P> rotate(
+
61  tvec4<T, P> const & v,
+
62  T const & angle,
+
63  tvec3<T, P> const & normal);
+
64 
+
67  template <typename T, precision P>
+
68  GLM_FUNC_DECL tvec3<T, P> rotateX(
+
69  tvec3<T, P> const & v,
+
70  T const & angle);
+
71 
+
74  template <typename T, precision P>
+
75  GLM_FUNC_DECL tvec3<T, P> rotateY(
+
76  tvec3<T, P> const & v,
+
77  T const & angle);
+
78 
+
81  template <typename T, precision P>
+
82  GLM_FUNC_DECL tvec3<T, P> rotateZ(
+
83  tvec3<T, P> const & v,
+
84  T const & angle);
+
85 
+
88  template <typename T, precision P>
+
89  GLM_FUNC_DECL tvec4<T, P> rotateX(
+
90  tvec4<T, P> const & v,
+
91  T const & angle);
+
92 
+
95  template <typename T, precision P>
+
96  GLM_FUNC_DECL tvec4<T, P> rotateY(
+
97  tvec4<T, P> const & v,
+
98  T const & angle);
+
99 
+
102  template <typename T, precision P>
+
103  GLM_FUNC_DECL tvec4<T, P> rotateZ(
+
104  tvec4<T, P> const & v,
+
105  T const & angle);
+
106 
+
109  template <typename T, precision P>
+
110  GLM_FUNC_DECL tmat4x4<T, P> orientation(
+
111  tvec3<T, P> const & Normal,
+
112  tvec3<T, P> const & Up);
+
113 
+
115 }//namespace glm
+
116 
+
117 #include "rotate_vector.inl"
+
GLM_FUNC_DECL tmat4x4< T, P > orientation(tvec3< T, P > const &Normal, tvec3< T, P > const &Up)
Build a rotation matrix from a normal and a up vector.
+
GLM_FUNC_DECL tvec4< T, P > rotate(tvec4< T, P > const &v, T const &angle, tvec3< T, P > const &normal)
Rotate a four dimensional vector around an axis.
+
GLM_FUNC_DECL tvec4< T, P > rotateZ(tvec4< T, P > const &v, T const &angle)
Rotate a four dimensional vector around the X axis.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tvec4< T, P > rotateY(tvec4< T, P > const &v, T const &angle)
Rotate a four dimensional vector around the X axis.
+
GLM_FUNC_DECL tvec3< T, P > slerp(tvec3< T, P > const &x, tvec3< T, P > const &y, T const &a)
Returns Spherical interpolation between two vectors.
+
GLM_FUNC_DECL T angle(tquat< T, P > const &x)
Returns the quaternion rotation angle.
+
GLM_FUNC_DECL tvec4< T, P > rotateX(tvec4< T, P > const &v, T const &angle)
Rotate a four dimentionnals vector around the X axis.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00095.html b/third_party/glm_test/doc/api/a00095.html new file mode 100644 index 0000000000000..0c2f74f2f6bee --- /dev/null +++ b/third_party/glm_test/doc/api/a00095.html @@ -0,0 +1,126 @@ + + + + + + +0.9.8: round.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
round.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType ceilMultiple (genType Source, genType Multiple)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > ceilMultiple (vecType< T, P > const &Source, vecType< T, P > const &Multiple)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType ceilPowerOfTwo (genIUType Value)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > ceilPowerOfTwo (vecType< T, P > const &value)
 
template<typename genType >
GLM_FUNC_DECL genType floorMultiple (genType Source, genType Multiple)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > floorMultiple (vecType< T, P > const &Source, vecType< T, P > const &Multiple)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType floorPowerOfTwo (genIUType Value)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > floorPowerOfTwo (vecType< T, P > const &value)
 
template<typename genIUType >
GLM_FUNC_DECL bool isMultiple (genIUType Value, genIUType Multiple)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > isMultiple (vecType< T, P > const &Value, T Multiple)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > isMultiple (vecType< T, P > const &Value, vecType< T, P > const &Multiple)
 
template<typename genIUType >
GLM_FUNC_DECL bool isPowerOfTwo (genIUType Value)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > isPowerOfTwo (vecType< T, P > const &value)
 
template<typename genType >
GLM_FUNC_DECL genType roundMultiple (genType Source, genType Multiple)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > roundMultiple (vecType< T, P > const &Source, vecType< T, P > const &Multiple)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType roundPowerOfTwo (genIUType Value)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > roundPowerOfTwo (vecType< T, P > const &value)
 
+

Detailed Description

+

GLM_GTC_round

+
See also
GLM Core (dependence)
+
+GLM_GTC_round (dependence)
+ +

Definition in file round.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00095_source.html b/third_party/glm_test/doc/api/a00095_source.html new file mode 100644 index 0000000000000..32abd5b67f804 --- /dev/null +++ b/third_party/glm_test/doc/api/a00095_source.html @@ -0,0 +1,149 @@ + + + + + + +0.9.8: round.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
round.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependencies
+
17 #include "../detail/setup.hpp"
+
18 #include "../detail/precision.hpp"
+
19 #include "../detail/_vectorize.hpp"
+
20 #include "../vector_relational.hpp"
+
21 #include "../common.hpp"
+
22 #include <limits>
+
23 
+
24 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
25 # pragma message("GLM: GLM_GTC_integer extension included")
+
26 #endif
+
27 
+
28 namespace glm
+
29 {
+
32 
+
36  template <typename genIUType>
+
37  GLM_FUNC_DECL bool isPowerOfTwo(genIUType Value);
+
38 
+
42  template <typename T, precision P, template <typename, precision> class vecType>
+
43  GLM_FUNC_DECL vecType<bool, P> isPowerOfTwo(vecType<T, P> const & value);
+
44 
+
49  template <typename genIUType>
+
50  GLM_FUNC_DECL genIUType ceilPowerOfTwo(genIUType Value);
+
51 
+
56  template <typename T, precision P, template <typename, precision> class vecType>
+
57  GLM_FUNC_DECL vecType<T, P> ceilPowerOfTwo(vecType<T, P> const & value);
+
58 
+
63  template <typename genIUType>
+
64  GLM_FUNC_DECL genIUType floorPowerOfTwo(genIUType Value);
+
65 
+
70  template <typename T, precision P, template <typename, precision> class vecType>
+
71  GLM_FUNC_DECL vecType<T, P> floorPowerOfTwo(vecType<T, P> const & value);
+
72 
+
76  template <typename genIUType>
+
77  GLM_FUNC_DECL genIUType roundPowerOfTwo(genIUType Value);
+
78 
+
82  template <typename T, precision P, template <typename, precision> class vecType>
+
83  GLM_FUNC_DECL vecType<T, P> roundPowerOfTwo(vecType<T, P> const & value);
+
84 
+
88  template <typename genIUType>
+
89  GLM_FUNC_DECL bool isMultiple(genIUType Value, genIUType Multiple);
+
90 
+
94  template <typename T, precision P, template <typename, precision> class vecType>
+
95  GLM_FUNC_DECL vecType<bool, P> isMultiple(vecType<T, P> const & Value, T Multiple);
+
96 
+
100  template <typename T, precision P, template <typename, precision> class vecType>
+
101  GLM_FUNC_DECL vecType<bool, P> isMultiple(vecType<T, P> const & Value, vecType<T, P> const & Multiple);
+
102 
+
110  template <typename genType>
+
111  GLM_FUNC_DECL genType ceilMultiple(genType Source, genType Multiple);
+
112 
+
120  template <typename T, precision P, template <typename, precision> class vecType>
+
121  GLM_FUNC_DECL vecType<T, P> ceilMultiple(vecType<T, P> const & Source, vecType<T, P> const & Multiple);
+
122 
+
130  template <typename genType>
+
131  GLM_FUNC_DECL genType floorMultiple(
+
132  genType Source,
+
133  genType Multiple);
+
134 
+
142  template <typename T, precision P, template <typename, precision> class vecType>
+
143  GLM_FUNC_DECL vecType<T, P> floorMultiple(
+
144  vecType<T, P> const & Source,
+
145  vecType<T, P> const & Multiple);
+
146 
+
154  template <typename genType>
+
155  GLM_FUNC_DECL genType roundMultiple(
+
156  genType Source,
+
157  genType Multiple);
+
158 
+
166  template <typename T, precision P, template <typename, precision> class vecType>
+
167  GLM_FUNC_DECL vecType<T, P> roundMultiple(
+
168  vecType<T, P> const & Source,
+
169  vecType<T, P> const & Multiple);
+
170 
+
172 } //namespace glm
+
173 
+
174 #include "round.inl"
+
GLM_FUNC_DECL vecType< bool, P > isPowerOfTwo(vecType< T, P > const &value)
Return true if the value is a power of two number.
+
GLM_FUNC_DECL vecType< bool, P > isMultiple(vecType< T, P > const &Value, vecType< T, P > const &Multiple)
Return true if the 'Value' is a multiple of 'Multiple'.
+
GLM_FUNC_DECL vecType< T, P > ceilMultiple(vecType< T, P > const &Source, vecType< T, P > const &Multiple)
Higher multiple number of Source.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL vecType< T, P > roundPowerOfTwo(vecType< T, P > const &value)
Return the power of two number which value is the closet to the input value.
+
GLM_FUNC_DECL vecType< T, P > roundMultiple(vecType< T, P > const &Source, vecType< T, P > const &Multiple)
Lower multiple number of Source.
+
GLM_FUNC_DECL vecType< T, P > floorPowerOfTwo(vecType< T, P > const &value)
Return the power of two number which value is just lower the input value, round down to a power of tw...
+
GLM_FUNC_DECL vecType< T, P > ceilPowerOfTwo(vecType< T, P > const &value)
Return the power of two number which value is just higher the input value, round up to a power of two...
+
GLM_FUNC_DECL vecType< T, P > floorMultiple(vecType< T, P > const &Source, vecType< T, P > const &Multiple)
Lower multiple number of Source.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00096.html b/third_party/glm_test/doc/api/a00096.html new file mode 100644 index 0000000000000..2ccd042b4dec4 --- /dev/null +++ b/third_party/glm_test/doc/api/a00096.html @@ -0,0 +1,69 @@ + + + + + + +0.9.8: scalar_multiplication.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
scalar_multiplication.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GTX Extensions (Experimental)

+
Author
Joshua Moerman
+

Enables scalar multiplication for all types

+

Since GLSL is very strict about types, the following (often used) combinations do not work: double * vec4 int * vec4 vec4 / int So we'll fix that! Of course "float * vec4" should remain the same (hence the enable_if magic)

+ +

Definition in file scalar_multiplication.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00096_source.html b/third_party/glm_test/doc/api/a00096_source.html new file mode 100644 index 0000000000000..d345a481b7069 --- /dev/null +++ b/third_party/glm_test/doc/api/a00096_source.html @@ -0,0 +1,131 @@ + + + + + + +0.9.8: scalar_multiplication.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
scalar_multiplication.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 #include "../detail/setup.hpp"
+
16 
+
17 #if !GLM_HAS_TEMPLATE_ALIASES && !(GLM_COMPILER & GLM_COMPILER_GCC)
+
18 # error "GLM_GTX_scalar_multiplication requires C++11 support or alias templates and if not support for GCC"
+
19 #endif
+
20 
+
21 #include "../vec2.hpp"
+
22 #include "../vec3.hpp"
+
23 #include "../vec4.hpp"
+
24 #include "../mat2x2.hpp"
+
25 #include <type_traits>
+
26 
+
27 namespace glm
+
28 {
+
29  template <typename T, typename Vec>
+
30  using return_type_scalar_multiplication = typename std::enable_if<
+
31  !std::is_same<T, float>::value // T may not be a float
+
32  && std::is_arithmetic<T>::value, Vec // But it may be an int or double (no vec3 or mat3, ...)
+
33  >::type;
+
34 
+
35 #define GLM_IMPLEMENT_SCAL_MULT(Vec) \
+
36  template <typename T> \
+
37  return_type_scalar_multiplication<T, Vec> \
+
38  operator*(T const & s, Vec rh){ \
+
39  return rh *= static_cast<float>(s); \
+
40  } \
+
41  \
+
42  template <typename T> \
+
43  return_type_scalar_multiplication<T, Vec> \
+
44  operator*(Vec lh, T const & s){ \
+
45  return lh *= static_cast<float>(s); \
+
46  } \
+
47  \
+
48  template <typename T> \
+
49  return_type_scalar_multiplication<T, Vec> \
+
50  operator/(Vec lh, T const & s){ \
+
51  return lh *= 1.0f / s; \
+
52  }
+
53 
+
54 GLM_IMPLEMENT_SCAL_MULT(vec2)
+
55 GLM_IMPLEMENT_SCAL_MULT(vec3)
+
56 GLM_IMPLEMENT_SCAL_MULT(vec4)
+
57 
+
58 GLM_IMPLEMENT_SCAL_MULT(mat2)
+
59 GLM_IMPLEMENT_SCAL_MULT(mat2x3)
+
60 GLM_IMPLEMENT_SCAL_MULT(mat2x4)
+
61 GLM_IMPLEMENT_SCAL_MULT(mat3x2)
+
62 GLM_IMPLEMENT_SCAL_MULT(mat3)
+
63 GLM_IMPLEMENT_SCAL_MULT(mat3x4)
+
64 GLM_IMPLEMENT_SCAL_MULT(mat4x2)
+
65 GLM_IMPLEMENT_SCAL_MULT(mat4x3)
+
66 GLM_IMPLEMENT_SCAL_MULT(mat4)
+
67 
+
68 #undef GLM_IMPLEMENT_SCAL_MULT
+
69 } // namespace glm
+
highp_mat2x4 mat2x4
2 columns of 4 components matrix of floating-point numbers.
Definition: type_mat.hpp:369
+
mat2x2 mat2
2 columns of 2 components matrix of floating-point numbers.
Definition: type_mat.hpp:406
+
highp_mat2x3 mat2x3
2 columns of 3 components matrix of floating-point numbers.
Definition: type_mat.hpp:364
+
highp_vec4 vec4
4 components vector of floating-point numbers.
Definition: type_vec.hpp:466
+
highp_mat3x2 mat3x2
3 columns of 2 components matrix of floating-point numbers.
Definition: type_mat.hpp:374
+
highp_mat3x4 mat3x4
3 columns of 4 components matrix of floating-point numbers.
Definition: type_mat.hpp:384
+
mat3x3 mat3
3 columns of 3 components matrix of floating-point numbers.
Definition: type_mat.hpp:411
+
Definition: _noise.hpp:11
+
mat4x4 mat4
4 columns of 4 components matrix of floating-point numbers.
Definition: type_mat.hpp:416
+
highp_mat4x2 mat4x2
4 columns of 2 components matrix of floating-point numbers.
Definition: type_mat.hpp:389
+
highp_vec3 vec3
3 components vector of floating-point numbers.
Definition: type_vec.hpp:461
+
highp_vec2 vec2
2 components vector of floating-point numbers.
Definition: type_vec.hpp:456
+
highp_mat4x3 mat4x3
4 columns of 3 components matrix of floating-point numbers.
Definition: type_mat.hpp:394
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00097.html b/third_party/glm_test/doc/api/a00097.html new file mode 100644 index 0000000000000..db54a90cf3182 --- /dev/null +++ b/third_party/glm_test/doc/api/a00097.html @@ -0,0 +1,67 @@ + + + + + + +0.9.8: scalar_relational.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
scalar_relational.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM_GTX_scalar_relational

+
See also
GLM Core (dependence)
+ +

Definition in file scalar_relational.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00097_source.html b/third_party/glm_test/doc/api/a00097_source.html new file mode 100644 index 0000000000000..cd93b2bc1f63d --- /dev/null +++ b/third_party/glm_test/doc/api/a00097_source.html @@ -0,0 +1,79 @@ + + + + + + +0.9.8: scalar_relational.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
scalar_relational.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 
+
18 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
19 # pragma message("GLM: GLM_GTX_extend extension included")
+
20 #endif
+
21 
+
22 namespace glm
+
23 {
+
26 
+
27 
+
28 
+
30 }//namespace glm
+
31 
+
32 #include "scalar_relational.inl"
+
Definition: _noise.hpp:11
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00098.html b/third_party/glm_test/doc/api/a00098.html new file mode 100644 index 0000000000000..c1b642c9e1f98 --- /dev/null +++ b/third_party/glm_test/doc/api/a00098.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: setup.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
setup.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file setup.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00098_source.html b/third_party/glm_test/doc/api/a00098_source.html new file mode 100644 index 0000000000000..2c5ed2879c1dd --- /dev/null +++ b/third_party/glm_test/doc/api/a00098_source.html @@ -0,0 +1,827 @@ + + + + + + +0.9.8: setup.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
setup.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #if (defined(GLM_FORCE_SWIZZLE) || defined(GLM_SWIZZLE)) && defined(GLM_FORCE_UNRESTRICTED_GENTYPE)
+
7 # error "Both GLM_FORCE_SWIZZLE and GLM_FORCE_UNRESTRICTED_GENTYPE can't be defined at the same time"
+
8 #endif
+
9 
+
11 // Messages
+
12 
+
13 #ifdef GLM_MESSAGES
+
14 # pragma message("GLM: GLM_MESSAGES is deprecated, use GLM_FORCE_MESSAGES instead")
+
15 #endif
+
16 
+
17 #define GLM_MESSAGES_ENABLED 1
+
18 #define GLM_MESSAGES_DISABLE 0
+
19 
+
20 #if defined(GLM_FORCE_MESSAGES) || defined(GLM_MESSAGES)
+
21 # undef GLM_MESSAGES
+
22 # define GLM_MESSAGES GLM_MESSAGES_ENABLED
+
23 #else
+
24 # undef GLM_MESSAGES
+
25 # define GLM_MESSAGES GLM_MESSAGES_DISABLE
+
26 #endif
+
27 
+
28 #include <cassert>
+
29 #include <cstddef>
+
30 #include "../simd/platform.h"
+
31 
+
33 // Version
+
34 
+
35 #define GLM_VERSION 98
+
36 #define GLM_VERSION_MAJOR 0
+
37 #define GLM_VERSION_MINOR 9
+
38 #define GLM_VERSION_PATCH 8
+
39 #define GLM_VERSION_REVISION 0
+
40 
+
41 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_MESSAGE_VERSION_DISPLAYED)
+
42 # define GLM_MESSAGE_VERSION_DISPLAYED
+
43 # pragma message ("GLM: version 0.9.8.0")
+
44 #endif//GLM_MESSAGES
+
45 
+
46 // Report compiler detection
+
47 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_MESSAGE_COMPILER_DISPLAYED)
+
48 # define GLM_MESSAGE_COMPILER_DISPLAYED
+
49 # if GLM_COMPILER & GLM_COMPILER_CUDA
+
50 # pragma message("GLM: CUDA compiler detected")
+
51 # elif GLM_COMPILER & GLM_COMPILER_VC
+
52 # pragma message("GLM: Visual C++ compiler detected")
+
53 # elif GLM_COMPILER & GLM_COMPILER_CLANG
+
54 # pragma message("GLM: Clang compiler detected")
+
55 # elif GLM_COMPILER & GLM_COMPILER_INTEL
+
56 # pragma message("GLM: Intel Compiler detected")
+
57 # elif GLM_COMPILER & GLM_COMPILER_GCC
+
58 # pragma message("GLM: GCC compiler detected")
+
59 # else
+
60 # pragma message("GLM: Compiler not detected")
+
61 # endif
+
62 #endif//GLM_MESSAGES
+
63 
+
65 // Build model
+
66 
+
67 #if defined(__arch64__) || defined(__LP64__) || defined(_M_X64) || defined(__ppc64__) || defined(__x86_64__)
+
68 # define GLM_MODEL GLM_MODEL_64
+
69 #elif defined(__i386__) || defined(__ppc__)
+
70 # define GLM_MODEL GLM_MODEL_32
+
71 #else
+
72 # define GLM_MODEL GLM_MODEL_32
+
73 #endif//
+
74 
+
75 #if !defined(GLM_MODEL) && GLM_COMPILER != 0
+
76 # error "GLM_MODEL undefined, your compiler may not be supported by GLM. Add #define GLM_MODEL 0 to ignore this message."
+
77 #endif//GLM_MODEL
+
78 
+
79 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_MESSAGE_MODEL_DISPLAYED)
+
80 # define GLM_MESSAGE_MODEL_DISPLAYED
+
81 # if(GLM_MODEL == GLM_MODEL_64)
+
82 # pragma message("GLM: 64 bits model")
+
83 # elif(GLM_MODEL == GLM_MODEL_32)
+
84 # pragma message("GLM: 32 bits model")
+
85 # endif//GLM_MODEL
+
86 #endif//GLM_MESSAGES
+
87 
+
88 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_MESSAGE_ARCH_DISPLAYED)
+
89 # define GLM_MESSAGE_ARCH_DISPLAYED
+
90 # if(GLM_ARCH == GLM_ARCH_PURE)
+
91 # pragma message("GLM: Platform independent code")
+
92 # elif(GLM_ARCH == GLM_ARCH_AVX2)
+
93 # pragma message("GLM: AVX2 instruction set")
+
94 # elif(GLM_ARCH == GLM_ARCH_AVX)
+
95 # pragma message("GLM: AVX instruction set")
+
96 # elif(GLM_ARCH == GLM_ARCH_SSE42)
+
97 # pragma message("GLM: SSE4.2 instruction set")
+
98 # elif(GLM_ARCH == GLM_ARCH_SSE41)
+
99 # pragma message("GLM: SSE4.1 instruction set")
+
100 # elif(GLM_ARCH == GLM_ARCH_SSSE3)
+
101 # pragma message("GLM: SSSE3 instruction set")
+
102 # elif(GLM_ARCH == GLM_ARCH_SSE3)
+
103 # pragma message("GLM: SSE3 instruction set")
+
104 # elif(GLM_ARCH == GLM_ARCH_SSE2)
+
105 # pragma message("GLM: SSE2 instruction set")
+
106 # elif(GLM_ARCH == GLM_ARCH_X86)
+
107 # pragma message("GLM: x86 instruction set")
+
108 # elif(GLM_ARCH == GLM_ARCH_NEON)
+
109 # pragma message("GLM: NEON instruction set")
+
110 # elif(GLM_ARCH == GLM_ARCH_ARM)
+
111 # pragma message("GLM: ARM instruction set")
+
112 # elif(GLM_ARCH == GLM_ARCH_MIPS)
+
113 # pragma message("GLM: MIPS instruction set")
+
114 # elif(GLM_ARCH == GLM_ARCH_PPC)
+
115 # pragma message("GLM: PowerPC architechture")
+
116 # endif//GLM_ARCH
+
117 #endif//GLM_MESSAGES
+
118 
+
120 // C++ Version
+
121 
+
122 // User defines: GLM_FORCE_CXX98, GLM_FORCE_CXX03, GLM_FORCE_CXX11, GLM_FORCE_CXX14
+
123 
+
124 #define GLM_LANG_CXX98_FLAG (1 << 1)
+
125 #define GLM_LANG_CXX03_FLAG (1 << 2)
+
126 #define GLM_LANG_CXX0X_FLAG (1 << 3)
+
127 #define GLM_LANG_CXX11_FLAG (1 << 4)
+
128 #define GLM_LANG_CXX1Y_FLAG (1 << 5)
+
129 #define GLM_LANG_CXX14_FLAG (1 << 6)
+
130 #define GLM_LANG_CXX1Z_FLAG (1 << 7)
+
131 #define GLM_LANG_CXXMS_FLAG (1 << 8)
+
132 #define GLM_LANG_CXXGNU_FLAG (1 << 9)
+
133 
+
134 #define GLM_LANG_CXX98 GLM_LANG_CXX98_FLAG
+
135 #define GLM_LANG_CXX03 (GLM_LANG_CXX98 | GLM_LANG_CXX03_FLAG)
+
136 #define GLM_LANG_CXX0X (GLM_LANG_CXX03 | GLM_LANG_CXX0X_FLAG)
+
137 #define GLM_LANG_CXX11 (GLM_LANG_CXX0X | GLM_LANG_CXX11_FLAG)
+
138 #define GLM_LANG_CXX1Y (GLM_LANG_CXX11 | GLM_LANG_CXX1Y_FLAG)
+
139 #define GLM_LANG_CXX14 (GLM_LANG_CXX1Y | GLM_LANG_CXX14_FLAG)
+
140 #define GLM_LANG_CXX1Z (GLM_LANG_CXX14 | GLM_LANG_CXX1Z_FLAG)
+
141 #define GLM_LANG_CXXMS GLM_LANG_CXXMS_FLAG
+
142 #define GLM_LANG_CXXGNU GLM_LANG_CXXGNU_FLAG
+
143 
+
144 #if defined(GLM_FORCE_CXX14)
+
145 # undef GLM_FORCE_CXX11
+
146 # undef GLM_FORCE_CXX03
+
147 # undef GLM_FORCE_CXX98
+
148 # define GLM_LANG GLM_LANG_CXX14
+
149 #elif defined(GLM_FORCE_CXX11)
+
150 # undef GLM_FORCE_CXX03
+
151 # undef GLM_FORCE_CXX98
+
152 # define GLM_LANG GLM_LANG_CXX11
+
153 #elif defined(GLM_FORCE_CXX03)
+
154 # undef GLM_FORCE_CXX98
+
155 # define GLM_LANG GLM_LANG_CXX03
+
156 #elif defined(GLM_FORCE_CXX98)
+
157 # define GLM_LANG GLM_LANG_CXX98
+
158 #else
+
159 # if GLM_COMPILER & GLM_COMPILER_CLANG
+
160 # if __cplusplus >= 201402L // GLM_COMPILER_CLANG34 + -std=c++14
+
161 # define GLM_LANG GLM_LANG_CXX14
+
162 # elif __has_feature(cxx_decltype_auto) && __has_feature(cxx_aggregate_nsdmi) // GLM_COMPILER_CLANG33 + -std=c++1y
+
163 # define GLM_LANG GLM_LANG_CXX1Y
+
164 # elif __cplusplus >= 201103L // GLM_COMPILER_CLANG33 + -std=c++11
+
165 # define GLM_LANG GLM_LANG_CXX11
+
166 # elif __has_feature(cxx_static_assert) // GLM_COMPILER_CLANG29 + -std=c++11
+
167 # define GLM_LANG GLM_LANG_CXX0X
+
168 # elif __cplusplus >= 199711L
+
169 # define GLM_LANG GLM_LANG_CXX98
+
170 # else
+
171 # define GLM_LANG GLM_LANG_CXX
+
172 # endif
+
173 # elif GLM_COMPILER & GLM_COMPILER_GCC
+
174 # if __cplusplus >= 201402L
+
175 # define GLM_LANG GLM_LANG_CXX14
+
176 # elif __cplusplus >= 201103L
+
177 # define GLM_LANG GLM_LANG_CXX11
+
178 # elif defined(__GXX_EXPERIMENTAL_CXX0X__)
+
179 # define GLM_LANG GLM_LANG_CXX0X
+
180 # else
+
181 # define GLM_LANG GLM_LANG_CXX98
+
182 # endif
+
183 # elif GLM_COMPILER & GLM_COMPILER_VC
+
184 # ifdef _MSC_EXTENSIONS
+
185 # if __cplusplus >= 201402L
+
186 # define GLM_LANG (GLM_LANG_CXX14 | GLM_LANG_CXXMS_FLAG)
+
187 //# elif GLM_COMPILER >= GLM_COMPILER_VC2015
+
188 //# define GLM_LANG (GLM_LANG_CXX1Y | GLM_LANG_CXXMS_FLAG)
+
189 # elif __cplusplus >= 201103L
+
190 # define GLM_LANG (GLM_LANG_CXX11 | GLM_LANG_CXXMS_FLAG)
+
191 # elif GLM_COMPILER >= GLM_COMPILER_VC2010
+
192 # define GLM_LANG (GLM_LANG_CXX0X | GLM_LANG_CXXMS_FLAG)
+
193 # elif __cplusplus >= 199711L
+
194 # define GLM_LANG (GLM_LANG_CXX98 | GLM_LANG_CXXMS_FLAG)
+
195 # else
+
196 # define GLM_LANG (GLM_LANG_CXX | GLM_LANG_CXXMS_FLAG)
+
197 # endif
+
198 # else
+
199 # if __cplusplus >= 201402L
+
200 # define GLM_LANG GLM_LANG_CXX14
+
201 # elif __cplusplus >= 201103L
+
202 # define GLM_LANG GLM_LANG_CXX11
+
203 # elif GLM_COMPILER >= GLM_COMPILER_VC2010
+
204 # define GLM_LANG GLM_LANG_CXX0X
+
205 # elif __cplusplus >= 199711L
+
206 # define GLM_LANG GLM_LANG_CXX98
+
207 # else
+
208 # define GLM_LANG GLM_LANG_CXX
+
209 # endif
+
210 # endif
+
211 # elif GLM_COMPILER & GLM_COMPILER_INTEL
+
212 # ifdef _MSC_EXTENSIONS
+
213 # define GLM_MSC_EXT GLM_LANG_CXXMS_FLAG
+
214 # else
+
215 # define GLM_MSC_EXT 0
+
216 # endif
+
217 # if __cplusplus >= 201402L
+
218 # define GLM_LANG (GLM_LANG_CXX14 | GLM_MSC_EXT)
+
219 # elif __cplusplus >= 201103L
+
220 # define GLM_LANG (GLM_LANG_CXX11 | GLM_MSC_EXT)
+
221 # elif __INTEL_CXX11_MODE__
+
222 # define GLM_LANG (GLM_LANG_CXX0X | GLM_MSC_EXT)
+
223 # elif __cplusplus >= 199711L
+
224 # define GLM_LANG (GLM_LANG_CXX98 | GLM_MSC_EXT)
+
225 # else
+
226 # define GLM_LANG (GLM_LANG_CXX | GLM_MSC_EXT)
+
227 # endif
+
228 # elif GLM_COMPILER & GLM_COMPILER_CUDA
+
229 # ifdef _MSC_EXTENSIONS
+
230 # define GLM_MSC_EXT GLM_LANG_CXXMS_FLAG
+
231 # else
+
232 # define GLM_MSC_EXT 0
+
233 # endif
+
234 # if GLM_COMPILER >= GLM_COMPILER_CUDA75
+
235 # define GLM_LANG (GLM_LANG_CXX0X | GLM_MSC_EXT)
+
236 # else
+
237 # define GLM_LANG (GLM_LANG_CXX98 | GLM_MSC_EXT)
+
238 # endif
+
239 # else // Unknown compiler
+
240 # if __cplusplus >= 201402L
+
241 # define GLM_LANG GLM_LANG_CXX14
+
242 # elif __cplusplus >= 201103L
+
243 # define GLM_LANG GLM_LANG_CXX11
+
244 # elif __cplusplus >= 199711L
+
245 # define GLM_LANG GLM_LANG_CXX98
+
246 # else
+
247 # define GLM_LANG GLM_LANG_CXX // Good luck with that!
+
248 # endif
+
249 # ifndef GLM_FORCE_PURE
+
250 # define GLM_FORCE_PURE
+
251 # endif
+
252 # endif
+
253 #endif
+
254 
+
255 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_MESSAGE_LANG_DISPLAYED)
+
256 # define GLM_MESSAGE_LANG_DISPLAYED
+
257 
+
258 # if GLM_LANG & GLM_LANG_CXX1Z_FLAG
+
259 # pragma message("GLM: C++1z")
+
260 # elif GLM_LANG & GLM_LANG_CXX14_FLAG
+
261 # pragma message("GLM: C++14")
+
262 # elif GLM_LANG & GLM_LANG_CXX1Y_FLAG
+
263 # pragma message("GLM: C++1y")
+
264 # elif GLM_LANG & GLM_LANG_CXX11_FLAG
+
265 # pragma message("GLM: C++11")
+
266 # elif GLM_LANG & GLM_LANG_CXX0X_FLAG
+
267 # pragma message("GLM: C++0x")
+
268 # elif GLM_LANG & GLM_LANG_CXX03_FLAG
+
269 # pragma message("GLM: C++03")
+
270 # elif GLM_LANG & GLM_LANG_CXX98_FLAG
+
271 # pragma message("GLM: C++98")
+
272 # else
+
273 # pragma message("GLM: C++ language undetected")
+
274 # endif//GLM_LANG
+
275 
+
276 # if GLM_LANG & (GLM_LANG_CXXGNU_FLAG | GLM_LANG_CXXMS_FLAG)
+
277 # pragma message("GLM: Language extensions enabled")
+
278 # endif//GLM_LANG
+
279 #endif//GLM_MESSAGES
+
280 
+
282 // Has of C++ features
+
283 
+
284 // http://clang.llvm.org/cxx_status.html
+
285 // http://gcc.gnu.org/projects/cxx0x.html
+
286 // http://msdn.microsoft.com/en-us/library/vstudio/hh567368(v=vs.120).aspx
+
287 
+
288 #if GLM_COMPILER & GLM_COMPILER_CLANG
+
289 # if defined(_LIBCPP_VERSION) && GLM_LANG & GLM_LANG_CXX11_FLAG
+
290 # define GLM_HAS_CXX11_STL 1
+
291 # else
+
292 # define GLM_HAS_CXX11_STL 0
+
293 # endif
+
294 #else
+
295 # define GLM_HAS_CXX11_STL ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\
+
296  ((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC48)) || \
+
297  ((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2013)) || \
+
298  ((GLM_PLATFORM != GLM_PLATFORM_WINDOWS) && (GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_COMPILER >= GLM_COMPILER_INTEL15))))
+
299 #endif
+
300 
+
301 // N1720
+
302 #if GLM_COMPILER & GLM_COMPILER_CLANG
+
303 # define GLM_HAS_STATIC_ASSERT __has_feature(cxx_static_assert)
+
304 #elif GLM_LANG & GLM_LANG_CXX11_FLAG
+
305 # define GLM_HAS_STATIC_ASSERT 1
+
306 #else
+
307 # define GLM_HAS_STATIC_ASSERT ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\
+
308  ((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC43)) || \
+
309  ((GLM_COMPILER & GLM_COMPILER_CUDA)) || \
+
310  ((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2010))))
+
311 #endif
+
312 
+
313 // N1988
+
314 #if GLM_LANG & GLM_LANG_CXX11_FLAG
+
315 # define GLM_HAS_EXTENDED_INTEGER_TYPE 1
+
316 #else
+
317 # define GLM_HAS_EXTENDED_INTEGER_TYPE (\
+
318  ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2012)) || \
+
319  ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_CUDA)) || \
+
320  ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC43)) || \
+
321  ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (GLM_COMPILER & GLM_COMPILER_CLANG) && (GLM_COMPILER >= GLM_COMPILER_CLANG30)))
+
322 #endif
+
323 
+
324 // N2235
+
325 #if GLM_COMPILER & GLM_COMPILER_CLANG
+
326 # define GLM_HAS_CONSTEXPR __has_feature(cxx_constexpr)
+
327 # define GLM_HAS_CONSTEXPR_PARTIAL GLM_HAS_CONSTEXPR
+
328 #elif GLM_LANG & GLM_LANG_CXX11_FLAG
+
329 # define GLM_HAS_CONSTEXPR 1
+
330 # define GLM_HAS_CONSTEXPR_PARTIAL GLM_HAS_CONSTEXPR
+
331 #else
+
332 # define GLM_HAS_CONSTEXPR ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\
+
333  ((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC48)))) // GCC 4.6 support constexpr but there is a compiler bug causing a crash
+
334 # define GLM_HAS_CONSTEXPR_PARTIAL (GLM_HAS_CONSTEXPR || ((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2015)))
+
335 #endif
+
336 
+
337 // N2672
+
338 #if GLM_COMPILER & GLM_COMPILER_CLANG
+
339 # define GLM_HAS_INITIALIZER_LISTS __has_feature(cxx_generalized_initializers)
+
340 #elif GLM_LANG & GLM_LANG_CXX11_FLAG
+
341 # define GLM_HAS_INITIALIZER_LISTS 1
+
342 #else
+
343 # define GLM_HAS_INITIALIZER_LISTS ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\
+
344  ((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC44)) || \
+
345  ((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2013)) || \
+
346  ((GLM_COMPILER & GLM_COMPILER_CUDA) && (GLM_COMPILER >= GLM_COMPILER_CUDA75))))
+
347 #endif
+
348 
+
349 // N2544 Unrestricted unions http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2544.pdf
+
350 #if GLM_COMPILER & GLM_COMPILER_CLANG
+
351 # define GLM_HAS_UNRESTRICTED_UNIONS __has_feature(cxx_unrestricted_unions)
+
352 #elif GLM_LANG & (GLM_LANG_CXX11_FLAG | GLM_LANG_CXXMS_FLAG)
+
353 # define GLM_HAS_UNRESTRICTED_UNIONS 1
+
354 #else
+
355 # define GLM_HAS_UNRESTRICTED_UNIONS (GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\
+
356  ((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_LANG & GLM_LANG_CXXMS_FLAG)) || \
+
357  ((GLM_COMPILER & GLM_COMPILER_CUDA) && (GLM_COMPILER >= GLM_COMPILER_CUDA75)) || \
+
358  ((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC46)))
+
359 #endif
+
360 
+
361 // N2346
+
362 #if defined(GLM_FORCE_UNRESTRICTED_GENTYPE)
+
363 # define GLM_HAS_DEFAULTED_FUNCTIONS 0
+
364 #elif GLM_COMPILER & GLM_COMPILER_CLANG
+
365 # define GLM_HAS_DEFAULTED_FUNCTIONS __has_feature(cxx_defaulted_functions)
+
366 #elif GLM_LANG & GLM_LANG_CXX11_FLAG
+
367 # define GLM_HAS_DEFAULTED_FUNCTIONS 1
+
368 #else
+
369 # define GLM_HAS_DEFAULTED_FUNCTIONS ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\
+
370  ((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC44)) || \
+
371  ((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2013)) || \
+
372  ((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_COMPILER >= GLM_COMPILER_INTEL12)) || \
+
373  (GLM_COMPILER & GLM_COMPILER_CUDA)))
+
374 #endif
+
375 
+
376 // N2118
+
377 #if GLM_COMPILER & GLM_COMPILER_CLANG
+
378 # define GLM_HAS_RVALUE_REFERENCES __has_feature(cxx_rvalue_references)
+
379 #elif GLM_LANG & GLM_LANG_CXX11_FLAG
+
380 # define GLM_HAS_RVALUE_REFERENCES 1
+
381 #else
+
382 # define GLM_HAS_RVALUE_REFERENCES ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\
+
383  ((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC43)) || \
+
384  ((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2012)) || \
+
385  ((GLM_COMPILER & GLM_COMPILER_CUDA) && (GLM_COMPILER >= GLM_COMPILER_CUDA50))))
+
386 #endif
+
387 
+
388 // N2437 http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2437.pdf
+
389 #if GLM_COMPILER & GLM_COMPILER_CLANG
+
390 # define GLM_HAS_EXPLICIT_CONVERSION_OPERATORS __has_feature(cxx_explicit_conversions)
+
391 #elif GLM_LANG & GLM_LANG_CXX11_FLAG
+
392 # define GLM_HAS_EXPLICIT_CONVERSION_OPERATORS 1
+
393 #else
+
394 # define GLM_HAS_EXPLICIT_CONVERSION_OPERATORS ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\
+
395  ((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC45)) || \
+
396  ((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_COMPILER >= GLM_COMPILER_INTEL14)) || \
+
397  ((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2013)) || \
+
398  ((GLM_COMPILER & GLM_COMPILER_CUDA) && (GLM_COMPILER >= GLM_COMPILER_CUDA50))))
+
399 #endif
+
400 
+
401 // N2258 http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2007/n2258.pdf
+
402 #if GLM_COMPILER & GLM_COMPILER_CLANG
+
403 # define GLM_HAS_TEMPLATE_ALIASES __has_feature(cxx_alias_templates)
+
404 #elif GLM_LANG & GLM_LANG_CXX11_FLAG
+
405 # define GLM_HAS_TEMPLATE_ALIASES 1
+
406 #else
+
407 # define GLM_HAS_TEMPLATE_ALIASES ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\
+
408  ((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_COMPILER >= GLM_COMPILER_INTEL12_1)) || \
+
409  ((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC47)) || \
+
410  ((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2013)) || \
+
411  ((GLM_COMPILER & GLM_COMPILER_CUDA) && (GLM_COMPILER >= GLM_COMPILER_CUDA50))))
+
412 #endif
+
413 
+
414 // N2930 http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2009/n2930.html
+
415 #if GLM_COMPILER & GLM_COMPILER_CLANG
+
416 # define GLM_HAS_RANGE_FOR __has_feature(cxx_range_for)
+
417 #elif GLM_LANG & GLM_LANG_CXX11_FLAG
+
418 # define GLM_HAS_RANGE_FOR 1
+
419 #else
+
420 # define GLM_HAS_RANGE_FOR ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\
+
421  ((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC46)) || \
+
422  ((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_COMPILER >= GLM_COMPILER_INTEL13)) || \
+
423  ((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2012)) || \
+
424  ((GLM_COMPILER & GLM_COMPILER_CUDA) && (GLM_COMPILER >= GLM_COMPILER_CUDA50))))
+
425 #endif
+
426 
+
427 //
+
428 #if GLM_LANG & GLM_LANG_CXX11_FLAG
+
429 # define GLM_HAS_ASSIGNABLE 1
+
430 #else
+
431 # define GLM_HAS_ASSIGNABLE ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\
+
432  ((GLM_COMPILER & GLM_COMPILER_GCC) && (GLM_COMPILER >= GLM_COMPILER_GCC49))))
+
433 #endif
+
434 
+
435 //
+
436 #define GLM_HAS_TRIVIAL_QUERIES 0
+
437 
+
438 //
+
439 #if GLM_LANG & GLM_LANG_CXX11_FLAG
+
440 # define GLM_HAS_MAKE_SIGNED 1
+
441 #else
+
442 # define GLM_HAS_MAKE_SIGNED ((GLM_LANG & GLM_LANG_CXX0X_FLAG) && (\
+
443  ((GLM_COMPILER & GLM_COMPILER_VC) && (GLM_COMPILER >= GLM_COMPILER_VC2013)) || \
+
444  ((GLM_COMPILER & GLM_COMPILER_CUDA) && (GLM_COMPILER >= GLM_COMPILER_CUDA50))))
+
445 #endif
+
446 
+
447 #if GLM_ARCH == GLM_ARCH_PURE
+
448 # define GLM_HAS_BITSCAN_WINDOWS 0
+
449 #else
+
450 # define GLM_HAS_BITSCAN_WINDOWS ((GLM_PLATFORM & GLM_PLATFORM_WINDOWS) && (\
+
451  (GLM_COMPILER & (GLM_COMPILER_VC | GLM_COMPILER_INTEL))))
+
452 #endif
+
453 
+
454 // OpenMP
+
455 #ifdef _OPENMP
+
456 # if GLM_COMPILER & GLM_COMPILER_GCC
+
457 # if GLM_COMPILER >= GLM_COMPILER_GCC61
+
458 # define GLM_HAS_OPENMP 45
+
459 # elif GLM_COMPILER >= GLM_COMPILER_GCC49
+
460 # define GLM_HAS_OPENMP 40
+
461 # elif GLM_COMPILER >= GLM_COMPILER_GCC47
+
462 # define GLM_HAS_OPENMP 31
+
463 # elif GLM_COMPILER >= GLM_COMPILER_GCC44
+
464 # define GLM_HAS_OPENMP 30
+
465 # elif GLM_COMPILER >= GLM_COMPILER_GCC42
+
466 # define GLM_HAS_OPENMP 25
+
467 # else
+
468 # define GLM_HAS_OPENMP 0
+
469 # endif
+
470 # elif GLM_COMPILER & GLM_COMPILER_CLANG
+
471 # if GLM_COMPILER >= GLM_COMPILER_CLANG38
+
472 # define GLM_HAS_OPENMP 31
+
473 # else
+
474 # define GLM_HAS_OPENMP 0
+
475 # endif
+
476 # elif GLM_COMPILER & GLM_COMPILER_VC
+
477 # if GLM_COMPILER >= GLM_COMPILER_VC2010
+
478 # define GLM_HAS_OPENMP 20
+
479 # else
+
480 # define GLM_HAS_OPENMP 0
+
481 # endif
+
482 # elif GLM_COMPILER & GLM_COMPILER_INTEL
+
483 # if GLM_COMPILER >= GLM_COMPILER_INTEL16
+
484 # define GLM_HAS_OPENMP 40
+
485 # elif GLM_COMPILER >= GLM_COMPILER_INTEL12
+
486 # define GLM_HAS_OPENMP 31
+
487 # else
+
488 # define GLM_HAS_OPENMP 0
+
489 # endif
+
490 # else
+
491 # define GLM_HAS_OPENMP 0
+
492 # endif// GLM_COMPILER & GLM_COMPILER_VC
+
493 #endif
+
494 
+
496 // Static assert
+
497 
+
498 #if GLM_HAS_STATIC_ASSERT
+
499 # define GLM_STATIC_ASSERT(x, message) static_assert(x, message)
+
500 #elif defined(BOOST_STATIC_ASSERT)
+
501 # define GLM_STATIC_ASSERT(x, message) BOOST_STATIC_ASSERT(x)
+
502 #elif GLM_COMPILER & GLM_COMPILER_VC
+
503 # define GLM_STATIC_ASSERT(x, message) typedef char __CASSERT__##__LINE__[(x) ? 1 : -1]
+
504 #else
+
505 # define GLM_STATIC_ASSERT(x, message)
+
506 # define GLM_STATIC_ASSERT_NULL
+
507 #endif//GLM_LANG
+
508 
+
510 // Qualifiers
+
511 
+
512 #if GLM_COMPILER & GLM_COMPILER_CUDA
+
513 # define GLM_CUDA_FUNC_DEF __device__ __host__
+
514 # define GLM_CUDA_FUNC_DECL __device__ __host__
+
515 #else
+
516 # define GLM_CUDA_FUNC_DEF
+
517 # define GLM_CUDA_FUNC_DECL
+
518 #endif
+
519 
+
520 #if GLM_COMPILER & GLM_COMPILER_GCC
+
521 # define GLM_VAR_USED __attribute__ ((unused))
+
522 #else
+
523 # define GLM_VAR_USED
+
524 #endif
+
525 
+
526 #if defined(GLM_FORCE_INLINE)
+
527 # if GLM_COMPILER & GLM_COMPILER_VC
+
528 # define GLM_INLINE __forceinline
+
529 # define GLM_NEVER_INLINE __declspec((noinline))
+
530 # elif GLM_COMPILER & (GLM_COMPILER_GCC | GLM_COMPILER_CLANG)
+
531 # define GLM_INLINE inline __attribute__((__always_inline__))
+
532 # define GLM_NEVER_INLINE __attribute__((__noinline__))
+
533 # elif GLM_COMPILER & GLM_COMPILER_CUDA
+
534 # define GLM_INLINE __forceinline__
+
535 # define GLM_NEVER_INLINE __noinline__
+
536 # else
+
537 # define GLM_INLINE inline
+
538 # define GLM_NEVER_INLINE
+
539 # endif//GLM_COMPILER
+
540 #else
+
541 # define GLM_INLINE inline
+
542 # define GLM_NEVER_INLINE
+
543 #endif//defined(GLM_FORCE_INLINE)
+
544 
+
545 #define GLM_FUNC_DECL GLM_CUDA_FUNC_DECL
+
546 #define GLM_FUNC_QUALIFIER GLM_CUDA_FUNC_DEF GLM_INLINE
+
547 
+
549 // Swizzle operators
+
550 
+
551 // User defines: GLM_FORCE_SWIZZLE
+
552 
+
553 #ifdef GLM_SWIZZLE
+
554 # pragma message("GLM: GLM_SWIZZLE is deprecated, use GLM_FORCE_SWIZZLE instead")
+
555 #endif
+
556 
+
557 #define GLM_SWIZZLE_ENABLED 1
+
558 #define GLM_SWIZZLE_DISABLE 0
+
559 
+
560 #if defined(GLM_FORCE_SWIZZLE) || defined(GLM_SWIZZLE)
+
561 # undef GLM_SWIZZLE
+
562 # define GLM_SWIZZLE GLM_SWIZZLE_ENABLED
+
563 #else
+
564 # undef GLM_SWIZZLE
+
565 # define GLM_SWIZZLE GLM_SWIZZLE_DISABLE
+
566 #endif
+
567 
+
568 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_MESSAGE_SWIZZLE_DISPLAYED)
+
569 # define GLM_MESSAGE_SWIZZLE_DISPLAYED
+
570 # if GLM_SWIZZLE == GLM_SWIZZLE_ENABLED
+
571 # pragma message("GLM: Swizzling operators enabled")
+
572 # else
+
573 # pragma message("GLM: Swizzling operators disabled, #define GLM_SWIZZLE to enable swizzle operators")
+
574 # endif
+
575 #endif//GLM_MESSAGES
+
576 
+
578 // Allows using not basic types as genType
+
579 
+
580 // #define GLM_FORCE_UNRESTRICTED_GENTYPE
+
581 
+
582 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_MESSAGE_UNRESTRICTED_GENTYPE_DISPLAYED)
+
583 # define GLM_MESSAGE_UNRESTRICTED_GENTYPE_DISPLAYED
+
584 # ifdef GLM_FORCE_UNRESTRICTED_GENTYPE
+
585 # pragma message("GLM: Use unrestricted genType")
+
586 # endif
+
587 #endif//GLM_MESSAGES
+
588 
+
590 // Clip control
+
591 
+
592 #ifdef GLM_DEPTH_ZERO_TO_ONE // Legacy 0.9.8 development
+
593 # error Define GLM_FORCE_DEPTH_ZERO_TO_ONE instead of GLM_DEPTH_ZERO_TO_ONE to use 0 to 1 clip space.
+
594 #endif
+
595 
+
596 #define GLM_DEPTH_ZERO_TO_ONE 0x00000001
+
597 #define GLM_DEPTH_NEGATIVE_ONE_TO_ONE 0x00000002
+
598 
+
599 #ifdef GLM_FORCE_DEPTH_ZERO_TO_ONE
+
600 # define GLM_DEPTH_CLIP_SPACE GLM_DEPTH_ZERO_TO_ONE
+
601 #else
+
602 # define GLM_DEPTH_CLIP_SPACE GLM_DEPTH_NEGATIVE_ONE_TO_ONE
+
603 #endif
+
604 
+
605 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_MESSAGE_DEPTH_DISPLAYED)
+
606 # define GLM_MESSAGE_DEPTH_DISPLAYED
+
607 # if GLM_DEPTH_CLIP_SPACE == GLM_DEPTH_ZERO_TO_ONE
+
608 # pragma message("GLM: Depth clip space: Zero to one")
+
609 # else
+
610 # pragma message("GLM: Depth clip space: negative one to one")
+
611 # endif
+
612 #endif//GLM_MESSAGES
+
613 
+
615 // Coordinate system, define GLM_FORCE_LEFT_HANDED before including GLM
+
616 // to use left handed coordinate system by default.
+
617 
+
618 #ifdef GLM_LEFT_HANDED // Legacy 0.9.8 development
+
619 # error Define GLM_FORCE_LEFT_HANDED instead of GLM_LEFT_HANDED left handed coordinate system by default.
+
620 #endif
+
621 
+
622 #define GLM_LEFT_HANDED 0x00000001 // For DirectX, Metal, Vulkan
+
623 #define GLM_RIGHT_HANDED 0x00000002 // For OpenGL, default in GLM
+
624 
+
625 #ifdef GLM_FORCE_LEFT_HANDED
+
626 # define GLM_COORDINATE_SYSTEM GLM_LEFT_HANDED
+
627 #else
+
628 # define GLM_COORDINATE_SYSTEM GLM_RIGHT_HANDED
+
629 #endif
+
630 
+
631 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_MESSAGE_HANDED_DISPLAYED)
+
632 # define GLM_MESSAGE_HANDED_DISPLAYED
+
633 # if GLM_COORDINATE_SYSTEM == GLM_LEFT_HANDED
+
634 # pragma message("GLM: Coordinate system: left handed")
+
635 # else
+
636 # pragma message("GLM: Coordinate system: right handed")
+
637 # endif
+
638 #endif//GLM_MESSAGES
+
639 
+
641 // Qualifiers
+
642 
+
643 #if (GLM_COMPILER & GLM_COMPILER_VC) || ((GLM_COMPILER & GLM_COMPILER_INTEL) && (GLM_PLATFORM & GLM_PLATFORM_WINDOWS))
+
644 # define GLM_DEPRECATED __declspec(deprecated)
+
645 # define GLM_ALIGN(x) __declspec(align(x))
+
646 # define GLM_ALIGNED_STRUCT(x) struct __declspec(align(x))
+
647 # define GLM_ALIGNED_TYPEDEF(type, name, alignment) typedef __declspec(align(alignment)) type name
+
648 # define GLM_RESTRICT_FUNC __declspec(restrict)
+
649 # define GLM_RESTRICT __restrict
+
650 # if GLM_COMPILER >= GLM_COMPILER_VC2013
+
651 # define GLM_VECTOR_CALL __vectorcall
+
652 # else
+
653 # define GLM_VECTOR_CALL
+
654 # endif
+
655 #elif GLM_COMPILER & (GLM_COMPILER_GCC | GLM_COMPILER_CLANG | GLM_COMPILER_INTEL)
+
656 # define GLM_DEPRECATED __attribute__((__deprecated__))
+
657 # define GLM_ALIGN(x) __attribute__((aligned(x)))
+
658 # define GLM_ALIGNED_STRUCT(x) struct __attribute__((aligned(x)))
+
659 # define GLM_ALIGNED_TYPEDEF(type, name, alignment) typedef type name __attribute__((aligned(alignment)))
+
660 # define GLM_RESTRICT_FUNC __restrict__
+
661 # define GLM_RESTRICT __restrict__
+
662 # if GLM_COMPILER & GLM_COMPILER_CLANG
+
663 # if GLM_COMPILER >= GLM_COMPILER_CLANG37
+
664 # define GLM_VECTOR_CALL __vectorcall
+
665 # else
+
666 # define GLM_VECTOR_CALL
+
667 # endif
+
668 # else
+
669 # define GLM_VECTOR_CALL
+
670 # endif
+
671 #elif GLM_COMPILER & GLM_COMPILER_CUDA
+
672 # define GLM_DEPRECATED
+
673 # define GLM_ALIGN(x) __align__(x)
+
674 # define GLM_ALIGNED_STRUCT(x) struct __align__(x)
+
675 # define GLM_ALIGNED_TYPEDEF(type, name, alignment) typedef type name __align__(x)
+
676 # define GLM_RESTRICT_FUNC __restrict__
+
677 # define GLM_RESTRICT __restrict__
+
678 # define GLM_VECTOR_CALL
+
679 #else
+
680 # define GLM_DEPRECATED
+
681 # define GLM_ALIGN
+
682 # define GLM_ALIGNED_STRUCT(x) struct
+
683 # define GLM_ALIGNED_TYPEDEF(type, name, alignment) typedef type name
+
684 # define GLM_RESTRICT_FUNC
+
685 # define GLM_RESTRICT
+
686 # define GLM_VECTOR_CALL
+
687 #endif//GLM_COMPILER
+
688 
+
689 #if GLM_HAS_DEFAULTED_FUNCTIONS
+
690 # define GLM_DEFAULT = default
+
691 # ifdef GLM_FORCE_NO_CTOR_INIT
+
692 # define GLM_DEFAULT_CTOR = default
+
693 # else
+
694 # define GLM_DEFAULT_CTOR
+
695 # endif
+
696 #else
+
697 # define GLM_DEFAULT
+
698 # define GLM_DEFAULT_CTOR
+
699 #endif
+
700 
+
701 #if GLM_HAS_CONSTEXPR
+
702 # define GLM_CONSTEXPR constexpr
+
703 # define GLM_CONSTEXPR_CTOR constexpr
+
704 # define GLM_RELAXED_CONSTEXPR constexpr
+
705 #elif GLM_HAS_CONSTEXPR_PARTIAL
+
706 # define GLM_CONSTEXPR constexpr
+
707 # define GLM_CONSTEXPR_CTOR
+
708 # define GLM_RELAXED_CONSTEXPR const
+
709 #else
+
710 # define GLM_CONSTEXPR
+
711 # define GLM_CONSTEXPR_CTOR
+
712 # define GLM_RELAXED_CONSTEXPR const
+
713 #endif
+
714 
+
715 #if GLM_ARCH == GLM_ARCH_PURE
+
716 # define GLM_CONSTEXPR_SIMD GLM_CONSTEXPR
+
717 #else
+
718 # define GLM_CONSTEXPR_SIMD
+
719 #endif
+
720 
+
721 #ifdef GLM_FORCE_EXPLICIT_CTOR
+
722 # define GLM_EXPLICIT explicit
+
723 #else
+
724 # define GLM_EXPLICIT
+
725 #endif
+
726 
+
728 
+
729 #define GLM_HAS_ALIGNED_TYPE GLM_HAS_UNRESTRICTED_UNIONS
+
730 
+
732 // Length type
+
733 
+
734 // User defines: GLM_FORCE_SIZE_T_LENGTH GLM_FORCE_SIZE_FUNC
+
735 
+
736 namespace glm
+
737 {
+
738  using std::size_t;
+
739 # if defined(GLM_FORCE_SIZE_T_LENGTH)
+
740  typedef size_t length_t;
+
741 # else
+
742  typedef int length_t;
+
743 # endif
+
744 }//namespace glm
+
745 
+
746 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_MESSAGE_FORCE_SIZE_T_LENGTH)
+
747 # define GLM_MESSAGE_FORCE_SIZE_T_LENGTH
+
748 # if defined GLM_FORCE_SIZE_T_LENGTH
+
749 # pragma message("GLM: .length() returns glm::length_t, a typedef of std::size_t")
+
750 # else
+
751 # pragma message("GLM: .length() returns glm::length_t, a typedef of int following the GLSL specification")
+
752 # endif
+
753 #endif//GLM_MESSAGES
+
754 
+
756 // countof
+
757 
+
758 #ifndef __has_feature
+
759 # define __has_feature(x) 0 // Compatibility with non-clang compilers.
+
760 #endif
+
761 
+
762 #if GLM_HAS_CONSTEXPR_PARTIAL
+
763  namespace glm
+
764  {
+
765  template <typename T, std::size_t N>
+
766  constexpr std::size_t countof(T const (&)[N])
+
767  {
+
768  return N;
+
769  }
+
770  }//namespace glm
+
771 # define GLM_COUNTOF(arr) glm::countof(arr)
+
772 #elif defined(_MSC_VER)
+
773 # define GLM_COUNTOF(arr) _countof(arr)
+
774 #else
+
775 # define GLM_COUNTOF(arr) sizeof(arr) / sizeof(arr[0])
+
776 #endif
+
777 
+
779 // Uninitialize constructors
+
780 
+
781 namespace glm
+
782 {
+
783  enum ctor{uninitialize};
+
784 }//namespace glm
+
Definition: _noise.hpp:11
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00099.html b/third_party/glm_test/doc/api/a00099.html new file mode 100644 index 0000000000000..7a0554cc21349 --- /dev/null +++ b/third_party/glm_test/doc/api/a00099.html @@ -0,0 +1,67 @@ + + + + + + +0.9.8: simd_mat4.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
simd_mat4.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM_GTX_simd_mat4

+
See also
GLM Core (dependence)
+ +

Definition in file simd_mat4.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00099_source.html b/third_party/glm_test/doc/api/a00099_source.html new file mode 100644 index 0000000000000..c74c9e4b3aae7 --- /dev/null +++ b/third_party/glm_test/doc/api/a00099_source.html @@ -0,0 +1,219 @@ + + + + + + +0.9.8: simd_mat4.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
simd_mat4.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependencies
+
16 #include "../detail/setup.hpp"
+
17 
+
18 #if(GLM_ARCH != GLM_ARCH_PURE)
+
19 
+
20 #if(GLM_ARCH & GLM_ARCH_SSE2_BIT)
+
21 # include "../detail/intrinsic_matrix.hpp"
+
22 # include "../gtx/simd_vec4.hpp"
+
23 #else
+
24 # error "GLM: GLM_GTX_simd_mat4 requires compiler support of SSE2 through intrinsics"
+
25 #endif
+
26 
+
27 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
28 # pragma message("GLM: GLM_GTX_simd_mat4 extension included")
+
29 # pragma message("GLM: GLM_GTX_simd_mat4 extension is deprecated and will be removed in GLM 0.9.9. Use mat4 instead and use compiler SIMD arguments.")
+
30 #endif
+
31 
+
32 namespace glm{
+
33 namespace detail
+
34 {
+
37  GLM_ALIGNED_STRUCT(16) fmat4x4SIMD
+
38  {
+
39  typedef float value_type;
+
40  typedef fvec4SIMD col_type;
+
41  typedef fvec4SIMD row_type;
+
42  typedef std::size_t size_type;
+
43  typedef fmat4x4SIMD type;
+
44  typedef fmat4x4SIMD transpose_type;
+
45 
+
46  typedef tmat4x4<float, defaultp> pure_type;
+
47  typedef tvec4<float, defaultp> pure_row_type;
+
48  typedef tvec4<float, defaultp> pure_col_type;
+
49  typedef tmat4x4<float, defaultp> pure_transpose_type;
+
50 
+
51  GLM_FUNC_DECL length_t length() const;
+
52 
+
53  fvec4SIMD Data[4];
+
54 
+
56  // Constructors
+
57 
+
58  fmat4x4SIMD() GLM_DEFAULT_CTOR;
+
59  explicit fmat4x4SIMD(float const & s);
+
60  explicit fmat4x4SIMD(
+
61  float const & x0, float const & y0, float const & z0, float const & w0,
+
62  float const & x1, float const & y1, float const & z1, float const & w1,
+
63  float const & x2, float const & y2, float const & z2, float const & w2,
+
64  float const & x3, float const & y3, float const & z3, float const & w3);
+
65  explicit fmat4x4SIMD(
+
66  fvec4SIMD const & v0,
+
67  fvec4SIMD const & v1,
+
68  fvec4SIMD const & v2,
+
69  fvec4SIMD const & v3);
+
70  explicit fmat4x4SIMD(
+
71  mat4x4 const & m);
+
72  explicit fmat4x4SIMD(
+
73  __m128 const in[4]);
+
74 
+
75  // Conversions
+
76  //template <typename U>
+
77  //explicit tmat4x4(tmat4x4<U> const & m);
+
78 
+
79  //explicit tmat4x4(tmat2x2<T> const & x);
+
80  //explicit tmat4x4(tmat3x3<T> const & x);
+
81  //explicit tmat4x4(tmat2x3<T> const & x);
+
82  //explicit tmat4x4(tmat3x2<T> const & x);
+
83  //explicit tmat4x4(tmat2x4<T> const & x);
+
84  //explicit tmat4x4(tmat4x2<T> const & x);
+
85  //explicit tmat4x4(tmat3x4<T> const & x);
+
86  //explicit tmat4x4(tmat4x3<T> const & x);
+
87 
+
88  // Accesses
+
89  fvec4SIMD & operator[](length_t i);
+
90  fvec4SIMD const & operator[](length_t i) const;
+
91 
+
92  // Unary updatable operators
+
93  fmat4x4SIMD & operator= (fmat4x4SIMD const & m) GLM_DEFAULT;
+
94  fmat4x4SIMD & operator+= (float const & s);
+
95  fmat4x4SIMD & operator+= (fmat4x4SIMD const & m);
+
96  fmat4x4SIMD & operator-= (float const & s);
+
97  fmat4x4SIMD & operator-= (fmat4x4SIMD const & m);
+
98  fmat4x4SIMD & operator*= (float const & s);
+
99  fmat4x4SIMD & operator*= (fmat4x4SIMD const & m);
+
100  fmat4x4SIMD & operator/= (float const & s);
+
101  fmat4x4SIMD & operator/= (fmat4x4SIMD const & m);
+
102  fmat4x4SIMD & operator++ ();
+
103  fmat4x4SIMD & operator-- ();
+
104  };
+
105 
+
106  // Binary operators
+
107  fmat4x4SIMD operator+ (fmat4x4SIMD const & m, float const & s);
+
108  fmat4x4SIMD operator+ (float const & s, fmat4x4SIMD const & m);
+
109  fmat4x4SIMD operator+ (fmat4x4SIMD const & m1, fmat4x4SIMD const & m2);
+
110 
+
111  fmat4x4SIMD operator- (fmat4x4SIMD const & m, float const & s);
+
112  fmat4x4SIMD operator- (float const & s, fmat4x4SIMD const & m);
+
113  fmat4x4SIMD operator- (fmat4x4SIMD const & m1, fmat4x4SIMD const & m2);
+
114 
+
115  fmat4x4SIMD operator* (fmat4x4SIMD const & m, float const & s);
+
116  fmat4x4SIMD operator* (float const & s, fmat4x4SIMD const & m);
+
117 
+
118  fvec4SIMD operator* (fmat4x4SIMD const & m, fvec4SIMD const & v);
+
119  fvec4SIMD operator* (fvec4SIMD const & v, fmat4x4SIMD const & m);
+
120 
+
121  fmat4x4SIMD operator* (fmat4x4SIMD const & m1, fmat4x4SIMD const & m2);
+
122 
+
123  fmat4x4SIMD operator/ (fmat4x4SIMD const & m, float const & s);
+
124  fmat4x4SIMD operator/ (float const & s, fmat4x4SIMD const & m);
+
125 
+
126  fvec4SIMD operator/ (fmat4x4SIMD const & m, fvec4SIMD const & v);
+
127  fvec4SIMD operator/ (fvec4SIMD const & v, fmat4x4SIMD const & m);
+
128 
+
129  fmat4x4SIMD operator/ (fmat4x4SIMD const & m1, fmat4x4SIMD const & m2);
+
130 
+
131  // Unary constant operators
+
132  fmat4x4SIMD const operator- (fmat4x4SIMD const & m);
+
133  fmat4x4SIMD const operator-- (fmat4x4SIMD const & m, int);
+
134  fmat4x4SIMD const operator++ (fmat4x4SIMD const & m, int);
+
135 }//namespace detail
+
136 
+
137  typedef detail::fmat4x4SIMD simdMat4;
+
138 
+
141 
+
144  mat4 mat4_cast(
+
145  detail::fmat4x4SIMD const & x);
+
146 
+
150  detail::fmat4x4SIMD matrixCompMult(
+
151  detail::fmat4x4SIMD const & x,
+
152  detail::fmat4x4SIMD const & y);
+
153 
+
158  detail::fmat4x4SIMD outerProduct(
+
159  detail::fvec4SIMD const & c,
+
160  detail::fvec4SIMD const & r);
+
161 
+
164  detail::fmat4x4SIMD transpose(
+
165  detail::fmat4x4SIMD const & x);
+
166 
+
169  float determinant(
+
170  detail::fmat4x4SIMD const & m);
+
171 
+
174  detail::fmat4x4SIMD inverse(
+
175  detail::fmat4x4SIMD const & m);
+
176 
+
178 }// namespace glm
+
179 
+
180 #include "simd_mat4.inl"
+
181 
+
182 #endif//(GLM_ARCH != GLM_ARCH_PURE)
+
GLM_FUNC_DECL T determinant(matType< T, P > const &m)
Returns the transposed matrix of x.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL matType< T, P > inverse(matType< T, P > const &m)
Return the inverse of a squared matrix.
+
mat4x4 mat4
4 columns of 4 components matrix of floating-point numbers.
Definition: type_mat.hpp:416
+
highp_mat4x4 mat4x4
4 columns of 4 components matrix of floating-point numbers.
Definition: type_mat.hpp:399
+
GLM_FUNC_DECL tmat4x4< T, P > mat4_cast(tquat< T, P > const &x)
Converts a quaternion to a 4 * 4 matrix.
+
GLM_FUNC_DECL detail::outerProduct_trait< T, P, vecTypeA, vecTypeB >::type outerProduct(vecTypeA< T, P > const &c, vecTypeB< T, P > const &r)
Treats the first parameter c as a column vector and the second parameter r as a row vector and does a...
+
GLM_FUNC_DECL matType< T, P > matrixCompMult(matType< T, P > const &x, matType< T, P > const &y)
Multiply matrix x by matrix y component-wise, i.e., result[i][j] is the scalar product of x[i][j] and...
+
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00100.html b/third_party/glm_test/doc/api/a00100.html new file mode 100644 index 0000000000000..21ba4b1f2a56e --- /dev/null +++ b/third_party/glm_test/doc/api/a00100.html @@ -0,0 +1,67 @@ + + + + + + +0.9.8: simd_quat.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
simd_quat.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM_GTX_simd_quat

+
See also
GLM Core (dependence)
+ +

Definition in file simd_quat.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00100_source.html b/third_party/glm_test/doc/api/a00100_source.html new file mode 100644 index 0000000000000..2ed51eb61e456 --- /dev/null +++ b/third_party/glm_test/doc/api/a00100_source.html @@ -0,0 +1,282 @@ + + + + + + +0.9.8: simd_quat.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
simd_quat.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 #include "../gtc/quaternion.hpp"
+
18 #include "../gtx/fast_trigonometry.hpp"
+
19 
+
20 #if GLM_ARCH != GLM_ARCH_PURE
+
21 
+
22 #if GLM_ARCH & GLM_ARCH_SSE2_BIT
+
23 # include "../gtx/simd_mat4.hpp"
+
24 #else
+
25 # error "GLM: GLM_GTX_simd_quat requires compiler support of SSE2 through intrinsics"
+
26 #endif
+
27 
+
28 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
29 # pragma message("GLM: GLM_GTX_simd_quat extension included")
+
30 # pragma message("GLM: GLM_GTX_simd_quat extension is deprecated and will be removed in GLM 0.9.9. Use GLM_GTC_quaternion instead and use compiler SIMD arguments.")
+
31 #endif
+
32 
+
33 // Warning silencer for nameless struct/union.
+
34 #if (GLM_COMPILER & GLM_COMPILER_VC)
+
35 # pragma warning(push)
+
36 # pragma warning(disable:4201) // warning C4201: nonstandard extension used : nameless struct/union
+
37 #endif
+
38 
+
39 namespace glm{
+
40 namespace detail
+
41 {
+
42  GLM_ALIGNED_STRUCT(16) fquatSIMD
+
43  {
+
44  typedef float value_type;
+
45  typedef std::size_t size_type;
+
46 
+
47  typedef fquatSIMD type;
+
48  typedef tquat<bool, defaultp> bool_type;
+
49  typedef tquat<float, defaultp> pure_type;
+
50 
+
51 #ifdef GLM_SIMD_ENABLE_XYZW_UNION
+
52  union
+
53  {
+
54  __m128 Data;
+
55  struct {float x, y, z, w;};
+
56  };
+
57 #else
+
58  __m128 Data;
+
59 #endif
+
60 
+
62  // Implicit basic constructors
+
63 
+
64  fquatSIMD() GLM_DEFAULT_CTOR;
+
65  fquatSIMD(fquatSIMD const & q) GLM_DEFAULT;
+
66  fquatSIMD(__m128 const & Data);
+
67 
+
69  // Explicit basic constructors
+
70 
+
71  explicit fquatSIMD(
+
72  ctor);
+
73  explicit fquatSIMD(
+
74  float const & w,
+
75  float const & x,
+
76  float const & y,
+
77  float const & z);
+
78  explicit fquatSIMD(
+
79  quat const & v);
+
80  explicit fquatSIMD(
+
81  vec3 const & eulerAngles);
+
82 
+
83 
+
85  // Unary arithmetic operators
+
86 
+
87  fquatSIMD& operator= (fquatSIMD const & q) GLM_DEFAULT;
+
88  fquatSIMD& operator*=(float const & s);
+
89  fquatSIMD& operator/=(float const & s);
+
90  };
+
91 
+
92 
+
94  // Arithmetic operators
+
95 
+
96  detail::fquatSIMD operator- (
+
97  detail::fquatSIMD const & q);
+
98 
+
99  detail::fquatSIMD operator+ (
+
100  detail::fquatSIMD const & q,
+
101  detail::fquatSIMD const & p);
+
102 
+
103  detail::fquatSIMD operator* (
+
104  detail::fquatSIMD const & q,
+
105  detail::fquatSIMD const & p);
+
106 
+
107  detail::fvec4SIMD operator* (
+
108  detail::fquatSIMD const & q,
+
109  detail::fvec4SIMD const & v);
+
110 
+
111  detail::fvec4SIMD operator* (
+
112  detail::fvec4SIMD const & v,
+
113  detail::fquatSIMD const & q);
+
114 
+
115  detail::fquatSIMD operator* (
+
116  detail::fquatSIMD const & q,
+
117  float s);
+
118 
+
119  detail::fquatSIMD operator* (
+
120  float s,
+
121  detail::fquatSIMD const & q);
+
122 
+
123  detail::fquatSIMD operator/ (
+
124  detail::fquatSIMD const & q,
+
125  float s);
+
126 
+
127 }//namespace detail
+
128 
+
131 
+
132  typedef glm::detail::fquatSIMD simdQuat;
+
133 
+
136  quat quat_cast(
+
137  detail::fquatSIMD const & x);
+
138 
+
141  detail::fquatSIMD quatSIMD_cast(
+
142  detail::fmat4x4SIMD const & m);
+
143 
+
146  template <typename T, precision P>
+
147  detail::fquatSIMD quatSIMD_cast(
+
148  tmat4x4<T, P> const & m);
+
149 
+
152  template <typename T, precision P>
+
153  detail::fquatSIMD quatSIMD_cast(
+
154  tmat3x3<T, P> const & m);
+
155 
+
158  detail::fmat4x4SIMD mat4SIMD_cast(
+
159  detail::fquatSIMD const & q);
+
160 
+
163  mat4 mat4_cast(
+
164  detail::fquatSIMD const & q);
+
165 
+
166 
+
170  float length(
+
171  detail::fquatSIMD const & x);
+
172 
+
176  detail::fquatSIMD normalize(
+
177  detail::fquatSIMD const & x);
+
178 
+
182  float dot(
+
183  detail::fquatSIMD const & q1,
+
184  detail::fquatSIMD const & q2);
+
185 
+
196  detail::fquatSIMD mix(
+
197  detail::fquatSIMD const & x,
+
198  detail::fquatSIMD const & y,
+
199  float const & a);
+
200 
+
209  detail::fquatSIMD lerp(
+
210  detail::fquatSIMD const & x,
+
211  detail::fquatSIMD const & y,
+
212  float const & a);
+
213 
+
222  detail::fquatSIMD slerp(
+
223  detail::fquatSIMD const & x,
+
224  detail::fquatSIMD const & y,
+
225  float const & a);
+
226 
+
227 
+
238  detail::fquatSIMD fastMix(
+
239  detail::fquatSIMD const & x,
+
240  detail::fquatSIMD const & y,
+
241  float const & a);
+
242 
+
250  detail::fquatSIMD fastSlerp(
+
251  detail::fquatSIMD const & x,
+
252  detail::fquatSIMD const & y,
+
253  float const & a);
+
254 
+
255 
+
259  detail::fquatSIMD conjugate(
+
260  detail::fquatSIMD const & q);
+
261 
+
265  detail::fquatSIMD inverse(
+
266  detail::fquatSIMD const & q);
+
267 
+
274  detail::fquatSIMD angleAxisSIMD(
+
275  float const & angle,
+
276  vec3 const & axis);
+
277 
+
286  detail::fquatSIMD angleAxisSIMD(
+
287  float const & angle,
+
288  float const & x,
+
289  float const & y,
+
290  float const & z);
+
291 
+
292  // TODO: Move this to somewhere more appropriate. Used with fastMix() and fastSlerp().
+
294  __m128 fastSin(__m128 x);
+
295 
+
297 }//namespace glm
+
298 
+
299 #include "simd_quat.inl"
+
300 
+
301 
+
302 #if (GLM_COMPILER & GLM_COMPILER_VC)
+
303 # pragma warning(pop)
+
304 #endif
+
305 
+
306 
+
307 #endif//(GLM_ARCH != GLM_ARCH_PURE)
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL T dot(vecType< T, P > const &x, vecType< T, P > const &y)
Returns the dot product of x and y, i.e., result = x * y.
+
GLM_FUNC_DECL matType< T, P > inverse(matType< T, P > const &m)
Return the inverse of a squared matrix.
+
mat4x4 mat4
4 columns of 4 components matrix of floating-point numbers.
Definition: type_mat.hpp:416
+
GLM_FUNC_DECL vecType< T, P > mix(vecType< T, P > const &x, vecType< T, P > const &y, vecType< U, P > const &a)
If genTypeU is a floating scalar or vector: Returns x * (1.0 - a) + y * a, i.e., the linear blend of ...
+
GLM_FUNC_DECL tquat< T, P > conjugate(tquat< T, P > const &q)
Returns the q conjugate.
+
GLM_FUNC_DECL tquat< T, P > lerp(tquat< T, P > const &x, tquat< T, P > const &y, T a)
Linear interpolation of two quaternions.
+
GLM_FUNC_DECL tmat4x4< T, P > mat4_cast(tquat< T, P > const &x)
Converts a quaternion to a 4 * 4 matrix.
+
GLM_FUNC_DECL T fastSin(T angle)
Faster than the common sin function but less accurate.
+
GLM_FUNC_DECL tquat< T, P > fastMix(tquat< T, P > const &x, tquat< T, P > const &y, T const &a)
Quaternion normalized linear interpolation.
+
GLM_FUNC_DECL vecType< T, P > normalize(vecType< T, P > const &x)
Returns a vector in the same direction as x but with length of 1.
+
GLM_FUNC_DECL tvec3< T, P > axis(tquat< T, P > const &x)
Returns the q rotation axis.
+
GLM_FUNC_DECL tvec3< T, P > eulerAngles(tquat< T, P > const &x)
Returns euler angles, pitch as x, yaw as y, roll as z.
+
GLM_FUNC_DECL T angle(tquat< T, P > const &x)
Returns the quaternion rotation angle.
+
GLM_FUNC_DECL tquat< T, P > quat_cast(tmat3x3< T, P > const &x)
Converts a 3 * 3 matrix to a quaternion.
+
GLM_FUNC_DECL tquat< T, P > slerp(tquat< T, P > const &x, tquat< T, P > const &y, T a)
Spherical linear interpolation of two quaternions.
+
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
highp_vec3 vec3
3 components vector of floating-point numbers.
Definition: type_vec.hpp:461
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00101.html b/third_party/glm_test/doc/api/a00101.html new file mode 100644 index 0000000000000..f14dac59db29e --- /dev/null +++ b/third_party/glm_test/doc/api/a00101.html @@ -0,0 +1,67 @@ + + + + + + +0.9.8: simd_vec4.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
simd_vec4.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM_GTX_simd_vec4

+
See also
GLM Core (dependence)
+ +

Definition in file simd_vec4.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00101_source.html b/third_party/glm_test/doc/api/a00101_source.html new file mode 100644 index 0000000000000..6b80408d8e8a8 --- /dev/null +++ b/third_party/glm_test/doc/api/a00101_source.html @@ -0,0 +1,402 @@ + + + + + + +0.9.8: simd_vec4.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
simd_vec4.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 
+
18 #if(GLM_ARCH != GLM_ARCH_PURE)
+
19 
+
20 #if(GLM_ARCH & GLM_ARCH_SSE2_BIT)
+
21 # include "../detail/intrinsic_common.hpp"
+
22 # include "../detail/intrinsic_geometric.hpp"
+
23 # include "../detail/intrinsic_integer.hpp"
+
24 #else
+
25 # error "GLM: GLM_GTX_simd_vec4 requires compiler support of SSE2 through intrinsics"
+
26 #endif
+
27 
+
28 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
29 # pragma message("GLM: GLM_GTX_simd_vec4 extension included")
+
30 # pragma message("GLM: GLM_GTX_simd_vec4 extension is deprecated and will be removed in GLM 0.9.9. Use *vec4 types instead and use compiler SIMD arguments.")
+
31 #endif
+
32 
+
33 
+
34 // Warning silencer for nameless struct/union.
+
35 #if (GLM_COMPILER & GLM_COMPILER_VC)
+
36 # pragma warning(push)
+
37 # pragma warning(disable:4201) // warning C4201: nonstandard extension used : nameless struct/union
+
38 #endif
+
39 
+
40 namespace glm
+
41 {
+
42  enum comp
+
43  {
+
44  X = 0,
+
45  R = 0,
+
46  S = 0,
+
47  Y = 1,
+
48  G = 1,
+
49  T = 1,
+
50  Z = 2,
+
51  B = 2,
+
52  P = 2,
+
53  W = 3,
+
54  A = 3,
+
55  Q = 3
+
56  };
+
57 
+
58 }//namespace glm
+
59 
+
60 namespace glm{
+
61 namespace detail
+
62 {
+
65  GLM_ALIGNED_STRUCT(16) fvec4SIMD
+
66  {
+
67  typedef float value_type;
+
68  typedef std::size_t size_type;
+
69 
+
70  typedef fvec4SIMD type;
+
71  typedef tvec4<float, defaultp> pure_type;
+
72  typedef tvec4<bool, highp> bool_type;
+
73 
+
74 #ifdef GLM_SIMD_ENABLE_XYZW_UNION
+
75  union
+
76  {
+
77  __m128 Data;
+
78  struct {float x, y, z, w;};
+
79  };
+
80 #else
+
81  __m128 Data;
+
82 #endif
+
83 
+
85  // Implicit basic constructors
+
86 
+
87  fvec4SIMD() GLM_DEFAULT_CTOR;
+
88  fvec4SIMD(fvec4SIMD const & v) GLM_DEFAULT;
+
89  fvec4SIMD(__m128 const & Data);
+
90 
+
92  // Explicit basic constructors
+
93 
+
94  explicit fvec4SIMD(
+
95  ctor);
+
96  explicit fvec4SIMD(
+
97  float const & s);
+
98  explicit fvec4SIMD(
+
99  float const & x,
+
100  float const & y,
+
101  float const & z,
+
102  float const & w);
+
103  explicit fvec4SIMD(
+
104  vec4 const & v);
+
105 
+
108 
+
109  fvec4SIMD(vec2 const & v, float const & s1, float const & s2);
+
110  fvec4SIMD(float const & s1, vec2 const & v, float const & s2);
+
111  fvec4SIMD(float const & s1, float const & s2, vec2 const & v);
+
112  fvec4SIMD(vec3 const & v, float const & s);
+
113  fvec4SIMD(float const & s, vec3 const & v);
+
114  fvec4SIMD(vec2 const & v1, vec2 const & v2);
+
115  //fvec4SIMD(ivec4SIMD const & v);
+
116 
+
118  // Unary arithmetic operators
+
119 
+
120  fvec4SIMD& operator= (fvec4SIMD const & v) GLM_DEFAULT;
+
121  fvec4SIMD& operator+=(fvec4SIMD const & v);
+
122  fvec4SIMD& operator-=(fvec4SIMD const & v);
+
123  fvec4SIMD& operator*=(fvec4SIMD const & v);
+
124  fvec4SIMD& operator/=(fvec4SIMD const & v);
+
125 
+
126  fvec4SIMD& operator+=(float const & s);
+
127  fvec4SIMD& operator-=(float const & s);
+
128  fvec4SIMD& operator*=(float const & s);
+
129  fvec4SIMD& operator/=(float const & s);
+
130 
+
131  fvec4SIMD& operator++();
+
132  fvec4SIMD& operator--();
+
133 
+
135  // Swizzle operators
+
136 
+
137  template <comp X_, comp Y_, comp Z_, comp W_>
+
138  fvec4SIMD& swizzle();
+
139  template <comp X_, comp Y_, comp Z_, comp W_>
+
140  fvec4SIMD swizzle() const;
+
141  template <comp X_, comp Y_, comp Z_>
+
142  fvec4SIMD swizzle() const;
+
143  template <comp X_, comp Y_>
+
144  fvec4SIMD swizzle() const;
+
145  template <comp X_>
+
146  fvec4SIMD swizzle() const;
+
147  };
+
148 }//namespace detail
+
149 
+
150  typedef glm::detail::fvec4SIMD simdVec4;
+
151 
+
154 
+
157  vec4 vec4_cast(
+
158  detail::fvec4SIMD const & x);
+
159 
+
162  detail::fvec4SIMD abs(detail::fvec4SIMD const & x);
+
163 
+
166  detail::fvec4SIMD sign(detail::fvec4SIMD const & x);
+
167 
+
170  detail::fvec4SIMD floor(detail::fvec4SIMD const & x);
+
171 
+
175  detail::fvec4SIMD trunc(detail::fvec4SIMD const & x);
+
176 
+
184  detail::fvec4SIMD round(detail::fvec4SIMD const & x);
+
185 
+
191  //detail::fvec4SIMD roundEven(detail::fvec4SIMD const & x);
+
192 
+
196  detail::fvec4SIMD ceil(detail::fvec4SIMD const & x);
+
197 
+
201  detail::fvec4SIMD fract(detail::fvec4SIMD const & x);
+
202 
+
207  detail::fvec4SIMD mod(
+
208  detail::fvec4SIMD const & x,
+
209  detail::fvec4SIMD const & y);
+
210 
+
215  detail::fvec4SIMD mod(
+
216  detail::fvec4SIMD const & x,
+
217  float const & y);
+
218 
+
224  //detail::fvec4SIMD modf(
+
225  // detail::fvec4SIMD const & x,
+
226  // detail::fvec4SIMD & i);
+
227 
+
231  detail::fvec4SIMD min(
+
232  detail::fvec4SIMD const & x,
+
233  detail::fvec4SIMD const & y);
+
234 
+
235  detail::fvec4SIMD min(
+
236  detail::fvec4SIMD const & x,
+
237  float const & y);
+
238 
+
242  detail::fvec4SIMD max(
+
243  detail::fvec4SIMD const & x,
+
244  detail::fvec4SIMD const & y);
+
245 
+
246  detail::fvec4SIMD max(
+
247  detail::fvec4SIMD const & x,
+
248  float const & y);
+
249 
+
254  detail::fvec4SIMD clamp(
+
255  detail::fvec4SIMD const & x,
+
256  detail::fvec4SIMD const & minVal,
+
257  detail::fvec4SIMD const & maxVal);
+
258 
+
259  detail::fvec4SIMD clamp(
+
260  detail::fvec4SIMD const & x,
+
261  float const & minVal,
+
262  float const & maxVal);
+
263 
+
290  detail::fvec4SIMD mix(
+
291  detail::fvec4SIMD const & x,
+
292  detail::fvec4SIMD const & y,
+
293  detail::fvec4SIMD const & a);
+
294 
+
298  detail::fvec4SIMD step(
+
299  detail::fvec4SIMD const & edge,
+
300  detail::fvec4SIMD const & x);
+
301 
+
302  detail::fvec4SIMD step(
+
303  float const & edge,
+
304  detail::fvec4SIMD const & x);
+
305 
+
317  detail::fvec4SIMD smoothstep(
+
318  detail::fvec4SIMD const & edge0,
+
319  detail::fvec4SIMD const & edge1,
+
320  detail::fvec4SIMD const & x);
+
321 
+
322  detail::fvec4SIMD smoothstep(
+
323  float const & edge0,
+
324  float const & edge1,
+
325  detail::fvec4SIMD const & x);
+
326 
+
334  //bvec4 isnan(detail::fvec4SIMD const & x);
+
335 
+
343  //bvec4 isinf(detail::fvec4SIMD const & x);
+
344 
+
350  //detail::ivec4SIMD floatBitsToInt(detail::fvec4SIMD const & value);
+
351 
+
359  //detail::fvec4SIMD intBitsToFloat(detail::ivec4SIMD const & value);
+
360 
+
364  detail::fvec4SIMD fma(
+
365  detail::fvec4SIMD const & a,
+
366  detail::fvec4SIMD const & b,
+
367  detail::fvec4SIMD const & c);
+
368 
+
379  //detail::fvec4SIMD frexp(detail::fvec4SIMD const & x, detail::ivec4SIMD & exp);
+
380 
+
388  //detail::fvec4SIMD ldexp(detail::fvec4SIMD const & x, detail::ivec4SIMD const & exp);
+
389 
+
393  float length(
+
394  detail::fvec4SIMD const & x);
+
395 
+
400  float fastLength(
+
401  detail::fvec4SIMD const & x);
+
402 
+
407  float niceLength(
+
408  detail::fvec4SIMD const & x);
+
409 
+
413  detail::fvec4SIMD length4(
+
414  detail::fvec4SIMD const & x);
+
415 
+
420  detail::fvec4SIMD fastLength4(
+
421  detail::fvec4SIMD const & x);
+
422 
+
427  detail::fvec4SIMD niceLength4(
+
428  detail::fvec4SIMD const & x);
+
429 
+
433  float distance(
+
434  detail::fvec4SIMD const & p0,
+
435  detail::fvec4SIMD const & p1);
+
436 
+
440  detail::fvec4SIMD distance4(
+
441  detail::fvec4SIMD const & p0,
+
442  detail::fvec4SIMD const & p1);
+
443 
+
447  float simdDot(
+
448  detail::fvec4SIMD const & x,
+
449  detail::fvec4SIMD const & y);
+
450 
+
454  detail::fvec4SIMD dot4(
+
455  detail::fvec4SIMD const & x,
+
456  detail::fvec4SIMD const & y);
+
457 
+
461  detail::fvec4SIMD cross(
+
462  detail::fvec4SIMD const & x,
+
463  detail::fvec4SIMD const & y);
+
464 
+
468  detail::fvec4SIMD normalize(
+
469  detail::fvec4SIMD const & x);
+
470 
+
475  detail::fvec4SIMD fastNormalize(
+
476  detail::fvec4SIMD const & x);
+
477 
+
481  detail::fvec4SIMD simdFaceforward(
+
482  detail::fvec4SIMD const & N,
+
483  detail::fvec4SIMD const & I,
+
484  detail::fvec4SIMD const & Nref);
+
485 
+
490  detail::fvec4SIMD reflect(
+
491  detail::fvec4SIMD const & I,
+
492  detail::fvec4SIMD const & N);
+
493 
+
499  detail::fvec4SIMD refract(
+
500  detail::fvec4SIMD const & I,
+
501  detail::fvec4SIMD const & N,
+
502  float const & eta);
+
503 
+
507  detail::fvec4SIMD sqrt(
+
508  detail::fvec4SIMD const & x);
+
509 
+
514  detail::fvec4SIMD niceSqrt(
+
515  detail::fvec4SIMD const & x);
+
516 
+
521  detail::fvec4SIMD fastSqrt(
+
522  detail::fvec4SIMD const & x);
+
523 
+
527  detail::fvec4SIMD inversesqrt(
+
528  detail::fvec4SIMD const & x);
+
529 
+
534  detail::fvec4SIMD fastInversesqrt(
+
535  detail::fvec4SIMD const & x);
+
536 
+
538 }//namespace glm
+
539 
+
540 #include "simd_vec4.inl"
+
541 
+
542 #if (GLM_COMPILER & GLM_COMPILER_VC)
+
543 # pragma warning(pop)
+
544 #endif
+
545 
+
546 #endif//(GLM_ARCH != GLM_ARCH_PURE)
+
GLM_FUNC_DECL genType fract(genType x)
Return x - floor(x).
+
GLM_FUNC_DECL vecType< T, P > ceil(vecType< T, P > const &x)
Returns a value equal to the nearest integer that is greater than or equal to x.
+
GLM_FUNC_DECL genType fastNormalize(genType const &x)
Faster than the common normalize function but less accurate.
+
GLM_FUNC_DECL genType fastSqrt(genType x)
Faster than the common sqrt function but less accurate.
+
highp_vec4 vec4
4 components vector of floating-point numbers.
Definition: type_vec.hpp:466
+
GLM_FUNC_DECL genType smoothstep(genType edge0, genType edge1, genType x)
Returns 0.0 if x <= edge0 and 1.0 if x >= edge1 and performs smooth Hermite interpolation between 0 a...
+
GLM_FUNC_DECL genType max(genType x, genType y)
Returns y if x < y; otherwise, it returns x.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL genType mod(genType x, genType y)
Modulus.
+
GLM_FUNC_DECL vecType< T, P > round(vecType< T, P > const &x)
Returns a value equal to the nearest integer to x.
+
GLM_FUNC_DECL vecType< T, P > mix(vecType< T, P > const &x, vecType< T, P > const &y, vecType< U, P > const &a)
If genTypeU is a floating scalar or vector: Returns x * (1.0 - a) + y * a, i.e., the linear blend of ...
+
GLM_FUNC_DECL vecType< T, P > trunc(vecType< T, P > const &x)
Returns a value equal to the nearest integer to x whose absolute value is not larger than the absolut...
+
GLM_FUNC_DECL genType abs(genType x)
Returns x if x >= 0; otherwise, it returns -x.
+
GLM_FUNC_DECL tvec3< T, P > cross(tvec3< T, P > const &x, tvec3< T, P > const &y)
Returns the cross product of x and y.
+
GLM_FUNC_DECL genType reflect(genType const &I, genType const &N)
For the incident vector I and surface orientation N, returns the reflection direction : result = I - ...
+
GLM_FUNC_DECL vecType< T, P > sqrt(vecType< T, P > const &v)
Returns the positive square root of v.
+
GLM_FUNC_DECL vecType< T, P > normalize(vecType< T, P > const &x)
Returns a vector in the same direction as x but with length of 1.
+
GLM_FUNC_DECL genType step(genType edge, genType x)
Returns 0.0 if x < edge, otherwise it returns 1.0 for each component of a genType.
+
GLM_FUNC_DECL T distance(vecType< T, P > const &p0, vecType< T, P > const &p1)
Returns the distance betwwen p0 and p1, i.e., length(p0 - p1).
+
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
GLM_FUNC_DECL vecType< T, P > refract(vecType< T, P > const &I, vecType< T, P > const &N, T eta)
For the incident vector I and surface normal N, and the ratio of indices of refraction eta...
+
GLM_FUNC_DECL genType min(genType x, genType y)
Returns y if y < x; otherwise, it returns x.
+
highp_vec3 vec3
3 components vector of floating-point numbers.
Definition: type_vec.hpp:461
+
GLM_FUNC_DECL genType fma(genType const &a, genType const &b, genType const &c)
Computes and returns a * b + c.
+
highp_vec2 vec2
2 components vector of floating-point numbers.
Definition: type_vec.hpp:456
+
GLM_FUNC_DECL vecType< T, P > floor(vecType< T, P > const &x)
Returns a value equal to the nearest integer that is less then or equal to x.
+
GLM_FUNC_DECL vecType< T, P > inversesqrt(vecType< T, P > const &v)
Returns the reciprocal of the positive square root of v.
+
GLM_FUNC_DECL genType fastLength(genType x)
Faster than the common length function but less accurate.
+
GLM_FUNC_DECL genType clamp(genType x, genType minVal, genType maxVal)
Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal an...
+
GLM_FUNC_DECL vecType< T, P > sign(vecType< T, P > const &x)
Returns 1.0 if x > 0, 0.0 if x == 0, or -1.0 if x < 0.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00102.html b/third_party/glm_test/doc/api/a00102.html new file mode 100644 index 0000000000000..223d558dca89f --- /dev/null +++ b/third_party/glm_test/doc/api/a00102.html @@ -0,0 +1,82 @@ + + + + + + +0.9.8: spline.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
spline.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType catmullRom (genType const &v1, genType const &v2, genType const &v3, genType const &v4, typename genType::value_type const &s)
 
template<typename genType >
GLM_FUNC_DECL genType cubic (genType const &v1, genType const &v2, genType const &v3, genType const &v4, typename genType::value_type const &s)
 
template<typename genType >
GLM_FUNC_DECL genType hermite (genType const &v1, genType const &t1, genType const &v2, genType const &t2, typename genType::value_type const &s)
 
+

Detailed Description

+

GLM_GTX_spline

+
See also
GLM Core (dependence)
+ +

Definition in file spline.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00102_source.html b/third_party/glm_test/doc/api/a00102_source.html new file mode 100644 index 0000000000000..f8f3cb96f8dfb --- /dev/null +++ b/third_party/glm_test/doc/api/a00102_source.html @@ -0,0 +1,105 @@ + + + + + + +0.9.8: spline.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
spline.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 #include "../gtx/optimum_pow.hpp"
+
18 
+
19 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
20 # pragma message("GLM: GLM_GTX_spline extension included")
+
21 #endif
+
22 
+
23 namespace glm
+
24 {
+
27 
+
30  template <typename genType>
+
31  GLM_FUNC_DECL genType catmullRom(
+
32  genType const & v1,
+
33  genType const & v2,
+
34  genType const & v3,
+
35  genType const & v4,
+
36  typename genType::value_type const & s);
+
37 
+
40  template <typename genType>
+
41  GLM_FUNC_DECL genType hermite(
+
42  genType const & v1,
+
43  genType const & t1,
+
44  genType const & v2,
+
45  genType const & t2,
+
46  typename genType::value_type const & s);
+
47 
+
50  template <typename genType>
+
51  GLM_FUNC_DECL genType cubic(
+
52  genType const & v1,
+
53  genType const & v2,
+
54  genType const & v3,
+
55  genType const & v4,
+
56  typename genType::value_type const & s);
+
57 
+
59 }//namespace glm
+
60 
+
61 #include "spline.inl"
+
GLM_FUNC_DECL genType hermite(genType const &v1, genType const &t1, genType const &v2, genType const &t2, typename genType::value_type const &s)
Return a point from a hermite curve.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL genType catmullRom(genType const &v1, genType const &v2, genType const &v3, genType const &v4, typename genType::value_type const &s)
Return a point from a catmull rom curve.
+
GLM_FUNC_DECL genType cubic(genType const &v1, genType const &v2, genType const &v3, genType const &v4, typename genType::value_type const &s)
Return a point from a cubic curve.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00103.html b/third_party/glm_test/doc/api/a00103.html new file mode 100644 index 0000000000000..c37138271ae15 --- /dev/null +++ b/third_party/glm_test/doc/api/a00103.html @@ -0,0 +1,91 @@ + + + + + + +0.9.8: std_based_type.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
std_based_type.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + +

+Typedefs

typedef tvec1< std::size_t, defaultp > size1
 
typedef tvec1< std::size_t, defaultp > size1_t
 
typedef tvec2< std::size_t, defaultp > size2
 
typedef tvec2< std::size_t, defaultp > size2_t
 
typedef tvec3< std::size_t, defaultp > size3
 
typedef tvec3< std::size_t, defaultp > size3_t
 
typedef tvec4< std::size_t, defaultp > size4
 
typedef tvec4< std::size_t, defaultp > size4_t
 
+

Detailed Description

+

GLM_GTX_std_based_type

+
See also
GLM Core (dependence)
+
+GLM_GTX_extented_min_max (dependence)
+ +

Definition in file std_based_type.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00103_source.html b/third_party/glm_test/doc/api/a00103_source.html new file mode 100644 index 0000000000000..bca72f4d31013 --- /dev/null +++ b/third_party/glm_test/doc/api/a00103_source.html @@ -0,0 +1,102 @@ + + + + + + +0.9.8: std_based_type.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
std_based_type.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 #include <cstdlib>
+
18 
+
19 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
20 # pragma message("GLM: GLM_GTX_std_based_type extension included")
+
21 #endif
+
22 
+
23 namespace glm
+
24 {
+
27 
+
30  typedef tvec1<std::size_t, defaultp> size1;
+
31 
+
34  typedef tvec2<std::size_t, defaultp> size2;
+
35 
+
38  typedef tvec3<std::size_t, defaultp> size3;
+
39 
+
42  typedef tvec4<std::size_t, defaultp> size4;
+
43 
+
46  typedef tvec1<std::size_t, defaultp> size1_t;
+
47 
+
50  typedef tvec2<std::size_t, defaultp> size2_t;
+
51 
+
54  typedef tvec3<std::size_t, defaultp> size3_t;
+
55 
+
58  typedef tvec4<std::size_t, defaultp> size4_t;
+
59 
+
61 }//namespace glm
+
62 
+
63 #include "std_based_type.inl"
+
tvec4< std::size_t, defaultp > size4_t
Vector type based of four std::size_t components.
+
tvec2< std::size_t, defaultp > size2
Vector type based of two std::size_t components.
+
tvec1< std::size_t, defaultp > size1_t
Vector type based of one std::size_t component.
+
Definition: _noise.hpp:11
+
tvec1< std::size_t, defaultp > size1
Vector type based of one std::size_t component.
+
tvec4< std::size_t, defaultp > size4
Vector type based of four std::size_t components.
+
tvec3< std::size_t, defaultp > size3
Vector type based of three std::size_t components.
+
tvec2< std::size_t, defaultp > size2_t
Vector type based of two std::size_t components.
+
tvec3< std::size_t, defaultp > size3_t
Vector type based of three std::size_t components.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00104.html b/third_party/glm_test/doc/api/a00104.html new file mode 100644 index 0000000000000..79f48bb119c9f --- /dev/null +++ b/third_party/glm_test/doc/api/a00104.html @@ -0,0 +1,82 @@ + + + + + + +0.9.8: string_cast.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
string_cast.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Functions

template<template< typename, precision > class matType, typename T , precision P>
GLM_FUNC_DECL std::string to_string (matType< T, P > const &x)
 
+

Detailed Description

+

GLM_GTX_string_cast

+
See also
GLM Core (dependence)
+
+gtc_half_float (dependence)
+
+GLM_GTX_integer (dependence)
+
+GLM_GTX_quaternion (dependence)
+ +

Definition in file string_cast.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00104_source.html b/third_party/glm_test/doc/api/a00104_source.html new file mode 100644 index 0000000000000..47effc39c3a03 --- /dev/null +++ b/third_party/glm_test/doc/api/a00104_source.html @@ -0,0 +1,89 @@ + + + + + + +0.9.8: string_cast.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
string_cast.hpp
+
+
+Go to the documentation of this file.
1 
+
17 #pragma once
+
18 
+
19 // Dependency:
+
20 #include "../glm.hpp"
+
21 #include "../gtc/type_precision.hpp"
+
22 #include "../gtc/quaternion.hpp"
+
23 #include "../gtx/dual_quaternion.hpp"
+
24 #include <string>
+
25 
+
26 #if(GLM_COMPILER & GLM_COMPILER_CUDA)
+
27 # error "GLM_GTX_string_cast is not supported on CUDA compiler"
+
28 #endif
+
29 
+
30 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
31 # pragma message("GLM: GLM_GTX_string_cast extension included")
+
32 #endif
+
33 
+
34 namespace glm
+
35 {
+
38 
+
41  template <template <typename, precision> class matType, typename T, precision P>
+
42  GLM_FUNC_DECL std::string to_string(matType<T, P> const & x);
+
43 
+
45 }//namespace glm
+
46 
+
47 #include "string_cast.inl"
+
GLM_FUNC_DECL std::string to_string(matType< T, P > const &x)
Create a string from a GLM vector or matrix typed variable.
+
Definition: _noise.hpp:11
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00105.html b/third_party/glm_test/doc/api/a00105.html new file mode 100644 index 0000000000000..797ec54e24d8d --- /dev/null +++ b/third_party/glm_test/doc/api/a00105.html @@ -0,0 +1,88 @@ + + + + + + +0.9.8: transform.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
transform.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > rotate (T angle, tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > scale (tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > translate (tvec3< T, P > const &v)
 
+

Detailed Description

+

GLM_GTX_transform

+
See also
GLM Core (dependence)
+
+GLM_GTC_matrix_transform (dependence)
+
+GLM_GTX_transform
+
+GLM_GTX_transform2
+ +

Definition in file transform.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00105_source.html b/third_party/glm_test/doc/api/a00105_source.html new file mode 100644 index 0000000000000..efaf258a81a39 --- /dev/null +++ b/third_party/glm_test/doc/api/a00105_source.html @@ -0,0 +1,95 @@ + + + + + + +0.9.8: transform.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
transform.hpp
+
+
+Go to the documentation of this file.
1 
+
16 #pragma once
+
17 
+
18 // Dependency:
+
19 #include "../glm.hpp"
+
20 #include "../gtc/matrix_transform.hpp"
+
21 
+
22 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
23 # pragma message("GLM: GLM_GTX_transform extension included")
+
24 #endif
+
25 
+
26 namespace glm
+
27 {
+
30 
+
34  template <typename T, precision P>
+
35  GLM_FUNC_DECL tmat4x4<T, P> translate(
+
36  tvec3<T, P> const & v);
+
37 
+
41  template <typename T, precision P>
+
42  GLM_FUNC_DECL tmat4x4<T, P> rotate(
+
43  T angle,
+
44  tvec3<T, P> const & v);
+
45 
+
49  template <typename T, precision P>
+
50  GLM_FUNC_DECL tmat4x4<T, P> scale(
+
51  tvec3<T, P> const & v);
+
52 
+
54 }// namespace glm
+
55 
+
56 #include "transform.inl"
+
GLM_FUNC_DECL tmat4x4< T, P > scale(tvec3< T, P > const &v)
Transforms a matrix with a scale 4 * 4 matrix created from a vector of 3 components.
+
GLM_FUNC_DECL tmat4x4< T, P > translate(tvec3< T, P > const &v)
Transforms a matrix with a translation 4 * 4 matrix created from 3 scalars.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tmat4x4< T, P > rotate(T angle, tvec3< T, P > const &v)
Builds a rotation 4 * 4 matrix created from an axis of 3 scalars and an angle expressed in radians...
+
GLM_FUNC_DECL T angle(tquat< T, P > const &x)
Returns the quaternion rotation angle.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00106.html b/third_party/glm_test/doc/api/a00106.html new file mode 100644 index 0000000000000..50974e8646a95 --- /dev/null +++ b/third_party/glm_test/doc/api/a00106.html @@ -0,0 +1,102 @@ + + + + + + +0.9.8: transform2.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
transform2.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > proj2D (const tmat3x3< T, P > &m, const tvec3< T, P > &normal)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > proj3D (const tmat4x4< T, P > &m, const tvec3< T, P > &normal)
 
template<typename valType , precision P>
GLM_FUNC_DECL tmat4x4< valType, P > scaleBias (valType scale, valType bias)
 
template<typename valType , precision P>
GLM_FUNC_DECL tmat4x4< valType, P > scaleBias (tmat4x4< valType, P > const &m, valType scale, valType bias)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > shearX2D (tmat3x3< T, P > const &m, T y)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > shearX3D (const tmat4x4< T, P > &m, T y, T z)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > shearY2D (tmat3x3< T, P > const &m, T x)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > shearY3D (const tmat4x4< T, P > &m, T x, T z)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > shearZ3D (const tmat4x4< T, P > &m, T x, T y)
 
+

Detailed Description

+

GLM_GTX_transform2

+
See also
GLM Core (dependence)
+
+GLM_GTX_transform (dependence)
+ +

Definition in file transform2.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00106_source.html b/third_party/glm_test/doc/api/a00106_source.html new file mode 100644 index 0000000000000..73655418a648e --- /dev/null +++ b/third_party/glm_test/doc/api/a00106_source.html @@ -0,0 +1,144 @@ + + + + + + +0.9.8: transform2.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
transform2.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependency:
+
17 #include "../glm.hpp"
+
18 #include "../gtx/transform.hpp"
+
19 
+
20 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
21 # pragma message("GLM: GLM_GTX_transform2 extension included")
+
22 #endif
+
23 
+
24 namespace glm
+
25 {
+
28 
+
31  template <typename T, precision P>
+
32  GLM_FUNC_DECL tmat3x3<T, P> shearX2D(
+
33  tmat3x3<T, P> const & m,
+
34  T y);
+
35 
+
38  template <typename T, precision P>
+
39  GLM_FUNC_DECL tmat3x3<T, P> shearY2D(
+
40  tmat3x3<T, P> const & m,
+
41  T x);
+
42 
+
45  template <typename T, precision P>
+
46  GLM_FUNC_DECL tmat4x4<T, P> shearX3D(
+
47  const tmat4x4<T, P> & m,
+
48  T y,
+
49  T z);
+
50 
+
53  template <typename T, precision P>
+
54  GLM_FUNC_DECL tmat4x4<T, P> shearY3D(
+
55  const tmat4x4<T, P> & m,
+
56  T x,
+
57  T z);
+
58 
+
61  template <typename T, precision P>
+
62  GLM_FUNC_DECL tmat4x4<T, P> shearZ3D(
+
63  const tmat4x4<T, P> & m,
+
64  T x,
+
65  T y);
+
66 
+
67  //template <typename T> GLM_FUNC_QUALIFIER tmat4x4<T, P> shear(const tmat4x4<T, P> & m, shearPlane, planePoint, angle)
+
68  // Identity + tan(angle) * cross(Normal, OnPlaneVector) 0
+
69  // - dot(PointOnPlane, normal) * OnPlaneVector 1
+
70 
+
71  // Reflect functions seem to don't work
+
72  //template <typename T> tmat3x3<T, P> reflect2D(const tmat3x3<T, P> & m, const tvec3<T, P>& normal){return reflect2DGTX(m, normal);} //!< \brief Build a reflection matrix (from GLM_GTX_transform2 extension)
+
73  //template <typename T> tmat4x4<T, P> reflect3D(const tmat4x4<T, P> & m, const tvec3<T, P>& normal){return reflect3DGTX(m, normal);} //!< \brief Build a reflection matrix (from GLM_GTX_transform2 extension)
+
74 
+
77  template <typename T, precision P>
+
78  GLM_FUNC_DECL tmat3x3<T, P> proj2D(
+
79  const tmat3x3<T, P> & m,
+
80  const tvec3<T, P>& normal);
+
81 
+
84  template <typename T, precision P>
+
85  GLM_FUNC_DECL tmat4x4<T, P> proj3D(
+
86  const tmat4x4<T, P> & m,
+
87  const tvec3<T, P>& normal);
+
88 
+
91  template <typename valType, precision P>
+
92  GLM_FUNC_DECL tmat4x4<valType, P> scaleBias(
+
93  valType scale,
+
94  valType bias);
+
95 
+
98  template <typename valType, precision P>
+
99  GLM_FUNC_DECL tmat4x4<valType, P> scaleBias(
+
100  tmat4x4<valType, P> const & m,
+
101  valType scale,
+
102  valType bias);
+
103 
+
105 }// namespace glm
+
106 
+
107 #include "transform2.inl"
+
GLM_FUNC_DECL tmat4x4< valType, P > scaleBias(tmat4x4< valType, P > const &m, valType scale, valType bias)
Build a scale bias matrix.
+
GLM_FUNC_DECL tmat3x3< T, P > proj2D(const tmat3x3< T, P > &m, const tvec3< T, P > &normal)
Build planar projection matrix along normal axis.
+
GLM_FUNC_DECL tmat4x4< T, P > proj3D(const tmat4x4< T, P > &m, const tvec3< T, P > &normal)
Build planar projection matrix along normal axis.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tmat3x3< T, P > shearY2D(tmat3x3< T, P > const &m, T x)
Transforms a matrix with a shearing on Y axis.
+
GLM_FUNC_DECL tmat4x4< T, P > shearY3D(const tmat4x4< T, P > &m, T x, T z)
Transforms a matrix with a shearing on Y axis.
+
GLM_FUNC_DECL tmat3x3< T, P > shearX2D(tmat3x3< T, P > const &m, T y)
Transforms a matrix with a shearing on X axis.
+
GLM_FUNC_DECL tmat4x4< T, P > shearX3D(const tmat4x4< T, P > &m, T y, T z)
Transforms a matrix with a shearing on X axis From GLM_GTX_transform2 extension.
+
GLM_FUNC_DECL tmat4x4< T, P > scale(tmat4x4< T, P > const &m, tvec3< T, P > const &v)
Builds a scale 4 * 4 matrix created from 3 scalars.
+
GLM_FUNC_DECL tmat4x4< T, P > shearZ3D(const tmat4x4< T, P > &m, T x, T y)
Transforms a matrix with a shearing on Z axis.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00107.html b/third_party/glm_test/doc/api/a00107.html new file mode 100644 index 0000000000000..3850469874baf --- /dev/null +++ b/third_party/glm_test/doc/api/a00107.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: trigonometric.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
trigonometric.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file trigonometric.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00107_source.html b/third_party/glm_test/doc/api/a00107_source.html new file mode 100644 index 0000000000000..4176ff064d341 --- /dev/null +++ b/third_party/glm_test/doc/api/a00107_source.html @@ -0,0 +1,65 @@ + + + + + + +0.9.8: trigonometric.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
trigonometric.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+ + +
+ + + + diff --git a/third_party/glm_test/doc/api/a00108.html b/third_party/glm_test/doc/api/a00108.html new file mode 100644 index 0000000000000..cea3e321f83a0 --- /dev/null +++ b/third_party/glm_test/doc/api/a00108.html @@ -0,0 +1,241 @@ + + + + + + +0.9.8: type_aligned.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
gtc/type_aligned.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

+typedef aligned_highp_bvec1 aligned_bvec1
 
+typedef aligned_highp_bvec2 aligned_bvec2
 
+typedef aligned_highp_bvec3 aligned_bvec3
 
+typedef aligned_highp_bvec4 aligned_bvec4
 
+typedef aligned_highp_dvec1 aligned_dvec1
 
+typedef aligned_highp_dvec2 aligned_dvec2
 
+typedef aligned_highp_dvec3 aligned_dvec3
 
+typedef aligned_highp_dvec4 aligned_dvec4
 
typedef tvec2< bool, aligned_highp > aligned_highp_bvec2
 
+typedef tvec3< bool, aligned_highp > aligned_highp_bvec3
 
+typedef tvec4< bool, aligned_highp > aligned_highp_bvec4
 
typedef tvec2< double, aligned_highp > aligned_highp_dvec2
 
typedef tvec3< double, aligned_highp > aligned_highp_dvec3
 
+typedef tvec4< double, aligned_highp > aligned_highp_dvec4
 
typedef tvec2< int, aligned_highp > aligned_highp_ivec2
 
typedef tvec3< int, aligned_highp > aligned_highp_ivec3
 
+typedef tvec4< int, aligned_highp > aligned_highp_ivec4
 
typedef tvec2< uint, aligned_highp > aligned_highp_uvec2
 
typedef tvec3< uint, aligned_highp > aligned_highp_uvec3
 
+typedef tvec4< uint, aligned_highp > aligned_highp_uvec4
 
typedef tvec2< float, aligned_highp > aligned_highp_vec2
 
typedef tvec3< float, aligned_highp > aligned_highp_vec3
 
+typedef tvec4< float, aligned_highp > aligned_highp_vec4
 
+typedef aligned_highp_ivec1 aligned_ivec1
 
+typedef aligned_highp_ivec2 aligned_ivec2
 
+typedef aligned_highp_ivec3 aligned_ivec3
 
+typedef aligned_highp_ivec4 aligned_ivec4
 
typedef tvec2< bool, aligned_lowp > aligned_lowp_bvec2
 
+typedef tvec3< bool, aligned_lowp > aligned_lowp_bvec3
 
+typedef tvec4< bool, aligned_lowp > aligned_lowp_bvec4
 
typedef tvec2< double, aligned_lowp > aligned_lowp_dvec2
 
typedef tvec3< double, aligned_lowp > aligned_lowp_dvec3
 
+typedef tvec4< double, aligned_lowp > aligned_lowp_dvec4
 
typedef tvec2< int, aligned_lowp > aligned_lowp_ivec2
 
typedef tvec3< int, aligned_lowp > aligned_lowp_ivec3
 
+typedef tvec4< int, aligned_lowp > aligned_lowp_ivec4
 
typedef tvec2< uint, aligned_lowp > aligned_lowp_uvec2
 
typedef tvec3< uint, aligned_lowp > aligned_lowp_uvec3
 
+typedef tvec4< uint, aligned_lowp > aligned_lowp_uvec4
 
typedef tvec2< float, aligned_lowp > aligned_lowp_vec2
 
typedef tvec3< float, aligned_lowp > aligned_lowp_vec3
 
+typedef tvec4< float, aligned_lowp > aligned_lowp_vec4
 
typedef tvec2< bool, aligned_mediump > aligned_mediump_bvec2
 
+typedef tvec3< bool, aligned_mediump > aligned_mediump_bvec3
 
+typedef tvec4< bool, aligned_mediump > aligned_mediump_bvec4
 
typedef tvec2< double, aligned_mediump > aligned_mediump_dvec2
 
typedef tvec3< double, aligned_mediump > aligned_mediump_dvec3
 
+typedef tvec4< double, aligned_mediump > aligned_mediump_dvec4
 
typedef tvec2< int, aligned_mediump > aligned_mediump_ivec2
 
typedef tvec3< int, aligned_mediump > aligned_mediump_ivec3
 
+typedef tvec4< int, aligned_mediump > aligned_mediump_ivec4
 
typedef tvec2< uint, aligned_mediump > aligned_mediump_uvec2
 
typedef tvec3< uint, aligned_mediump > aligned_mediump_uvec3
 
+typedef tvec4< uint, aligned_mediump > aligned_mediump_uvec4
 
typedef tvec2< float, aligned_mediump > aligned_mediump_vec2
 
typedef tvec3< float, aligned_mediump > aligned_mediump_vec3
 
+typedef tvec4< float, aligned_mediump > aligned_mediump_vec4
 
+typedef aligned_highp_uvec1 aligned_uvec1
 
+typedef aligned_highp_uvec2 aligned_uvec2
 
+typedef aligned_highp_uvec3 aligned_uvec3
 
+typedef aligned_highp_uvec4 aligned_uvec4
 
+typedef aligned_highp_vec1 aligned_vec1
 
+typedef aligned_highp_vec2 aligned_vec2
 
+typedef aligned_highp_vec3 aligned_vec3
 
+typedef aligned_highp_vec4 aligned_vec4
 
+

Detailed Description

+

GLM_GTC_type_aligned

+
See also
GLM Core (dependence)
+ +

Definition in file gtc/type_aligned.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00108_source.html b/third_party/glm_test/doc/api/a00108_source.html new file mode 100644 index 0000000000000..45a6c099219fe --- /dev/null +++ b/third_party/glm_test/doc/api/a00108_source.html @@ -0,0 +1,383 @@ + + + + + + +0.9.8: type_aligned.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
gtc/type_aligned.hpp
+
+
+Go to the documentation of this file.
1 
+
12 #pragma once
+
13 
+
14 #if !GLM_HAS_ALIGNED_TYPE
+
15 # error "GLM: Aligned types are not supported on this platform"
+
16 #endif
+
17 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
18 # pragma message("GLM: GLM_GTC_type_aligned extension included")
+
19 #endif
+
20 
+
21 #include "../vec2.hpp"
+
22 #include "../vec3.hpp"
+
23 #include "../vec4.hpp"
+
24 #include "../gtc/vec1.hpp"
+
25 
+
26 namespace glm
+
27 {
+
28  template <typename T, precision P> struct tvec1;
+
29  template <typename T, precision P> struct tvec2;
+
30  template <typename T, precision P> struct tvec3;
+
31  template <typename T, precision P> struct tvec4;
+
34 
+
35  // -- *vec1 --
+
36 
+
37  typedef tvec1<float, aligned_highp> aligned_highp_vec1;
+
38  typedef tvec1<float, aligned_mediump> aligned_mediump_vec1;
+
39  typedef tvec1<float, aligned_lowp> aligned_lowp_vec1;
+
40  typedef tvec1<double, aligned_highp> aligned_highp_dvec1;
+
41  typedef tvec1<double, aligned_mediump> aligned_mediump_dvec1;
+
42  typedef tvec1<double, aligned_lowp> aligned_lowp_dvec1;
+
43  typedef tvec1<int, aligned_highp> aligned_highp_ivec1;
+
44  typedef tvec1<int, aligned_mediump> aligned_mediump_ivec1;
+
45  typedef tvec1<int, aligned_lowp> aligned_lowp_ivec1;
+
46  typedef tvec1<uint, aligned_highp> aligned_highp_uvec1;
+
47  typedef tvec1<uint, aligned_mediump> aligned_mediump_uvec1;
+
48  typedef tvec1<uint, aligned_lowp> aligned_lowp_uvec1;
+
49  typedef tvec1<bool, aligned_highp> aligned_highp_bvec1;
+
50  typedef tvec1<bool, aligned_mediump> aligned_mediump_bvec1;
+
51  typedef tvec1<bool, aligned_lowp> aligned_lowp_bvec1;
+
52 
+
53  typedef tvec1<float, packed_highp> packed_highp_vec1;
+
54  typedef tvec1<float, packed_mediump> packed_mediump_vec1;
+
55  typedef tvec1<float, packed_lowp> packed_lowp_vec1;
+
56  typedef tvec1<double, packed_highp> packed_highp_dvec1;
+
57  typedef tvec1<double, packed_mediump> packed_mediump_dvec1;
+
58  typedef tvec1<double, packed_lowp> packed_lowp_dvec1;
+
59  typedef tvec1<int, packed_highp> packed_highp_ivec1;
+
60  typedef tvec1<int, packed_mediump> packed_mediump_ivec1;
+
61  typedef tvec1<int, packed_lowp> packed_lowp_ivec1;
+
62  typedef tvec1<uint, packed_highp> packed_highp_uvec1;
+
63  typedef tvec1<uint, packed_mediump> packed_mediump_uvec1;
+
64  typedef tvec1<uint, packed_lowp> packed_lowp_uvec1;
+
65  typedef tvec1<bool, packed_highp> packed_highp_bvec1;
+
66  typedef tvec1<bool, packed_mediump> packed_mediump_bvec1;
+
67  typedef tvec1<bool, packed_lowp> packed_lowp_bvec1;
+
68 
+
69  // -- *vec2 --
+
70 
+
73  typedef tvec2<float, aligned_highp> aligned_highp_vec2;
+
74 
+
77  typedef tvec2<float, aligned_mediump> aligned_mediump_vec2;
+
78 
+
81  typedef tvec2<float, aligned_lowp> aligned_lowp_vec2;
+
82 
+
85  typedef tvec2<double, aligned_highp> aligned_highp_dvec2;
+
86 
+
89  typedef tvec2<double, aligned_mediump> aligned_mediump_dvec2;
+
90 
+
93  typedef tvec2<double, aligned_lowp> aligned_lowp_dvec2;
+
94 
+
97  typedef tvec2<int, aligned_highp> aligned_highp_ivec2;
+
98 
+
101  typedef tvec2<int, aligned_mediump> aligned_mediump_ivec2;
+
102 
+
105  typedef tvec2<int, aligned_lowp> aligned_lowp_ivec2;
+
106 
+
109  typedef tvec2<uint, aligned_highp> aligned_highp_uvec2;
+
110 
+
113  typedef tvec2<uint, aligned_mediump> aligned_mediump_uvec2;
+
114 
+
117  typedef tvec2<uint, aligned_lowp> aligned_lowp_uvec2;
+
118 
+
121  typedef tvec2<bool, aligned_highp> aligned_highp_bvec2;
+
122 
+
125  typedef tvec2<bool, aligned_mediump> aligned_mediump_bvec2;
+
126 
+
129  typedef tvec2<bool, aligned_lowp> aligned_lowp_bvec2;
+
130 
+
131  // -- *vec3 --
+
132 
+
135  typedef tvec3<float, aligned_highp> aligned_highp_vec3;
+
136 
+
139  typedef tvec3<float, aligned_mediump> aligned_mediump_vec3;
+
140 
+
143  typedef tvec3<float, aligned_lowp> aligned_lowp_vec3;
+
144 
+
147  typedef tvec3<double, aligned_highp> aligned_highp_dvec3;
+
148 
+
151  typedef tvec3<double, aligned_mediump> aligned_mediump_dvec3;
+
152 
+
155  typedef tvec3<double, aligned_lowp> aligned_lowp_dvec3;
+
156 
+
159  typedef tvec3<int, aligned_highp> aligned_highp_ivec3;
+
160 
+
163  typedef tvec3<int, aligned_mediump> aligned_mediump_ivec3;
+
164 
+
167  typedef tvec3<int, aligned_lowp> aligned_lowp_ivec3;
+
168 
+
171  typedef tvec3<uint, aligned_highp> aligned_highp_uvec3;
+
172 
+
175  typedef tvec3<uint, aligned_mediump> aligned_mediump_uvec3;
+
176 
+
179  typedef tvec3<uint, aligned_lowp> aligned_lowp_uvec3;
+
180 
+
182  typedef tvec3<bool, aligned_highp> aligned_highp_bvec3;
+
183 
+
185  typedef tvec3<bool, aligned_mediump> aligned_mediump_bvec3;
+
186 
+
188  typedef tvec3<bool, aligned_lowp> aligned_lowp_bvec3;
+
189 
+
190  // -- *vec4 --
+
191 
+
193  typedef tvec4<float, aligned_highp> aligned_highp_vec4;
+
194 
+
196  typedef tvec4<float, aligned_mediump> aligned_mediump_vec4;
+
197 
+
199  typedef tvec4<float, aligned_lowp> aligned_lowp_vec4;
+
200 
+
202  typedef tvec4<double, aligned_highp> aligned_highp_dvec4;
+
203 
+
205  typedef tvec4<double, aligned_mediump> aligned_mediump_dvec4;
+
206 
+
208  typedef tvec4<double, aligned_lowp> aligned_lowp_dvec4;
+
209 
+
211  typedef tvec4<int, aligned_highp> aligned_highp_ivec4;
+
212 
+
214  typedef tvec4<int, aligned_mediump> aligned_mediump_ivec4;
+
215 
+
217  typedef tvec4<int, aligned_lowp> aligned_lowp_ivec4;
+
218 
+
220  typedef tvec4<uint, aligned_highp> aligned_highp_uvec4;
+
221 
+
223  typedef tvec4<uint, aligned_mediump> aligned_mediump_uvec4;
+
224 
+
226  typedef tvec4<uint, aligned_lowp> aligned_lowp_uvec4;
+
227 
+
229  typedef tvec4<bool, aligned_highp> aligned_highp_bvec4;
+
230 
+
232  typedef tvec4<bool, aligned_mediump> aligned_mediump_bvec4;
+
233 
+
235  typedef tvec4<bool, aligned_lowp> aligned_lowp_bvec4;
+
236 
+
237  // -- default --
+
238 
+
239 #if(defined(GLM_PRECISION_LOWP_FLOAT))
+
240  typedef aligned_lowp_vec1 aligned_vec1;
+
241  typedef aligned_lowp_vec2 aligned_vec2;
+
242  typedef aligned_lowp_vec3 aligned_vec3;
+
243  typedef aligned_lowp_vec4 aligned_vec4;
+
244 #elif(defined(GLM_PRECISION_MEDIUMP_FLOAT))
+
245  typedef aligned_mediump_vec1 aligned_vec1;
+
246  typedef aligned_mediump_vec2 aligned_vec2;
+
247  typedef aligned_mediump_vec3 aligned_vec3;
+
248  typedef aligned_mediump_vec4 aligned_vec4;
+
249 #else //defined(GLM_PRECISION_HIGHP_FLOAT)
+
250  typedef aligned_highp_vec1 aligned_vec1;
+
252 
+
254  typedef aligned_highp_vec2 aligned_vec2;
+
255 
+
257  typedef aligned_highp_vec3 aligned_vec3;
+
258 
+
260  typedef aligned_highp_vec4 aligned_vec4;
+
261 #endif//GLM_PRECISION
+
262 
+
263 #if(defined(GLM_PRECISION_LOWP_DOUBLE))
+
264  typedef aligned_lowp_dvec1 aligned_dvec1;
+
265  typedef aligned_lowp_dvec2 aligned_dvec2;
+
266  typedef aligned_lowp_dvec3 aligned_dvec3;
+
267  typedef aligned_lowp_dvec4 aligned_dvec4;
+
268 #elif(defined(GLM_PRECISION_MEDIUMP_DOUBLE))
+
269  typedef aligned_mediump_dvec1 aligned_dvec1;
+
270  typedef aligned_mediump_dvec2 aligned_dvec2;
+
271  typedef aligned_mediump_dvec3 aligned_dvec3;
+
272  typedef aligned_mediump_dvec4 aligned_dvec4;
+
273 #else //defined(GLM_PRECISION_HIGHP_DOUBLE)
+
274  typedef aligned_highp_dvec1 aligned_dvec1;
+
276 
+
278  typedef aligned_highp_dvec2 aligned_dvec2;
+
279 
+
281  typedef aligned_highp_dvec3 aligned_dvec3;
+
282 
+
284  typedef aligned_highp_dvec4 aligned_dvec4;
+
285 #endif//GLM_PRECISION
+
286 
+
287 #if(defined(GLM_PRECISION_LOWP_INT))
+
288  typedef aligned_lowp_ivec1 aligned_ivec1;
+
289  typedef aligned_lowp_ivec2 aligned_ivec2;
+
290  typedef aligned_lowp_ivec3 aligned_ivec3;
+
291  typedef aligned_lowp_ivec4 aligned_ivec4;
+
292 #elif(defined(GLM_PRECISION_MEDIUMP_INT))
+
293  typedef aligned_mediump_ivec1 aligned_ivec1;
+
294  typedef aligned_mediump_ivec2 aligned_ivec2;
+
295  typedef aligned_mediump_ivec3 aligned_ivec3;
+
296  typedef aligned_mediump_ivec4 aligned_ivec4;
+
297 #else //defined(GLM_PRECISION_HIGHP_INT)
+
298  typedef aligned_highp_ivec1 aligned_ivec1;
+
300 
+
302  typedef aligned_highp_ivec2 aligned_ivec2;
+
303 
+
305  typedef aligned_highp_ivec3 aligned_ivec3;
+
306 
+
308  typedef aligned_highp_ivec4 aligned_ivec4;
+
309 #endif//GLM_PRECISION
+
310 
+
311  // -- Unsigned integer definition --
+
312 
+
313 #if(defined(GLM_PRECISION_LOWP_UINT))
+
314  typedef aligned_lowp_uvec1 aligned_uvec1;
+
315  typedef aligned_lowp_uvec2 aligned_uvec2;
+
316  typedef aligned_lowp_uvec3 aligned_uvec3;
+
317  typedef aligned_lowp_uvec4 aligned_uvec4;
+
318 #elif(defined(GLM_PRECISION_MEDIUMP_UINT))
+
319  typedef aligned_mediump_uvec1 aligned_uvec1;
+
320  typedef aligned_mediump_uvec2 aligned_uvec2;
+
321  typedef aligned_mediump_uvec3 aligned_uvec3;
+
322  typedef aligned_mediump_uvec4 aligned_uvec4;
+
323 #else //defined(GLM_PRECISION_HIGHP_UINT)
+
324  typedef aligned_highp_uvec1 aligned_uvec1;
+
326 
+
328  typedef aligned_highp_uvec2 aligned_uvec2;
+
329 
+
331  typedef aligned_highp_uvec3 aligned_uvec3;
+
332 
+
334  typedef aligned_highp_uvec4 aligned_uvec4;
+
335 #endif//GLM_PRECISION
+
336 
+
337 #if(defined(GLM_PRECISION_LOWP_BOOL))
+
338  typedef aligned_lowp_bvec1 aligned_bvec1;
+
339  typedef aligned_lowp_bvec2 aligned_bvec2;
+
340  typedef aligned_lowp_bvec3 aligned_bvec3;
+
341  typedef aligned_lowp_bvec4 aligned_bvec4;
+
342 #elif(defined(GLM_PRECISION_MEDIUMP_BOOL))
+
343  typedef aligned_mediump_bvec1 aligned_bvec1;
+
344  typedef aligned_mediump_bvec2 aligned_bvec2;
+
345  typedef aligned_mediump_bvec3 aligned_bvec3;
+
346  typedef aligned_mediump_bvec4 aligned_bvec4;
+
347 #else //defined(GLM_PRECISION_HIGHP_BOOL)
+
348  typedef aligned_highp_bvec1 aligned_bvec1;
+
350 
+
352  typedef aligned_highp_bvec2 aligned_bvec2;
+
353 
+
355  typedef aligned_highp_bvec3 aligned_bvec3;
+
356 
+
358  typedef aligned_highp_bvec4 aligned_bvec4;
+
359 #endif//GLM_PRECISION
+
360 
+
362 }//namespace glm
+
aligned_highp_bvec2 aligned_bvec2
2 components vector of boolean.
+
tvec2< double, aligned_mediump > aligned_mediump_dvec2
2 components vector of medium double-precision floating-point numbers.
+
tvec4< bool, aligned_highp > aligned_highp_bvec4
4 components vector of high precision bool numbers.
+
tvec3< uint, aligned_highp > aligned_highp_uvec3
3 components vector of high precision unsigned integer numbers.
+
aligned_highp_dvec4 aligned_dvec4
4 components vector of double-precision floating-point numbers.
+
aligned_highp_dvec1 aligned_dvec1
1 component vector of double-precision floating-point numbers.
+
tvec3< int, aligned_lowp > aligned_lowp_ivec3
3 components vector of low precision signed integer numbers.
+
tvec3< double, aligned_mediump > aligned_mediump_dvec3
3 components vector of medium double-precision floating-point numbers.
+
tvec3< float, aligned_lowp > aligned_lowp_vec3
3 components vector of low single-precision floating-point numbers.
+
tvec2< bool, aligned_lowp > aligned_lowp_bvec2
2 components vector of low precision bool numbers.
+
tvec3< uint, aligned_mediump > aligned_mediump_uvec3
3 components vector of medium precision unsigned integer numbers.
+
tvec4< float, aligned_lowp > aligned_lowp_vec4
4 components vector of low single-precision floating-point numbers.
+
Definition: _noise.hpp:11
+
tvec4< double, aligned_mediump > aligned_mediump_dvec4
4 components vector of medium double-precision floating-point numbers.
+
tvec2< uint, aligned_mediump > aligned_mediump_uvec2
2 components vector of medium precision unsigned integer numbers.
+
tvec2< int, aligned_mediump > aligned_mediump_ivec2
2 components vector of medium precision signed integer numbers.
+
tvec4< uint, aligned_mediump > aligned_mediump_uvec4
4 components vector of medium precision unsigned integer numbers.
+
aligned_highp_bvec4 aligned_bvec4
4 components vector of boolean.
+
tvec2< bool, aligned_highp > aligned_highp_bvec2
2 components vector of high precision bool numbers.
+
aligned_highp_ivec1 aligned_ivec1
1 component vector of signed integer numbers.
+
tvec3< uint, aligned_lowp > aligned_lowp_uvec3
3 components vector of low precision unsigned integer numbers.
+
tvec4< bool, aligned_lowp > aligned_lowp_bvec4
4 components vector of low precision bool numbers.
+
aligned_highp_dvec3 aligned_dvec3
3 components vector of double-precision floating-point numbers.
+
aligned_highp_vec2 aligned_vec2
2 components vector of floating-point numbers.
+
aligned_highp_bvec3 aligned_bvec3
3 components vector of boolean.
+
tvec2< double, aligned_lowp > aligned_lowp_dvec2
2 components vector of low double-precision floating-point numbers.
+
tvec3< double, aligned_highp > aligned_highp_dvec3
3 components vector of high double-precision floating-point numbers.
+
aligned_highp_uvec4 aligned_uvec4
4 components vector of unsigned integer numbers.
+
tvec3< int, aligned_highp > aligned_highp_ivec3
3 components vector of high precision signed integer numbers.
+
tvec4< uint, aligned_highp > aligned_highp_uvec4
4 components vector of high precision unsigned integer numbers.
+
tvec2< uint, aligned_lowp > aligned_lowp_uvec2
2 components vector of low precision unsigned integer numbers.
+
tvec3< int, aligned_mediump > aligned_mediump_ivec3
3 components vector of medium precision signed integer numbers.
+
tvec2< float, aligned_lowp > aligned_lowp_vec2
2 components vector of low single-precision floating-point numbers.
+
aligned_highp_uvec3 aligned_uvec3
3 components vector of unsigned integer numbers.
+
tvec4< float, aligned_highp > aligned_highp_vec4
4 components vector of high single-precision floating-point numbers.
+
tvec4< float, aligned_mediump > aligned_mediump_vec4
4 components vector of medium single-precision floating-point numbers.
+
tvec2< uint, aligned_highp > aligned_highp_uvec2
2 components vector of high precision unsigned integer numbers.
+
tvec3< bool, aligned_lowp > aligned_lowp_bvec3
3 components vector of low precision bool numbers.
+
aligned_highp_bvec1 aligned_bvec1
1 component vector of boolean.
+
tvec3< float, aligned_highp > aligned_highp_vec3
3 components vector of high single-precision floating-point numbers.
+
tvec4< double, aligned_highp > aligned_highp_dvec4
4 components vector of high double-precision floating-point numbers.
+
aligned_highp_uvec1 aligned_uvec1
1 component vector of unsigned integer numbers.
+
tvec2< float, aligned_highp > aligned_highp_vec2
2 components vector of high single-precision floating-point numbers.
+
tvec3< float, aligned_mediump > aligned_mediump_vec3
3 components vector of medium single-precision floating-point numbers.
+
aligned_highp_vec4 aligned_vec4
4 components vector of floating-point numbers.
+
tvec3< bool, aligned_mediump > aligned_mediump_bvec3
3 components vector of medium precision bool numbers.
+
tvec4< bool, aligned_mediump > aligned_mediump_bvec4
4 components vector of medium precision bool numbers.
+
tvec2< float, aligned_mediump > aligned_mediump_vec2
2 components vector of medium single-precision floating-point numbers.
+
aligned_highp_ivec4 aligned_ivec4
4 components vector of signed integer numbers.
+
tvec2< bool, aligned_mediump > aligned_mediump_bvec2
2 components vector of medium precision bool numbers.
+
tvec3< double, aligned_lowp > aligned_lowp_dvec3
3 components vector of low double-precision floating-point numbers.
+
tvec4< uint, aligned_lowp > aligned_lowp_uvec4
4 components vector of low precision unsigned integer numbers.
+
tvec2< int, aligned_highp > aligned_highp_ivec2
2 components vector of high precision signed integer numbers.
+
aligned_highp_dvec2 aligned_dvec2
2 components vector of double-precision floating-point numbers.
+
aligned_highp_uvec2 aligned_uvec2
2 components vector of unsigned integer numbers.
+
tvec4< int, aligned_lowp > aligned_lowp_ivec4
4 components vector of low precision signed integer numbers.
+
tvec2< int, aligned_lowp > aligned_lowp_ivec2
2 components vector of low precision signed integer numbers.
+
aligned_highp_vec1 aligned_vec1
1 component vector of floating-point numbers.
+
tvec4< double, aligned_lowp > aligned_lowp_dvec4
4 components vector of low double-precision floating-point numbers.
+
tvec4< int, aligned_mediump > aligned_mediump_ivec4
4 components vector of medium precision signed integer numbers.
+
tvec3< bool, aligned_highp > aligned_highp_bvec3
3 components vector of high precision bool numbers.
+
aligned_highp_ivec2 aligned_ivec2
2 components vector of signed integer numbers.
+
tvec4< int, aligned_highp > aligned_highp_ivec4
4 components vector of high precision signed integer numbers.
+
aligned_highp_ivec3 aligned_ivec3
3 components vector of signed integer numbers.
+
tvec2< double, aligned_highp > aligned_highp_dvec2
2 components vector of high double-precision floating-point numbers.
+
aligned_highp_vec3 aligned_vec3
3 components vector of floating-point numbers.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00109.html b/third_party/glm_test/doc/api/a00109.html new file mode 100644 index 0000000000000..91e30c4ad5434 --- /dev/null +++ b/third_party/glm_test/doc/api/a00109.html @@ -0,0 +1,493 @@ + + + + + + +0.9.8: type_aligned.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
gtx/type_aligned.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

 GLM_ALIGNED_TYPEDEF (lowp_int8, aligned_lowp_int8, 1)
 
 GLM_ALIGNED_TYPEDEF (lowp_int16, aligned_lowp_int16, 2)
 
 GLM_ALIGNED_TYPEDEF (lowp_int32, aligned_lowp_int32, 4)
 
 GLM_ALIGNED_TYPEDEF (lowp_int64, aligned_lowp_int64, 8)
 
 GLM_ALIGNED_TYPEDEF (lowp_int8_t, aligned_lowp_int8_t, 1)
 
 GLM_ALIGNED_TYPEDEF (lowp_int16_t, aligned_lowp_int16_t, 2)
 
 GLM_ALIGNED_TYPEDEF (lowp_int32_t, aligned_lowp_int32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (lowp_int64_t, aligned_lowp_int64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (lowp_i8, aligned_lowp_i8, 1)
 
 GLM_ALIGNED_TYPEDEF (lowp_i16, aligned_lowp_i16, 2)
 
 GLM_ALIGNED_TYPEDEF (lowp_i32, aligned_lowp_i32, 4)
 
 GLM_ALIGNED_TYPEDEF (lowp_i64, aligned_lowp_i64, 8)
 
 GLM_ALIGNED_TYPEDEF (mediump_int8, aligned_mediump_int8, 1)
 
 GLM_ALIGNED_TYPEDEF (mediump_int16, aligned_mediump_int16, 2)
 
 GLM_ALIGNED_TYPEDEF (mediump_int32, aligned_mediump_int32, 4)
 
 GLM_ALIGNED_TYPEDEF (mediump_int64, aligned_mediump_int64, 8)
 
 GLM_ALIGNED_TYPEDEF (mediump_int8_t, aligned_mediump_int8_t, 1)
 
 GLM_ALIGNED_TYPEDEF (mediump_int16_t, aligned_mediump_int16_t, 2)
 
 GLM_ALIGNED_TYPEDEF (mediump_int32_t, aligned_mediump_int32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (mediump_int64_t, aligned_mediump_int64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (mediump_i8, aligned_mediump_i8, 1)
 
 GLM_ALIGNED_TYPEDEF (mediump_i16, aligned_mediump_i16, 2)
 
 GLM_ALIGNED_TYPEDEF (mediump_i32, aligned_mediump_i32, 4)
 
 GLM_ALIGNED_TYPEDEF (mediump_i64, aligned_mediump_i64, 8)
 
 GLM_ALIGNED_TYPEDEF (highp_int8, aligned_highp_int8, 1)
 
 GLM_ALIGNED_TYPEDEF (highp_int16, aligned_highp_int16, 2)
 
 GLM_ALIGNED_TYPEDEF (highp_int32, aligned_highp_int32, 4)
 
 GLM_ALIGNED_TYPEDEF (highp_int64, aligned_highp_int64, 8)
 
 GLM_ALIGNED_TYPEDEF (highp_int8_t, aligned_highp_int8_t, 1)
 
 GLM_ALIGNED_TYPEDEF (highp_int16_t, aligned_highp_int16_t, 2)
 
 GLM_ALIGNED_TYPEDEF (highp_int32_t, aligned_highp_int32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (highp_int64_t, aligned_highp_int64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (highp_i8, aligned_highp_i8, 1)
 
 GLM_ALIGNED_TYPEDEF (highp_i16, aligned_highp_i16, 2)
 
 GLM_ALIGNED_TYPEDEF (highp_i32, aligned_highp_i32, 4)
 
 GLM_ALIGNED_TYPEDEF (highp_i64, aligned_highp_i64, 8)
 
 GLM_ALIGNED_TYPEDEF (int8, aligned_int8, 1)
 
 GLM_ALIGNED_TYPEDEF (int16, aligned_int16, 2)
 
 GLM_ALIGNED_TYPEDEF (int32, aligned_int32, 4)
 
 GLM_ALIGNED_TYPEDEF (int64, aligned_int64, 8)
 
 GLM_ALIGNED_TYPEDEF (int8_t, aligned_int8_t, 1)
 
 GLM_ALIGNED_TYPEDEF (int16_t, aligned_int16_t, 2)
 
 GLM_ALIGNED_TYPEDEF (int32_t, aligned_int32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (int64_t, aligned_int64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (i8, aligned_i8, 1)
 
 GLM_ALIGNED_TYPEDEF (i16, aligned_i16, 2)
 
 GLM_ALIGNED_TYPEDEF (i32, aligned_i32, 4)
 
 GLM_ALIGNED_TYPEDEF (i64, aligned_i64, 8)
 
 GLM_ALIGNED_TYPEDEF (ivec1, aligned_ivec1, 4)
 
 GLM_ALIGNED_TYPEDEF (ivec2, aligned_ivec2, 8)
 
 GLM_ALIGNED_TYPEDEF (ivec3, aligned_ivec3, 16)
 
 GLM_ALIGNED_TYPEDEF (ivec4, aligned_ivec4, 16)
 
 GLM_ALIGNED_TYPEDEF (i8vec1, aligned_i8vec1, 1)
 
 GLM_ALIGNED_TYPEDEF (i8vec2, aligned_i8vec2, 2)
 
 GLM_ALIGNED_TYPEDEF (i8vec3, aligned_i8vec3, 4)
 
 GLM_ALIGNED_TYPEDEF (i8vec4, aligned_i8vec4, 4)
 
 GLM_ALIGNED_TYPEDEF (i16vec1, aligned_i16vec1, 2)
 
 GLM_ALIGNED_TYPEDEF (i16vec2, aligned_i16vec2, 4)
 
 GLM_ALIGNED_TYPEDEF (i16vec3, aligned_i16vec3, 8)
 
 GLM_ALIGNED_TYPEDEF (i16vec4, aligned_i16vec4, 8)
 
 GLM_ALIGNED_TYPEDEF (i32vec1, aligned_i32vec1, 4)
 
 GLM_ALIGNED_TYPEDEF (i32vec2, aligned_i32vec2, 8)
 
 GLM_ALIGNED_TYPEDEF (i32vec3, aligned_i32vec3, 16)
 
 GLM_ALIGNED_TYPEDEF (i32vec4, aligned_i32vec4, 16)
 
 GLM_ALIGNED_TYPEDEF (i64vec1, aligned_i64vec1, 8)
 
 GLM_ALIGNED_TYPEDEF (i64vec2, aligned_i64vec2, 16)
 
 GLM_ALIGNED_TYPEDEF (i64vec3, aligned_i64vec3, 32)
 
 GLM_ALIGNED_TYPEDEF (i64vec4, aligned_i64vec4, 32)
 
 GLM_ALIGNED_TYPEDEF (lowp_uint8, aligned_lowp_uint8, 1)
 
 GLM_ALIGNED_TYPEDEF (lowp_uint16, aligned_lowp_uint16, 2)
 
 GLM_ALIGNED_TYPEDEF (lowp_uint32, aligned_lowp_uint32, 4)
 
 GLM_ALIGNED_TYPEDEF (lowp_uint64, aligned_lowp_uint64, 8)
 
 GLM_ALIGNED_TYPEDEF (lowp_uint8_t, aligned_lowp_uint8_t, 1)
 
 GLM_ALIGNED_TYPEDEF (lowp_uint16_t, aligned_lowp_uint16_t, 2)
 
 GLM_ALIGNED_TYPEDEF (lowp_uint32_t, aligned_lowp_uint32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (lowp_uint64_t, aligned_lowp_uint64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (lowp_u8, aligned_lowp_u8, 1)
 
 GLM_ALIGNED_TYPEDEF (lowp_u16, aligned_lowp_u16, 2)
 
 GLM_ALIGNED_TYPEDEF (lowp_u32, aligned_lowp_u32, 4)
 
 GLM_ALIGNED_TYPEDEF (lowp_u64, aligned_lowp_u64, 8)
 
 GLM_ALIGNED_TYPEDEF (mediump_uint8, aligned_mediump_uint8, 1)
 
 GLM_ALIGNED_TYPEDEF (mediump_uint16, aligned_mediump_uint16, 2)
 
 GLM_ALIGNED_TYPEDEF (mediump_uint32, aligned_mediump_uint32, 4)
 
 GLM_ALIGNED_TYPEDEF (mediump_uint64, aligned_mediump_uint64, 8)
 
 GLM_ALIGNED_TYPEDEF (mediump_uint8_t, aligned_mediump_uint8_t, 1)
 
 GLM_ALIGNED_TYPEDEF (mediump_uint16_t, aligned_mediump_uint16_t, 2)
 
 GLM_ALIGNED_TYPEDEF (mediump_uint32_t, aligned_mediump_uint32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (mediump_uint64_t, aligned_mediump_uint64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (mediump_u8, aligned_mediump_u8, 1)
 
 GLM_ALIGNED_TYPEDEF (mediump_u16, aligned_mediump_u16, 2)
 
 GLM_ALIGNED_TYPEDEF (mediump_u32, aligned_mediump_u32, 4)
 
 GLM_ALIGNED_TYPEDEF (mediump_u64, aligned_mediump_u64, 8)
 
 GLM_ALIGNED_TYPEDEF (highp_uint8, aligned_highp_uint8, 1)
 
 GLM_ALIGNED_TYPEDEF (highp_uint16, aligned_highp_uint16, 2)
 
 GLM_ALIGNED_TYPEDEF (highp_uint32, aligned_highp_uint32, 4)
 
 GLM_ALIGNED_TYPEDEF (highp_uint64, aligned_highp_uint64, 8)
 
 GLM_ALIGNED_TYPEDEF (highp_uint8_t, aligned_highp_uint8_t, 1)
 
 GLM_ALIGNED_TYPEDEF (highp_uint16_t, aligned_highp_uint16_t, 2)
 
 GLM_ALIGNED_TYPEDEF (highp_uint32_t, aligned_highp_uint32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (highp_uint64_t, aligned_highp_uint64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (highp_u8, aligned_highp_u8, 1)
 
 GLM_ALIGNED_TYPEDEF (highp_u16, aligned_highp_u16, 2)
 
 GLM_ALIGNED_TYPEDEF (highp_u32, aligned_highp_u32, 4)
 
 GLM_ALIGNED_TYPEDEF (highp_u64, aligned_highp_u64, 8)
 
 GLM_ALIGNED_TYPEDEF (uint8, aligned_uint8, 1)
 
 GLM_ALIGNED_TYPEDEF (uint16, aligned_uint16, 2)
 
 GLM_ALIGNED_TYPEDEF (uint32, aligned_uint32, 4)
 
 GLM_ALIGNED_TYPEDEF (uint64, aligned_uint64, 8)
 
 GLM_ALIGNED_TYPEDEF (uint8_t, aligned_uint8_t, 1)
 
 GLM_ALIGNED_TYPEDEF (uint16_t, aligned_uint16_t, 2)
 
 GLM_ALIGNED_TYPEDEF (uint32_t, aligned_uint32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (uint64_t, aligned_uint64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (u8, aligned_u8, 1)
 
 GLM_ALIGNED_TYPEDEF (u16, aligned_u16, 2)
 
 GLM_ALIGNED_TYPEDEF (u32, aligned_u32, 4)
 
 GLM_ALIGNED_TYPEDEF (u64, aligned_u64, 8)
 
 GLM_ALIGNED_TYPEDEF (uvec1, aligned_uvec1, 4)
 
 GLM_ALIGNED_TYPEDEF (uvec2, aligned_uvec2, 8)
 
 GLM_ALIGNED_TYPEDEF (uvec3, aligned_uvec3, 16)
 
 GLM_ALIGNED_TYPEDEF (uvec4, aligned_uvec4, 16)
 
 GLM_ALIGNED_TYPEDEF (u8vec1, aligned_u8vec1, 1)
 
 GLM_ALIGNED_TYPEDEF (u8vec2, aligned_u8vec2, 2)
 
 GLM_ALIGNED_TYPEDEF (u8vec3, aligned_u8vec3, 4)
 
 GLM_ALIGNED_TYPEDEF (u8vec4, aligned_u8vec4, 4)
 
 GLM_ALIGNED_TYPEDEF (u16vec1, aligned_u16vec1, 2)
 
 GLM_ALIGNED_TYPEDEF (u16vec2, aligned_u16vec2, 4)
 
 GLM_ALIGNED_TYPEDEF (u16vec3, aligned_u16vec3, 8)
 
 GLM_ALIGNED_TYPEDEF (u16vec4, aligned_u16vec4, 8)
 
 GLM_ALIGNED_TYPEDEF (u32vec1, aligned_u32vec1, 4)
 
 GLM_ALIGNED_TYPEDEF (u32vec2, aligned_u32vec2, 8)
 
 GLM_ALIGNED_TYPEDEF (u32vec3, aligned_u32vec3, 16)
 
 GLM_ALIGNED_TYPEDEF (u32vec4, aligned_u32vec4, 16)
 
 GLM_ALIGNED_TYPEDEF (u64vec1, aligned_u64vec1, 8)
 
 GLM_ALIGNED_TYPEDEF (u64vec2, aligned_u64vec2, 16)
 
 GLM_ALIGNED_TYPEDEF (u64vec3, aligned_u64vec3, 32)
 
 GLM_ALIGNED_TYPEDEF (u64vec4, aligned_u64vec4, 32)
 
 GLM_ALIGNED_TYPEDEF (float32, aligned_float32, 4)
 
 GLM_ALIGNED_TYPEDEF (float64, aligned_float64, 8)
 
 GLM_ALIGNED_TYPEDEF (float32_t, aligned_float32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (float64_t, aligned_float64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (float32, aligned_f32, 4)
 
 GLM_ALIGNED_TYPEDEF (float64, aligned_f64, 8)
 
 GLM_ALIGNED_TYPEDEF (vec1, aligned_vec1, 4)
 
 GLM_ALIGNED_TYPEDEF (vec2, aligned_vec2, 8)
 
 GLM_ALIGNED_TYPEDEF (vec3, aligned_vec3, 16)
 
 GLM_ALIGNED_TYPEDEF (vec4, aligned_vec4, 16)
 
 GLM_ALIGNED_TYPEDEF (fvec1, aligned_fvec1, 4)
 
 GLM_ALIGNED_TYPEDEF (fvec2, aligned_fvec2, 8)
 
 GLM_ALIGNED_TYPEDEF (fvec3, aligned_fvec3, 16)
 
 GLM_ALIGNED_TYPEDEF (fvec4, aligned_fvec4, 16)
 
 GLM_ALIGNED_TYPEDEF (f32vec1, aligned_f32vec1, 4)
 
 GLM_ALIGNED_TYPEDEF (f32vec2, aligned_f32vec2, 8)
 
 GLM_ALIGNED_TYPEDEF (f32vec3, aligned_f32vec3, 16)
 
 GLM_ALIGNED_TYPEDEF (f32vec4, aligned_f32vec4, 16)
 
 GLM_ALIGNED_TYPEDEF (dvec1, aligned_dvec1, 8)
 
 GLM_ALIGNED_TYPEDEF (dvec2, aligned_dvec2, 16)
 
 GLM_ALIGNED_TYPEDEF (dvec3, aligned_dvec3, 32)
 
 GLM_ALIGNED_TYPEDEF (dvec4, aligned_dvec4, 32)
 
 GLM_ALIGNED_TYPEDEF (f64vec1, aligned_f64vec1, 8)
 
 GLM_ALIGNED_TYPEDEF (f64vec2, aligned_f64vec2, 16)
 
 GLM_ALIGNED_TYPEDEF (f64vec3, aligned_f64vec3, 32)
 
 GLM_ALIGNED_TYPEDEF (f64vec4, aligned_f64vec4, 32)
 
 GLM_ALIGNED_TYPEDEF (mat2, aligned_mat2, 16)
 
 GLM_ALIGNED_TYPEDEF (mat3, aligned_mat3, 16)
 
 GLM_ALIGNED_TYPEDEF (mat4, aligned_mat4, 16)
 
 GLM_ALIGNED_TYPEDEF (mat2x2, aligned_mat2x2, 16)
 
 GLM_ALIGNED_TYPEDEF (mat3x3, aligned_mat3x3, 16)
 
 GLM_ALIGNED_TYPEDEF (mat4x4, aligned_mat4x4, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat2x2, aligned_fmat2, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat3x3, aligned_fmat3, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat4x4, aligned_fmat4, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat2x2, aligned_fmat2x2, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat2x3, aligned_fmat2x3, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat2x4, aligned_fmat2x4, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat3x2, aligned_fmat3x2, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat3x3, aligned_fmat3x3, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat3x4, aligned_fmat3x4, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat4x2, aligned_fmat4x2, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat4x3, aligned_fmat4x3, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat4x4, aligned_fmat4x4, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat2x2, aligned_f32mat2, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat3x3, aligned_f32mat3, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat4x4, aligned_f32mat4, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat2x2, aligned_f32mat2x2, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat2x3, aligned_f32mat2x3, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat2x4, aligned_f32mat2x4, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat3x2, aligned_f32mat3x2, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat3x3, aligned_f32mat3x3, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat3x4, aligned_f32mat3x4, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat4x2, aligned_f32mat4x2, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat4x3, aligned_f32mat4x3, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat4x4, aligned_f32mat4x4, 16)
 
 GLM_ALIGNED_TYPEDEF (f64mat2x2, aligned_f64mat2, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat3x3, aligned_f64mat3, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat4x4, aligned_f64mat4, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat2x2, aligned_f64mat2x2, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat2x3, aligned_f64mat2x3, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat2x4, aligned_f64mat2x4, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat3x2, aligned_f64mat3x2, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat3x3, aligned_f64mat3x3, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat3x4, aligned_f64mat3x4, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat4x2, aligned_f64mat4x2, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat4x3, aligned_f64mat4x3, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat4x4, aligned_f64mat4x4, 32)
 
 GLM_ALIGNED_TYPEDEF (quat, aligned_quat, 16)
 
 GLM_ALIGNED_TYPEDEF (fquat, aligned_fquat, 16)
 
 GLM_ALIGNED_TYPEDEF (dquat, aligned_dquat, 32)
 
 GLM_ALIGNED_TYPEDEF (f32quat, aligned_f32quat, 16)
 
 GLM_ALIGNED_TYPEDEF (f64quat, aligned_f64quat, 32)
 
+

Detailed Description

+

GLM_GTX_type_aligned

+
See also
GLM Core (dependence)
+
+GLM_GTC_quaternion (dependence)
+ +

Definition in file gtx/type_aligned.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00109_source.html b/third_party/glm_test/doc/api/a00109_source.html new file mode 100644 index 0000000000000..c9862aea2f9ac --- /dev/null +++ b/third_party/glm_test/doc/api/a00109_source.html @@ -0,0 +1,769 @@ + + + + + + +0.9.8: type_aligned.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
gtx/type_aligned.hpp
+
+
+Go to the documentation of this file.
1 
+
16 #pragma once
+
17 
+
18 // Dependency:
+
19 #include "../gtc/type_precision.hpp"
+
20 
+
21 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
22 # pragma message("GLM: GLM_GTX_type_aligned extension included")
+
23 #endif
+
24 
+
25 namespace glm
+
26 {
+
28  // Signed int vector types
+
29 
+
32 
+
35  GLM_ALIGNED_TYPEDEF(lowp_int8, aligned_lowp_int8, 1);
+
36 
+
39  GLM_ALIGNED_TYPEDEF(lowp_int16, aligned_lowp_int16, 2);
+
40 
+
43  GLM_ALIGNED_TYPEDEF(lowp_int32, aligned_lowp_int32, 4);
+
44 
+
47  GLM_ALIGNED_TYPEDEF(lowp_int64, aligned_lowp_int64, 8);
+
48 
+
49 
+
52  GLM_ALIGNED_TYPEDEF(lowp_int8_t, aligned_lowp_int8_t, 1);
+
53 
+
56  GLM_ALIGNED_TYPEDEF(lowp_int16_t, aligned_lowp_int16_t, 2);
+
57 
+
60  GLM_ALIGNED_TYPEDEF(lowp_int32_t, aligned_lowp_int32_t, 4);
+
61 
+
64  GLM_ALIGNED_TYPEDEF(lowp_int64_t, aligned_lowp_int64_t, 8);
+
65 
+
66 
+
69  GLM_ALIGNED_TYPEDEF(lowp_i8, aligned_lowp_i8, 1);
+
70 
+
73  GLM_ALIGNED_TYPEDEF(lowp_i16, aligned_lowp_i16, 2);
+
74 
+
77  GLM_ALIGNED_TYPEDEF(lowp_i32, aligned_lowp_i32, 4);
+
78 
+
81  GLM_ALIGNED_TYPEDEF(lowp_i64, aligned_lowp_i64, 8);
+
82 
+
83 
+
86  GLM_ALIGNED_TYPEDEF(mediump_int8, aligned_mediump_int8, 1);
+
87 
+
90  GLM_ALIGNED_TYPEDEF(mediump_int16, aligned_mediump_int16, 2);
+
91 
+
94  GLM_ALIGNED_TYPEDEF(mediump_int32, aligned_mediump_int32, 4);
+
95 
+
98  GLM_ALIGNED_TYPEDEF(mediump_int64, aligned_mediump_int64, 8);
+
99 
+
100 
+
103  GLM_ALIGNED_TYPEDEF(mediump_int8_t, aligned_mediump_int8_t, 1);
+
104 
+
107  GLM_ALIGNED_TYPEDEF(mediump_int16_t, aligned_mediump_int16_t, 2);
+
108 
+
111  GLM_ALIGNED_TYPEDEF(mediump_int32_t, aligned_mediump_int32_t, 4);
+
112 
+
115  GLM_ALIGNED_TYPEDEF(mediump_int64_t, aligned_mediump_int64_t, 8);
+
116 
+
117 
+
120  GLM_ALIGNED_TYPEDEF(mediump_i8, aligned_mediump_i8, 1);
+
121 
+
124  GLM_ALIGNED_TYPEDEF(mediump_i16, aligned_mediump_i16, 2);
+
125 
+
128  GLM_ALIGNED_TYPEDEF(mediump_i32, aligned_mediump_i32, 4);
+
129 
+
132  GLM_ALIGNED_TYPEDEF(mediump_i64, aligned_mediump_i64, 8);
+
133 
+
134 
+
137  GLM_ALIGNED_TYPEDEF(highp_int8, aligned_highp_int8, 1);
+
138 
+
141  GLM_ALIGNED_TYPEDEF(highp_int16, aligned_highp_int16, 2);
+
142 
+
145  GLM_ALIGNED_TYPEDEF(highp_int32, aligned_highp_int32, 4);
+
146 
+
149  GLM_ALIGNED_TYPEDEF(highp_int64, aligned_highp_int64, 8);
+
150 
+
151 
+
154  GLM_ALIGNED_TYPEDEF(highp_int8_t, aligned_highp_int8_t, 1);
+
155 
+
158  GLM_ALIGNED_TYPEDEF(highp_int16_t, aligned_highp_int16_t, 2);
+
159 
+
162  GLM_ALIGNED_TYPEDEF(highp_int32_t, aligned_highp_int32_t, 4);
+
163 
+
166  GLM_ALIGNED_TYPEDEF(highp_int64_t, aligned_highp_int64_t, 8);
+
167 
+
168 
+
171  GLM_ALIGNED_TYPEDEF(highp_i8, aligned_highp_i8, 1);
+
172 
+
175  GLM_ALIGNED_TYPEDEF(highp_i16, aligned_highp_i16, 2);
+
176 
+
179  GLM_ALIGNED_TYPEDEF(highp_i32, aligned_highp_i32, 4);
+
180 
+
183  GLM_ALIGNED_TYPEDEF(highp_i64, aligned_highp_i64, 8);
+
184 
+
185 
+
188  GLM_ALIGNED_TYPEDEF(int8, aligned_int8, 1);
+
189 
+
192  GLM_ALIGNED_TYPEDEF(int16, aligned_int16, 2);
+
193 
+
196  GLM_ALIGNED_TYPEDEF(int32, aligned_int32, 4);
+
197 
+
200  GLM_ALIGNED_TYPEDEF(int64, aligned_int64, 8);
+
201 
+
202 
+
205  GLM_ALIGNED_TYPEDEF(int8_t, aligned_int8_t, 1);
+
206 
+
209  GLM_ALIGNED_TYPEDEF(int16_t, aligned_int16_t, 2);
+
210 
+
213  GLM_ALIGNED_TYPEDEF(int32_t, aligned_int32_t, 4);
+
214 
+
217  GLM_ALIGNED_TYPEDEF(int64_t, aligned_int64_t, 8);
+
218 
+
219 
+
222  GLM_ALIGNED_TYPEDEF(i8, aligned_i8, 1);
+
223 
+
226  GLM_ALIGNED_TYPEDEF(i16, aligned_i16, 2);
+
227 
+
230  GLM_ALIGNED_TYPEDEF(i32, aligned_i32, 4);
+
231 
+
234  GLM_ALIGNED_TYPEDEF(i64, aligned_i64, 8);
+
235 
+
236 
+ +
240 
+ +
244 
+ +
248 
+ +
252 
+
253 
+
256  GLM_ALIGNED_TYPEDEF(i8vec1, aligned_i8vec1, 1);
+
257 
+
260  GLM_ALIGNED_TYPEDEF(i8vec2, aligned_i8vec2, 2);
+
261 
+
264  GLM_ALIGNED_TYPEDEF(i8vec3, aligned_i8vec3, 4);
+
265 
+
268  GLM_ALIGNED_TYPEDEF(i8vec4, aligned_i8vec4, 4);
+
269 
+
270 
+
273  GLM_ALIGNED_TYPEDEF(i16vec1, aligned_i16vec1, 2);
+
274 
+
277  GLM_ALIGNED_TYPEDEF(i16vec2, aligned_i16vec2, 4);
+
278 
+
281  GLM_ALIGNED_TYPEDEF(i16vec3, aligned_i16vec3, 8);
+
282 
+
285  GLM_ALIGNED_TYPEDEF(i16vec4, aligned_i16vec4, 8);
+
286 
+
287 
+
290  GLM_ALIGNED_TYPEDEF(i32vec1, aligned_i32vec1, 4);
+
291 
+
294  GLM_ALIGNED_TYPEDEF(i32vec2, aligned_i32vec2, 8);
+
295 
+
298  GLM_ALIGNED_TYPEDEF(i32vec3, aligned_i32vec3, 16);
+
299 
+
302  GLM_ALIGNED_TYPEDEF(i32vec4, aligned_i32vec4, 16);
+
303 
+
304 
+
307  GLM_ALIGNED_TYPEDEF(i64vec1, aligned_i64vec1, 8);
+
308 
+
311  GLM_ALIGNED_TYPEDEF(i64vec2, aligned_i64vec2, 16);
+
312 
+
315  GLM_ALIGNED_TYPEDEF(i64vec3, aligned_i64vec3, 32);
+
316 
+
319  GLM_ALIGNED_TYPEDEF(i64vec4, aligned_i64vec4, 32);
+
320 
+
321 
+
323  // Unsigned int vector types
+
324 
+
327  GLM_ALIGNED_TYPEDEF(lowp_uint8, aligned_lowp_uint8, 1);
+
328 
+
331  GLM_ALIGNED_TYPEDEF(lowp_uint16, aligned_lowp_uint16, 2);
+
332 
+
335  GLM_ALIGNED_TYPEDEF(lowp_uint32, aligned_lowp_uint32, 4);
+
336 
+
339  GLM_ALIGNED_TYPEDEF(lowp_uint64, aligned_lowp_uint64, 8);
+
340 
+
341 
+
344  GLM_ALIGNED_TYPEDEF(lowp_uint8_t, aligned_lowp_uint8_t, 1);
+
345 
+
348  GLM_ALIGNED_TYPEDEF(lowp_uint16_t, aligned_lowp_uint16_t, 2);
+
349 
+
352  GLM_ALIGNED_TYPEDEF(lowp_uint32_t, aligned_lowp_uint32_t, 4);
+
353 
+
356  GLM_ALIGNED_TYPEDEF(lowp_uint64_t, aligned_lowp_uint64_t, 8);
+
357 
+
358 
+
361  GLM_ALIGNED_TYPEDEF(lowp_u8, aligned_lowp_u8, 1);
+
362 
+
365  GLM_ALIGNED_TYPEDEF(lowp_u16, aligned_lowp_u16, 2);
+
366 
+
369  GLM_ALIGNED_TYPEDEF(lowp_u32, aligned_lowp_u32, 4);
+
370 
+
373  GLM_ALIGNED_TYPEDEF(lowp_u64, aligned_lowp_u64, 8);
+
374 
+
375 
+
378  GLM_ALIGNED_TYPEDEF(mediump_uint8, aligned_mediump_uint8, 1);
+
379 
+
382  GLM_ALIGNED_TYPEDEF(mediump_uint16, aligned_mediump_uint16, 2);
+
383 
+
386  GLM_ALIGNED_TYPEDEF(mediump_uint32, aligned_mediump_uint32, 4);
+
387 
+
390  GLM_ALIGNED_TYPEDEF(mediump_uint64, aligned_mediump_uint64, 8);
+
391 
+
392 
+
395  GLM_ALIGNED_TYPEDEF(mediump_uint8_t, aligned_mediump_uint8_t, 1);
+
396 
+
399  GLM_ALIGNED_TYPEDEF(mediump_uint16_t, aligned_mediump_uint16_t, 2);
+
400 
+
403  GLM_ALIGNED_TYPEDEF(mediump_uint32_t, aligned_mediump_uint32_t, 4);
+
404 
+
407  GLM_ALIGNED_TYPEDEF(mediump_uint64_t, aligned_mediump_uint64_t, 8);
+
408 
+
409 
+
412  GLM_ALIGNED_TYPEDEF(mediump_u8, aligned_mediump_u8, 1);
+
413 
+
416  GLM_ALIGNED_TYPEDEF(mediump_u16, aligned_mediump_u16, 2);
+
417 
+
420  GLM_ALIGNED_TYPEDEF(mediump_u32, aligned_mediump_u32, 4);
+
421 
+
424  GLM_ALIGNED_TYPEDEF(mediump_u64, aligned_mediump_u64, 8);
+
425 
+
426 
+
429  GLM_ALIGNED_TYPEDEF(highp_uint8, aligned_highp_uint8, 1);
+
430 
+
433  GLM_ALIGNED_TYPEDEF(highp_uint16, aligned_highp_uint16, 2);
+
434 
+
437  GLM_ALIGNED_TYPEDEF(highp_uint32, aligned_highp_uint32, 4);
+
438 
+
441  GLM_ALIGNED_TYPEDEF(highp_uint64, aligned_highp_uint64, 8);
+
442 
+
443 
+
446  GLM_ALIGNED_TYPEDEF(highp_uint8_t, aligned_highp_uint8_t, 1);
+
447 
+
450  GLM_ALIGNED_TYPEDEF(highp_uint16_t, aligned_highp_uint16_t, 2);
+
451 
+
454  GLM_ALIGNED_TYPEDEF(highp_uint32_t, aligned_highp_uint32_t, 4);
+
455 
+
458  GLM_ALIGNED_TYPEDEF(highp_uint64_t, aligned_highp_uint64_t, 8);
+
459 
+
460 
+
463  GLM_ALIGNED_TYPEDEF(highp_u8, aligned_highp_u8, 1);
+
464 
+
467  GLM_ALIGNED_TYPEDEF(highp_u16, aligned_highp_u16, 2);
+
468 
+
471  GLM_ALIGNED_TYPEDEF(highp_u32, aligned_highp_u32, 4);
+
472 
+
475  GLM_ALIGNED_TYPEDEF(highp_u64, aligned_highp_u64, 8);
+
476 
+
477 
+
480  GLM_ALIGNED_TYPEDEF(uint8, aligned_uint8, 1);
+
481 
+
484  GLM_ALIGNED_TYPEDEF(uint16, aligned_uint16, 2);
+
485 
+
488  GLM_ALIGNED_TYPEDEF(uint32, aligned_uint32, 4);
+
489 
+
492  GLM_ALIGNED_TYPEDEF(uint64, aligned_uint64, 8);
+
493 
+
494 
+
497  GLM_ALIGNED_TYPEDEF(uint8_t, aligned_uint8_t, 1);
+
498 
+
501  GLM_ALIGNED_TYPEDEF(uint16_t, aligned_uint16_t, 2);
+
502 
+
505  GLM_ALIGNED_TYPEDEF(uint32_t, aligned_uint32_t, 4);
+
506 
+
509  GLM_ALIGNED_TYPEDEF(uint64_t, aligned_uint64_t, 8);
+
510 
+
511 
+
514  GLM_ALIGNED_TYPEDEF(u8, aligned_u8, 1);
+
515 
+
518  GLM_ALIGNED_TYPEDEF(u16, aligned_u16, 2);
+
519 
+
522  GLM_ALIGNED_TYPEDEF(u32, aligned_u32, 4);
+
523 
+
526  GLM_ALIGNED_TYPEDEF(u64, aligned_u64, 8);
+
527 
+
528 
+ +
532 
+ +
536 
+ +
540 
+ +
544 
+
545 
+
548  GLM_ALIGNED_TYPEDEF(u8vec1, aligned_u8vec1, 1);
+
549 
+
552  GLM_ALIGNED_TYPEDEF(u8vec2, aligned_u8vec2, 2);
+
553 
+
556  GLM_ALIGNED_TYPEDEF(u8vec3, aligned_u8vec3, 4);
+
557 
+
560  GLM_ALIGNED_TYPEDEF(u8vec4, aligned_u8vec4, 4);
+
561 
+
562 
+
565  GLM_ALIGNED_TYPEDEF(u16vec1, aligned_u16vec1, 2);
+
566 
+
569  GLM_ALIGNED_TYPEDEF(u16vec2, aligned_u16vec2, 4);
+
570 
+
573  GLM_ALIGNED_TYPEDEF(u16vec3, aligned_u16vec3, 8);
+
574 
+
577  GLM_ALIGNED_TYPEDEF(u16vec4, aligned_u16vec4, 8);
+
578 
+
579 
+
582  GLM_ALIGNED_TYPEDEF(u32vec1, aligned_u32vec1, 4);
+
583 
+
586  GLM_ALIGNED_TYPEDEF(u32vec2, aligned_u32vec2, 8);
+
587 
+
590  GLM_ALIGNED_TYPEDEF(u32vec3, aligned_u32vec3, 16);
+
591 
+
594  GLM_ALIGNED_TYPEDEF(u32vec4, aligned_u32vec4, 16);
+
595 
+
596 
+
599  GLM_ALIGNED_TYPEDEF(u64vec1, aligned_u64vec1, 8);
+
600 
+
603  GLM_ALIGNED_TYPEDEF(u64vec2, aligned_u64vec2, 16);
+
604 
+
607  GLM_ALIGNED_TYPEDEF(u64vec3, aligned_u64vec3, 32);
+
608 
+
611  GLM_ALIGNED_TYPEDEF(u64vec4, aligned_u64vec4, 32);
+
612 
+
613 
+
615  // Float vector types
+
616 
+
619  GLM_ALIGNED_TYPEDEF(float32, aligned_float32, 4);
+
620 
+
623  GLM_ALIGNED_TYPEDEF(float64, aligned_float64, 8);
+
624 
+
625 
+
628  GLM_ALIGNED_TYPEDEF(float32_t, aligned_float32_t, 4);
+
629 
+
632  GLM_ALIGNED_TYPEDEF(float64_t, aligned_float64_t, 8);
+
633 
+
634 
+
637  GLM_ALIGNED_TYPEDEF(float32, aligned_f32, 4);
+
638 
+
641  GLM_ALIGNED_TYPEDEF(float64, aligned_f64, 8);
+
642 
+
643 
+ +
647 
+ +
651 
+ +
655 
+ +
659 
+
660 
+
663  GLM_ALIGNED_TYPEDEF(fvec1, aligned_fvec1, 4);
+
664 
+
667  GLM_ALIGNED_TYPEDEF(fvec2, aligned_fvec2, 8);
+
668 
+
671  GLM_ALIGNED_TYPEDEF(fvec3, aligned_fvec3, 16);
+
672 
+
675  GLM_ALIGNED_TYPEDEF(fvec4, aligned_fvec4, 16);
+
676 
+
677 
+
680  GLM_ALIGNED_TYPEDEF(f32vec1, aligned_f32vec1, 4);
+
681 
+
684  GLM_ALIGNED_TYPEDEF(f32vec2, aligned_f32vec2, 8);
+
685 
+
688  GLM_ALIGNED_TYPEDEF(f32vec3, aligned_f32vec3, 16);
+
689 
+
692  GLM_ALIGNED_TYPEDEF(f32vec4, aligned_f32vec4, 16);
+
693 
+
694 
+ +
698 
+ +
702 
+ +
706 
+ +
710 
+
711 
+
714  GLM_ALIGNED_TYPEDEF(f64vec1, aligned_f64vec1, 8);
+
715 
+
718  GLM_ALIGNED_TYPEDEF(f64vec2, aligned_f64vec2, 16);
+
719 
+
722  GLM_ALIGNED_TYPEDEF(f64vec3, aligned_f64vec3, 32);
+
723 
+
726  GLM_ALIGNED_TYPEDEF(f64vec4, aligned_f64vec4, 32);
+
727 
+
728 
+
730  // Float matrix types
+
731 
+
734  //typedef detail::tmat1<f32> mat1;
+
735 
+
738  GLM_ALIGNED_TYPEDEF(mat2, aligned_mat2, 16);
+
739 
+
742  GLM_ALIGNED_TYPEDEF(mat3, aligned_mat3, 16);
+
743 
+
746  GLM_ALIGNED_TYPEDEF(mat4, aligned_mat4, 16);
+
747 
+
748 
+
751  //typedef detail::tmat1x1<f32> mat1;
+
752 
+
755  GLM_ALIGNED_TYPEDEF(mat2x2, aligned_mat2x2, 16);
+
756 
+
759  GLM_ALIGNED_TYPEDEF(mat3x3, aligned_mat3x3, 16);
+
760 
+
763  GLM_ALIGNED_TYPEDEF(mat4x4, aligned_mat4x4, 16);
+
764 
+
765 
+
768  //typedef detail::tmat1x1<f32> fmat1;
+
769 
+
772  GLM_ALIGNED_TYPEDEF(fmat2x2, aligned_fmat2, 16);
+
773 
+
776  GLM_ALIGNED_TYPEDEF(fmat3x3, aligned_fmat3, 16);
+
777 
+
780  GLM_ALIGNED_TYPEDEF(fmat4x4, aligned_fmat4, 16);
+
781 
+
782 
+
785  //typedef f32 fmat1x1;
+
786 
+
789  GLM_ALIGNED_TYPEDEF(fmat2x2, aligned_fmat2x2, 16);
+
790 
+
793  GLM_ALIGNED_TYPEDEF(fmat2x3, aligned_fmat2x3, 16);
+
794 
+
797  GLM_ALIGNED_TYPEDEF(fmat2x4, aligned_fmat2x4, 16);
+
798 
+
801  GLM_ALIGNED_TYPEDEF(fmat3x2, aligned_fmat3x2, 16);
+
802 
+
805  GLM_ALIGNED_TYPEDEF(fmat3x3, aligned_fmat3x3, 16);
+
806 
+
809  GLM_ALIGNED_TYPEDEF(fmat3x4, aligned_fmat3x4, 16);
+
810 
+
813  GLM_ALIGNED_TYPEDEF(fmat4x2, aligned_fmat4x2, 16);
+
814 
+
817  GLM_ALIGNED_TYPEDEF(fmat4x3, aligned_fmat4x3, 16);
+
818 
+
821  GLM_ALIGNED_TYPEDEF(fmat4x4, aligned_fmat4x4, 16);
+
822 
+
823 
+
826  //typedef detail::tmat1x1<f32, defaultp> f32mat1;
+
827 
+
830  GLM_ALIGNED_TYPEDEF(f32mat2x2, aligned_f32mat2, 16);
+
831 
+
834  GLM_ALIGNED_TYPEDEF(f32mat3x3, aligned_f32mat3, 16);
+
835 
+
838  GLM_ALIGNED_TYPEDEF(f32mat4x4, aligned_f32mat4, 16);
+
839 
+
840 
+
843  //typedef f32 f32mat1x1;
+
844 
+
847  GLM_ALIGNED_TYPEDEF(f32mat2x2, aligned_f32mat2x2, 16);
+
848 
+
851  GLM_ALIGNED_TYPEDEF(f32mat2x3, aligned_f32mat2x3, 16);
+
852 
+
855  GLM_ALIGNED_TYPEDEF(f32mat2x4, aligned_f32mat2x4, 16);
+
856 
+
859  GLM_ALIGNED_TYPEDEF(f32mat3x2, aligned_f32mat3x2, 16);
+
860 
+
863  GLM_ALIGNED_TYPEDEF(f32mat3x3, aligned_f32mat3x3, 16);
+
864 
+
867  GLM_ALIGNED_TYPEDEF(f32mat3x4, aligned_f32mat3x4, 16);
+
868 
+
871  GLM_ALIGNED_TYPEDEF(f32mat4x2, aligned_f32mat4x2, 16);
+
872 
+
875  GLM_ALIGNED_TYPEDEF(f32mat4x3, aligned_f32mat4x3, 16);
+
876 
+
879  GLM_ALIGNED_TYPEDEF(f32mat4x4, aligned_f32mat4x4, 16);
+
880 
+
881 
+
884  //typedef detail::tmat1x1<f64, defaultp> f64mat1;
+
885 
+
888  GLM_ALIGNED_TYPEDEF(f64mat2x2, aligned_f64mat2, 32);
+
889 
+
892  GLM_ALIGNED_TYPEDEF(f64mat3x3, aligned_f64mat3, 32);
+
893 
+
896  GLM_ALIGNED_TYPEDEF(f64mat4x4, aligned_f64mat4, 32);
+
897 
+
898 
+
901  //typedef f64 f64mat1x1;
+
902 
+
905  GLM_ALIGNED_TYPEDEF(f64mat2x2, aligned_f64mat2x2, 32);
+
906 
+
909  GLM_ALIGNED_TYPEDEF(f64mat2x3, aligned_f64mat2x3, 32);
+
910 
+
913  GLM_ALIGNED_TYPEDEF(f64mat2x4, aligned_f64mat2x4, 32);
+
914 
+
917  GLM_ALIGNED_TYPEDEF(f64mat3x2, aligned_f64mat3x2, 32);
+
918 
+
921  GLM_ALIGNED_TYPEDEF(f64mat3x3, aligned_f64mat3x3, 32);
+
922 
+
925  GLM_ALIGNED_TYPEDEF(f64mat3x4, aligned_f64mat3x4, 32);
+
926 
+
929  GLM_ALIGNED_TYPEDEF(f64mat4x2, aligned_f64mat4x2, 32);
+
930 
+
933  GLM_ALIGNED_TYPEDEF(f64mat4x3, aligned_f64mat4x3, 32);
+
934 
+
937  GLM_ALIGNED_TYPEDEF(f64mat4x4, aligned_f64mat4x4, 32);
+
938 
+
939 
+
941  // Quaternion types
+
942 
+
945  GLM_ALIGNED_TYPEDEF(quat, aligned_quat, 16);
+
946 
+
949  GLM_ALIGNED_TYPEDEF(fquat, aligned_fquat, 16);
+
950 
+
953  GLM_ALIGNED_TYPEDEF(dquat, aligned_dquat, 32);
+
954 
+
957  GLM_ALIGNED_TYPEDEF(f32quat, aligned_f32quat, 16);
+
958 
+
961  GLM_ALIGNED_TYPEDEF(f64quat, aligned_f64quat, 32);
+
962 
+
964 }//namespace glm
+
965 
+
966 #include "type_aligned.inl"
+
highp_ivec3 ivec3
3 components vector of signed integer numbers.
Definition: type_vec.hpp:515
+
detail::int8 lowp_int8_t
Low precision 8 bit signed integer type.
Definition: fwd.hpp:116
+
highp_i16vec1 i16vec1
Default precision 16 bit signed integer scalar type.
Definition: fwd.hpp:444
+
highp_f32vec1 f32vec1
Default single-precision floating-point vector of 1 components.
Definition: fwd.hpp:2397
+
highp_f32mat2x4 f32mat2x4
Default single-precision floating-point 2x4 matrix.
Definition: fwd.hpp:2421
+
detail::uint8 lowp_uint8
Low precision 8 bit unsigned integer type.
Definition: fwd.hpp:703
+
highp_f64vec4 f64vec4
Default double-precision floating-point vector of 4 components.
Definition: fwd.hpp:2515
+
highp_u32vec1 u32vec1
Default precision 32 bit unsigned integer scalar type.
Definition: fwd.hpp:1132
+
detail::int8 mediump_int8
Medium precision 8 bit signed integer type.
Definition: fwd.hpp:148
+
detail::int8 mediump_i8
Medium precision 8 bit signed integer type.
Definition: fwd.hpp:180
+
detail::uint8 highp_u8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:837
+
detail::int8 mediump_int8_t
Medium precision 8 bit signed integer type.
Definition: fwd.hpp:164
+
detail::uint64 highp_uint64_t
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:833
+
detail::uint16 highp_uint16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:809
+
detail::uint32 highp_uint32_t
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:829
+
detail::int32 mediump_i32
Medium precision 32 bit signed integer type.
Definition: fwd.hpp:188
+
detail::int8 highp_i8
High precision 8 bit signed integer type.
Definition: fwd.hpp:228
+
highp_i64vec2 i64vec2
Default precision 64 bit signed integer vector of 2 components type.
Definition: fwd.hpp:686
+
highp_u32vec3 u32vec3
Default precision 32 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:1140
+
highp_mat2x2 mat2x2
2 columns of 2 components matrix of floating-point numbers.
Definition: type_mat.hpp:359
+
mat2x2 mat2
2 columns of 2 components matrix of floating-point numbers.
Definition: type_mat.hpp:406
+
detail::uint16 lowp_uint16
Low precision 16 bit unsigned integer type.
Definition: fwd.hpp:707
+
highp_u8vec3 u8vec3
Default precision 8 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:981
+
highp_f32mat3x3 f32mat3x3
Default single-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2429
+
detail::int64 mediump_i64
Medium precision 64 bit signed integer type.
Definition: fwd.hpp:192
+
highp_u16vec4 u16vec4
Default precision 16 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:1065
+
detail::uint64 highp_u64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:849
+
highp_f64vec1 f64vec1
Default double-precision floating-point vector of 1 components.
Definition: fwd.hpp:2503
+
highp_u64vec4 u64vec4
Default precision 64 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:1303
+
detail::int8 lowp_int8
Low precision 8 bit signed integer type.
Definition: fwd.hpp:100
+
detail::int16 lowp_int16
Low precision 16 bit signed integer type.
Definition: fwd.hpp:104
+
aligned_highp_dvec4 aligned_dvec4
4 components vector of double-precision floating-point numbers.
+
highp_i16vec4 i16vec4
Default precision 16 bit signed integer vector of 4 components type.
Definition: fwd.hpp:456
+
detail::int16 i16
16 bit signed integer type.
Definition: fwd.hpp:289
+
aligned_highp_dvec1 aligned_dvec1
1 component vector of double-precision floating-point numbers.
+
highp_f64mat3x2 f64mat3x2
Default double-precision floating-point 3x2 matrix.
Definition: fwd.hpp:2531
+
detail::int32 lowp_i32
Low precision 32 bit signed integer type.
Definition: fwd.hpp:140
+
detail::uint8 uint8_t
8 bit unsigned integer type.
Definition: fwd.hpp:877
+
detail::int32 lowp_int32_t
Low precision 32 bit signed integer type.
Definition: fwd.hpp:124
+
detail::uint8 highp_uint8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:805
+
detail::int32 highp_i32
High precision 32 bit signed integer type.
Definition: fwd.hpp:236
+
detail::uint8 mediump_uint8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:755
+
detail::uint8 mediump_u8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:787
+
highp_f32mat2x3 fmat2x3
Default single-precision floating-point 2x3 matrix.
Definition: fwd.hpp:2347
+
highp_f32mat4x2 f32mat4x2
Default single-precision floating-point 4x2 matrix.
Definition: fwd.hpp:2437
+
highp_vec4 vec4
4 components vector of floating-point numbers.
Definition: type_vec.hpp:466
+
detail::uint16 highp_u16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:841
+
detail::uint32 highp_u32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:845
+
detail::uint32 u32
32 bit unsigned integer type.
Definition: fwd.hpp:902
+
highp_f64mat4x4 f64mat4x4
Default double-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2551
+
highp_ivec2 ivec2
2 components vector of signed integer numbers.
Definition: type_vec.hpp:510
+
detail::int8 highp_int8
High precision 8 bit signed integer type.
Definition: fwd.hpp:196
+
highp_f64mat2x3 f64mat2x3
Default double-precision floating-point 2x3 matrix.
Definition: fwd.hpp:2523
+
highp_u16vec3 u16vec3
Default precision 16 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:1061
+
highp_i16vec2 i16vec2
Default precision 16 bit signed integer vector of 2 components type.
Definition: fwd.hpp:448
+
detail::uint32 lowp_uint32
Low precision 32 bit unsigned integer type.
Definition: fwd.hpp:711
+
mat3x3 mat3
3 columns of 3 components matrix of floating-point numbers.
Definition: type_mat.hpp:411
+
detail::int16 mediump_int16_t
Medium precision 16 bit signed integer type.
Definition: fwd.hpp:168
+
detail::int8 int8_t
8 bit signed integer type.
Definition: fwd.hpp:268
+
detail::uint64 mediump_uint64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:767
+
highp_f32mat4x3 fmat4x3
Default single-precision floating-point 4x3 matrix.
Definition: fwd.hpp:2371
+
detail::uint16 u16
16 bit unsigned integer type.
Definition: fwd.hpp:898
+
highp_f32vec4 fvec4
Default single-precision floating-point vector of 4 components.
Definition: fwd.hpp:2339
+
Definition: _noise.hpp:11
+
highp_u32vec2 u32vec2
Default precision 32 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:1136
+
highp_f32mat2x2 f32mat2x2
Default single-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2413
+
detail::int32 mediump_int32
Medium precision 32 bit signed integer type.
Definition: fwd.hpp:156
+
detail::int16 highp_i16
High precision 16 bit signed integer type.
Definition: fwd.hpp:232
+
highp_f32mat3x2 f32mat3x2
Default single-precision floating-point 3x2 matrix.
Definition: fwd.hpp:2425
+
detail::uint8 highp_uint8_t
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:821
+
highp_f64mat4x2 f64mat4x2
Default double-precision floating-point 4x2 matrix.
Definition: fwd.hpp:2543
+
highp_f64mat3x4 f64mat3x4
Default double-precision floating-point 3x4 matrix.
Definition: fwd.hpp:2539
+
mat4x4 mat4
4 columns of 4 components matrix of floating-point numbers.
Definition: type_mat.hpp:416
+
highp_f32mat4x4 fmat4x4
Default single-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2375
+
highp_float32_t float32_t
Default 32 bit single-precision floating-point scalar.
Definition: fwd.hpp:1497
+
detail::uint64 highp_uint64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:817
+
highp_u64vec1 u64vec1
Default precision 64 bit unsigned integer scalar type.
Definition: fwd.hpp:1291
+
detail::int64 lowp_i64
Low precision 64 bit signed integer type.
Definition: fwd.hpp:144
+
highp_f64vec3 f64vec3
Default double-precision floating-point vector of 3 components.
Definition: fwd.hpp:2511
+
detail::int32 lowp_int32
Low precision 32 bit signed integer type.
Definition: fwd.hpp:108
+
detail::uint64 lowp_uint64_t
Low precision 64 bit unsigned integer type.
Definition: fwd.hpp:732
+
highp_i32vec1 i32vec1
Default precision 32 bit signed integer scalar type.
Definition: fwd.hpp:523
+
detail::uint32 lowp_u32
Low precision 32 bit unsigned integer type.
Definition: fwd.hpp:745
+
highp_u8vec2 u8vec2
Default precision 8 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:977
+
highp_i16vec3 i16vec3
Default precision 16 bit signed integer vector of 3 components type.
Definition: fwd.hpp:452
+
highp_f32vec2 f32vec2
Default single-precision floating-point vector of 2 components.
Definition: fwd.hpp:2401
+
aligned_highp_ivec1 aligned_ivec1
1 component vector of signed integer numbers.
+
detail::uint8 lowp_uint8_t
Low precision 8 bit unsigned integer type.
Definition: fwd.hpp:720
+
highp_i64vec4 i64vec4
Default precision 64 bit signed integer vector of 4 components type.
Definition: fwd.hpp:694
+
highp_f32vec2 fvec2
Default single-precision floating-point vector of 2 components.
Definition: fwd.hpp:2331
+
highp_mat4x4 mat4x4
4 columns of 4 components matrix of floating-point numbers.
Definition: type_mat.hpp:399
+
aligned_highp_dvec3 aligned_dvec3
3 components vector of double-precision floating-point numbers.
+
highp_f32vec4 f32vec4
Default single-precision floating-point vector of 4 components.
Definition: fwd.hpp:2409
+
detail::uint64 lowp_u64
Low precision 64 bit unsigned integer type.
Definition: fwd.hpp:749
+
aligned_highp_vec2 aligned_vec2
2 components vector of floating-point numbers.
+
detail::int8 i8
8 bit signed integer type.
Definition: fwd.hpp:285
+
highp_f32mat2x2 fmat2x2
Default single-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2343
+
highp_i64vec3 i64vec3
Default precision 64 bit signed integer vector of 3 components type.
Definition: fwd.hpp:690
+
highp_uvec3 uvec3
3 components vector of unsigned integer numbers.
Definition: type_vec.hpp:542
+
detail::int16 lowp_i16
Low precision 16 bit signed integer type.
Definition: fwd.hpp:136
+
detail::uint64 lowp_uint64
Low precision 64 bit unsigned integer type.
Definition: fwd.hpp:715
+
detail::int64 highp_int64
High precision 64 bit signed integer type.
Definition: fwd.hpp:208
+
detail::uint8 u8
8 bit unsigned integer type.
Definition: fwd.hpp:894
+
detail::uint32 mediump_u32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:795
+
highp_f64mat2x2 f64mat2x2
Default double-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2519
+
detail::int64 lowp_int64_t
Low precision 64 bit signed integer type.
Definition: fwd.hpp:128
+
detail::uint16 lowp_u16
Low precision 16 bit unsigned integer type.
Definition: fwd.hpp:741
+
highp_u16vec2 u16vec2
Default precision 16 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:1057
+
aligned_highp_uvec4 aligned_uvec4
4 components vector of unsigned integer numbers.
+
detail::uint32 mediump_uint32_t
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:779
+
highp_u16vec1 u16vec1
Default precision 16 bit unsigned integer scalar type.
Definition: fwd.hpp:1053
+
highp_uvec4 uvec4
4 components vector of unsigned integer numbers.
Definition: type_vec.hpp:547
+
highp_f64quat f64quat
Default double-precision floating-point quaternion.
Definition: fwd.hpp:2567
+
detail::uint16 lowp_uint16_t
Low precision 16 bit unsigned integer type.
Definition: fwd.hpp:724
+
detail::int64 highp_i64
High precision 64 bit signed integer type.
Definition: fwd.hpp:240
+
detail::int16 mediump_i16
Medium precision 16 bit signed integer type.
Definition: fwd.hpp:184
+
highp_u64vec2 u64vec2
Default precision 64 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:1295
+
detail::int32 highp_int32
High precision 32 bit signed integer type.
Definition: fwd.hpp:204
+
highp_f32mat2x3 f32mat2x3
Default single-precision floating-point 2x3 matrix.
Definition: fwd.hpp:2417
+
highp_u32vec4 u32vec4
Default precision 32 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:1144
+
aligned_highp_uvec3 aligned_uvec3
3 components vector of unsigned integer numbers.
+
detail::int32 mediump_int32_t
Medium precision 32 bit signed integer type.
Definition: fwd.hpp:172
+
detail::int32 int32_t
32 bit signed integer type.
Definition: fwd.hpp:276
+
detail::uint16 mediump_u16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:791
+
detail::uint16 highp_uint16_t
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:825
+
highp_mat3x3 mat3x3
3 columns of 3 components matrix of floating-point numbers.
Definition: type_mat.hpp:379
+
detail::uint32 mediump_uint32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:763
+
detail::uint64 uint64_t
64 bit unsigned integer type.
Definition: fwd.hpp:889
+
highp_i8vec2 i8vec2
Default precision 8 bit signed integer vector of 2 components type.
Definition: fwd.hpp:368
+
highp_f32mat4x3 f32mat4x3
Default single-precision floating-point 4x3 matrix.
Definition: fwd.hpp:2441
+
highp_f64mat4x3 f64mat4x3
Default double-precision floating-point 4x3 matrix.
Definition: fwd.hpp:2547
+
highp_f32mat2x4 fmat2x4
Default single-precision floating-point 2x4 matrix.
Definition: fwd.hpp:2351
+
detail::uint8 mediump_uint8_t
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:771
+
highp_f32mat3x4 fmat3x4
Default single-precision floating-point 3x4 matrix.
Definition: fwd.hpp:2363
+
highp_i32vec2 i32vec2
Default precision 32 bit signed integer vector of 2 components type.
Definition: fwd.hpp:527
+
highp_float64_t float64_t
Default 64 bit double-precision floating-point scalar.
Definition: fwd.hpp:1501
+
highp_dvec3 dvec3
3 components vector of double-precision floating-point numbers.
Definition: type_vec.hpp:488
+
aligned_highp_uvec1 aligned_uvec1
1 component vector of unsigned integer numbers.
+
highp_i8vec3 i8vec3
Default precision 8 bit signed integer vector of 3 components type.
Definition: fwd.hpp:372
+
detail::int64 mediump_int64_t
Medium precision 64 bit signed integer type.
Definition: fwd.hpp:176
+
highp_f32mat4x4 f32mat4x4
Default single-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2445
+
highp_uvec2 uvec2
2 components vector of unsigned integer numbers.
Definition: type_vec.hpp:537
+
highp_i8vec1 i8vec1
Default precision 8 bit signed integer scalar type.
Definition: fwd.hpp:364
+
highp_i32vec4 i32vec4
Default precision 32 bit signed integer vector of 4 components type.
Definition: fwd.hpp:535
+
aligned_highp_vec4 aligned_vec4
4 components vector of floating-point numbers.
+
highp_dvec4 dvec4
4 components vector of double-precision floating-point numbers.
Definition: type_vec.hpp:493
+
detail::int8 lowp_i8
Low precision 8 bit signed integer type.
Definition: fwd.hpp:132
+
highp_f32vec3 f32vec3
Default single-precision floating-point vector of 3 components.
Definition: fwd.hpp:2405
+
highp_f32vec1 fvec1
Default single-precision floating-point vector of 1 components.
Definition: fwd.hpp:2327
+
detail::int32 highp_int32_t
32 bit signed integer type.
Definition: fwd.hpp:220
+
detail::int64 mediump_int64
Medium precision 64 bit signed integer type.
Definition: fwd.hpp:160
+
detail::uint64 mediump_u64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:799
+
highp_u64vec3 u64vec3
Default precision 64 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:1299
+
aligned_highp_ivec4 aligned_ivec4
4 components vector of signed integer numbers.
+
highp_f32mat3x3 fmat3x3
Default single-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2359
+
highp_i8vec4 i8vec4
Default precision 8 bit signed integer vector of 4 components type.
Definition: fwd.hpp:376
+
highp_f32vec3 fvec3
Default single-precision floating-point vector of 3 components.
Definition: fwd.hpp:2335
+
detail::uint8 lowp_u8
Low precision 8 bit unsigned integer type.
Definition: fwd.hpp:737
+
detail::uint32 highp_uint32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:813
+
highp_f32mat4x2 fmat4x2
Default single-precision floating-point 4x2 matrix.
Definition: fwd.hpp:2367
+
detail::uint16 mediump_uint16_t
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:775
+
detail::uint32 uint32_t
32 bit unsigned integer type.
Definition: fwd.hpp:885
+
detail::uint64 mediump_uint64_t
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:783
+
highp_vec3 vec3
3 components vector of floating-point numbers.
Definition: type_vec.hpp:461
+
highp_i32vec3 i32vec3
Default precision 32 bit signed integer vector of 3 components type.
Definition: fwd.hpp:531
+
highp_f32mat3x4 f32mat3x4
Default single-precision floating-point 3x4 matrix.
Definition: fwd.hpp:2433
+
aligned_highp_dvec2 aligned_dvec2
2 components vector of double-precision floating-point numbers.
+
aligned_highp_uvec2 aligned_uvec2
2 components vector of unsigned integer numbers.
+
highp_dvec2 dvec2
2 components vector of double-precision floating-point numbers.
Definition: type_vec.hpp:483
+
highp_u8vec4 u8vec4
Default precision 8 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:985
+
detail::int64 highp_int64_t
High precision 64 bit signed integer type.
Definition: fwd.hpp:224
+
highp_i64vec1 i64vec1
Default precision 64 bit signed integer scalar type.
Definition: fwd.hpp:682
+
detail::uint16 mediump_uint16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:759
+
highp_vec2 vec2
2 components vector of floating-point numbers.
Definition: type_vec.hpp:456
+
detail::uint64 u64
64 bit unsigned integer type.
Definition: fwd.hpp:906
+
detail::int64 lowp_int64
Low precision 64 bit signed integer type.
Definition: fwd.hpp:112
+
detail::int16 lowp_int16_t
Low precision 16 bit signed integer type.
Definition: fwd.hpp:120
+
detail::int16 mediump_int16
Medium precision 16 bit signed integer type.
Definition: fwd.hpp:152
+
aligned_highp_vec1 aligned_vec1
1 component vector of floating-point numbers.
+
detail::int16 int16_t
16 bit signed integer type.
Definition: fwd.hpp:272
+
detail::int64 int64_t
64 bit signed integer type.
Definition: fwd.hpp:280
+
detail::int32 i32
32 bit signed integer type.
Definition: fwd.hpp:293
+
detail::uint32 lowp_uint32_t
Low precision 32 bit unsigned integer type.
Definition: fwd.hpp:728
+
aligned_highp_ivec2 aligned_ivec2
2 components vector of signed integer numbers.
+
aligned_highp_ivec3 aligned_ivec3
3 components vector of signed integer numbers.
+
detail::int16 highp_int16
High precision 16 bit signed integer type.
Definition: fwd.hpp:200
+
detail::uint16 uint16_t
16 bit unsigned integer type.
Definition: fwd.hpp:881
+
highp_ivec4 ivec4
4 components vector of signed integer numbers.
Definition: type_vec.hpp:520
+
highp_f32quat f32quat
Default single-precision floating-point quaternion.
Definition: fwd.hpp:2461
+
highp_f64vec2 f64vec2
Default double-precision floating-point vector of 2 components.
Definition: fwd.hpp:2507
+
detail::int64 i64
64 bit signed integer type.
Definition: fwd.hpp:297
+
GLM_ALIGNED_TYPEDEF(f64quat, aligned_f64quat, 32)
Double-precision floating-point aligned quaternion.
+
highp_f64mat2x4 f64mat2x4
Default double-precision floating-point 2x4 matrix.
Definition: fwd.hpp:2527
+
highp_f64mat3x3 f64mat3x3
Default double-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2535
+
detail::int16 highp_int16_t
High precision 16 bit signed integer type.
Definition: fwd.hpp:216
+
highp_f32mat3x2 fmat3x2
Default single-precision floating-point 3x2 matrix.
Definition: fwd.hpp:2355
+
aligned_highp_vec3 aligned_vec3
3 components vector of floating-point numbers.
+
highp_u8vec1 u8vec1
Default precision 8 bit unsigned integer scalar type.
Definition: fwd.hpp:973
+
detail::int8 highp_int8_t
High precision 8 bit signed integer type.
Definition: fwd.hpp:212
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00110.html b/third_party/glm_test/doc/api/a00110.html new file mode 100644 index 0000000000000..8435092c05740 --- /dev/null +++ b/third_party/glm_test/doc/api/a00110.html @@ -0,0 +1,82 @@ + + + + + + +0.9.8: type_float.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
type_float.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + +

+Typedefs

typedef float float32
 
typedef double float64
 
typedef highp_float_t highp_float
 
typedef lowp_float_t lowp_float
 
typedef mediump_float_t mediump_float
 
+

Detailed Description

+

GLM Core

+ +

Definition in file type_float.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00110_source.html b/third_party/glm_test/doc/api/a00110_source.html new file mode 100644 index 0000000000000..a7947d3a7a592 --- /dev/null +++ b/third_party/glm_test/doc/api/a00110_source.html @@ -0,0 +1,113 @@ + + + + + + +0.9.8: type_float.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_float.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "setup.hpp"
+
7 
+
8 namespace glm{
+
9 namespace detail
+
10 {
+
11  typedef float float32;
+
12  typedef double float64;
+
13 }//namespace detail
+
14 
+
15  typedef float lowp_float_t;
+
16  typedef float mediump_float_t;
+
17  typedef double highp_float_t;
+
18 
+
21 
+
27  typedef lowp_float_t lowp_float;
+
28 
+
34  typedef mediump_float_t mediump_float;
+
35 
+
41  typedef highp_float_t highp_float;
+
42 
+
43 #if(!defined(GLM_PRECISION_HIGHP_FLOAT) && !defined(GLM_PRECISION_MEDIUMP_FLOAT) && !defined(GLM_PRECISION_LOWP_FLOAT))
+
44  typedef mediump_float float_t;
+
45 #elif(defined(GLM_PRECISION_HIGHP_FLOAT) && !defined(GLM_PRECISION_MEDIUMP_FLOAT) && !defined(GLM_PRECISION_LOWP_FLOAT))
+
46  typedef highp_float float_t;
+
47 #elif(!defined(GLM_PRECISION_HIGHP_FLOAT) && defined(GLM_PRECISION_MEDIUMP_FLOAT) && !defined(GLM_PRECISION_LOWP_FLOAT))
+
48  typedef mediump_float float_t;
+
49 #elif(!defined(GLM_PRECISION_HIGHP_FLOAT) && !defined(GLM_PRECISION_MEDIUMP_FLOAT) && defined(GLM_PRECISION_LOWP_FLOAT))
+
50  typedef lowp_float float_t;
+
51 #else
+
52 # error "GLM error: multiple default precision requested for floating-point types"
+
53 #endif
+
54 
+
55  typedef float float32;
+
56  typedef double float64;
+
57 
+
59 // check type sizes
+
60 #ifndef GLM_STATIC_ASSERT_NULL
+
61  GLM_STATIC_ASSERT(sizeof(glm::float32) == 4, "float32 size isn't 4 bytes on this platform");
+
62  GLM_STATIC_ASSERT(sizeof(glm::float64) == 8, "float64 size isn't 8 bytes on this platform");
+
63 #endif//GLM_STATIC_ASSERT_NULL
+
64 
+
66 
+
67 }//namespace glm
+
float float32
Default 32 bit single-precision floating-point scalar.
Definition: type_float.hpp:55
+
double float64
Default 64 bit double-precision floating-point scalar.
Definition: type_float.hpp:56
+
Definition: _noise.hpp:11
+
lowp_float_t lowp_float
Low precision floating-point numbers.
Definition: type_float.hpp:27
+
highp_float_t highp_float
High precision floating-point numbers.
Definition: type_float.hpp:41
+
GLM Core
+
mediump_float_t mediump_float
Medium precision floating-point numbers.
Definition: type_float.hpp:34
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00111.html b/third_party/glm_test/doc/api/a00111.html new file mode 100644 index 0000000000000..7f942bac2e97d --- /dev/null +++ b/third_party/glm_test/doc/api/a00111.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: type_gentype.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_gentype.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file type_gentype.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00111_source.html b/third_party/glm_test/doc/api/a00111_source.html new file mode 100644 index 0000000000000..0ecc16451a648 --- /dev/null +++ b/third_party/glm_test/doc/api/a00111_source.html @@ -0,0 +1,248 @@ + + + + + + +0.9.8: type_gentype.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_gentype.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 namespace glm
+
7 {
+
8  enum profile
+
9  {
+
10  nice,
+
11  fast,
+
12  simd
+
13  };
+
14 
+
15  typedef std::size_t sizeType;
+
16 
+
17 namespace detail
+
18 {
+
19  template
+
20  <
+
21  typename VALTYPE,
+
22  template <typename> class TYPE
+
23  >
+
24  struct genType
+
25  {
+
26  public:
+
27  enum ctor{null};
+
28 
+
29  typedef VALTYPE value_type;
+
30  typedef VALTYPE & value_reference;
+
31  typedef VALTYPE * value_pointer;
+
32  typedef VALTYPE const * value_const_pointer;
+
33  typedef TYPE<bool> bool_type;
+
34 
+
35  typedef sizeType size_type;
+
36  static bool is_vector();
+
37  static bool is_matrix();
+
38 
+
39  typedef TYPE<VALTYPE> type;
+
40  typedef TYPE<VALTYPE> * pointer;
+
41  typedef TYPE<VALTYPE> const * const_pointer;
+
42  typedef TYPE<VALTYPE> const * const const_pointer_const;
+
43  typedef TYPE<VALTYPE> * const pointer_const;
+
44  typedef TYPE<VALTYPE> & reference;
+
45  typedef TYPE<VALTYPE> const & const_reference;
+
46  typedef TYPE<VALTYPE> const & param_type;
+
47 
+
49  // Address (Implementation details)
+
50 
+
51  value_const_pointer value_address() const{return value_pointer(this);}
+
52  value_pointer value_address(){return value_pointer(this);}
+
53 
+
54  //protected:
+
55  // enum kind
+
56  // {
+
57  // GEN_TYPE,
+
58  // VEC_TYPE,
+
59  // MAT_TYPE
+
60  // };
+
61 
+
62  // typedef typename TYPE::kind kind;
+
63  };
+
64 
+
65  template
+
66  <
+
67  typename VALTYPE,
+
68  template <typename> class TYPE
+
69  >
+
70  bool genType<VALTYPE, TYPE>::is_vector()
+
71  {
+
72  return true;
+
73  }
+
74 /*
+
75  template <typename valTypeT, unsigned int colT, unsigned int rowT, profile proT = nice>
+
76  class base
+
77  {
+
78  public:
+
80  // Traits
+
81 
+
82  typedef sizeType size_type;
+
83  typedef valTypeT value_type;
+
84 
+
85  typedef base<value_type, colT, rowT> class_type;
+
86 
+
87  typedef base<bool, colT, rowT> bool_type;
+
88  typedef base<value_type, rowT, 1> col_type;
+
89  typedef base<value_type, colT, 1> row_type;
+
90  typedef base<value_type, rowT, colT> transpose_type;
+
91 
+
92  static size_type col_size();
+
93  static size_type row_size();
+
94  static size_type value_size();
+
95  static bool is_scalar();
+
96  static bool is_vector();
+
97  static bool is_matrix();
+
98 
+
99  private:
+
100  // Data
+
101  col_type value[colT];
+
102 
+
103  public:
+
105  // Constructors
+
106  base();
+
107  base(class_type const & m);
+
108 
+
109  explicit base(T const & x);
+
110  explicit base(value_type const * const x);
+
111  explicit base(col_type const * const x);
+
112 
+
114  // Conversions
+
115  template <typename vU, uint cU, uint rU, profile pU>
+
116  explicit base(base<vU, cU, rU, pU> const & m);
+
117 
+
119  // Accesses
+
120  col_type& operator[](size_type i);
+
121  col_type const & operator[](size_type i) const;
+
122 
+
124  // Unary updatable operators
+
125  class_type& operator= (class_type const & x);
+
126  class_type& operator+= (T const & x);
+
127  class_type& operator+= (class_type const & x);
+
128  class_type& operator-= (T const & x);
+
129  class_type& operator-= (class_type const & x);
+
130  class_type& operator*= (T const & x);
+
131  class_type& operator*= (class_type const & x);
+
132  class_type& operator/= (T const & x);
+
133  class_type& operator/= (class_type const & x);
+
134  class_type& operator++ ();
+
135  class_type& operator-- ();
+
136  };
+
137 */
+
138 
+
139  //template <typename T>
+
140  //struct traits
+
141  //{
+
142  // static const bool is_signed = false;
+
143  // static const bool is_float = false;
+
144  // static const bool is_vector = false;
+
145  // static const bool is_matrix = false;
+
146  // static const bool is_genType = false;
+
147  // static const bool is_genIType = false;
+
148  // static const bool is_genUType = false;
+
149  //};
+
150 
+
151  //template <>
+
152  //struct traits<half>
+
153  //{
+
154  // static const bool is_float = true;
+
155  // static const bool is_genType = true;
+
156  //};
+
157 
+
158  //template <>
+
159  //struct traits<float>
+
160  //{
+
161  // static const bool is_float = true;
+
162  // static const bool is_genType = true;
+
163  //};
+
164 
+
165  //template <>
+
166  //struct traits<double>
+
167  //{
+
168  // static const bool is_float = true;
+
169  // static const bool is_genType = true;
+
170  //};
+
171 
+
172  //template <typename genType>
+
173  //struct desc
+
174  //{
+
175  // typedef genType type;
+
176  // typedef genType * pointer;
+
177  // typedef genType const* const_pointer;
+
178  // typedef genType const *const const_pointer_const;
+
179  // typedef genType *const pointer_const;
+
180  // typedef genType & reference;
+
181  // typedef genType const& const_reference;
+
182  // typedef genType const& param_type;
+
183 
+
184  // typedef typename genType::value_type value_type;
+
185  // typedef typename genType::size_type size_type;
+
186  // static const typename size_type value_size;
+
187  //};
+
188 
+
189  //template <typename genType>
+
190  //const typename desc<genType>::size_type desc<genType>::value_size = genType::value_size();
+
191 
+
192 }//namespace detail
+
193 }//namespace glm
+
194 
+
195 //#include "type_gentype.inl"
+
Definition: _noise.hpp:11
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00112.html b/third_party/glm_test/doc/api/a00112.html new file mode 100644 index 0000000000000..1ed655de0e808 --- /dev/null +++ b/third_party/glm_test/doc/api/a00112.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: type_half.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_half.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file type_half.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00112_source.html b/third_party/glm_test/doc/api/a00112_source.html new file mode 100644 index 0000000000000..57e5b8273c5fb --- /dev/null +++ b/third_party/glm_test/doc/api/a00112_source.html @@ -0,0 +1,79 @@ + + + + + + +0.9.8: type_half.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_half.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "setup.hpp"
+
7 
+
8 namespace glm{
+
9 namespace detail
+
10 {
+
11  typedef short hdata;
+
12 
+
13  GLM_FUNC_DECL float toFloat32(hdata value);
+
14  GLM_FUNC_DECL hdata toFloat16(float const & value);
+
15 
+
16 }//namespace detail
+
17 }//namespace glm
+
18 
+
19 #include "type_half.inl"
+
Definition: _noise.hpp:11
+
GLM Core
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00113.html b/third_party/glm_test/doc/api/a00113.html new file mode 100644 index 0000000000000..3c0ef0b6b0d31 --- /dev/null +++ b/third_party/glm_test/doc/api/a00113.html @@ -0,0 +1,102 @@ + + + + + + +0.9.8: type_int.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
type_int.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef detail::highp_int_t highp_int
 
typedef detail::highp_uint_t highp_uint
 
typedef detail::int16 int16
 
typedef detail::int32 int32
 
typedef detail::int64 int64
 
typedef detail::int8 int8
 
typedef detail::lowp_int_t lowp_int
 
typedef detail::lowp_uint_t lowp_uint
 
typedef detail::mediump_int_t mediump_int
 
typedef detail::mediump_uint_t mediump_uint
 
typedef unsigned int uint
 
typedef detail::uint16 uint16
 
typedef detail::uint32 uint32
 
typedef detail::uint64 uint64
 
typedef detail::uint8 uint8
 
+

Detailed Description

+

GLM Core

+ +

Definition in file type_int.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00113_source.html b/third_party/glm_test/doc/api/a00113_source.html new file mode 100644 index 0000000000000..067f4a121c4c8 --- /dev/null +++ b/third_party/glm_test/doc/api/a00113_source.html @@ -0,0 +1,352 @@ + + + + + + +0.9.8: type_int.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_int.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "setup.hpp"
+
7 #if GLM_HAS_MAKE_SIGNED
+
8 # include <type_traits>
+
9 #endif
+
10 
+
11 #if GLM_HAS_EXTENDED_INTEGER_TYPE
+
12 # include <cstdint>
+
13 #endif
+
14 
+
15 namespace glm{
+
16 namespace detail
+
17 {
+
18 # if GLM_HAS_EXTENDED_INTEGER_TYPE
+
19  typedef std::int8_t int8;
+
20  typedef std::int16_t int16;
+
21  typedef std::int32_t int32;
+
22  typedef std::int64_t int64;
+
23 
+
24  typedef std::uint8_t uint8;
+
25  typedef std::uint16_t uint16;
+
26  typedef std::uint32_t uint32;
+
27  typedef std::uint64_t uint64;
+
28 # else
+
29 # if(defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L)) // C99 detected, 64 bit types available
+
30  typedef int64_t sint64;
+
31  typedef uint64_t uint64;
+
32 
+
33 # elif GLM_COMPILER & GLM_COMPILER_VC
+
34  typedef signed __int64 sint64;
+
35  typedef unsigned __int64 uint64;
+
36 
+
37 # elif GLM_COMPILER & GLM_COMPILER_GCC
+
38 # pragma GCC diagnostic ignored "-Wlong-long"
+
39  __extension__ typedef signed long long sint64;
+
40  __extension__ typedef unsigned long long uint64;
+
41 
+
42 # elif (GLM_COMPILER & GLM_COMPILER_CLANG)
+
43 # pragma clang diagnostic ignored "-Wc++11-long-long"
+
44  typedef signed long long sint64;
+
45  typedef unsigned long long uint64;
+
46 
+
47 # else//unknown compiler
+
48  typedef signed long long sint64;
+
49  typedef unsigned long long uint64;
+
50 # endif//GLM_COMPILER
+
51 
+
52  typedef signed char int8;
+
53  typedef signed short int16;
+
54  typedef signed int int32;
+
55  typedef sint64 int64;
+
56 
+
57  typedef unsigned char uint8;
+
58  typedef unsigned short uint16;
+
59  typedef unsigned int uint32;
+
60  typedef uint64 uint64;
+
61 #endif//
+
62 
+
63  typedef signed int lowp_int_t;
+
64  typedef signed int mediump_int_t;
+
65  typedef signed int highp_int_t;
+
66 
+
67  typedef unsigned int lowp_uint_t;
+
68  typedef unsigned int mediump_uint_t;
+
69  typedef unsigned int highp_uint_t;
+
70 
+
71 # if GLM_HAS_MAKE_SIGNED
+
72  using std::make_signed;
+
73  using std::make_unsigned;
+
74 
+
75 # else//GLM_HAS_MAKE_SIGNED
+
76  template <typename genType>
+
77  struct make_signed
+
78  {};
+
79 
+
80  template <>
+
81  struct make_signed<char>
+
82  {
+
83  typedef char type;
+
84  };
+
85 
+
86  template <>
+
87  struct make_signed<short>
+
88  {
+
89  typedef short type;
+
90  };
+
91 
+
92  template <>
+
93  struct make_signed<int>
+
94  {
+
95  typedef int type;
+
96  };
+
97 
+
98  template <>
+
99  struct make_signed<long>
+
100  {
+
101  typedef long type;
+
102  };
+
103 
+
104  template <>
+
105  struct make_signed<unsigned char>
+
106  {
+
107  typedef char type;
+
108  };
+
109 
+
110  template <>
+
111  struct make_signed<unsigned short>
+
112  {
+
113  typedef short type;
+
114  };
+
115 
+
116  template <>
+
117  struct make_signed<unsigned int>
+
118  {
+
119  typedef int type;
+
120  };
+
121 
+
122  template <>
+
123  struct make_signed<unsigned long>
+
124  {
+
125  typedef long type;
+
126  };
+
127 
+
128  template <typename genType>
+
129  struct make_unsigned
+
130  {};
+
131 
+
132  template <>
+
133  struct make_unsigned<char>
+
134  {
+
135  typedef unsigned char type;
+
136  };
+
137 
+
138  template <>
+
139  struct make_unsigned<short>
+
140  {
+
141  typedef unsigned short type;
+
142  };
+
143 
+
144  template <>
+
145  struct make_unsigned<int>
+
146  {
+
147  typedef unsigned int type;
+
148  };
+
149 
+
150  template <>
+
151  struct make_unsigned<long>
+
152  {
+
153  typedef unsigned long type;
+
154  };
+
155 
+
156  template <>
+
157  struct make_unsigned<unsigned char>
+
158  {
+
159  typedef unsigned char type;
+
160  };
+
161 
+
162  template <>
+
163  struct make_unsigned<unsigned short>
+
164  {
+
165  typedef unsigned short type;
+
166  };
+
167 
+
168  template <>
+
169  struct make_unsigned<unsigned int>
+
170  {
+
171  typedef unsigned int type;
+
172  };
+
173 
+
174  template <>
+
175  struct make_unsigned<unsigned long>
+
176  {
+
177  typedef unsigned long type;
+
178  };
+
179 
+
180  template <>
+
181  struct make_signed<long long>
+
182  {
+
183  typedef long long type;
+
184  };
+
185 
+
186  template <>
+
187  struct make_signed<unsigned long long>
+
188  {
+
189  typedef long long type;
+
190  };
+
191 
+
192  template <>
+
193  struct make_unsigned<long long>
+
194  {
+
195  typedef unsigned long long type;
+
196  };
+
197 
+
198  template <>
+
199  struct make_unsigned<unsigned long long>
+
200  {
+
201  typedef unsigned long long type;
+
202  };
+
203 # endif//GLM_HAS_MAKE_SIGNED
+
204 }//namespace detail
+
205 
+
206  typedef detail::int8 int8;
+
207  typedef detail::int16 int16;
+
208  typedef detail::int32 int32;
+
209  typedef detail::int64 int64;
+
210 
+
211  typedef detail::uint8 uint8;
+
212  typedef detail::uint16 uint16;
+
213  typedef detail::uint32 uint32;
+
214  typedef detail::uint64 uint64;
+
215 
+
218 
+
224  typedef detail::lowp_int_t lowp_int;
+
225 
+
231  typedef detail::mediump_int_t mediump_int;
+
232 
+
238  typedef detail::highp_int_t highp_int;
+
239 
+
245  typedef detail::lowp_uint_t lowp_uint;
+
246 
+
252  typedef detail::mediump_uint_t mediump_uint;
+
253 
+
259  typedef detail::highp_uint_t highp_uint;
+
260 
+
261 #if(!defined(GLM_PRECISION_HIGHP_INT) && !defined(GLM_PRECISION_MEDIUMP_INT) && !defined(GLM_PRECISION_LOWP_INT))
+
262  typedef mediump_int int_t;
+
263 #elif(defined(GLM_PRECISION_HIGHP_INT) && !defined(GLM_PRECISION_MEDIUMP_INT) && !defined(GLM_PRECISION_LOWP_INT))
+
264  typedef highp_int int_t;
+
265 #elif(!defined(GLM_PRECISION_HIGHP_INT) && defined(GLM_PRECISION_MEDIUMP_INT) && !defined(GLM_PRECISION_LOWP_INT))
+
266  typedef mediump_int int_t;
+
267 #elif(!defined(GLM_PRECISION_HIGHP_INT) && !defined(GLM_PRECISION_MEDIUMP_INT) && defined(GLM_PRECISION_LOWP_INT))
+
268  typedef lowp_int int_t;
+
269 #else
+
270 # error "GLM error: multiple default precision requested for signed integer types"
+
271 #endif
+
272 
+
273 #if(!defined(GLM_PRECISION_HIGHP_UINT) && !defined(GLM_PRECISION_MEDIUMP_UINT) && !defined(GLM_PRECISION_LOWP_UINT))
+
274  typedef mediump_uint uint_t;
+
275 #elif(defined(GLM_PRECISION_HIGHP_UINT) && !defined(GLM_PRECISION_MEDIUMP_UINT) && !defined(GLM_PRECISION_LOWP_UINT))
+
276  typedef highp_uint uint_t;
+
277 #elif(!defined(GLM_PRECISION_HIGHP_UINT) && defined(GLM_PRECISION_MEDIUMP_UINT) && !defined(GLM_PRECISION_LOWP_UINT))
+
278  typedef mediump_uint uint_t;
+
279 #elif(!defined(GLM_PRECISION_HIGHP_UINT) && !defined(GLM_PRECISION_MEDIUMP_UINT) && defined(GLM_PRECISION_LOWP_UINT))
+
280  typedef lowp_uint uint_t;
+
281 #else
+
282 # error "GLM error: multiple default precision requested for unsigned integer types"
+
283 #endif
+
284 
+
288  typedef unsigned int uint;
+
289 
+
291 
+
293 // check type sizes
+
294 #ifndef GLM_STATIC_ASSERT_NULL
+
295  GLM_STATIC_ASSERT(sizeof(glm::int8) == 1, "int8 size isn't 1 byte on this platform");
+
296  GLM_STATIC_ASSERT(sizeof(glm::int16) == 2, "int16 size isn't 2 bytes on this platform");
+
297  GLM_STATIC_ASSERT(sizeof(glm::int32) == 4, "int32 size isn't 4 bytes on this platform");
+
298  GLM_STATIC_ASSERT(sizeof(glm::int64) == 8, "int64 size isn't 8 bytes on this platform");
+
299 
+
300  GLM_STATIC_ASSERT(sizeof(glm::uint8) == 1, "uint8 size isn't 1 byte on this platform");
+
301  GLM_STATIC_ASSERT(sizeof(glm::uint16) == 2, "uint16 size isn't 2 bytes on this platform");
+
302  GLM_STATIC_ASSERT(sizeof(glm::uint32) == 4, "uint32 size isn't 4 bytes on this platform");
+
303  GLM_STATIC_ASSERT(sizeof(glm::uint64) == 8, "uint64 size isn't 8 bytes on this platform");
+
304 #endif//GLM_STATIC_ASSERT_NULL
+
305 
+
306 }//namespace glm
+
detail::int8 int8
8 bit signed integer type.
Definition: type_int.hpp:206
+
detail::uint8 uint8_t
8 bit unsigned integer type.
Definition: fwd.hpp:877
+
detail::int64 int64
64 bit signed integer type.
Definition: type_int.hpp:209
+
detail::int8 int8_t
8 bit signed integer type.
Definition: fwd.hpp:268
+
unsigned int uint
Unsigned integer type.
Definition: type_int.hpp:288
+
detail::uint16 uint16
16 bit unsigned integer type.
Definition: type_int.hpp:212
+
detail::lowp_int_t lowp_int
Low precision signed integer.
Definition: type_int.hpp:224
+
Definition: _noise.hpp:11
+
detail::int16 int16
16 bit signed integer type.
Definition: type_int.hpp:207
+
detail::lowp_uint_t lowp_uint
Low precision unsigned integer.
Definition: type_int.hpp:245
+
detail::highp_int_t highp_int
High precision signed integer.
Definition: type_int.hpp:238
+
detail::uint8 uint8
8 bit unsigned integer type.
Definition: type_int.hpp:211
+
detail::uint32 uint32
32 bit unsigned integer type.
Definition: type_int.hpp:213
+
detail::int32 int32_t
32 bit signed integer type.
Definition: fwd.hpp:276
+
detail::uint64 uint64_t
64 bit unsigned integer type.
Definition: fwd.hpp:889
+
GLM Core
+
detail::uint64 uint64
64 bit unsigned integer type.
Definition: type_int.hpp:214
+
detail::mediump_int_t mediump_int
Medium precision signed integer.
Definition: type_int.hpp:231
+
detail::highp_uint_t highp_uint
High precision unsigned integer.
Definition: type_int.hpp:259
+
detail::mediump_uint_t mediump_uint
Medium precision unsigned integer.
Definition: type_int.hpp:252
+
detail::uint32 uint32_t
32 bit unsigned integer type.
Definition: fwd.hpp:885
+
detail::int32 int32
32 bit signed integer type.
Definition: type_int.hpp:208
+
detail::int16 int16_t
16 bit signed integer type.
Definition: fwd.hpp:272
+
detail::int64 int64_t
64 bit signed integer type.
Definition: fwd.hpp:280
+
detail::uint16 uint16_t
16 bit unsigned integer type.
Definition: fwd.hpp:881
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00114.html b/third_party/glm_test/doc/api/a00114.html new file mode 100644 index 0000000000000..71626e31798ad --- /dev/null +++ b/third_party/glm_test/doc/api/a00114.html @@ -0,0 +1,271 @@ + + + + + + +0.9.8: type_mat.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
type_mat.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef highp_dmat2x2 dmat2
 
typedef highp_dmat2x2 dmat2x2
 
typedef highp_dmat2x3 dmat2x3
 
typedef highp_dmat2x4 dmat2x4
 
typedef highp_dmat3x3 dmat3
 
typedef highp_dmat3x2 dmat3x2
 
typedef highp_dmat3x3 dmat3x3
 
typedef highp_dmat3x4 dmat3x4
 
typedef highp_dmat4x4 dmat4
 
typedef highp_dmat4x2 dmat4x2
 
typedef highp_dmat4x3 dmat4x3
 
typedef highp_dmat4x4 dmat4x4
 
typedef tmat2x2< double, highp > highp_dmat2
 
typedef tmat2x2< double, highp > highp_dmat2x2
 
typedef tmat2x3< double, highp > highp_dmat2x3
 
typedef tmat2x4< double, highp > highp_dmat2x4
 
typedef tmat3x3< double, highp > highp_dmat3
 
typedef tmat3x2< double, highp > highp_dmat3x2
 
typedef tmat3x3< double, highp > highp_dmat3x3
 
typedef tmat3x4< double, highp > highp_dmat3x4
 
typedef tmat4x4< double, highp > highp_dmat4
 
typedef tmat4x2< double, highp > highp_dmat4x2
 
typedef tmat4x3< double, highp > highp_dmat4x3
 
typedef tmat4x4< double, highp > highp_dmat4x4
 
typedef tmat2x2< float, highp > highp_mat2
 
typedef tmat2x2< float, highp > highp_mat2x2
 
typedef tmat2x3< float, highp > highp_mat2x3
 
typedef tmat2x4< float, highp > highp_mat2x4
 
typedef tmat3x3< float, highp > highp_mat3
 
typedef tmat3x2< float, highp > highp_mat3x2
 
typedef tmat3x3< float, highp > highp_mat3x3
 
typedef tmat3x4< float, highp > highp_mat3x4
 
typedef tmat4x4< float, highp > highp_mat4
 
typedef tmat4x2< float, highp > highp_mat4x2
 
typedef tmat4x3< float, highp > highp_mat4x3
 
typedef tmat4x4< float, highp > highp_mat4x4
 
typedef tmat2x2< double, lowp > lowp_dmat2
 
typedef tmat2x2< double, lowp > lowp_dmat2x2
 
typedef tmat2x3< double, lowp > lowp_dmat2x3
 
typedef tmat2x4< double, lowp > lowp_dmat2x4
 
typedef tmat3x3< float, lowp > lowp_dmat3
 
typedef tmat3x2< double, lowp > lowp_dmat3x2
 
typedef tmat3x3< double, lowp > lowp_dmat3x3
 
typedef tmat3x4< double, lowp > lowp_dmat3x4
 
typedef tmat4x4< double, lowp > lowp_dmat4
 
typedef tmat4x2< double, lowp > lowp_dmat4x2
 
typedef tmat4x3< double, lowp > lowp_dmat4x3
 
typedef tmat4x4< double, lowp > lowp_dmat4x4
 
typedef tmat2x2< float, lowp > lowp_mat2
 
typedef tmat2x2< float, lowp > lowp_mat2x2
 
typedef tmat2x3< float, lowp > lowp_mat2x3
 
typedef tmat2x4< float, lowp > lowp_mat2x4
 
typedef tmat3x3< float, lowp > lowp_mat3
 
typedef tmat3x2< float, lowp > lowp_mat3x2
 
typedef tmat3x3< float, lowp > lowp_mat3x3
 
typedef tmat3x4< float, lowp > lowp_mat3x4
 
typedef tmat4x4< float, lowp > lowp_mat4
 
typedef tmat4x2< float, lowp > lowp_mat4x2
 
typedef tmat4x3< float, lowp > lowp_mat4x3
 
typedef tmat4x4< float, lowp > lowp_mat4x4
 
typedef mat2x2 mat2
 
typedef highp_mat2x2 mat2x2
 
typedef highp_mat2x3 mat2x3
 
typedef highp_mat2x4 mat2x4
 
typedef mat3x3 mat3
 
typedef highp_mat3x2 mat3x2
 
typedef highp_mat3x3 mat3x3
 
typedef highp_mat3x4 mat3x4
 
typedef mat4x4 mat4
 
typedef highp_mat4x2 mat4x2
 
typedef highp_mat4x3 mat4x3
 
typedef highp_mat4x4 mat4x4
 
typedef tmat2x2< double, mediump > mediump_dmat2
 
typedef tmat2x2< double, mediump > mediump_dmat2x2
 
typedef tmat2x3< double, mediump > mediump_dmat2x3
 
typedef tmat2x4< double, mediump > mediump_dmat2x4
 
typedef tmat3x3< double, mediump > mediump_dmat3
 
typedef tmat3x2< double, mediump > mediump_dmat3x2
 
typedef tmat3x3< double, mediump > mediump_dmat3x3
 
typedef tmat3x4< double, mediump > mediump_dmat3x4
 
typedef tmat4x4< double, mediump > mediump_dmat4
 
typedef tmat4x2< double, mediump > mediump_dmat4x2
 
typedef tmat4x3< double, mediump > mediump_dmat4x3
 
typedef tmat4x4< double, mediump > mediump_dmat4x4
 
typedef tmat2x2< float, mediump > mediump_mat2
 
typedef tmat2x2< float, mediump > mediump_mat2x2
 
typedef tmat2x3< float, mediump > mediump_mat2x3
 
typedef tmat2x4< float, mediump > mediump_mat2x4
 
typedef tmat3x3< float, mediump > mediump_mat3
 
typedef tmat3x2< float, mediump > mediump_mat3x2
 
typedef tmat3x3< float, mediump > mediump_mat3x3
 
typedef tmat3x4< float, mediump > mediump_mat3x4
 
typedef tmat4x4< float, mediump > mediump_mat4
 
typedef tmat4x2< float, mediump > mediump_mat4x2
 
typedef tmat4x3< float, mediump > mediump_mat4x3
 
typedef tmat4x4< float, mediump > mediump_mat4x4
 
+ + + + +

+Functions

template<typename T , precision P, template< typename, precision > class matType>
GLM_FUNC_DECL matType< T, P > inverse (matType< T, P > const &m)
 
+

Detailed Description

+

GLM Core

+ +

Definition in file type_mat.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00114_source.html b/third_party/glm_test/doc/api/a00114_source.html new file mode 100644 index 0000000000000..5866ce8398556 --- /dev/null +++ b/third_party/glm_test/doc/api/a00114_source.html @@ -0,0 +1,469 @@ + + + + + + +0.9.8: type_mat.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "precision.hpp"
+
7 
+
8 namespace glm{
+
9 namespace detail
+
10 {
+
11  template <typename T, precision P, template <class, precision> class colType, template <class, precision> class rowType>
+
12  struct outerProduct_trait{};
+
13 }//namespace detail
+
14 
+
15  template <typename T, precision P> struct tvec2;
+
16  template <typename T, precision P> struct tvec3;
+
17  template <typename T, precision P> struct tvec4;
+
18  template <typename T, precision P> struct tmat2x2;
+
19  template <typename T, precision P> struct tmat2x3;
+
20  template <typename T, precision P> struct tmat2x4;
+
21  template <typename T, precision P> struct tmat3x2;
+
22  template <typename T, precision P> struct tmat3x3;
+
23  template <typename T, precision P> struct tmat3x4;
+
24  template <typename T, precision P> struct tmat4x2;
+
25  template <typename T, precision P> struct tmat4x3;
+
26  template <typename T, precision P> struct tmat4x4;
+
27 
+
28  template <typename T, precision P, template <typename, precision> class matType>
+
29  GLM_FUNC_DECL matType<T, P> inverse(matType<T, P> const & m);
+
30 
+
33 
+
39  typedef tmat2x2<float, lowp> lowp_mat2;
+
40 
+
46  typedef tmat2x2<float, mediump> mediump_mat2;
+
47 
+
53  typedef tmat2x2<float, highp> highp_mat2;
+
54 
+
60  typedef tmat2x2<float, lowp> lowp_mat2x2;
+
61 
+
67  typedef tmat2x2<float, mediump> mediump_mat2x2;
+
68 
+
74  typedef tmat2x2<float, highp> highp_mat2x2;
+
75 
+
77 
+
80 
+
86  typedef tmat2x3<float, lowp> lowp_mat2x3;
+
87 
+
93  typedef tmat2x3<float, mediump> mediump_mat2x3;
+
94 
+
100  typedef tmat2x3<float, highp> highp_mat2x3;
+
101 
+
103 
+
106 
+
112  typedef tmat2x4<float, lowp> lowp_mat2x4;
+
113 
+
119  typedef tmat2x4<float, mediump> mediump_mat2x4;
+
120 
+
126  typedef tmat2x4<float, highp> highp_mat2x4;
+
127 
+
129 
+
132 
+
138  typedef tmat3x2<float, lowp> lowp_mat3x2;
+
139 
+
145  typedef tmat3x2<float, mediump> mediump_mat3x2;
+
146 
+
152  typedef tmat3x2<float, highp> highp_mat3x2;
+
153 
+
155 
+
158 
+
164  typedef tmat3x3<float, lowp> lowp_mat3;
+
165 
+
171  typedef tmat3x3<float, mediump> mediump_mat3;
+
172 
+
178  typedef tmat3x3<float, highp> highp_mat3;
+
179 
+
185  typedef tmat3x3<float, lowp> lowp_mat3x3;
+
186 
+
192  typedef tmat3x3<float, mediump> mediump_mat3x3;
+
193 
+
199  typedef tmat3x3<float, highp> highp_mat3x3;
+
200 
+
202 
+
205 
+
211  typedef tmat3x4<float, lowp> lowp_mat3x4;
+
212 
+
218  typedef tmat3x4<float, mediump> mediump_mat3x4;
+
219 
+
225  typedef tmat3x4<float, highp> highp_mat3x4;
+
226 
+
228 
+
231 
+
237  typedef tmat4x2<float, lowp> lowp_mat4x2;
+
238 
+
244  typedef tmat4x2<float, mediump> mediump_mat4x2;
+
245 
+
251  typedef tmat4x2<float, highp> highp_mat4x2;
+
252 
+
254 
+
257 
+
263  typedef tmat4x3<float, lowp> lowp_mat4x3;
+
264 
+
270  typedef tmat4x3<float, mediump> mediump_mat4x3;
+
271 
+
277  typedef tmat4x3<float, highp> highp_mat4x3;
+
278 
+
280 
+
281 
+
284 
+
290  typedef tmat4x4<float, lowp> lowp_mat4;
+
291 
+
297  typedef tmat4x4<float, mediump> mediump_mat4;
+
298 
+
304  typedef tmat4x4<float, highp> highp_mat4;
+
305 
+
311  typedef tmat4x4<float, lowp> lowp_mat4x4;
+
312 
+
318  typedef tmat4x4<float, mediump> mediump_mat4x4;
+
319 
+
325  typedef tmat4x4<float, highp> highp_mat4x4;
+
326 
+
328 
+
331 
+
333  // Float definition
+
334 
+
335 #if(defined(GLM_PRECISION_LOWP_FLOAT))
+
336  typedef lowp_mat2x2 mat2x2;
+
337  typedef lowp_mat2x3 mat2x3;
+
338  typedef lowp_mat2x4 mat2x4;
+
339  typedef lowp_mat3x2 mat3x2;
+
340  typedef lowp_mat3x3 mat3x3;
+
341  typedef lowp_mat3x4 mat3x4;
+
342  typedef lowp_mat4x2 mat4x2;
+
343  typedef lowp_mat4x3 mat4x3;
+
344  typedef lowp_mat4x4 mat4x4;
+
345 #elif(defined(GLM_PRECISION_MEDIUMP_FLOAT))
+
346  typedef mediump_mat2x2 mat2x2;
+
347  typedef mediump_mat2x3 mat2x3;
+
348  typedef mediump_mat2x4 mat2x4;
+
349  typedef mediump_mat3x2 mat3x2;
+
350  typedef mediump_mat3x3 mat3x3;
+
351  typedef mediump_mat3x4 mat3x4;
+
352  typedef mediump_mat4x2 mat4x2;
+
353  typedef mediump_mat4x3 mat4x3;
+
354  typedef mediump_mat4x4 mat4x4;
+
355 #else
+
356  typedef highp_mat2x2 mat2x2;
+
360 
+
364  typedef highp_mat2x3 mat2x3;
+
365 
+
369  typedef highp_mat2x4 mat2x4;
+
370 
+
374  typedef highp_mat3x2 mat3x2;
+
375 
+
379  typedef highp_mat3x3 mat3x3;
+
380 
+
384  typedef highp_mat3x4 mat3x4;
+
385 
+
389  typedef highp_mat4x2 mat4x2;
+
390 
+
394  typedef highp_mat4x3 mat4x3;
+
395 
+
399  typedef highp_mat4x4 mat4x4;
+
400 
+
401 #endif//GLM_PRECISION
+
402 
+
406  typedef mat2x2 mat2;
+
407 
+
411  typedef mat3x3 mat3;
+
412 
+
416  typedef mat4x4 mat4;
+
417 
+
419  // Double definition
+
420 
+
423 
+
428  typedef tmat2x2<double, lowp> lowp_dmat2;
+
429 
+
434  typedef tmat2x2<double, mediump> mediump_dmat2;
+
435 
+
440  typedef tmat2x2<double, highp> highp_dmat2;
+
441 
+
446  typedef tmat2x2<double, lowp> lowp_dmat2x2;
+
447 
+
452  typedef tmat2x2<double, mediump> mediump_dmat2x2;
+
453 
+
458  typedef tmat2x2<double, highp> highp_dmat2x2;
+
459 
+
461 
+
464 
+
469  typedef tmat2x3<double, lowp> lowp_dmat2x3;
+
470 
+
475  typedef tmat2x3<double, mediump> mediump_dmat2x3;
+
476 
+
481  typedef tmat2x3<double, highp> highp_dmat2x3;
+
482 
+
484 
+
487 
+
492  typedef tmat2x4<double, lowp> lowp_dmat2x4;
+
493 
+
498  typedef tmat2x4<double, mediump> mediump_dmat2x4;
+
499 
+
504  typedef tmat2x4<double, highp> highp_dmat2x4;
+
505 
+
507 
+
510 
+
515  typedef tmat3x2<double, lowp> lowp_dmat3x2;
+
516 
+
521  typedef tmat3x2<double, mediump> mediump_dmat3x2;
+
522 
+
527  typedef tmat3x2<double, highp> highp_dmat3x2;
+
528 
+
530 
+
533 
+
538  typedef tmat3x3<float, lowp> lowp_dmat3;
+
539 
+
544  typedef tmat3x3<double, mediump> mediump_dmat3;
+
545 
+
550  typedef tmat3x3<double, highp> highp_dmat3;
+
551 
+
556  typedef tmat3x3<double, lowp> lowp_dmat3x3;
+
557 
+
562  typedef tmat3x3<double, mediump> mediump_dmat3x3;
+
563 
+
568  typedef tmat3x3<double, highp> highp_dmat3x3;
+
569 
+
571 
+
574 
+
579  typedef tmat3x4<double, lowp> lowp_dmat3x4;
+
580 
+
585  typedef tmat3x4<double, mediump> mediump_dmat3x4;
+
586 
+
591  typedef tmat3x4<double, highp> highp_dmat3x4;
+
592 
+
594 
+
597 
+
602  typedef tmat4x2<double, lowp> lowp_dmat4x2;
+
603 
+
608  typedef tmat4x2<double, mediump> mediump_dmat4x2;
+
609 
+
614  typedef tmat4x2<double, highp> highp_dmat4x2;
+
615 
+
617 
+
620 
+
625  typedef tmat4x3<double, lowp> lowp_dmat4x3;
+
626 
+
631  typedef tmat4x3<double, mediump> mediump_dmat4x3;
+
632 
+
637  typedef tmat4x3<double, highp> highp_dmat4x3;
+
638 
+
640 
+
643 
+
648  typedef tmat4x4<double, lowp> lowp_dmat4;
+
649 
+
654  typedef tmat4x4<double, mediump> mediump_dmat4;
+
655 
+
660  typedef tmat4x4<double, highp> highp_dmat4;
+
661 
+
666  typedef tmat4x4<double, lowp> lowp_dmat4x4;
+
667 
+
672  typedef tmat4x4<double, mediump> mediump_dmat4x4;
+
673 
+
678  typedef tmat4x4<double, highp> highp_dmat4x4;
+
679 
+
681 
+
682 #if(defined(GLM_PRECISION_LOWP_DOUBLE))
+
683  typedef lowp_dmat2x2 dmat2x2;
+
684  typedef lowp_dmat2x3 dmat2x3;
+
685  typedef lowp_dmat2x4 dmat2x4;
+
686  typedef lowp_dmat3x2 dmat3x2;
+
687  typedef lowp_dmat3x3 dmat3x3;
+
688  typedef lowp_dmat3x4 dmat3x4;
+
689  typedef lowp_dmat4x2 dmat4x2;
+
690  typedef lowp_dmat4x3 dmat4x3;
+
691  typedef lowp_dmat4x4 dmat4x4;
+
692 #elif(defined(GLM_PRECISION_MEDIUMP_DOUBLE))
+
693  typedef mediump_dmat2x2 dmat2x2;
+
694  typedef mediump_dmat2x3 dmat2x3;
+
695  typedef mediump_dmat2x4 dmat2x4;
+
696  typedef mediump_dmat3x2 dmat3x2;
+
697  typedef mediump_dmat3x3 dmat3x3;
+
698  typedef mediump_dmat3x4 dmat3x4;
+
699  typedef mediump_dmat4x2 dmat4x2;
+
700  typedef mediump_dmat4x3 dmat4x3;
+
701  typedef mediump_dmat4x4 dmat4x4;
+
702 #else //defined(GLM_PRECISION_HIGHP_DOUBLE)
+
703 
+
707  typedef highp_dmat2x2 dmat2;
+
708 
+
712  typedef highp_dmat3x3 dmat3;
+
713 
+
717  typedef highp_dmat4x4 dmat4;
+
718 
+
722  typedef highp_dmat2x2 dmat2x2;
+
723 
+
727  typedef highp_dmat2x3 dmat2x3;
+
728 
+
732  typedef highp_dmat2x4 dmat2x4;
+
733 
+
737  typedef highp_dmat3x2 dmat3x2;
+
738 
+
742  typedef highp_dmat3x3 dmat3x3;
+
743 
+
747  typedef highp_dmat3x4 dmat3x4;
+
748 
+
752  typedef highp_dmat4x2 dmat4x2;
+
753 
+
757  typedef highp_dmat4x3 dmat4x3;
+
758 
+
762  typedef highp_dmat4x4 dmat4x4;
+
763 
+
764 #endif//GLM_PRECISION
+
765 
+
767 }//namespace glm
+
tmat3x3< double, highp > highp_dmat3x3
3 columns of 3 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:568
+
tmat4x4< float, mediump > mediump_mat4x4
4 columns of 4 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:318
+
tmat4x2< double, highp > highp_dmat4x2
4 columns of 2 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:614
+
tmat4x2< float, lowp > lowp_mat4x2
4 columns of 2 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:237
+
tmat4x3< float, highp > highp_mat4x3
4 columns of 3 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:277
+
tmat4x2< float, highp > highp_mat4x2
4 columns of 2 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:251
+
tmat4x4< float, lowp > lowp_mat4x4
4 columns of 4 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:311
+
tmat4x4< double, lowp > lowp_dmat4
4 columns of 4 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:648
+
tmat3x3< float, lowp > lowp_mat3x3
3 columns of 3 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:185
+
tmat2x2< float, mediump > mediump_mat2
2 columns of 2 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:46
+
highp_mat2x4 mat2x4
2 columns of 4 components matrix of floating-point numbers.
Definition: type_mat.hpp:369
+
tmat2x2< double, lowp > lowp_dmat2x2
2 columns of 2 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:446
+
tmat4x4< double, highp > highp_dmat4x4
4 columns of 4 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:678
+
tmat4x4< double, mediump > mediump_dmat4
4 columns of 4 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:654
+
highp_dmat2x2 dmat2
2 * 2 matrix of double-precision floating-point numbers.
Definition: type_mat.hpp:707
+
highp_mat2x2 mat2x2
2 columns of 2 components matrix of floating-point numbers.
Definition: type_mat.hpp:359
+
mat2x2 mat2
2 columns of 2 components matrix of floating-point numbers.
Definition: type_mat.hpp:406
+
tmat2x2< double, mediump > mediump_dmat2
2 columns of 2 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:434
+
tmat2x2< float, lowp > lowp_mat2
2 columns of 2 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:39
+
highp_mat2x3 mat2x3
2 columns of 3 components matrix of floating-point numbers.
Definition: type_mat.hpp:364
+
highp_dmat4x2 dmat4x2
4 * 2 matrix of double-precision floating-point numbers.
Definition: type_mat.hpp:752
+
tmat2x2< double, highp > highp_dmat2
2 columns of 2 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:440
+
highp_mat3x2 mat3x2
3 columns of 2 components matrix of floating-point numbers.
Definition: type_mat.hpp:374
+
highp_mat3x4 mat3x4
3 columns of 4 components matrix of floating-point numbers.
Definition: type_mat.hpp:384
+
tmat3x3< float, highp > highp_mat3
3 columns of 3 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:178
+
highp_dmat2x2 dmat2x2
2 * 2 matrix of double-precision floating-point numbers.
Definition: type_mat.hpp:722
+
mat3x3 mat3
3 columns of 3 components matrix of floating-point numbers.
Definition: type_mat.hpp:411
+
tmat4x3< float, mediump > mediump_mat4x3
4 columns of 3 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:270
+
tmat2x2< double, lowp > lowp_dmat2
2 columns of 2 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:428
+
tmat4x4< float, highp > highp_mat4
4 columns of 4 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:304
+
tmat4x2< float, mediump > mediump_mat4x2
4 columns of 2 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:244
+
tmat3x4< float, highp > highp_mat3x4
3 columns of 4 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:225
+
tmat4x3< double, mediump > mediump_dmat4x3
4 columns of 3 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:631
+
Definition: _noise.hpp:11
+
tmat3x4< double, highp > highp_dmat3x4
3 columns of 4 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:591
+
tmat2x3< double, mediump > mediump_dmat2x3
2 columns of 3 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:475
+
highp_dmat2x3 dmat2x3
2 * 3 matrix of double-precision floating-point numbers.
Definition: type_mat.hpp:727
+
GLM_FUNC_DECL matType< T, P > inverse(matType< T, P > const &m)
Return the inverse of a squared matrix.
+
tmat2x4< float, lowp > lowp_mat2x4
2 columns of 4 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:112
+
mat4x4 mat4
4 columns of 4 components matrix of floating-point numbers.
Definition: type_mat.hpp:416
+
tmat2x2< float, highp > highp_mat2x2
2 columns of 2 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:74
+
tmat3x4< double, mediump > mediump_dmat3x4
3 columns of 4 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:585
+
tmat2x2< double, highp > highp_dmat2x2
2 columns of 2 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:458
+
tmat4x3< double, lowp > lowp_dmat4x3
4 columns of 3 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:625
+
tmat3x2< float, mediump > mediump_mat3x2
3 columns of 2 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:145
+
highp_mat4x4 mat4x4
4 columns of 4 components matrix of floating-point numbers.
Definition: type_mat.hpp:399
+
tmat3x4< float, lowp > lowp_mat3x4
3 columns of 4 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:211
+
highp_dmat3x2 dmat3x2
3 * 2 matrix of double-precision floating-point numbers.
Definition: type_mat.hpp:737
+
tmat3x3< float, lowp > lowp_dmat3
3 columns of 3 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:538
+
tmat2x3< double, lowp > lowp_dmat2x3
2 columns of 3 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:469
+
tmat3x3< double, mediump > mediump_dmat3
3 columns of 3 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:544
+
tmat4x4< float, lowp > lowp_mat4
4 columns of 4 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:290
+
tmat3x4< float, mediump > mediump_mat3x4
3 columns of 4 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:218
+
tmat3x2< float, highp > highp_mat3x2
3 columns of 2 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:152
+
tmat3x2< double, mediump > mediump_dmat3x2
3 columns of 2 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:521
+
tmat4x4< double, highp > highp_dmat4
4 columns of 4 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:660
+
tmat2x4< double, lowp > lowp_dmat2x4
2 columns of 4 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:492
+
tmat3x3< float, mediump > mediump_mat3
3 columns of 3 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:171
+
tmat2x4< double, mediump > mediump_dmat2x4
2 columns of 4 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:498
+
tmat2x2< float, mediump > mediump_mat2x2
2 columns of 2 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:67
+
tmat2x2< float, lowp > lowp_mat2x2
2 columns of 2 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:60
+
highp_dmat4x4 dmat4x4
4 * 4 matrix of double-precision floating-point numbers.
Definition: type_mat.hpp:762
+
tmat2x3< float, lowp > lowp_mat2x3
2 columns of 3 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:86
+
tmat4x4< float, highp > highp_mat4x4
4 columns of 4 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:325
+
highp_dmat4x3 dmat4x3
4 * 3 matrix of double-precision floating-point numbers.
Definition: type_mat.hpp:757
+
tmat3x3< double, mediump > mediump_dmat3x3
3 columns of 3 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:562
+
highp_mat4x2 mat4x2
4 columns of 2 components matrix of floating-point numbers.
Definition: type_mat.hpp:389
+
tmat4x4< float, mediump > mediump_mat4
4 columns of 4 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:297
+
tmat4x2< double, lowp > lowp_dmat4x2
4 columns of 2 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:602
+
tmat4x2< double, mediump > mediump_dmat4x2
4 columns of 2 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:608
+
tmat4x4< double, mediump > mediump_dmat4x4
4 columns of 4 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:672
+
tmat2x3< float, mediump > mediump_mat2x3
2 columns of 3 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:93
+
tmat2x2< double, mediump > mediump_dmat2x2
2 columns of 2 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:452
+
tmat4x3< double, highp > highp_dmat4x3
4 columns of 3 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:637
+
highp_mat3x3 mat3x3
3 columns of 3 components matrix of floating-point numbers.
Definition: type_mat.hpp:379
+
tmat3x3< double, highp > highp_dmat3
3 columns of 3 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:550
+
tmat2x4< float, highp > highp_mat2x4
2 columns of 4 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:126
+
tmat4x4< double, lowp > lowp_dmat4x4
4 columns of 4 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:666
+
tmat3x3< float, highp > highp_mat3x3
3 columns of 3 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:199
+
tmat3x3< double, lowp > lowp_dmat3x3
3 columns of 3 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:556
+
tmat3x4< double, lowp > lowp_dmat3x4
3 columns of 4 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:579
+
tmat3x3< float, mediump > mediump_mat3x3
3 columns of 3 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:192
+
tmat3x3< float, lowp > lowp_mat3
3 columns of 3 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:164
+
tmat3x2< double, lowp > lowp_dmat3x2
3 columns of 2 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:515
+
highp_dmat3x3 dmat3x3
3 * 3 matrix of double-precision floating-point numbers.
Definition: type_mat.hpp:742
+
tmat3x2< double, highp > highp_dmat3x2
3 columns of 2 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:527
+
tmat2x2< float, highp > highp_mat2
2 columns of 2 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:53
+
tmat2x4< double, highp > highp_dmat2x4
2 columns of 4 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:504
+
tmat4x3< float, lowp > lowp_mat4x3
4 columns of 3 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:263
+
highp_dmat3x4 dmat3x4
3 * 4 matrix of double-precision floating-point numbers.
Definition: type_mat.hpp:747
+
highp_dmat2x4 dmat2x4
2 * 4 matrix of double-precision floating-point numbers.
Definition: type_mat.hpp:732
+
highp_mat4x3 mat4x3
4 columns of 3 components matrix of floating-point numbers.
Definition: type_mat.hpp:394
+
tmat2x3< float, highp > highp_mat2x3
2 columns of 3 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:100
+
tmat2x4< float, mediump > mediump_mat2x4
2 columns of 4 components matrix of medium precision floating-point numbers.
Definition: type_mat.hpp:119
+
GLM Core
+
highp_dmat4x4 dmat4
4 * 4 matrix of double-precision floating-point numbers.
Definition: type_mat.hpp:717
+
tmat3x2< float, lowp > lowp_mat3x2
3 columns of 2 components matrix of low precision floating-point numbers.
Definition: type_mat.hpp:138
+
tmat2x3< double, highp > highp_dmat2x3
2 columns of 3 components matrix of high precision floating-point numbers.
Definition: type_mat.hpp:481
+
highp_dmat3x3 dmat3
3 * 3 matrix of double-precision floating-point numbers.
Definition: type_mat.hpp:712
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00115.html b/third_party/glm_test/doc/api/a00115.html new file mode 100644 index 0000000000000..1d339c3b5a577 --- /dev/null +++ b/third_party/glm_test/doc/api/a00115.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: type_mat2x2.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat2x2.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file type_mat2x2.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00115_source.html b/third_party/glm_test/doc/api/a00115_source.html new file mode 100644 index 0000000000000..3ec6500490111 --- /dev/null +++ b/third_party/glm_test/doc/api/a00115_source.html @@ -0,0 +1,245 @@ + + + + + + +0.9.8: type_mat2x2.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat2x2.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "../fwd.hpp"
+
7 #include "type_vec2.hpp"
+
8 #include "type_mat.hpp"
+
9 #include <limits>
+
10 #include <cstddef>
+
11 
+
12 namespace glm
+
13 {
+
14  template <typename T, precision P = defaultp>
+
15  struct tmat2x2
+
16  {
+
17  typedef tvec2<T, P> col_type;
+
18  typedef tvec2<T, P> row_type;
+
19  typedef tmat2x2<T, P> type;
+
20  typedef tmat2x2<T, P> transpose_type;
+
21  typedef T value_type;
+
22 
+
23  private:
+
24  col_type value[2];
+
25 
+
26  public:
+
27  // -- Constructors --
+
28 
+
29  GLM_FUNC_DECL tmat2x2() GLM_DEFAULT_CTOR;
+
30  GLM_FUNC_DECL tmat2x2(tmat2x2<T, P> const & m) GLM_DEFAULT;
+
31  template <precision Q>
+
32  GLM_FUNC_DECL tmat2x2(tmat2x2<T, Q> const & m);
+
33 
+
34  GLM_FUNC_DECL GLM_CONSTEXPR_CTOR explicit tmat2x2(ctor);
+
35  GLM_FUNC_DECL explicit tmat2x2(T scalar);
+
36  GLM_FUNC_DECL tmat2x2(
+
37  T const & x1, T const & y1,
+
38  T const & x2, T const & y2);
+
39  GLM_FUNC_DECL tmat2x2(
+
40  col_type const & v1,
+
41  col_type const & v2);
+
42 
+
43  // -- Conversions --
+
44 
+
45  template <typename U, typename V, typename M, typename N>
+
46  GLM_FUNC_DECL tmat2x2(
+
47  U const & x1, V const & y1,
+
48  M const & x2, N const & y2);
+
49 
+
50  template <typename U, typename V>
+
51  GLM_FUNC_DECL tmat2x2(
+
52  tvec2<U, P> const & v1,
+
53  tvec2<V, P> const & v2);
+
54 
+
55  // -- Matrix conversions --
+
56 
+
57  template <typename U, precision Q>
+
58  GLM_FUNC_DECL GLM_EXPLICIT tmat2x2(tmat2x2<U, Q> const & m);
+
59 
+
60  GLM_FUNC_DECL GLM_EXPLICIT tmat2x2(tmat3x3<T, P> const & x);
+
61  GLM_FUNC_DECL GLM_EXPLICIT tmat2x2(tmat4x4<T, P> const & x);
+
62  GLM_FUNC_DECL GLM_EXPLICIT tmat2x2(tmat2x3<T, P> const & x);
+
63  GLM_FUNC_DECL GLM_EXPLICIT tmat2x2(tmat3x2<T, P> const & x);
+
64  GLM_FUNC_DECL GLM_EXPLICIT tmat2x2(tmat2x4<T, P> const & x);
+
65  GLM_FUNC_DECL GLM_EXPLICIT tmat2x2(tmat4x2<T, P> const & x);
+
66  GLM_FUNC_DECL GLM_EXPLICIT tmat2x2(tmat3x4<T, P> const & x);
+
67  GLM_FUNC_DECL GLM_EXPLICIT tmat2x2(tmat4x3<T, P> const & x);
+
68 
+
69  // -- Accesses --
+
70 
+
71  typedef length_t length_type;
+
72  GLM_FUNC_DECL GLM_CONSTEXPR length_type length() const;
+
73 
+
74  GLM_FUNC_DECL col_type & operator[](length_type i);
+
75  GLM_FUNC_DECL col_type const & operator[](length_type i) const;
+
76 
+
77  // -- Unary arithmetic operators --
+
78 
+
79  GLM_FUNC_DECL tmat2x2<T, P> & operator=(tmat2x2<T, P> const & v) GLM_DEFAULT;
+
80 
+
81  template <typename U>
+
82  GLM_FUNC_DECL tmat2x2<T, P> & operator=(tmat2x2<U, P> const & m);
+
83  template <typename U>
+
84  GLM_FUNC_DECL tmat2x2<T, P> & operator+=(U s);
+
85  template <typename U>
+
86  GLM_FUNC_DECL tmat2x2<T, P> & operator+=(tmat2x2<U, P> const & m);
+
87  template <typename U>
+
88  GLM_FUNC_DECL tmat2x2<T, P> & operator-=(U s);
+
89  template <typename U>
+
90  GLM_FUNC_DECL tmat2x2<T, P> & operator-=(tmat2x2<U, P> const & m);
+
91  template <typename U>
+
92  GLM_FUNC_DECL tmat2x2<T, P> & operator*=(U s);
+
93  template <typename U>
+
94  GLM_FUNC_DECL tmat2x2<T, P> & operator*=(tmat2x2<U, P> const & m);
+
95  template <typename U>
+
96  GLM_FUNC_DECL tmat2x2<T, P> & operator/=(U s);
+
97  template <typename U>
+
98  GLM_FUNC_DECL tmat2x2<T, P> & operator/=(tmat2x2<U, P> const & m);
+
99 
+
100  // -- Increment and decrement operators --
+
101 
+
102  GLM_FUNC_DECL tmat2x2<T, P> & operator++ ();
+
103  GLM_FUNC_DECL tmat2x2<T, P> & operator-- ();
+
104  GLM_FUNC_DECL tmat2x2<T, P> operator++(int);
+
105  GLM_FUNC_DECL tmat2x2<T, P> operator--(int);
+
106  };
+
107 
+
108  // -- Unary operators --
+
109 
+
110  template <typename T, precision P>
+
111  GLM_FUNC_DECL tmat2x2<T, P> operator+(tmat2x2<T, P> const & m);
+
112 
+
113  template <typename T, precision P>
+
114  GLM_FUNC_DECL tmat2x2<T, P> operator-(tmat2x2<T, P> const & m);
+
115 
+
116  // -- Binary operators --
+
117 
+
118  template <typename T, precision P>
+
119  GLM_FUNC_DECL tmat2x2<T, P> operator+(tmat2x2<T, P> const & m, T scalar);
+
120 
+
121  template <typename T, precision P>
+
122  GLM_FUNC_DECL tmat2x2<T, P> operator+(T scalar, tmat2x2<T, P> const & m);
+
123 
+
124  template <typename T, precision P>
+
125  GLM_FUNC_DECL tmat2x2<T, P> operator+(tmat2x2<T, P> const & m1, tmat2x2<T, P> const & m2);
+
126 
+
127  template <typename T, precision P>
+
128  GLM_FUNC_DECL tmat2x2<T, P> operator-(tmat2x2<T, P> const & m, T scalar);
+
129 
+
130  template <typename T, precision P>
+
131  GLM_FUNC_DECL tmat2x2<T, P> operator-(T scalar, tmat2x2<T, P> const & m);
+
132 
+
133  template <typename T, precision P>
+
134  GLM_FUNC_DECL tmat2x2<T, P> operator-(tmat2x2<T, P> const & m1, tmat2x2<T, P> const & m2);
+
135 
+
136  template <typename T, precision P>
+
137  GLM_FUNC_DECL tmat2x2<T, P> operator*(tmat2x2<T, P> const & m, T scalar);
+
138 
+
139  template <typename T, precision P>
+
140  GLM_FUNC_DECL tmat2x2<T, P> operator*(T scalar, tmat2x2<T, P> const & m);
+
141 
+
142  template <typename T, precision P>
+
143  GLM_FUNC_DECL typename tmat2x2<T, P>::col_type operator*(tmat2x2<T, P> const & m, typename tmat2x2<T, P>::row_type const & v);
+
144 
+
145  template <typename T, precision P>
+
146  GLM_FUNC_DECL typename tmat2x2<T, P>::row_type operator*(typename tmat2x2<T, P>::col_type const & v, tmat2x2<T, P> const & m);
+
147 
+
148  template <typename T, precision P>
+
149  GLM_FUNC_DECL tmat2x2<T, P> operator*(tmat2x2<T, P> const & m1, tmat2x2<T, P> const & m2);
+
150 
+
151  template <typename T, precision P>
+
152  GLM_FUNC_DECL tmat3x2<T, P> operator*(tmat2x2<T, P> const & m1, tmat3x2<T, P> const & m2);
+
153 
+
154  template <typename T, precision P>
+
155  GLM_FUNC_DECL tmat4x2<T, P> operator*(tmat2x2<T, P> const & m1, tmat4x2<T, P> const & m2);
+
156 
+
157  template <typename T, precision P>
+
158  GLM_FUNC_DECL tmat2x2<T, P> operator/(tmat2x2<T, P> const & m, T scalar);
+
159 
+
160  template <typename T, precision P>
+
161  GLM_FUNC_DECL tmat2x2<T, P> operator/(T scalar, tmat2x2<T, P> const & m);
+
162 
+
163  template <typename T, precision P>
+
164  GLM_FUNC_DECL typename tmat2x2<T, P>::col_type operator/(tmat2x2<T, P> const & m, typename tmat2x2<T, P>::row_type const & v);
+
165 
+
166  template <typename T, precision P>
+
167  GLM_FUNC_DECL typename tmat2x2<T, P>::row_type operator/(typename tmat2x2<T, P>::col_type const & v, tmat2x2<T, P> const & m);
+
168 
+
169  template <typename T, precision P>
+
170  GLM_FUNC_DECL tmat2x2<T, P> operator/(tmat2x2<T, P> const & m1, tmat2x2<T, P> const & m2);
+
171 
+
172  // -- Boolean operators --
+
173 
+
174  template <typename T, precision P>
+
175  GLM_FUNC_DECL bool operator==(tmat2x2<T, P> const & m1, tmat2x2<T, P> const & m2);
+
176 
+
177  template <typename T, precision P>
+
178  GLM_FUNC_DECL bool operator!=(tmat2x2<T, P> const & m1, tmat2x2<T, P> const & m2);
+
179 } //namespace glm
+
180 
+
181 #ifndef GLM_EXTERNAL_TEMPLATE
+
182 #include "type_mat2x2.inl"
+
183 #endif
+
Definition: _noise.hpp:11
+
GLM Core
+
GLM Core
+
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00116.html b/third_party/glm_test/doc/api/a00116.html new file mode 100644 index 0000000000000..2d148c5e20fde --- /dev/null +++ b/third_party/glm_test/doc/api/a00116.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: type_mat2x3.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat2x3.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file type_mat2x3.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00116_source.html b/third_party/glm_test/doc/api/a00116_source.html new file mode 100644 index 0000000000000..5676b2945f56c --- /dev/null +++ b/third_party/glm_test/doc/api/a00116_source.html @@ -0,0 +1,228 @@ + + + + + + +0.9.8: type_mat2x3.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat2x3.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "../fwd.hpp"
+
7 #include "type_vec2.hpp"
+
8 #include "type_vec3.hpp"
+
9 #include "type_mat.hpp"
+
10 #include <limits>
+
11 #include <cstddef>
+
12 
+
13 namespace glm
+
14 {
+
15  template <typename T, precision P = defaultp>
+
16  struct tmat2x3
+
17  {
+
18  typedef tvec3<T, P> col_type;
+
19  typedef tvec2<T, P> row_type;
+
20  typedef tmat2x3<T, P> type;
+
21  typedef tmat3x2<T, P> transpose_type;
+
22  typedef T value_type;
+
23 
+
24  private:
+
25  col_type value[2];
+
26 
+
27  public:
+
28  // -- Constructors --
+
29 
+
30  GLM_FUNC_DECL tmat2x3() GLM_DEFAULT_CTOR;
+
31  GLM_FUNC_DECL tmat2x3(tmat2x3<T, P> const & m) GLM_DEFAULT;
+
32  template <precision Q>
+
33  GLM_FUNC_DECL tmat2x3(tmat2x3<T, Q> const & m);
+
34 
+
35  GLM_FUNC_DECL GLM_CONSTEXPR_CTOR explicit tmat2x3(ctor);
+
36  GLM_FUNC_DECL explicit tmat2x3(T scalar);
+
37  GLM_FUNC_DECL tmat2x3(
+
38  T x0, T y0, T z0,
+
39  T x1, T y1, T z1);
+
40  GLM_FUNC_DECL tmat2x3(
+
41  col_type const & v0,
+
42  col_type const & v1);
+
43 
+
44  // -- Conversions --
+
45 
+
46  template <typename X1, typename Y1, typename Z1, typename X2, typename Y2, typename Z2>
+
47  GLM_FUNC_DECL tmat2x3(
+
48  X1 x1, Y1 y1, Z1 z1,
+
49  X2 x2, Y2 y2, Z2 z2);
+
50 
+
51  template <typename U, typename V>
+
52  GLM_FUNC_DECL tmat2x3(
+
53  tvec3<U, P> const & v1,
+
54  tvec3<V, P> const & v2);
+
55 
+
56  // -- Matrix conversions --
+
57 
+
58  template <typename U, precision Q>
+
59  GLM_FUNC_DECL GLM_EXPLICIT tmat2x3(tmat2x3<U, Q> const & m);
+
60 
+
61  GLM_FUNC_DECL GLM_EXPLICIT tmat2x3(tmat2x2<T, P> const & x);
+
62  GLM_FUNC_DECL GLM_EXPLICIT tmat2x3(tmat3x3<T, P> const & x);
+
63  GLM_FUNC_DECL GLM_EXPLICIT tmat2x3(tmat4x4<T, P> const & x);
+
64  GLM_FUNC_DECL GLM_EXPLICIT tmat2x3(tmat2x4<T, P> const & x);
+
65  GLM_FUNC_DECL GLM_EXPLICIT tmat2x3(tmat3x2<T, P> const & x);
+
66  GLM_FUNC_DECL GLM_EXPLICIT tmat2x3(tmat3x4<T, P> const & x);
+
67  GLM_FUNC_DECL GLM_EXPLICIT tmat2x3(tmat4x2<T, P> const & x);
+
68  GLM_FUNC_DECL GLM_EXPLICIT tmat2x3(tmat4x3<T, P> const & x);
+
69 
+
70  // -- Accesses --
+
71 
+
72  typedef length_t length_type;
+
73  GLM_FUNC_DECL GLM_CONSTEXPR length_type length() const;
+
74 
+
75  GLM_FUNC_DECL col_type & operator[](length_type i);
+
76  GLM_FUNC_DECL col_type const & operator[](length_type i) const;
+
77 
+
78  // -- Unary arithmetic operators --
+
79 
+
80  GLM_FUNC_DECL tmat2x3<T, P> & operator=(tmat2x3<T, P> const & m) GLM_DEFAULT;
+
81 
+
82  template <typename U>
+
83  GLM_FUNC_DECL tmat2x3<T, P> & operator=(tmat2x3<U, P> const & m);
+
84  template <typename U>
+
85  GLM_FUNC_DECL tmat2x3<T, P> & operator+=(U s);
+
86  template <typename U>
+
87  GLM_FUNC_DECL tmat2x3<T, P> & operator+=(tmat2x3<U, P> const & m);
+
88  template <typename U>
+
89  GLM_FUNC_DECL tmat2x3<T, P> & operator-=(U s);
+
90  template <typename U>
+
91  GLM_FUNC_DECL tmat2x3<T, P> & operator-=(tmat2x3<U, P> const & m);
+
92  template <typename U>
+
93  GLM_FUNC_DECL tmat2x3<T, P> & operator*=(U s);
+
94  template <typename U>
+
95  GLM_FUNC_DECL tmat2x3<T, P> & operator/=(U s);
+
96 
+
97  // -- Increment and decrement operators --
+
98 
+
99  GLM_FUNC_DECL tmat2x3<T, P> & operator++ ();
+
100  GLM_FUNC_DECL tmat2x3<T, P> & operator-- ();
+
101  GLM_FUNC_DECL tmat2x3<T, P> operator++(int);
+
102  GLM_FUNC_DECL tmat2x3<T, P> operator--(int);
+
103  };
+
104 
+
105  // -- Unary operators --
+
106 
+
107  template <typename T, precision P>
+
108  GLM_FUNC_DECL tmat2x3<T, P> operator+(tmat2x3<T, P> const & m);
+
109 
+
110  template <typename T, precision P>
+
111  GLM_FUNC_DECL tmat2x3<T, P> operator-(tmat2x3<T, P> const & m);
+
112 
+
113  // -- Binary operators --
+
114 
+
115  template <typename T, precision P>
+
116  GLM_FUNC_DECL tmat2x3<T, P> operator+(tmat2x3<T, P> const & m, T scalar);
+
117 
+
118  template <typename T, precision P>
+
119  GLM_FUNC_DECL tmat2x3<T, P> operator+(tmat2x3<T, P> const & m1, tmat2x3<T, P> const & m2);
+
120 
+
121  template <typename T, precision P>
+
122  GLM_FUNC_DECL tmat2x3<T, P> operator-(tmat2x3<T, P> const & m, T scalar);
+
123 
+
124  template <typename T, precision P>
+
125  GLM_FUNC_DECL tmat2x3<T, P> operator-(tmat2x3<T, P> const & m1, tmat2x3<T, P> const & m2);
+
126 
+
127  template <typename T, precision P>
+
128  GLM_FUNC_DECL tmat2x3<T, P> operator*(tmat2x3<T, P> const & m, T scalar);
+
129 
+
130  template <typename T, precision P>
+
131  GLM_FUNC_DECL tmat2x3<T, P> operator*(T scalar, tmat2x3<T, P> const & m);
+
132 
+
133  template <typename T, precision P>
+
134  GLM_FUNC_DECL typename tmat2x3<T, P>::col_type operator*(tmat2x3<T, P> const & m, typename tmat2x3<T, P>::row_type const & v);
+
135 
+
136  template <typename T, precision P>
+
137  GLM_FUNC_DECL typename tmat2x3<T, P>::row_type operator*(typename tmat2x3<T, P>::col_type const & v, tmat2x3<T, P> const & m);
+
138 
+
139  template <typename T, precision P>
+
140  GLM_FUNC_DECL tmat2x3<T, P> operator*(tmat2x3<T, P> const & m1, tmat2x2<T, P> const & m2);
+
141 
+
142  template <typename T, precision P>
+
143  GLM_FUNC_DECL tmat3x3<T, P> operator*(tmat2x3<T, P> const & m1, tmat3x2<T, P> const & m2);
+
144 
+
145  template <typename T, precision P>
+
146  GLM_FUNC_DECL tmat4x3<T, P> operator*(tmat2x3<T, P> const & m1, tmat4x2<T, P> const & m2);
+
147 
+
148  template <typename T, precision P>
+
149  GLM_FUNC_DECL tmat2x3<T, P> operator/(tmat2x3<T, P> const & m, T scalar);
+
150 
+
151  template <typename T, precision P>
+
152  GLM_FUNC_DECL tmat2x3<T, P> operator/(T scalar, tmat2x3<T, P> const & m);
+
153 
+
154  // -- Boolean operators --
+
155 
+
156  template <typename T, precision P>
+
157  GLM_FUNC_DECL bool operator==(tmat2x3<T, P> const & m1, tmat2x3<T, P> const & m2);
+
158 
+
159  template <typename T, precision P>
+
160  GLM_FUNC_DECL bool operator!=(tmat2x3<T, P> const & m1, tmat2x3<T, P> const & m2);
+
161 }//namespace glm
+
162 
+
163 #ifndef GLM_EXTERNAL_TEMPLATE
+
164 #include "type_mat2x3.inl"
+
165 #endif
+
GLM Core
+
Definition: _noise.hpp:11
+
GLM Core
+
GLM Core
+
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00117.html b/third_party/glm_test/doc/api/a00117.html new file mode 100644 index 0000000000000..e3d9fb6dbe4ba --- /dev/null +++ b/third_party/glm_test/doc/api/a00117.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: type_mat2x4.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat2x4.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file type_mat2x4.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00117_source.html b/third_party/glm_test/doc/api/a00117_source.html new file mode 100644 index 0000000000000..2b52cabff407e --- /dev/null +++ b/third_party/glm_test/doc/api/a00117_source.html @@ -0,0 +1,230 @@ + + + + + + +0.9.8: type_mat2x4.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat2x4.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "../fwd.hpp"
+
7 #include "type_vec2.hpp"
+
8 #include "type_vec4.hpp"
+
9 #include "type_mat.hpp"
+
10 #include <limits>
+
11 #include <cstddef>
+
12 
+
13 namespace glm
+
14 {
+
15  template <typename T, precision P = defaultp>
+
16  struct tmat2x4
+
17  {
+
18  typedef tvec4<T, P> col_type;
+
19  typedef tvec2<T, P> row_type;
+
20  typedef tmat2x4<T, P> type;
+
21  typedef tmat4x2<T, P> transpose_type;
+
22  typedef T value_type;
+
23 
+
24  private:
+
25  col_type value[2];
+
26 
+
27  public:
+
28  // -- Constructors --
+
29 
+
30  GLM_FUNC_DECL tmat2x4() GLM_DEFAULT_CTOR;
+
31  GLM_FUNC_DECL tmat2x4(tmat2x4<T, P> const & m) GLM_DEFAULT;
+
32  template <precision Q>
+
33  GLM_FUNC_DECL tmat2x4(tmat2x4<T, Q> const & m);
+
34 
+
35  GLM_FUNC_DECL GLM_CONSTEXPR_CTOR explicit tmat2x4(ctor);
+
36  GLM_FUNC_DECL explicit tmat2x4(T scalar);
+
37  GLM_FUNC_DECL tmat2x4(
+
38  T x0, T y0, T z0, T w0,
+
39  T x1, T y1, T z1, T w1);
+
40  GLM_FUNC_DECL tmat2x4(
+
41  col_type const & v0,
+
42  col_type const & v1);
+
43 
+
44  // -- Conversions --
+
45 
+
46  template <
+
47  typename X1, typename Y1, typename Z1, typename W1,
+
48  typename X2, typename Y2, typename Z2, typename W2>
+
49  GLM_FUNC_DECL tmat2x4(
+
50  X1 x1, Y1 y1, Z1 z1, W1 w1,
+
51  X2 x2, Y2 y2, Z2 z2, W2 w2);
+
52 
+
53  template <typename U, typename V>
+
54  GLM_FUNC_DECL tmat2x4(
+
55  tvec4<U, P> const & v1,
+
56  tvec4<V, P> const & v2);
+
57 
+
58  // -- Matrix conversions --
+
59 
+
60  template <typename U, precision Q>
+
61  GLM_FUNC_DECL GLM_EXPLICIT tmat2x4(tmat2x4<U, Q> const & m);
+
62 
+
63  GLM_FUNC_DECL GLM_EXPLICIT tmat2x4(tmat2x2<T, P> const & x);
+
64  GLM_FUNC_DECL GLM_EXPLICIT tmat2x4(tmat3x3<T, P> const & x);
+
65  GLM_FUNC_DECL GLM_EXPLICIT tmat2x4(tmat4x4<T, P> const & x);
+
66  GLM_FUNC_DECL GLM_EXPLICIT tmat2x4(tmat2x3<T, P> const & x);
+
67  GLM_FUNC_DECL GLM_EXPLICIT tmat2x4(tmat3x2<T, P> const & x);
+
68  GLM_FUNC_DECL GLM_EXPLICIT tmat2x4(tmat3x4<T, P> const & x);
+
69  GLM_FUNC_DECL GLM_EXPLICIT tmat2x4(tmat4x2<T, P> const & x);
+
70  GLM_FUNC_DECL GLM_EXPLICIT tmat2x4(tmat4x3<T, P> const & x);
+
71 
+
72  // -- Accesses --
+
73 
+
74  typedef length_t length_type;
+
75  GLM_FUNC_DECL GLM_CONSTEXPR length_type length() const;
+
76 
+
77  GLM_FUNC_DECL col_type & operator[](length_type i);
+
78  GLM_FUNC_DECL col_type const & operator[](length_type i) const;
+
79 
+
80  // -- Unary arithmetic operators --
+
81 
+
82  GLM_FUNC_DECL tmat2x4<T, P> & operator=(tmat2x4<T, P> const & m) GLM_DEFAULT;
+
83 
+
84  template <typename U>
+
85  GLM_FUNC_DECL tmat2x4<T, P> & operator=(tmat2x4<U, P> const & m);
+
86  template <typename U>
+
87  GLM_FUNC_DECL tmat2x4<T, P> & operator+=(U s);
+
88  template <typename U>
+
89  GLM_FUNC_DECL tmat2x4<T, P> & operator+=(tmat2x4<U, P> const & m);
+
90  template <typename U>
+
91  GLM_FUNC_DECL tmat2x4<T, P> & operator-=(U s);
+
92  template <typename U>
+
93  GLM_FUNC_DECL tmat2x4<T, P> & operator-=(tmat2x4<U, P> const & m);
+
94  template <typename U>
+
95  GLM_FUNC_DECL tmat2x4<T, P> & operator*=(U s);
+
96  template <typename U>
+
97  GLM_FUNC_DECL tmat2x4<T, P> & operator/=(U s);
+
98 
+
99  // -- Increment and decrement operators --
+
100 
+
101  GLM_FUNC_DECL tmat2x4<T, P> & operator++ ();
+
102  GLM_FUNC_DECL tmat2x4<T, P> & operator-- ();
+
103  GLM_FUNC_DECL tmat2x4<T, P> operator++(int);
+
104  GLM_FUNC_DECL tmat2x4<T, P> operator--(int);
+
105  };
+
106 
+
107  // -- Unary operators --
+
108 
+
109  template <typename T, precision P>
+
110  GLM_FUNC_DECL tmat2x4<T, P> operator+(tmat2x4<T, P> const & m);
+
111 
+
112  template <typename T, precision P>
+
113  GLM_FUNC_DECL tmat2x4<T, P> operator-(tmat2x4<T, P> const & m);
+
114 
+
115  // -- Binary operators --
+
116 
+
117  template <typename T, precision P>
+
118  GLM_FUNC_DECL tmat2x4<T, P> operator+(tmat2x4<T, P> const & m, T scalar);
+
119 
+
120  template <typename T, precision P>
+
121  GLM_FUNC_DECL tmat2x4<T, P> operator+(tmat2x4<T, P> const & m1, tmat2x4<T, P> const & m2);
+
122 
+
123  template <typename T, precision P>
+
124  GLM_FUNC_DECL tmat2x4<T, P> operator-(tmat2x4<T, P> const & m, T scalar);
+
125 
+
126  template <typename T, precision P>
+
127  GLM_FUNC_DECL tmat2x4<T, P> operator-(tmat2x4<T, P> const & m1, tmat2x4<T, P> const & m2);
+
128 
+
129  template <typename T, precision P>
+
130  GLM_FUNC_DECL tmat2x4<T, P> operator*(tmat2x4<T, P> const & m, T scalar);
+
131 
+
132  template <typename T, precision P>
+
133  GLM_FUNC_DECL tmat2x4<T, P> operator*(T scalar, tmat2x4<T, P> const & m);
+
134 
+
135  template <typename T, precision P>
+
136  GLM_FUNC_DECL typename tmat2x4<T, P>::col_type operator*(tmat2x4<T, P> const & m, typename tmat2x4<T, P>::row_type const & v);
+
137 
+
138  template <typename T, precision P>
+
139  GLM_FUNC_DECL typename tmat2x4<T, P>::row_type operator*(typename tmat2x4<T, P>::col_type const & v, tmat2x4<T, P> const & m);
+
140 
+
141  template <typename T, precision P>
+
142  GLM_FUNC_DECL tmat4x4<T, P> operator*(tmat2x4<T, P> const & m1, tmat4x2<T, P> const & m2);
+
143 
+
144  template <typename T, precision P>
+
145  GLM_FUNC_DECL tmat2x4<T, P> operator*(tmat2x4<T, P> const & m1, tmat2x2<T, P> const & m2);
+
146 
+
147  template <typename T, precision P>
+
148  GLM_FUNC_DECL tmat3x4<T, P> operator*(tmat2x4<T, P> const & m1, tmat3x2<T, P> const & m2);
+
149 
+
150  template <typename T, precision P>
+
151  GLM_FUNC_DECL tmat2x4<T, P> operator/(tmat2x4<T, P> const & m, T scalar);
+
152 
+
153  template <typename T, precision P>
+
154  GLM_FUNC_DECL tmat2x4<T, P> operator/(T scalar, tmat2x4<T, P> const & m);
+
155 
+
156  // -- Boolean operators --
+
157 
+
158  template <typename T, precision P>
+
159  GLM_FUNC_DECL bool operator==(tmat2x4<T, P> const & m1, tmat2x4<T, P> const & m2);
+
160 
+
161  template <typename T, precision P>
+
162  GLM_FUNC_DECL bool operator!=(tmat2x4<T, P> const & m1, tmat2x4<T, P> const & m2);
+
163 }//namespace glm
+
164 
+
165 #ifndef GLM_EXTERNAL_TEMPLATE
+
166 #include "type_mat2x4.inl"
+
167 #endif
+
Definition: _noise.hpp:11
+
GLM Core
+
GLM Core
+
GLM Core
+
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00118.html b/third_party/glm_test/doc/api/a00118.html new file mode 100644 index 0000000000000..b20072d0971de --- /dev/null +++ b/third_party/glm_test/doc/api/a00118.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: type_mat3x2.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat3x2.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file type_mat3x2.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00118_source.html b/third_party/glm_test/doc/api/a00118_source.html new file mode 100644 index 0000000000000..6ad8609f4758c --- /dev/null +++ b/third_party/glm_test/doc/api/a00118_source.html @@ -0,0 +1,236 @@ + + + + + + +0.9.8: type_mat3x2.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat3x2.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "../fwd.hpp"
+
7 #include "type_vec2.hpp"
+
8 #include "type_vec3.hpp"
+
9 #include "type_mat.hpp"
+
10 #include <limits>
+
11 #include <cstddef>
+
12 
+
13 namespace glm
+
14 {
+
15  template <typename T, precision P = defaultp>
+
16  struct tmat3x2
+
17  {
+
18  typedef tvec2<T, P> col_type;
+
19  typedef tvec3<T, P> row_type;
+
20  typedef tmat3x2<T, P> type;
+
21  typedef tmat2x3<T, P> transpose_type;
+
22  typedef T value_type;
+
23 
+
24  private:
+
25  col_type value[3];
+
26 
+
27  public:
+
28  // -- Constructors --
+
29 
+
30  GLM_FUNC_DECL tmat3x2() GLM_DEFAULT_CTOR;
+
31  GLM_FUNC_DECL tmat3x2(tmat3x2<T, P> const & m) GLM_DEFAULT;
+
32  template <precision Q>
+
33  GLM_FUNC_DECL tmat3x2(tmat3x2<T, Q> const & m);
+
34 
+
35  GLM_FUNC_DECL GLM_CONSTEXPR_CTOR explicit tmat3x2(ctor);
+
36  GLM_FUNC_DECL explicit tmat3x2(T scalar);
+
37  GLM_FUNC_DECL tmat3x2(
+
38  T x0, T y0,
+
39  T x1, T y1,
+
40  T x2, T y2);
+
41  GLM_FUNC_DECL tmat3x2(
+
42  col_type const & v0,
+
43  col_type const & v1,
+
44  col_type const & v2);
+
45 
+
46  // -- Conversions --
+
47 
+
48  template<
+
49  typename X1, typename Y1,
+
50  typename X2, typename Y2,
+
51  typename X3, typename Y3>
+
52  GLM_FUNC_DECL tmat3x2(
+
53  X1 x1, Y1 y1,
+
54  X2 x2, Y2 y2,
+
55  X3 x3, Y3 y3);
+
56 
+
57  template <typename V1, typename V2, typename V3>
+
58  GLM_FUNC_DECL tmat3x2(
+
59  tvec2<V1, P> const & v1,
+
60  tvec2<V2, P> const & v2,
+
61  tvec2<V3, P> const & v3);
+
62 
+
63  // -- Matrix conversions --
+
64 
+
65  template <typename U, precision Q>
+
66  GLM_FUNC_DECL GLM_EXPLICIT tmat3x2(tmat3x2<U, Q> const & m);
+
67 
+
68  GLM_FUNC_DECL GLM_EXPLICIT tmat3x2(tmat2x2<T, P> const & x);
+
69  GLM_FUNC_DECL GLM_EXPLICIT tmat3x2(tmat3x3<T, P> const & x);
+
70  GLM_FUNC_DECL GLM_EXPLICIT tmat3x2(tmat4x4<T, P> const & x);
+
71  GLM_FUNC_DECL GLM_EXPLICIT tmat3x2(tmat2x3<T, P> const & x);
+
72  GLM_FUNC_DECL GLM_EXPLICIT tmat3x2(tmat2x4<T, P> const & x);
+
73  GLM_FUNC_DECL GLM_EXPLICIT tmat3x2(tmat3x4<T, P> const & x);
+
74  GLM_FUNC_DECL GLM_EXPLICIT tmat3x2(tmat4x2<T, P> const & x);
+
75  GLM_FUNC_DECL GLM_EXPLICIT tmat3x2(tmat4x3<T, P> const & x);
+
76 
+
77  // -- Accesses --
+
78 
+
79  typedef length_t length_type;
+
80  GLM_FUNC_DECL GLM_CONSTEXPR length_type length() const;
+
81 
+
82  GLM_FUNC_DECL col_type & operator[](length_type i);
+
83  GLM_FUNC_DECL col_type const & operator[](length_type i) const;
+
84 
+
85  // -- Unary arithmetic operators --
+
86 
+
87  GLM_FUNC_DECL tmat3x2<T, P> & operator=(tmat3x2<T, P> const & m) GLM_DEFAULT;
+
88 
+
89  template <typename U>
+
90  GLM_FUNC_DECL tmat3x2<T, P> & operator=(tmat3x2<U, P> const & m);
+
91  template <typename U>
+
92  GLM_FUNC_DECL tmat3x2<T, P> & operator+=(U s);
+
93  template <typename U>
+
94  GLM_FUNC_DECL tmat3x2<T, P> & operator+=(tmat3x2<U, P> const & m);
+
95  template <typename U>
+
96  GLM_FUNC_DECL tmat3x2<T, P> & operator-=(U s);
+
97  template <typename U>
+
98  GLM_FUNC_DECL tmat3x2<T, P> & operator-=(tmat3x2<U, P> const & m);
+
99  template <typename U>
+
100  GLM_FUNC_DECL tmat3x2<T, P> & operator*=(U s);
+
101  template <typename U>
+
102  GLM_FUNC_DECL tmat3x2<T, P> & operator/=(U s);
+
103 
+
104  // -- Increment and decrement operators --
+
105 
+
106  GLM_FUNC_DECL tmat3x2<T, P> & operator++ ();
+
107  GLM_FUNC_DECL tmat3x2<T, P> & operator-- ();
+
108  GLM_FUNC_DECL tmat3x2<T, P> operator++(int);
+
109  GLM_FUNC_DECL tmat3x2<T, P> operator--(int);
+
110  };
+
111 
+
112  // -- Unary operators --
+
113 
+
114  template <typename T, precision P>
+
115  GLM_FUNC_DECL tmat3x2<T, P> operator+(tmat3x2<T, P> const & m);
+
116 
+
117  template <typename T, precision P>
+
118  GLM_FUNC_DECL tmat3x2<T, P> operator-(tmat3x2<T, P> const & m);
+
119 
+
120  // -- Binary operators --
+
121 
+
122  template <typename T, precision P>
+
123  GLM_FUNC_DECL tmat3x2<T, P> operator+(tmat3x2<T, P> const & m, T scalar);
+
124 
+
125  template <typename T, precision P>
+
126  GLM_FUNC_DECL tmat3x2<T, P> operator+(tmat3x2<T, P> const & m1, tmat3x2<T, P> const & m2);
+
127 
+
128  template <typename T, precision P>
+
129  GLM_FUNC_DECL tmat3x2<T, P> operator-(tmat3x2<T, P> const & m, T scalar);
+
130 
+
131  template <typename T, precision P>
+
132  GLM_FUNC_DECL tmat3x2<T, P> operator-(tmat3x2<T, P> const & m1, tmat3x2<T, P> const & m2);
+
133 
+
134  template <typename T, precision P>
+
135  GLM_FUNC_DECL tmat3x2<T, P> operator*(tmat3x2<T, P> const & m, T scalar);
+
136 
+
137  template <typename T, precision P>
+
138  GLM_FUNC_DECL tmat3x2<T, P> operator*(T scalar, tmat3x2<T, P> const & m);
+
139 
+
140  template <typename T, precision P>
+
141  GLM_FUNC_DECL typename tmat3x2<T, P>::col_type operator*(tmat3x2<T, P> const & m, typename tmat3x2<T, P>::row_type const & v);
+
142 
+
143  template <typename T, precision P>
+
144  GLM_FUNC_DECL typename tmat3x2<T, P>::row_type operator*(typename tmat3x2<T, P>::col_type const & v, tmat3x2<T, P> const & m);
+
145 
+
146  template <typename T, precision P>
+
147  GLM_FUNC_DECL tmat2x2<T, P> operator*(tmat3x2<T, P> const & m1, tmat2x3<T, P> const & m2);
+
148 
+
149  template <typename T, precision P>
+
150  GLM_FUNC_DECL tmat3x2<T, P> operator*(tmat3x2<T, P> const & m1, tmat3x3<T, P> const & m2);
+
151 
+
152  template <typename T, precision P>
+
153  GLM_FUNC_DECL tmat4x2<T, P> operator*(tmat3x2<T, P> const & m1, tmat4x3<T, P> const & m2);
+
154 
+
155  template <typename T, precision P>
+
156  GLM_FUNC_DECL tmat3x2<T, P> operator/(tmat3x2<T, P> const & m, T scalar);
+
157 
+
158  template <typename T, precision P>
+
159  GLM_FUNC_DECL tmat3x2<T, P> operator/(T scalar, tmat3x2<T, P> const & m);
+
160 
+
161  // -- Boolean operators --
+
162 
+
163  template <typename T, precision P>
+
164  GLM_FUNC_DECL bool operator==(tmat3x2<T, P> const & m1, tmat3x2<T, P> const & m2);
+
165 
+
166  template <typename T, precision P>
+
167  GLM_FUNC_DECL bool operator!=(tmat3x2<T, P> const & m1, tmat3x2<T, P> const & m2);
+
168 
+
169 }//namespace glm
+
170 
+
171 #ifndef GLM_EXTERNAL_TEMPLATE
+
172 #include "type_mat3x2.inl"
+
173 #endif
+
GLM Core
+
Definition: _noise.hpp:11
+
GLM Core
+
GLM Core
+
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00119.html b/third_party/glm_test/doc/api/a00119.html new file mode 100644 index 0000000000000..e9913caedaafb --- /dev/null +++ b/third_party/glm_test/doc/api/a00119.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: type_mat3x3.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat3x3.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file type_mat3x3.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00119_source.html b/third_party/glm_test/doc/api/a00119_source.html new file mode 100644 index 0000000000000..bb6b531418a68 --- /dev/null +++ b/third_party/glm_test/doc/api/a00119_source.html @@ -0,0 +1,252 @@ + + + + + + +0.9.8: type_mat3x3.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat3x3.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "../fwd.hpp"
+
7 #include "type_vec3.hpp"
+
8 #include "type_mat.hpp"
+
9 #include <limits>
+
10 #include <cstddef>
+
11 
+
12 namespace glm
+
13 {
+
14  template <typename T, precision P = defaultp>
+
15  struct tmat3x3
+
16  {
+
17  typedef tvec3<T, P> col_type;
+
18  typedef tvec3<T, P> row_type;
+
19  typedef tmat3x3<T, P> type;
+
20  typedef tmat3x3<T, P> transpose_type;
+
21  typedef T value_type;
+
22 
+
23  private:
+
24  col_type value[3];
+
25 
+
26  public:
+
27  // -- Constructors --
+
28 
+
29  GLM_FUNC_DECL tmat3x3() GLM_DEFAULT_CTOR;
+
30  GLM_FUNC_DECL tmat3x3(tmat3x3<T, P> const & m) GLM_DEFAULT;
+
31  template <precision Q>
+
32  GLM_FUNC_DECL tmat3x3(tmat3x3<T, Q> const & m);
+
33 
+
34  GLM_FUNC_DECL GLM_CONSTEXPR_CTOR explicit tmat3x3(ctor);
+
35  GLM_FUNC_DECL explicit tmat3x3(T scalar);
+
36  GLM_FUNC_DECL tmat3x3(
+
37  T x0, T y0, T z0,
+
38  T x1, T y1, T z1,
+
39  T x2, T y2, T z2);
+
40  GLM_FUNC_DECL tmat3x3(
+
41  col_type const & v0,
+
42  col_type const & v1,
+
43  col_type const & v2);
+
44 
+
45  // -- Conversions --
+
46 
+
47  template<
+
48  typename X1, typename Y1, typename Z1,
+
49  typename X2, typename Y2, typename Z2,
+
50  typename X3, typename Y3, typename Z3>
+
51  GLM_FUNC_DECL tmat3x3(
+
52  X1 x1, Y1 y1, Z1 z1,
+
53  X2 x2, Y2 y2, Z2 z2,
+
54  X3 x3, Y3 y3, Z3 z3);
+
55 
+
56  template <typename V1, typename V2, typename V3>
+
57  GLM_FUNC_DECL tmat3x3(
+
58  tvec3<V1, P> const & v1,
+
59  tvec3<V2, P> const & v2,
+
60  tvec3<V3, P> const & v3);
+
61 
+
62  // -- Matrix conversions --
+
63 
+
64  template <typename U, precision Q>
+
65  GLM_FUNC_DECL GLM_EXPLICIT tmat3x3(tmat3x3<U, Q> const & m);
+
66 
+
67  GLM_FUNC_DECL GLM_EXPLICIT tmat3x3(tmat2x2<T, P> const & x);
+
68  GLM_FUNC_DECL GLM_EXPLICIT tmat3x3(tmat4x4<T, P> const & x);
+
69  GLM_FUNC_DECL GLM_EXPLICIT tmat3x3(tmat2x3<T, P> const & x);
+
70  GLM_FUNC_DECL GLM_EXPLICIT tmat3x3(tmat3x2<T, P> const & x);
+
71  GLM_FUNC_DECL GLM_EXPLICIT tmat3x3(tmat2x4<T, P> const & x);
+
72  GLM_FUNC_DECL GLM_EXPLICIT tmat3x3(tmat4x2<T, P> const & x);
+
73  GLM_FUNC_DECL GLM_EXPLICIT tmat3x3(tmat3x4<T, P> const & x);
+
74  GLM_FUNC_DECL GLM_EXPLICIT tmat3x3(tmat4x3<T, P> const & x);
+
75 
+
76  // -- Accesses --
+
77 
+
78  typedef length_t length_type;
+
79  GLM_FUNC_DECL GLM_CONSTEXPR length_type length() const;
+
80 
+
81  GLM_FUNC_DECL col_type & operator[](length_type i);
+
82  GLM_FUNC_DECL col_type const & operator[](length_type i) const;
+
83 
+
84  // -- Unary arithmetic operators --
+
85 
+
86  GLM_FUNC_DECL tmat3x3<T, P> & operator=(tmat3x3<T, P> const & m) GLM_DEFAULT;
+
87 
+
88  template <typename U>
+
89  GLM_FUNC_DECL tmat3x3<T, P> & operator=(tmat3x3<U, P> const & m);
+
90  template <typename U>
+
91  GLM_FUNC_DECL tmat3x3<T, P> & operator+=(U s);
+
92  template <typename U>
+
93  GLM_FUNC_DECL tmat3x3<T, P> & operator+=(tmat3x3<U, P> const & m);
+
94  template <typename U>
+
95  GLM_FUNC_DECL tmat3x3<T, P> & operator-=(U s);
+
96  template <typename U>
+
97  GLM_FUNC_DECL tmat3x3<T, P> & operator-=(tmat3x3<U, P> const & m);
+
98  template <typename U>
+
99  GLM_FUNC_DECL tmat3x3<T, P> & operator*=(U s);
+
100  template <typename U>
+
101  GLM_FUNC_DECL tmat3x3<T, P> & operator*=(tmat3x3<U, P> const & m);
+
102  template <typename U>
+
103  GLM_FUNC_DECL tmat3x3<T, P> & operator/=(U s);
+
104  template <typename U>
+
105  GLM_FUNC_DECL tmat3x3<T, P> & operator/=(tmat3x3<U, P> const & m);
+
106 
+
107  // -- Increment and decrement operators --
+
108 
+
109  GLM_FUNC_DECL tmat3x3<T, P> & operator++();
+
110  GLM_FUNC_DECL tmat3x3<T, P> & operator--();
+
111  GLM_FUNC_DECL tmat3x3<T, P> operator++(int);
+
112  GLM_FUNC_DECL tmat3x3<T, P> operator--(int);
+
113  };
+
114 
+
115  // -- Unary operators --
+
116 
+
117  template <typename T, precision P>
+
118  GLM_FUNC_DECL tmat3x3<T, P> operator+(tmat3x3<T, P> const & m);
+
119 
+
120  template <typename T, precision P>
+
121  GLM_FUNC_DECL tmat3x3<T, P> operator-(tmat3x3<T, P> const & m);
+
122 
+
123  // -- Binary operators --
+
124 
+
125  template <typename T, precision P>
+
126  GLM_FUNC_DECL tmat3x3<T, P> operator+(tmat3x3<T, P> const & m, T scalar);
+
127 
+
128  template <typename T, precision P>
+
129  GLM_FUNC_DECL tmat3x3<T, P> operator+(T scalar, tmat3x3<T, P> const & m);
+
130 
+
131  template <typename T, precision P>
+
132  GLM_FUNC_DECL tmat3x3<T, P> operator+(tmat3x3<T, P> const & m1, tmat3x3<T, P> const & m2);
+
133 
+
134  template <typename T, precision P>
+
135  GLM_FUNC_DECL tmat3x3<T, P> operator-(tmat3x3<T, P> const & m, T scalar);
+
136 
+
137  template <typename T, precision P>
+
138  GLM_FUNC_DECL tmat3x3<T, P> operator-(T scalar, tmat3x3<T, P> const & m);
+
139 
+
140  template <typename T, precision P>
+
141  GLM_FUNC_DECL tmat3x3<T, P> operator-(tmat3x3<T, P> const & m1, tmat3x3<T, P> const & m2);
+
142 
+
143  template <typename T, precision P>
+
144  GLM_FUNC_DECL tmat3x3<T, P> operator*(tmat3x3<T, P> const & m, T scalar);
+
145 
+
146  template <typename T, precision P>
+
147  GLM_FUNC_DECL tmat3x3<T, P> operator*(T scalar, tmat3x3<T, P> const & m);
+
148 
+
149  template <typename T, precision P>
+
150  GLM_FUNC_DECL typename tmat3x3<T, P>::col_type operator*(tmat3x3<T, P> const & m, typename tmat3x3<T, P>::row_type const & v);
+
151 
+
152  template <typename T, precision P>
+
153  GLM_FUNC_DECL typename tmat3x3<T, P>::row_type operator*(typename tmat3x3<T, P>::col_type const & v, tmat3x3<T, P> const & m);
+
154 
+
155  template <typename T, precision P>
+
156  GLM_FUNC_DECL tmat3x3<T, P> operator*(tmat3x3<T, P> const & m1, tmat3x3<T, P> const & m2);
+
157 
+
158  template <typename T, precision P>
+
159  GLM_FUNC_DECL tmat2x3<T, P> operator*(tmat3x3<T, P> const & m1, tmat2x3<T, P> const & m2);
+
160 
+
161  template <typename T, precision P>
+
162  GLM_FUNC_DECL tmat4x3<T, P> operator*(tmat3x3<T, P> const & m1, tmat4x3<T, P> const & m2);
+
163 
+
164  template <typename T, precision P>
+
165  GLM_FUNC_DECL tmat3x3<T, P> operator/(tmat3x3<T, P> const & m, T scalar);
+
166 
+
167  template <typename T, precision P>
+
168  GLM_FUNC_DECL tmat3x3<T, P> operator/(T scalar, tmat3x3<T, P> const & m);
+
169 
+
170  template <typename T, precision P>
+
171  GLM_FUNC_DECL typename tmat3x3<T, P>::col_type operator/(tmat3x3<T, P> const & m, typename tmat3x3<T, P>::row_type const & v);
+
172 
+
173  template <typename T, precision P>
+
174  GLM_FUNC_DECL typename tmat3x3<T, P>::row_type operator/(typename tmat3x3<T, P>::col_type const & v, tmat3x3<T, P> const & m);
+
175 
+
176  template <typename T, precision P>
+
177  GLM_FUNC_DECL tmat3x3<T, P> operator/(tmat3x3<T, P> const & m1, tmat3x3<T, P> const & m2);
+
178 
+
179  // -- Boolean operators --
+
180 
+
181  template <typename T, precision P>
+
182  GLM_FUNC_DECL bool operator==(tmat3x3<T, P> const & m1, tmat3x3<T, P> const & m2);
+
183 
+
184  template <typename T, precision P>
+
185  GLM_FUNC_DECL bool operator!=(tmat3x3<T, P> const & m1, tmat3x3<T, P> const & m2);
+
186 }//namespace glm
+
187 
+
188 #ifndef GLM_EXTERNAL_TEMPLATE
+
189 #include "type_mat3x3.inl"
+
190 #endif
+
GLM Core
+
Definition: _noise.hpp:11
+
GLM Core
+
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00120.html b/third_party/glm_test/doc/api/a00120.html new file mode 100644 index 0000000000000..b85df2e5ba580 --- /dev/null +++ b/third_party/glm_test/doc/api/a00120.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: type_mat3x4.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat3x4.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file type_mat3x4.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00120_source.html b/third_party/glm_test/doc/api/a00120_source.html new file mode 100644 index 0000000000000..2b9a78460671b --- /dev/null +++ b/third_party/glm_test/doc/api/a00120_source.html @@ -0,0 +1,235 @@ + + + + + + +0.9.8: type_mat3x4.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat3x4.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "../fwd.hpp"
+
7 #include "type_vec3.hpp"
+
8 #include "type_vec4.hpp"
+
9 #include "type_mat.hpp"
+
10 #include <limits>
+
11 #include <cstddef>
+
12 
+
13 namespace glm
+
14 {
+
15  template <typename T, precision P = defaultp>
+
16  struct tmat3x4
+
17  {
+
18  typedef tvec4<T, P> col_type;
+
19  typedef tvec3<T, P> row_type;
+
20  typedef tmat3x4<T, P> type;
+
21  typedef tmat4x3<T, P> transpose_type;
+
22  typedef T value_type;
+
23 
+
24  private:
+
25  col_type value[3];
+
26 
+
27  public:
+
28  // -- Constructors --
+
29 
+
30  GLM_FUNC_DECL tmat3x4() GLM_DEFAULT_CTOR;
+
31  GLM_FUNC_DECL tmat3x4(tmat3x4<T, P> const & m) GLM_DEFAULT;
+
32  template <precision Q>
+
33  GLM_FUNC_DECL tmat3x4(tmat3x4<T, Q> const & m);
+
34 
+
35  GLM_FUNC_DECL GLM_CONSTEXPR_CTOR explicit tmat3x4(ctor);
+
36  GLM_FUNC_DECL explicit tmat3x4(T scalar);
+
37  GLM_FUNC_DECL tmat3x4(
+
38  T x0, T y0, T z0, T w0,
+
39  T x1, T y1, T z1, T w1,
+
40  T x2, T y2, T z2, T w2);
+
41  GLM_FUNC_DECL tmat3x4(
+
42  col_type const & v0,
+
43  col_type const & v1,
+
44  col_type const & v2);
+
45 
+
46  // -- Conversions --
+
47 
+
48  template<
+
49  typename X1, typename Y1, typename Z1, typename W1,
+
50  typename X2, typename Y2, typename Z2, typename W2,
+
51  typename X3, typename Y3, typename Z3, typename W3>
+
52  GLM_FUNC_DECL tmat3x4(
+
53  X1 x1, Y1 y1, Z1 z1, W1 w1,
+
54  X2 x2, Y2 y2, Z2 z2, W2 w2,
+
55  X3 x3, Y3 y3, Z3 z3, W3 w3);
+
56 
+
57  template <typename V1, typename V2, typename V3>
+
58  GLM_FUNC_DECL tmat3x4(
+
59  tvec4<V1, P> const & v1,
+
60  tvec4<V2, P> const & v2,
+
61  tvec4<V3, P> const & v3);
+
62 
+
63  // -- Matrix conversions --
+
64 
+
65  template <typename U, precision Q>
+
66  GLM_FUNC_DECL GLM_EXPLICIT tmat3x4(tmat3x4<U, Q> const & m);
+
67 
+
68  GLM_FUNC_DECL GLM_EXPLICIT tmat3x4(tmat2x2<T, P> const & x);
+
69  GLM_FUNC_DECL GLM_EXPLICIT tmat3x4(tmat3x3<T, P> const & x);
+
70  GLM_FUNC_DECL GLM_EXPLICIT tmat3x4(tmat4x4<T, P> const & x);
+
71  GLM_FUNC_DECL GLM_EXPLICIT tmat3x4(tmat2x3<T, P> const & x);
+
72  GLM_FUNC_DECL GLM_EXPLICIT tmat3x4(tmat3x2<T, P> const & x);
+
73  GLM_FUNC_DECL GLM_EXPLICIT tmat3x4(tmat2x4<T, P> const & x);
+
74  GLM_FUNC_DECL GLM_EXPLICIT tmat3x4(tmat4x2<T, P> const & x);
+
75  GLM_FUNC_DECL GLM_EXPLICIT tmat3x4(tmat4x3<T, P> const & x);
+
76 
+
77  // -- Accesses --
+
78 
+
79  typedef length_t length_type;
+
80  GLM_FUNC_DECL GLM_CONSTEXPR length_type length() const;
+
81 
+
82  GLM_FUNC_DECL col_type & operator[](length_type i);
+
83  GLM_FUNC_DECL col_type const & operator[](length_type i) const;
+
84 
+
85  // -- Unary arithmetic operators --
+
86 
+
87  GLM_FUNC_DECL tmat3x4<T, P> & operator=(tmat3x4<T, P> const & m) GLM_DEFAULT;
+
88 
+
89  template <typename U>
+
90  GLM_FUNC_DECL tmat3x4<T, P> & operator=(tmat3x4<U, P> const & m);
+
91  template <typename U>
+
92  GLM_FUNC_DECL tmat3x4<T, P> & operator+=(U s);
+
93  template <typename U>
+
94  GLM_FUNC_DECL tmat3x4<T, P> & operator+=(tmat3x4<U, P> const & m);
+
95  template <typename U>
+
96  GLM_FUNC_DECL tmat3x4<T, P> & operator-=(U s);
+
97  template <typename U>
+
98  GLM_FUNC_DECL tmat3x4<T, P> & operator-=(tmat3x4<U, P> const & m);
+
99  template <typename U>
+
100  GLM_FUNC_DECL tmat3x4<T, P> & operator*=(U s);
+
101  template <typename U>
+
102  GLM_FUNC_DECL tmat3x4<T, P> & operator/=(U s);
+
103 
+
104  // -- Increment and decrement operators --
+
105 
+
106  GLM_FUNC_DECL tmat3x4<T, P> & operator++();
+
107  GLM_FUNC_DECL tmat3x4<T, P> & operator--();
+
108  GLM_FUNC_DECL tmat3x4<T, P> operator++(int);
+
109  GLM_FUNC_DECL tmat3x4<T, P> operator--(int);
+
110  };
+
111 
+
112  // -- Unary operators --
+
113 
+
114  template <typename T, precision P>
+
115  GLM_FUNC_DECL tmat3x4<T, P> operator+(tmat3x4<T, P> const & m);
+
116 
+
117  template <typename T, precision P>
+
118  GLM_FUNC_DECL tmat3x4<T, P> operator-(tmat3x4<T, P> const & m);
+
119 
+
120  // -- Binary operators --
+
121 
+
122  template <typename T, precision P>
+
123  GLM_FUNC_DECL tmat3x4<T, P> operator+(tmat3x4<T, P> const & m, T scalar);
+
124 
+
125  template <typename T, precision P>
+
126  GLM_FUNC_DECL tmat3x4<T, P> operator+(tmat3x4<T, P> const & m1, tmat3x4<T, P> const & m2);
+
127 
+
128  template <typename T, precision P>
+
129  GLM_FUNC_DECL tmat3x4<T, P> operator-(tmat3x4<T, P> const & m, T scalar);
+
130 
+
131  template <typename T, precision P>
+
132  GLM_FUNC_DECL tmat3x4<T, P> operator-(tmat3x4<T, P> const & m1, tmat3x4<T, P> const & m2);
+
133 
+
134  template <typename T, precision P>
+
135  GLM_FUNC_DECL tmat3x4<T, P> operator*(tmat3x4<T, P> const & m, T scalar);
+
136 
+
137  template <typename T, precision P>
+
138  GLM_FUNC_DECL tmat3x4<T, P> operator*(T scalar, tmat3x4<T, P> const & m);
+
139 
+
140  template <typename T, precision P>
+
141  GLM_FUNC_DECL typename tmat3x4<T, P>::col_type operator*(tmat3x4<T, P> const & m, typename tmat3x4<T, P>::row_type const & v);
+
142 
+
143  template <typename T, precision P>
+
144  GLM_FUNC_DECL typename tmat3x4<T, P>::row_type operator*(typename tmat3x4<T, P>::col_type const & v, tmat3x4<T, P> const & m);
+
145 
+
146  template <typename T, precision P>
+
147  GLM_FUNC_DECL tmat4x4<T, P> operator*(tmat3x4<T, P> const & m1, tmat4x3<T, P> const & m2);
+
148 
+
149  template <typename T, precision P>
+
150  GLM_FUNC_DECL tmat2x4<T, P> operator*(tmat3x4<T, P> const & m1, tmat2x3<T, P> const & m2);
+
151 
+
152  template <typename T, precision P>
+
153  GLM_FUNC_DECL tmat3x4<T, P> operator*(tmat3x4<T, P> const & m1, tmat3x3<T, P> const & m2);
+
154 
+
155  template <typename T, precision P>
+
156  GLM_FUNC_DECL tmat3x4<T, P> operator/(tmat3x4<T, P> const & m, T scalar);
+
157 
+
158  template <typename T, precision P>
+
159  GLM_FUNC_DECL tmat3x4<T, P> operator/(T scalar, tmat3x4<T, P> const & m);
+
160 
+
161  // -- Boolean operators --
+
162 
+
163  template <typename T, precision P>
+
164  GLM_FUNC_DECL bool operator==(tmat3x4<T, P> const & m1, tmat3x4<T, P> const & m2);
+
165 
+
166  template <typename T, precision P>
+
167  GLM_FUNC_DECL bool operator!=(tmat3x4<T, P> const & m1, tmat3x4<T, P> const & m2);
+
168 }//namespace glm
+
169 
+
170 #ifndef GLM_EXTERNAL_TEMPLATE
+
171 #include "type_mat3x4.inl"
+
172 #endif
+
GLM Core
+
Definition: _noise.hpp:11
+
GLM Core
+
GLM Core
+
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00121.html b/third_party/glm_test/doc/api/a00121.html new file mode 100644 index 0000000000000..7f716fbea47e9 --- /dev/null +++ b/third_party/glm_test/doc/api/a00121.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: type_mat4x2.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat4x2.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file type_mat4x2.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00121_source.html b/third_party/glm_test/doc/api/a00121_source.html new file mode 100644 index 0000000000000..0e09dbed7f7d0 --- /dev/null +++ b/third_party/glm_test/doc/api/a00121_source.html @@ -0,0 +1,240 @@ + + + + + + +0.9.8: type_mat4x2.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat4x2.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "../fwd.hpp"
+
7 #include "type_vec2.hpp"
+
8 #include "type_vec4.hpp"
+
9 #include "type_mat.hpp"
+
10 #include <limits>
+
11 #include <cstddef>
+
12 
+
13 namespace glm
+
14 {
+
15  template <typename T, precision P = defaultp>
+
16  struct tmat4x2
+
17  {
+
18  typedef tvec2<T, P> col_type;
+
19  typedef tvec4<T, P> row_type;
+
20  typedef tmat4x2<T, P> type;
+
21  typedef tmat2x4<T, P> transpose_type;
+
22  typedef T value_type;
+
23 
+
24  private:
+
25  col_type value[4];
+
26 
+
27  public:
+
28  // -- Constructors --
+
29 
+
30  GLM_FUNC_DECL tmat4x2() GLM_DEFAULT_CTOR;
+
31  GLM_FUNC_DECL tmat4x2(tmat4x2<T, P> const & m) GLM_DEFAULT;
+
32  template <precision Q>
+
33  GLM_FUNC_DECL tmat4x2(tmat4x2<T, Q> const & m);
+
34 
+
35  GLM_FUNC_DECL GLM_CONSTEXPR_CTOR explicit tmat4x2(ctor);
+
36  GLM_FUNC_DECL explicit tmat4x2(T scalar);
+
37  GLM_FUNC_DECL tmat4x2(
+
38  T x0, T y0,
+
39  T x1, T y1,
+
40  T x2, T y2,
+
41  T x3, T y3);
+
42  GLM_FUNC_DECL tmat4x2(
+
43  col_type const & v0,
+
44  col_type const & v1,
+
45  col_type const & v2,
+
46  col_type const & v3);
+
47 
+
48  // -- Conversions --
+
49 
+
50  template <
+
51  typename X1, typename Y1,
+
52  typename X2, typename Y2,
+
53  typename X3, typename Y3,
+
54  typename X4, typename Y4>
+
55  GLM_FUNC_DECL tmat4x2(
+
56  X1 x1, Y1 y1,
+
57  X2 x2, Y2 y2,
+
58  X3 x3, Y3 y3,
+
59  X4 x4, Y4 y4);
+
60 
+
61  template <typename V1, typename V2, typename V3, typename V4>
+
62  GLM_FUNC_DECL tmat4x2(
+
63  tvec2<V1, P> const & v1,
+
64  tvec2<V2, P> const & v2,
+
65  tvec2<V3, P> const & v3,
+
66  tvec2<V4, P> const & v4);
+
67 
+
68  // -- Matrix conversions --
+
69 
+
70  template <typename U, precision Q>
+
71  GLM_FUNC_DECL GLM_EXPLICIT tmat4x2(tmat4x2<U, Q> const & m);
+
72 
+
73  GLM_FUNC_DECL GLM_EXPLICIT tmat4x2(tmat2x2<T, P> const & x);
+
74  GLM_FUNC_DECL GLM_EXPLICIT tmat4x2(tmat3x3<T, P> const & x);
+
75  GLM_FUNC_DECL GLM_EXPLICIT tmat4x2(tmat4x4<T, P> const & x);
+
76  GLM_FUNC_DECL GLM_EXPLICIT tmat4x2(tmat2x3<T, P> const & x);
+
77  GLM_FUNC_DECL GLM_EXPLICIT tmat4x2(tmat3x2<T, P> const & x);
+
78  GLM_FUNC_DECL GLM_EXPLICIT tmat4x2(tmat2x4<T, P> const & x);
+
79  GLM_FUNC_DECL GLM_EXPLICIT tmat4x2(tmat4x3<T, P> const & x);
+
80  GLM_FUNC_DECL GLM_EXPLICIT tmat4x2(tmat3x4<T, P> const & x);
+
81 
+
82  // -- Accesses --
+
83 
+
84  typedef length_t length_type;
+
85  GLM_FUNC_DECL GLM_CONSTEXPR length_type length() const;
+
86 
+
87  GLM_FUNC_DECL col_type & operator[](length_type i);
+
88  GLM_FUNC_DECL col_type const & operator[](length_type i) const;
+
89 
+
90  // -- Unary arithmetic operators --
+
91 
+
92  GLM_FUNC_DECL tmat4x2<T, P> & operator=(tmat4x2<T, P> const & m) GLM_DEFAULT;
+
93 
+
94  template <typename U>
+
95  GLM_FUNC_DECL tmat4x2<T, P> & operator=(tmat4x2<U, P> const & m);
+
96  template <typename U>
+
97  GLM_FUNC_DECL tmat4x2<T, P> & operator+=(U s);
+
98  template <typename U>
+
99  GLM_FUNC_DECL tmat4x2<T, P> & operator+=(tmat4x2<U, P> const & m);
+
100  template <typename U>
+
101  GLM_FUNC_DECL tmat4x2<T, P> & operator-=(U s);
+
102  template <typename U>
+
103  GLM_FUNC_DECL tmat4x2<T, P> & operator-=(tmat4x2<U, P> const & m);
+
104  template <typename U>
+
105  GLM_FUNC_DECL tmat4x2<T, P> & operator*=(U s);
+
106  template <typename U>
+
107  GLM_FUNC_DECL tmat4x2<T, P> & operator/=(U s);
+
108 
+
109  // -- Increment and decrement operators --
+
110 
+
111  GLM_FUNC_DECL tmat4x2<T, P> & operator++ ();
+
112  GLM_FUNC_DECL tmat4x2<T, P> & operator-- ();
+
113  GLM_FUNC_DECL tmat4x2<T, P> operator++(int);
+
114  GLM_FUNC_DECL tmat4x2<T, P> operator--(int);
+
115  };
+
116 
+
117  // -- Unary operators --
+
118 
+
119  template <typename T, precision P>
+
120  GLM_FUNC_DECL tmat4x2<T, P> operator+(tmat4x2<T, P> const & m);
+
121 
+
122  template <typename T, precision P>
+
123  GLM_FUNC_DECL tmat4x2<T, P> operator-(tmat4x2<T, P> const & m);
+
124 
+
125  // -- Binary operators --
+
126 
+
127  template <typename T, precision P>
+
128  GLM_FUNC_DECL tmat4x2<T, P> operator+(tmat4x2<T, P> const & m, T scalar);
+
129 
+
130  template <typename T, precision P>
+
131  GLM_FUNC_DECL tmat4x2<T, P> operator+(tmat4x2<T, P> const & m1, tmat4x2<T, P> const & m2);
+
132 
+
133  template <typename T, precision P>
+
134  GLM_FUNC_DECL tmat4x2<T, P> operator-(tmat4x2<T, P> const & m, T scalar);
+
135 
+
136  template <typename T, precision P>
+
137  GLM_FUNC_DECL tmat4x2<T, P> operator-(tmat4x2<T, P> const & m1, tmat4x2<T, P> const & m2);
+
138 
+
139  template <typename T, precision P>
+
140  GLM_FUNC_DECL tmat4x2<T, P> operator*(tmat4x2<T, P> const & m, T scalar);
+
141 
+
142  template <typename T, precision P>
+
143  GLM_FUNC_DECL tmat4x2<T, P> operator*(T scalar, tmat4x2<T, P> const & m);
+
144 
+
145  template <typename T, precision P>
+
146  GLM_FUNC_DECL typename tmat4x2<T, P>::col_type operator*(tmat4x2<T, P> const & m, typename tmat4x2<T, P>::row_type const & v);
+
147 
+
148  template <typename T, precision P>
+
149  GLM_FUNC_DECL typename tmat4x2<T, P>::row_type operator*(typename tmat4x2<T, P>::col_type const & v, tmat4x2<T, P> const & m);
+
150 
+
151  template <typename T, precision P>
+
152  GLM_FUNC_DECL tmat2x2<T, P> operator*(tmat4x2<T, P> const & m1, tmat2x4<T, P> const & m2);
+
153 
+
154  template <typename T, precision P>
+
155  GLM_FUNC_DECL tmat3x2<T, P> operator*(tmat4x2<T, P> const & m1, tmat3x4<T, P> const & m2);
+
156 
+
157  template <typename T, precision P>
+
158  GLM_FUNC_DECL tmat4x2<T, P> operator*(tmat4x2<T, P> const & m1, tmat4x4<T, P> const & m2);
+
159 
+
160  template <typename T, precision P>
+
161  GLM_FUNC_DECL tmat4x2<T, P> operator/(tmat4x2<T, P> const & m, T scalar);
+
162 
+
163  template <typename T, precision P>
+
164  GLM_FUNC_DECL tmat4x2<T, P> operator/(T scalar, tmat4x2<T, P> const & m);
+
165 
+
166  // -- Boolean operators --
+
167 
+
168  template <typename T, precision P>
+
169  GLM_FUNC_DECL bool operator==(tmat4x2<T, P> const & m1, tmat4x2<T, P> const & m2);
+
170 
+
171  template <typename T, precision P>
+
172  GLM_FUNC_DECL bool operator!=(tmat4x2<T, P> const & m1, tmat4x2<T, P> const & m2);
+
173 }//namespace glm
+
174 
+
175 #ifndef GLM_EXTERNAL_TEMPLATE
+
176 #include "type_mat4x2.inl"
+
177 #endif
+
Definition: _noise.hpp:11
+
GLM Core
+
GLM Core
+
GLM Core
+
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00122.html b/third_party/glm_test/doc/api/a00122.html new file mode 100644 index 0000000000000..1e66573030b22 --- /dev/null +++ b/third_party/glm_test/doc/api/a00122.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: type_mat4x3.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat4x3.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file type_mat4x3.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00122_source.html b/third_party/glm_test/doc/api/a00122_source.html new file mode 100644 index 0000000000000..16e205b09f95f --- /dev/null +++ b/third_party/glm_test/doc/api/a00122_source.html @@ -0,0 +1,240 @@ + + + + + + +0.9.8: type_mat4x3.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat4x3.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "../fwd.hpp"
+
7 #include "type_vec3.hpp"
+
8 #include "type_vec4.hpp"
+
9 #include "type_mat.hpp"
+
10 #include <limits>
+
11 #include <cstddef>
+
12 
+
13 namespace glm
+
14 {
+
15  template <typename T, precision P = defaultp>
+
16  struct tmat4x3
+
17  {
+
18  typedef tvec3<T, P> col_type;
+
19  typedef tvec4<T, P> row_type;
+
20  typedef tmat4x3<T, P> type;
+
21  typedef tmat3x4<T, P> transpose_type;
+
22  typedef T value_type;
+
23 
+
24  private:
+
25  col_type value[4];
+
26 
+
27  public:
+
28  // -- Constructors --
+
29 
+
30  GLM_FUNC_DECL tmat4x3() GLM_DEFAULT_CTOR;
+
31  GLM_FUNC_DECL tmat4x3(tmat4x3<T, P> const & m) GLM_DEFAULT;
+
32  template <precision Q>
+
33  GLM_FUNC_DECL tmat4x3(tmat4x3<T, Q> const & m);
+
34 
+
35  GLM_FUNC_DECL GLM_CONSTEXPR_CTOR explicit tmat4x3(ctor);
+
36  GLM_FUNC_DECL explicit tmat4x3(T const & x);
+
37  GLM_FUNC_DECL tmat4x3(
+
38  T const & x0, T const & y0, T const & z0,
+
39  T const & x1, T const & y1, T const & z1,
+
40  T const & x2, T const & y2, T const & z2,
+
41  T const & x3, T const & y3, T const & z3);
+
42  GLM_FUNC_DECL tmat4x3(
+
43  col_type const & v0,
+
44  col_type const & v1,
+
45  col_type const & v2,
+
46  col_type const & v3);
+
47 
+
48  // -- Conversions --
+
49 
+
50  template <
+
51  typename X1, typename Y1, typename Z1,
+
52  typename X2, typename Y2, typename Z2,
+
53  typename X3, typename Y3, typename Z3,
+
54  typename X4, typename Y4, typename Z4>
+
55  GLM_FUNC_DECL tmat4x3(
+
56  X1 const & x1, Y1 const & y1, Z1 const & z1,
+
57  X2 const & x2, Y2 const & y2, Z2 const & z2,
+
58  X3 const & x3, Y3 const & y3, Z3 const & z3,
+
59  X4 const & x4, Y4 const & y4, Z4 const & z4);
+
60 
+
61  template <typename V1, typename V2, typename V3, typename V4>
+
62  GLM_FUNC_DECL tmat4x3(
+
63  tvec3<V1, P> const & v1,
+
64  tvec3<V2, P> const & v2,
+
65  tvec3<V3, P> const & v3,
+
66  tvec3<V4, P> const & v4);
+
67 
+
68  // -- Matrix conversions --
+
69 
+
70  template <typename U, precision Q>
+
71  GLM_FUNC_DECL GLM_EXPLICIT tmat4x3(tmat4x3<U, Q> const & m);
+
72 
+
73  GLM_FUNC_DECL GLM_EXPLICIT tmat4x3(tmat2x2<T, P> const & x);
+
74  GLM_FUNC_DECL GLM_EXPLICIT tmat4x3(tmat3x3<T, P> const & x);
+
75  GLM_FUNC_DECL GLM_EXPLICIT tmat4x3(tmat4x4<T, P> const & x);
+
76  GLM_FUNC_DECL GLM_EXPLICIT tmat4x3(tmat2x3<T, P> const & x);
+
77  GLM_FUNC_DECL GLM_EXPLICIT tmat4x3(tmat3x2<T, P> const & x);
+
78  GLM_FUNC_DECL GLM_EXPLICIT tmat4x3(tmat2x4<T, P> const & x);
+
79  GLM_FUNC_DECL GLM_EXPLICIT tmat4x3(tmat4x2<T, P> const & x);
+
80  GLM_FUNC_DECL GLM_EXPLICIT tmat4x3(tmat3x4<T, P> const & x);
+
81 
+
82  // -- Accesses --
+
83 
+
84  typedef length_t length_type;
+
85  GLM_FUNC_DECL GLM_CONSTEXPR length_type length() const;
+
86 
+
87  GLM_FUNC_DECL col_type & operator[](length_type i);
+
88  GLM_FUNC_DECL col_type const & operator[](length_type i) const;
+
89 
+
90  // -- Unary arithmetic operators --
+
91 
+
92  GLM_FUNC_DECL tmat4x3<T, P> & operator=(tmat4x3<T, P> const & m) GLM_DEFAULT;
+
93 
+
94  template <typename U>
+
95  GLM_FUNC_DECL tmat4x3<T, P> & operator=(tmat4x3<U, P> const & m);
+
96  template <typename U>
+
97  GLM_FUNC_DECL tmat4x3<T, P> & operator+=(U s);
+
98  template <typename U>
+
99  GLM_FUNC_DECL tmat4x3<T, P> & operator+=(tmat4x3<U, P> const & m);
+
100  template <typename U>
+
101  GLM_FUNC_DECL tmat4x3<T, P> & operator-=(U s);
+
102  template <typename U>
+
103  GLM_FUNC_DECL tmat4x3<T, P> & operator-=(tmat4x3<U, P> const & m);
+
104  template <typename U>
+
105  GLM_FUNC_DECL tmat4x3<T, P> & operator*=(U s);
+
106  template <typename U>
+
107  GLM_FUNC_DECL tmat4x3<T, P> & operator/=(U s);
+
108 
+
109  // -- Increment and decrement operators --
+
110 
+
111  GLM_FUNC_DECL tmat4x3<T, P> & operator++();
+
112  GLM_FUNC_DECL tmat4x3<T, P> & operator--();
+
113  GLM_FUNC_DECL tmat4x3<T, P> operator++(int);
+
114  GLM_FUNC_DECL tmat4x3<T, P> operator--(int);
+
115  };
+
116 
+
117  // -- Unary operators --
+
118 
+
119  template <typename T, precision P>
+
120  GLM_FUNC_DECL tmat4x3<T, P> operator+(tmat4x3<T, P> const & m);
+
121 
+
122  template <typename T, precision P>
+
123  GLM_FUNC_DECL tmat4x3<T, P> operator-(tmat4x3<T, P> const & m);
+
124 
+
125  // -- Binary operators --
+
126 
+
127  template <typename T, precision P>
+
128  GLM_FUNC_DECL tmat4x3<T, P> operator+(tmat4x3<T, P> const & m, T const & s);
+
129 
+
130  template <typename T, precision P>
+
131  GLM_FUNC_DECL tmat4x3<T, P> operator+(tmat4x3<T, P> const & m1, tmat4x3<T, P> const & m2);
+
132 
+
133  template <typename T, precision P>
+
134  GLM_FUNC_DECL tmat4x3<T, P> operator-(tmat4x3<T, P> const & m, T const & s);
+
135 
+
136  template <typename T, precision P>
+
137  GLM_FUNC_DECL tmat4x3<T, P> operator-(tmat4x3<T, P> const & m1, tmat4x3<T, P> const & m2);
+
138 
+
139  template <typename T, precision P>
+
140  GLM_FUNC_DECL tmat4x3<T, P> operator*(tmat4x3<T, P> const & m, T const & s);
+
141 
+
142  template <typename T, precision P>
+
143  GLM_FUNC_DECL tmat4x3<T, P> operator*(T const & s, tmat4x3<T, P> const & m);
+
144 
+
145  template <typename T, precision P>
+
146  GLM_FUNC_DECL typename tmat4x3<T, P>::col_type operator*(tmat4x3<T, P> const & m, typename tmat4x3<T, P>::row_type const & v);
+
147 
+
148  template <typename T, precision P>
+
149  GLM_FUNC_DECL typename tmat4x3<T, P>::row_type operator*(typename tmat4x3<T, P>::col_type const & v, tmat4x3<T, P> const & m);
+
150 
+
151  template <typename T, precision P>
+
152  GLM_FUNC_DECL tmat2x3<T, P> operator*(tmat4x3<T, P> const & m1, tmat2x4<T, P> const & m2);
+
153 
+
154  template <typename T, precision P>
+
155  GLM_FUNC_DECL tmat3x3<T, P> operator*(tmat4x3<T, P> const & m1, tmat3x4<T, P> const & m2);
+
156 
+
157  template <typename T, precision P>
+
158  GLM_FUNC_DECL tmat4x3<T, P> operator*(tmat4x3<T, P> const & m1, tmat4x4<T, P> const & m2);
+
159 
+
160  template <typename T, precision P>
+
161  GLM_FUNC_DECL tmat4x3<T, P> operator/(tmat4x3<T, P> const & m, T const & s);
+
162 
+
163  template <typename T, precision P>
+
164  GLM_FUNC_DECL tmat4x3<T, P> operator/(T const & s, tmat4x3<T, P> const & m);
+
165 
+
166  // -- Boolean operators --
+
167 
+
168  template <typename T, precision P>
+
169  GLM_FUNC_DECL bool operator==(tmat4x3<T, P> const & m1, tmat4x3<T, P> const & m2);
+
170 
+
171  template <typename T, precision P>
+
172  GLM_FUNC_DECL bool operator!=(tmat4x3<T, P> const & m1, tmat4x3<T, P> const & m2);
+
173 }//namespace glm
+
174 
+
175 #ifndef GLM_EXTERNAL_TEMPLATE
+
176 #include "type_mat4x3.inl"
+
177 #endif //GLM_EXTERNAL_TEMPLATE
+
GLM Core
+
Definition: _noise.hpp:11
+
GLM Core
+
GLM Core
+
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00123.html b/third_party/glm_test/doc/api/a00123.html new file mode 100644 index 0000000000000..c19a85cd49d42 --- /dev/null +++ b/third_party/glm_test/doc/api/a00123.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: type_mat4x4.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat4x4.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file type_mat4x4.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00123_source.html b/third_party/glm_test/doc/api/a00123_source.html new file mode 100644 index 0000000000000..7cd565d905ec5 --- /dev/null +++ b/third_party/glm_test/doc/api/a00123_source.html @@ -0,0 +1,257 @@ + + + + + + +0.9.8: type_mat4x4.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_mat4x4.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "../fwd.hpp"
+
7 #include "type_vec4.hpp"
+
8 #include "type_mat.hpp"
+
9 #include <limits>
+
10 #include <cstddef>
+
11 
+
12 namespace glm
+
13 {
+
14  template <typename T, precision P = defaultp>
+
15  struct tmat4x4
+
16  {
+
17  typedef tvec4<T, P> col_type;
+
18  typedef tvec4<T, P> row_type;
+
19  typedef tmat4x4<T, P> type;
+
20  typedef tmat4x4<T, P> transpose_type;
+
21  typedef T value_type;
+
22 
+
23  private:
+
24  col_type value[4];
+
25 
+
26  public:
+
27  // -- Constructors --
+
28 
+
29  GLM_FUNC_DECL tmat4x4() GLM_DEFAULT_CTOR;
+
30  GLM_FUNC_DECL tmat4x4(tmat4x4<T, P> const & m) GLM_DEFAULT;
+
31  template <precision Q>
+
32  GLM_FUNC_DECL tmat4x4(tmat4x4<T, Q> const & m);
+
33 
+
34  GLM_FUNC_DECL explicit tmat4x4(ctor);
+
35  GLM_FUNC_DECL explicit tmat4x4(T const & x);
+
36  GLM_FUNC_DECL tmat4x4(
+
37  T const & x0, T const & y0, T const & z0, T const & w0,
+
38  T const & x1, T const & y1, T const & z1, T const & w1,
+
39  T const & x2, T const & y2, T const & z2, T const & w2,
+
40  T const & x3, T const & y3, T const & z3, T const & w3);
+
41  GLM_FUNC_DECL tmat4x4(
+
42  col_type const & v0,
+
43  col_type const & v1,
+
44  col_type const & v2,
+
45  col_type const & v3);
+
46 
+
47  // -- Conversions --
+
48 
+
49  template <
+
50  typename X1, typename Y1, typename Z1, typename W1,
+
51  typename X2, typename Y2, typename Z2, typename W2,
+
52  typename X3, typename Y3, typename Z3, typename W3,
+
53  typename X4, typename Y4, typename Z4, typename W4>
+
54  GLM_FUNC_DECL tmat4x4(
+
55  X1 const & x1, Y1 const & y1, Z1 const & z1, W1 const & w1,
+
56  X2 const & x2, Y2 const & y2, Z2 const & z2, W2 const & w2,
+
57  X3 const & x3, Y3 const & y3, Z3 const & z3, W3 const & w3,
+
58  X4 const & x4, Y4 const & y4, Z4 const & z4, W4 const & w4);
+
59 
+
60  template <typename V1, typename V2, typename V3, typename V4>
+
61  GLM_FUNC_DECL tmat4x4(
+
62  tvec4<V1, P> const & v1,
+
63  tvec4<V2, P> const & v2,
+
64  tvec4<V3, P> const & v3,
+
65  tvec4<V4, P> const & v4);
+
66 
+
67  // -- Matrix conversions --
+
68 
+
69  template <typename U, precision Q>
+
70  GLM_FUNC_DECL GLM_EXPLICIT tmat4x4(tmat4x4<U, Q> const & m);
+
71 
+
72  GLM_FUNC_DECL GLM_EXPLICIT tmat4x4(tmat2x2<T, P> const & x);
+
73  GLM_FUNC_DECL GLM_EXPLICIT tmat4x4(tmat3x3<T, P> const & x);
+
74  GLM_FUNC_DECL GLM_EXPLICIT tmat4x4(tmat2x3<T, P> const & x);
+
75  GLM_FUNC_DECL GLM_EXPLICIT tmat4x4(tmat3x2<T, P> const & x);
+
76  GLM_FUNC_DECL GLM_EXPLICIT tmat4x4(tmat2x4<T, P> const & x);
+
77  GLM_FUNC_DECL GLM_EXPLICIT tmat4x4(tmat4x2<T, P> const & x);
+
78  GLM_FUNC_DECL GLM_EXPLICIT tmat4x4(tmat3x4<T, P> const & x);
+
79  GLM_FUNC_DECL GLM_EXPLICIT tmat4x4(tmat4x3<T, P> const & x);
+
80 
+
81  // -- Accesses --
+
82 
+
83  typedef length_t length_type;
+
84  GLM_FUNC_DECL GLM_CONSTEXPR length_type length() const;
+
85 
+
86  GLM_FUNC_DECL col_type & operator[](length_type i);
+
87  GLM_FUNC_DECL col_type const & operator[](length_type i) const;
+
88 
+
89  // -- Unary arithmetic operators --
+
90 
+
91  GLM_FUNC_DECL tmat4x4<T, P> & operator=(tmat4x4<T, P> const & m) GLM_DEFAULT;
+
92 
+
93  template <typename U>
+
94  GLM_FUNC_DECL tmat4x4<T, P> & operator=(tmat4x4<U, P> const & m);
+
95  template <typename U>
+
96  GLM_FUNC_DECL tmat4x4<T, P> & operator+=(U s);
+
97  template <typename U>
+
98  GLM_FUNC_DECL tmat4x4<T, P> & operator+=(tmat4x4<U, P> const & m);
+
99  template <typename U>
+
100  GLM_FUNC_DECL tmat4x4<T, P> & operator-=(U s);
+
101  template <typename U>
+
102  GLM_FUNC_DECL tmat4x4<T, P> & operator-=(tmat4x4<U, P> const & m);
+
103  template <typename U>
+
104  GLM_FUNC_DECL tmat4x4<T, P> & operator*=(U s);
+
105  template <typename U>
+
106  GLM_FUNC_DECL tmat4x4<T, P> & operator*=(tmat4x4<U, P> const & m);
+
107  template <typename U>
+
108  GLM_FUNC_DECL tmat4x4<T, P> & operator/=(U s);
+
109  template <typename U>
+
110  GLM_FUNC_DECL tmat4x4<T, P> & operator/=(tmat4x4<U, P> const & m);
+
111 
+
112  // -- Increment and decrement operators --
+
113 
+
114  GLM_FUNC_DECL tmat4x4<T, P> & operator++();
+
115  GLM_FUNC_DECL tmat4x4<T, P> & operator--();
+
116  GLM_FUNC_DECL tmat4x4<T, P> operator++(int);
+
117  GLM_FUNC_DECL tmat4x4<T, P> operator--(int);
+
118  };
+
119 
+
120  // -- Unary operators --
+
121 
+
122  template <typename T, precision P>
+
123  GLM_FUNC_DECL tmat4x4<T, P> operator+(tmat4x4<T, P> const & m);
+
124 
+
125  template <typename T, precision P>
+
126  GLM_FUNC_DECL tmat4x4<T, P> operator-(tmat4x4<T, P> const & m);
+
127 
+
128  // -- Binary operators --
+
129 
+
130  template <typename T, precision P>
+
131  GLM_FUNC_DECL tmat4x4<T, P> operator+(tmat4x4<T, P> const & m, T const & s);
+
132 
+
133  template <typename T, precision P>
+
134  GLM_FUNC_DECL tmat4x4<T, P> operator+(T const & s, tmat4x4<T, P> const & m);
+
135 
+
136  template <typename T, precision P>
+
137  GLM_FUNC_DECL tmat4x4<T, P> operator+(tmat4x4<T, P> const & m1, tmat4x4<T, P> const & m2);
+
138 
+
139  template <typename T, precision P>
+
140  GLM_FUNC_DECL tmat4x4<T, P> operator-(tmat4x4<T, P> const & m, T const & s);
+
141 
+
142  template <typename T, precision P>
+
143  GLM_FUNC_DECL tmat4x4<T, P> operator-(T const & s, tmat4x4<T, P> const & m);
+
144 
+
145  template <typename T, precision P>
+
146  GLM_FUNC_DECL tmat4x4<T, P> operator-(tmat4x4<T, P> const & m1, tmat4x4<T, P> const & m2);
+
147 
+
148  template <typename T, precision P>
+
149  GLM_FUNC_DECL tmat4x4<T, P> operator*(tmat4x4<T, P> const & m, T const & s);
+
150 
+
151  template <typename T, precision P>
+
152  GLM_FUNC_DECL tmat4x4<T, P> operator*(T const & s, tmat4x4<T, P> const & m);
+
153 
+
154  template <typename T, precision P>
+
155  GLM_FUNC_DECL typename tmat4x4<T, P>::col_type operator*(tmat4x4<T, P> const & m, typename tmat4x4<T, P>::row_type const & v);
+
156 
+
157  template <typename T, precision P>
+
158  GLM_FUNC_DECL typename tmat4x4<T, P>::row_type operator*(typename tmat4x4<T, P>::col_type const & v, tmat4x4<T, P> const & m);
+
159 
+
160  template <typename T, precision P>
+
161  GLM_FUNC_DECL tmat2x4<T, P> operator*(tmat4x4<T, P> const & m1, tmat2x4<T, P> const & m2);
+
162 
+
163  template <typename T, precision P>
+
164  GLM_FUNC_DECL tmat3x4<T, P> operator*(tmat4x4<T, P> const & m1, tmat3x4<T, P> const & m2);
+
165 
+
166  template <typename T, precision P>
+
167  GLM_FUNC_DECL tmat4x4<T, P> operator*(tmat4x4<T, P> const & m1, tmat4x4<T, P> const & m2);
+
168 
+
169  template <typename T, precision P>
+
170  GLM_FUNC_DECL tmat4x4<T, P> operator/(tmat4x4<T, P> const & m, T const & s);
+
171 
+
172  template <typename T, precision P>
+
173  GLM_FUNC_DECL tmat4x4<T, P> operator/(T const & s, tmat4x4<T, P> const & m);
+
174 
+
175  template <typename T, precision P>
+
176  GLM_FUNC_DECL typename tmat4x4<T, P>::col_type operator/(tmat4x4<T, P> const & m, typename tmat4x4<T, P>::row_type const & v);
+
177 
+
178  template <typename T, precision P>
+
179  GLM_FUNC_DECL typename tmat4x4<T, P>::row_type operator/(typename tmat4x4<T, P>::col_type const & v, tmat4x4<T, P> const & m);
+
180 
+
181  template <typename T, precision P>
+
182  GLM_FUNC_DECL tmat4x4<T, P> operator/(tmat4x4<T, P> const & m1, tmat4x4<T, P> const & m2);
+
183 
+
184  // -- Boolean operators --
+
185 
+
186  template <typename T, precision P>
+
187  GLM_FUNC_DECL bool operator==(tmat4x4<T, P> const & m1, tmat4x4<T, P> const & m2);
+
188 
+
189  template <typename T, precision P>
+
190  GLM_FUNC_DECL bool operator!=(tmat4x4<T, P> const & m1, tmat4x4<T, P> const & m2);
+
191 }//namespace glm
+
192 
+
193 #ifndef GLM_EXTERNAL_TEMPLATE
+
194 #include "type_mat4x4.inl"
+
195 #endif//GLM_EXTERNAL_TEMPLATE
+
Definition: _noise.hpp:11
+
GLM Core
+
GLM Core
+
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00124.html b/third_party/glm_test/doc/api/a00124.html new file mode 100644 index 0000000000000..304e3f313e5cd --- /dev/null +++ b/third_party/glm_test/doc/api/a00124.html @@ -0,0 +1,71 @@ + + + + + + +0.9.8: type_precision.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_precision.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM_GTC_type_precision

+
See also
GLM Core (dependence)
+
+gtc_half_float (dependence)
+
+GLM_GTC_quaternion (dependence)
+ +

Definition in file type_precision.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00124_source.html b/third_party/glm_test/doc/api/a00124_source.html new file mode 100644 index 0000000000000..b312800292671 --- /dev/null +++ b/third_party/glm_test/doc/api/a00124_source.html @@ -0,0 +1,692 @@ + + + + + + +0.9.8: type_precision.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_precision.hpp
+
+
+Go to the documentation of this file.
1 
+
18 #pragma once
+
19 
+
20 // Dependency:
+
21 #include "../gtc/quaternion.hpp"
+
22 #include "../gtc/vec1.hpp"
+
23 #include "../vec2.hpp"
+
24 #include "../vec3.hpp"
+
25 #include "../vec4.hpp"
+
26 #include "../mat2x2.hpp"
+
27 #include "../mat2x3.hpp"
+
28 #include "../mat2x4.hpp"
+
29 #include "../mat3x2.hpp"
+
30 #include "../mat3x3.hpp"
+
31 #include "../mat3x4.hpp"
+
32 #include "../mat4x2.hpp"
+
33 #include "../mat4x3.hpp"
+
34 #include "../mat4x4.hpp"
+
35 
+
36 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
37 # pragma message("GLM: GLM_GTC_type_precision extension included")
+
38 #endif
+
39 
+
40 namespace glm
+
41 {
+
43  // Signed int vector types
+
44 
+
47 
+
50  typedef detail::int8 lowp_int8;
+
51 
+
54  typedef detail::int16 lowp_int16;
+
55 
+
58  typedef detail::int32 lowp_int32;
+
59 
+
62  typedef detail::int64 lowp_int64;
+
63 
+
66  typedef detail::int8 lowp_int8_t;
+
67 
+
70  typedef detail::int16 lowp_int16_t;
+
71 
+
74  typedef detail::int32 lowp_int32_t;
+
75 
+
78  typedef detail::int64 lowp_int64_t;
+
79 
+
82  typedef detail::int8 lowp_i8;
+
83 
+
86  typedef detail::int16 lowp_i16;
+
87 
+
90  typedef detail::int32 lowp_i32;
+
91 
+
94  typedef detail::int64 lowp_i64;
+
95 
+
98  typedef detail::int8 mediump_int8;
+
99 
+
102  typedef detail::int16 mediump_int16;
+
103 
+
106  typedef detail::int32 mediump_int32;
+
107 
+
110  typedef detail::int64 mediump_int64;
+
111 
+
114  typedef detail::int8 mediump_int8_t;
+
115 
+
118  typedef detail::int16 mediump_int16_t;
+
119 
+
122  typedef detail::int32 mediump_int32_t;
+
123 
+
126  typedef detail::int64 mediump_int64_t;
+
127 
+
130  typedef detail::int8 mediump_i8;
+
131 
+
134  typedef detail::int16 mediump_i16;
+
135 
+
138  typedef detail::int32 mediump_i32;
+
139 
+
142  typedef detail::int64 mediump_i64;
+
143 
+
146  typedef detail::int8 highp_int8;
+
147 
+
150  typedef detail::int16 highp_int16;
+
151 
+
154  typedef detail::int32 highp_int32;
+
155 
+
158  typedef detail::int64 highp_int64;
+
159 
+
162  typedef detail::int8 highp_int8_t;
+
163 
+
166  typedef detail::int16 highp_int16_t;
+
167 
+
170  typedef detail::int32 highp_int32_t;
+
171 
+
174  typedef detail::int64 highp_int64_t;
+
175 
+
178  typedef detail::int8 highp_i8;
+
179 
+
182  typedef detail::int16 highp_i16;
+
183 
+
186  typedef detail::int32 highp_i32;
+
187 
+
190  typedef detail::int64 highp_i64;
+
191 
+
192 
+
195  typedef detail::int8 int8;
+
196 
+
199  typedef detail::int16 int16;
+
200 
+
203  typedef detail::int32 int32;
+
204 
+
207  typedef detail::int64 int64;
+
208 
+
209 #if GLM_HAS_EXTENDED_INTEGER_TYPE
+
210  using std::int8_t;
+
211  using std::int16_t;
+
212  using std::int32_t;
+
213  using std::int64_t;
+
214 #else
+
215  typedef detail::int8 int8_t;
+
218 
+
221  typedef detail::int16 int16_t;
+
222 
+
225  typedef detail::int32 int32_t;
+
226 
+
229  typedef detail::int64 int64_t;
+
230 #endif
+
231 
+
234  typedef detail::int8 i8;
+
235 
+
238  typedef detail::int16 i16;
+
239 
+
242  typedef detail::int32 i32;
+
243 
+
246  typedef detail::int64 i64;
+
247 
+
248 
+
251  typedef tvec1<i8, defaultp> i8vec1;
+
252 
+
255  typedef tvec2<i8, defaultp> i8vec2;
+
256 
+
259  typedef tvec3<i8, defaultp> i8vec3;
+
260 
+
263  typedef tvec4<i8, defaultp> i8vec4;
+
264 
+
265 
+
268  typedef tvec1<i16, defaultp> i16vec1;
+
269 
+
272  typedef tvec2<i16, defaultp> i16vec2;
+
273 
+
276  typedef tvec3<i16, defaultp> i16vec3;
+
277 
+
280  typedef tvec4<i16, defaultp> i16vec4;
+
281 
+
282 
+
285  typedef tvec1<i32, defaultp> i32vec1;
+
286 
+
289  typedef tvec2<i32, defaultp> i32vec2;
+
290 
+
293  typedef tvec3<i32, defaultp> i32vec3;
+
294 
+
297  typedef tvec4<i32, defaultp> i32vec4;
+
298 
+
299 
+
302  typedef tvec1<i64, defaultp> i64vec1;
+
303 
+
306  typedef tvec2<i64, defaultp> i64vec2;
+
307 
+
310  typedef tvec3<i64, defaultp> i64vec3;
+
311 
+
314  typedef tvec4<i64, defaultp> i64vec4;
+
315 
+
316 
+
318  // Unsigned int vector types
+
319 
+
322  typedef detail::uint8 lowp_uint8;
+
323 
+
326  typedef detail::uint16 lowp_uint16;
+
327 
+
330  typedef detail::uint32 lowp_uint32;
+
331 
+
334  typedef detail::uint64 lowp_uint64;
+
335 
+
338  typedef detail::uint8 lowp_uint8_t;
+
339 
+
342  typedef detail::uint16 lowp_uint16_t;
+
343 
+
346  typedef detail::uint32 lowp_uint32_t;
+
347 
+
350  typedef detail::uint64 lowp_uint64_t;
+
351 
+
354  typedef detail::uint8 lowp_u8;
+
355 
+
358  typedef detail::uint16 lowp_u16;
+
359 
+
362  typedef detail::uint32 lowp_u32;
+
363 
+
366  typedef detail::uint64 lowp_u64;
+
367 
+
370  typedef detail::uint8 mediump_uint8;
+
371 
+
374  typedef detail::uint16 mediump_uint16;
+
375 
+
378  typedef detail::uint32 mediump_uint32;
+
379 
+
382  typedef detail::uint64 mediump_uint64;
+
383 
+
386  typedef detail::uint8 mediump_uint8_t;
+
387 
+
390  typedef detail::uint16 mediump_uint16_t;
+
391 
+
394  typedef detail::uint32 mediump_uint32_t;
+
395 
+
398  typedef detail::uint64 mediump_uint64_t;
+
399 
+
402  typedef detail::uint8 mediump_u8;
+
403 
+
406  typedef detail::uint16 mediump_u16;
+
407 
+
410  typedef detail::uint32 mediump_u32;
+
411 
+
414  typedef detail::uint64 mediump_u64;
+
415 
+
418  typedef detail::uint8 highp_uint8;
+
419 
+
422  typedef detail::uint16 highp_uint16;
+
423 
+
426  typedef detail::uint32 highp_uint32;
+
427 
+
430  typedef detail::uint64 highp_uint64;
+
431 
+
434  typedef detail::uint8 highp_uint8_t;
+
435 
+
438  typedef detail::uint16 highp_uint16_t;
+
439 
+
442  typedef detail::uint32 highp_uint32_t;
+
443 
+
446  typedef detail::uint64 highp_uint64_t;
+
447 
+
450  typedef detail::uint8 highp_u8;
+
451 
+
454  typedef detail::uint16 highp_u16;
+
455 
+
458  typedef detail::uint32 highp_u32;
+
459 
+
462  typedef detail::uint64 highp_u64;
+
463 
+
466  typedef detail::uint8 uint8;
+
467 
+
470  typedef detail::uint16 uint16;
+
471 
+
474  typedef detail::uint32 uint32;
+
475 
+
478  typedef detail::uint64 uint64;
+
479 
+
480 #if GLM_HAS_EXTENDED_INTEGER_TYPE
+
481  using std::uint8_t;
+
482  using std::uint16_t;
+
483  using std::uint32_t;
+
484  using std::uint64_t;
+
485 #else
+
486  typedef detail::uint8 uint8_t;
+
489 
+
492  typedef detail::uint16 uint16_t;
+
493 
+
496  typedef detail::uint32 uint32_t;
+
497 
+
500  typedef detail::uint64 uint64_t;
+
501 #endif
+
502 
+
505  typedef detail::uint8 u8;
+
506 
+
509  typedef detail::uint16 u16;
+
510 
+
513  typedef detail::uint32 u32;
+
514 
+
517  typedef detail::uint64 u64;
+
518 
+
519 
+
520 
+
523  typedef tvec1<u8, defaultp> u8vec1;
+
524 
+
527  typedef tvec2<u8, defaultp> u8vec2;
+
528 
+
531  typedef tvec3<u8, defaultp> u8vec3;
+
532 
+
535  typedef tvec4<u8, defaultp> u8vec4;
+
536 
+
537 
+
540  typedef tvec1<u16, defaultp> u16vec1;
+
541 
+
544  typedef tvec2<u16, defaultp> u16vec2;
+
545 
+
548  typedef tvec3<u16, defaultp> u16vec3;
+
549 
+
552  typedef tvec4<u16, defaultp> u16vec4;
+
553 
+
554 
+
557  typedef tvec1<u32, defaultp> u32vec1;
+
558 
+
561  typedef tvec2<u32, defaultp> u32vec2;
+
562 
+
565  typedef tvec3<u32, defaultp> u32vec3;
+
566 
+
569  typedef tvec4<u32, defaultp> u32vec4;
+
570 
+
571 
+
574  typedef tvec1<u64, defaultp> u64vec1;
+
575 
+
578  typedef tvec2<u64, defaultp> u64vec2;
+
579 
+
582  typedef tvec3<u64, defaultp> u64vec3;
+
583 
+
586  typedef tvec4<u64, defaultp> u64vec4;
+
587 
+
588 
+
590  // Float vector types
+
591 
+
594  typedef detail::float32 float32;
+
595 
+
598  typedef detail::float64 float64;
+
599 
+
600 
+
603  typedef detail::float32 float32_t;
+
604 
+
607  typedef detail::float64 float64_t;
+
608 
+
609 
+
612  typedef float32 f32;
+
613 
+
616  typedef float64 f64;
+
617 
+
618 
+
621  typedef tvec1<float, defaultp> fvec1;
+
622 
+
625  typedef tvec2<float, defaultp> fvec2;
+
626 
+
629  typedef tvec3<float, defaultp> fvec3;
+
630 
+
633  typedef tvec4<float, defaultp> fvec4;
+
634 
+
635 
+
638  typedef tvec1<f32, defaultp> f32vec1;
+
639 
+
642  typedef tvec2<f32, defaultp> f32vec2;
+
643 
+
646  typedef tvec3<f32, defaultp> f32vec3;
+
647 
+
650  typedef tvec4<f32, defaultp> f32vec4;
+
651 
+
652 
+
655  typedef tvec1<f64, defaultp> f64vec1;
+
656 
+
659  typedef tvec2<f64, defaultp> f64vec2;
+
660 
+
663  typedef tvec3<f64, defaultp> f64vec3;
+
664 
+
667  typedef tvec4<f64, defaultp> f64vec4;
+
668 
+
669 
+
671  // Float matrix types
+
672 
+
675  //typedef detail::tmat1x1<f32> fmat1;
+
676 
+
679  typedef tmat2x2<f32, defaultp> fmat2;
+
680 
+
683  typedef tmat3x3<f32, defaultp> fmat3;
+
684 
+
687  typedef tmat4x4<f32, defaultp> fmat4;
+
688 
+
689 
+
692  //typedef f32 fmat1x1;
+
693 
+
696  typedef tmat2x2<f32, defaultp> fmat2x2;
+
697 
+
700  typedef tmat2x3<f32, defaultp> fmat2x3;
+
701 
+
704  typedef tmat2x4<f32, defaultp> fmat2x4;
+
705 
+
708  typedef tmat3x2<f32, defaultp> fmat3x2;
+
709 
+
712  typedef tmat3x3<f32, defaultp> fmat3x3;
+
713 
+
716  typedef tmat3x4<f32, defaultp> fmat3x4;
+
717 
+
720  typedef tmat4x2<f32, defaultp> fmat4x2;
+
721 
+
724  typedef tmat4x3<f32, defaultp> fmat4x3;
+
725 
+
728  typedef tmat4x4<f32, defaultp> fmat4x4;
+
729 
+
730 
+
733  //typedef detail::tmat1x1<f32, defaultp> f32mat1;
+
734 
+
737  typedef tmat2x2<f32, defaultp> f32mat2;
+
738 
+
741  typedef tmat3x3<f32, defaultp> f32mat3;
+
742 
+
745  typedef tmat4x4<f32, defaultp> f32mat4;
+
746 
+
747 
+
750  //typedef f32 f32mat1x1;
+
751 
+
754  typedef tmat2x2<f32, defaultp> f32mat2x2;
+
755 
+
758  typedef tmat2x3<f32, defaultp> f32mat2x3;
+
759 
+
762  typedef tmat2x4<f32, defaultp> f32mat2x4;
+
763 
+
766  typedef tmat3x2<f32, defaultp> f32mat3x2;
+
767 
+
770  typedef tmat3x3<f32, defaultp> f32mat3x3;
+
771 
+
774  typedef tmat3x4<f32, defaultp> f32mat3x4;
+
775 
+
778  typedef tmat4x2<f32, defaultp> f32mat4x2;
+
779 
+
782  typedef tmat4x3<f32, defaultp> f32mat4x3;
+
783 
+
786  typedef tmat4x4<f32, defaultp> f32mat4x4;
+
787 
+
788 
+
791  //typedef detail::tmat1x1<f64, defaultp> f64mat1;
+
792 
+
795  typedef tmat2x2<f64, defaultp> f64mat2;
+
796 
+
799  typedef tmat3x3<f64, defaultp> f64mat3;
+
800 
+
803  typedef tmat4x4<f64, defaultp> f64mat4;
+
804 
+
805 
+
808  //typedef f64 f64mat1x1;
+
809 
+
812  typedef tmat2x2<f64, defaultp> f64mat2x2;
+
813 
+
816  typedef tmat2x3<f64, defaultp> f64mat2x3;
+
817 
+
820  typedef tmat2x4<f64, defaultp> f64mat2x4;
+
821 
+
824  typedef tmat3x2<f64, defaultp> f64mat3x2;
+
825 
+
828  typedef tmat3x3<f64, defaultp> f64mat3x3;
+
829 
+
832  typedef tmat3x4<f64, defaultp> f64mat3x4;
+
833 
+
836  typedef tmat4x2<f64, defaultp> f64mat4x2;
+
837 
+
840  typedef tmat4x3<f64, defaultp> f64mat4x3;
+
841 
+
844  typedef tmat4x4<f64, defaultp> f64mat4x4;
+
845 
+
846 
+
848  // Quaternion types
+
849 
+
852  typedef tquat<f32, defaultp> f32quat;
+
853 
+
856  typedef tquat<f64, defaultp> f64quat;
+
857 
+
859 }//namespace glm
+
860 
+
861 #include "type_precision.inl"
+
detail::int8 lowp_int8_t
Low precision 8 bit signed integer type.
Definition: fwd.hpp:116
+
f32mat4x4 f32mat4
Default single-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2457
+
highp_i16vec1 i16vec1
Default precision 16 bit signed integer scalar type.
Definition: fwd.hpp:444
+
highp_f32vec1 f32vec1
Default single-precision floating-point vector of 1 components.
Definition: fwd.hpp:2397
+
highp_f32mat2x4 f32mat2x4
Default single-precision floating-point 2x4 matrix.
Definition: fwd.hpp:2421
+
detail::uint8 lowp_uint8
Low precision 8 bit unsigned integer type.
Definition: fwd.hpp:703
+
highp_f64vec4 f64vec4
Default double-precision floating-point vector of 4 components.
Definition: fwd.hpp:2515
+
highp_u32vec1 u32vec1
Default precision 32 bit unsigned integer scalar type.
Definition: fwd.hpp:1132
+
detail::int8 mediump_int8
Medium precision 8 bit signed integer type.
Definition: fwd.hpp:148
+
detail::int8 mediump_i8
Medium precision 8 bit signed integer type.
Definition: fwd.hpp:180
+
detail::uint8 highp_u8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:837
+
detail::int8 mediump_int8_t
Medium precision 8 bit signed integer type.
Definition: fwd.hpp:164
+
detail::uint64 highp_uint64_t
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:833
+
detail::uint16 highp_uint16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:809
+
detail::uint32 highp_uint32_t
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:829
+
detail::int32 mediump_i32
Medium precision 32 bit signed integer type.
Definition: fwd.hpp:188
+
detail::int8 highp_i8
High precision 8 bit signed integer type.
Definition: fwd.hpp:228
+
highp_i64vec2 i64vec2
Default precision 64 bit signed integer vector of 2 components type.
Definition: fwd.hpp:686
+
highp_u32vec3 u32vec3
Default precision 32 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:1140
+
detail::uint16 lowp_uint16
Low precision 16 bit unsigned integer type.
Definition: fwd.hpp:707
+
highp_u8vec3 u8vec3
Default precision 8 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:981
+
highp_f32mat3x3 f32mat3x3
Default single-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2429
+
detail::int64 mediump_i64
Medium precision 64 bit signed integer type.
Definition: fwd.hpp:192
+
highp_u16vec4 u16vec4
Default precision 16 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:1065
+
detail::uint64 highp_u64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:849
+
highp_float64_t f64
Default 64 bit double-precision floating-point scalar.
Definition: fwd.hpp:1509
+
highp_f64vec1 f64vec1
Default double-precision floating-point vector of 1 components.
Definition: fwd.hpp:2503
+
highp_u64vec4 u64vec4
Default precision 64 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:1303
+
detail::int8 lowp_int8
Low precision 8 bit signed integer type.
Definition: fwd.hpp:100
+
detail::int16 lowp_int16
Low precision 16 bit signed integer type.
Definition: fwd.hpp:104
+
highp_i16vec4 i16vec4
Default precision 16 bit signed integer vector of 4 components type.
Definition: fwd.hpp:456
+
detail::int16 i16
16 bit signed integer type.
Definition: fwd.hpp:289
+
highp_f64mat3x2 f64mat3x2
Default double-precision floating-point 3x2 matrix.
Definition: fwd.hpp:2531
+
fmat3x3 fmat3
Default single-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2383
+
detail::int32 lowp_i32
Low precision 32 bit signed integer type.
Definition: fwd.hpp:140
+
detail::uint8 uint8_t
8 bit unsigned integer type.
Definition: fwd.hpp:877
+
detail::int32 lowp_int32_t
Low precision 32 bit signed integer type.
Definition: fwd.hpp:124
+
detail::uint8 highp_uint8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:805
+
detail::int32 highp_i32
High precision 32 bit signed integer type.
Definition: fwd.hpp:236
+
detail::uint8 mediump_uint8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:755
+
detail::uint8 mediump_u8
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:787
+
highp_f32mat2x3 fmat2x3
Default single-precision floating-point 2x3 matrix.
Definition: fwd.hpp:2347
+
highp_f32mat4x2 f32mat4x2
Default single-precision floating-point 4x2 matrix.
Definition: fwd.hpp:2437
+
detail::uint16 highp_u16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:841
+
detail::uint32 highp_u32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:845
+
detail::uint32 u32
32 bit unsigned integer type.
Definition: fwd.hpp:902
+
highp_f64mat4x4 f64mat4x4
Default double-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2551
+
detail::int8 highp_int8
High precision 8 bit signed integer type.
Definition: fwd.hpp:196
+
highp_f64mat2x3 f64mat2x3
Default double-precision floating-point 2x3 matrix.
Definition: fwd.hpp:2523
+
highp_u16vec3 u16vec3
Default precision 16 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:1061
+
highp_i16vec2 i16vec2
Default precision 16 bit signed integer vector of 2 components type.
Definition: fwd.hpp:448
+
f32mat2x2 f32mat2
Default single-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2449
+
detail::uint32 lowp_uint32
Low precision 32 bit unsigned integer type.
Definition: fwd.hpp:711
+
detail::int16 mediump_int16_t
Medium precision 16 bit signed integer type.
Definition: fwd.hpp:168
+
detail::int8 int8_t
8 bit signed integer type.
Definition: fwd.hpp:268
+
detail::uint64 mediump_uint64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:767
+
highp_f32mat4x3 fmat4x3
Default single-precision floating-point 4x3 matrix.
Definition: fwd.hpp:2371
+
detail::uint16 u16
16 bit unsigned integer type.
Definition: fwd.hpp:898
+
highp_f32vec4 fvec4
Default single-precision floating-point vector of 4 components.
Definition: fwd.hpp:2339
+
Definition: _noise.hpp:11
+
highp_u32vec2 u32vec2
Default precision 32 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:1136
+
highp_f32mat2x2 f32mat2x2
Default single-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2413
+
f64mat4x4 f64mat4
Default double-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2563
+
detail::int32 mediump_int32
Medium precision 32 bit signed integer type.
Definition: fwd.hpp:156
+
detail::int16 highp_i16
High precision 16 bit signed integer type.
Definition: fwd.hpp:232
+
highp_f32mat3x2 f32mat3x2
Default single-precision floating-point 3x2 matrix.
Definition: fwd.hpp:2425
+
detail::uint8 highp_uint8_t
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:821
+
highp_f64mat4x2 f64mat4x2
Default double-precision floating-point 4x2 matrix.
Definition: fwd.hpp:2543
+
highp_f64mat3x4 f64mat3x4
Default double-precision floating-point 3x4 matrix.
Definition: fwd.hpp:2539
+
highp_f32mat4x4 fmat4x4
Default single-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2375
+
highp_float32_t float32_t
Default 32 bit single-precision floating-point scalar.
Definition: fwd.hpp:1497
+
detail::uint64 highp_uint64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:817
+
highp_u64vec1 u64vec1
Default precision 64 bit unsigned integer scalar type.
Definition: fwd.hpp:1291
+
detail::int64 lowp_i64
Low precision 64 bit signed integer type.
Definition: fwd.hpp:144
+
highp_f64vec3 f64vec3
Default double-precision floating-point vector of 3 components.
Definition: fwd.hpp:2511
+
detail::int32 lowp_int32
Low precision 32 bit signed integer type.
Definition: fwd.hpp:108
+
detail::uint64 lowp_uint64_t
Low precision 64 bit unsigned integer type.
Definition: fwd.hpp:732
+
highp_i32vec1 i32vec1
Default precision 32 bit signed integer scalar type.
Definition: fwd.hpp:523
+
detail::uint32 lowp_u32
Low precision 32 bit unsigned integer type.
Definition: fwd.hpp:745
+
highp_u8vec2 u8vec2
Default precision 8 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:977
+
highp_i16vec3 i16vec3
Default precision 16 bit signed integer vector of 3 components type.
Definition: fwd.hpp:452
+
highp_f32vec2 f32vec2
Default single-precision floating-point vector of 2 components.
Definition: fwd.hpp:2401
+
detail::uint8 lowp_uint8_t
Low precision 8 bit unsigned integer type.
Definition: fwd.hpp:720
+
highp_i64vec4 i64vec4
Default precision 64 bit signed integer vector of 4 components type.
Definition: fwd.hpp:694
+
highp_f32vec2 fvec2
Default single-precision floating-point vector of 2 components.
Definition: fwd.hpp:2331
+
fmat4x4 fmat4
Default single-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2387
+
highp_f32vec4 f32vec4
Default single-precision floating-point vector of 4 components.
Definition: fwd.hpp:2409
+
detail::uint64 lowp_u64
Low precision 64 bit unsigned integer type.
Definition: fwd.hpp:749
+
detail::int8 i8
8 bit signed integer type.
Definition: fwd.hpp:285
+
highp_f32mat2x2 fmat2x2
Default single-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2343
+
highp_i64vec3 i64vec3
Default precision 64 bit signed integer vector of 3 components type.
Definition: fwd.hpp:690
+
detail::int16 lowp_i16
Low precision 16 bit signed integer type.
Definition: fwd.hpp:136
+
detail::uint64 lowp_uint64
Low precision 64 bit unsigned integer type.
Definition: fwd.hpp:715
+
detail::int64 highp_int64
High precision 64 bit signed integer type.
Definition: fwd.hpp:208
+
detail::uint8 u8
8 bit unsigned integer type.
Definition: fwd.hpp:894
+
detail::uint32 mediump_u32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:795
+
f64mat2x2 f64mat2
Default double-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2555
+
highp_f64mat2x2 f64mat2x2
Default double-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2519
+
detail::int64 lowp_int64_t
Low precision 64 bit signed integer type.
Definition: fwd.hpp:128
+
detail::uint16 lowp_u16
Low precision 16 bit unsigned integer type.
Definition: fwd.hpp:741
+
highp_u16vec2 u16vec2
Default precision 16 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:1057
+
detail::uint32 mediump_uint32_t
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:779
+
highp_u16vec1 u16vec1
Default precision 16 bit unsigned integer scalar type.
Definition: fwd.hpp:1053
+
highp_f64quat f64quat
Default double-precision floating-point quaternion.
Definition: fwd.hpp:2567
+
detail::uint16 lowp_uint16_t
Low precision 16 bit unsigned integer type.
Definition: fwd.hpp:724
+
detail::int64 highp_i64
High precision 64 bit signed integer type.
Definition: fwd.hpp:240
+
detail::int16 mediump_i16
Medium precision 16 bit signed integer type.
Definition: fwd.hpp:184
+
highp_u64vec2 u64vec2
Default precision 64 bit unsigned integer vector of 2 components type.
Definition: fwd.hpp:1295
+
detail::int32 highp_int32
High precision 32 bit signed integer type.
Definition: fwd.hpp:204
+
highp_f32mat2x3 f32mat2x3
Default single-precision floating-point 2x3 matrix.
Definition: fwd.hpp:2417
+
highp_u32vec4 u32vec4
Default precision 32 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:1144
+
detail::int32 mediump_int32_t
Medium precision 32 bit signed integer type.
Definition: fwd.hpp:172
+
detail::int32 int32_t
32 bit signed integer type.
Definition: fwd.hpp:276
+
fmat2x2 fmat2
Default single-precision floating-point 2x2 matrix.
Definition: fwd.hpp:2379
+
detail::uint16 mediump_u16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:791
+
detail::uint16 highp_uint16_t
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:825
+
detail::uint32 mediump_uint32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:763
+
detail::uint64 uint64_t
64 bit unsigned integer type.
Definition: fwd.hpp:889
+
highp_i8vec2 i8vec2
Default precision 8 bit signed integer vector of 2 components type.
Definition: fwd.hpp:368
+
highp_f32mat4x3 f32mat4x3
Default single-precision floating-point 4x3 matrix.
Definition: fwd.hpp:2441
+
highp_f64mat4x3 f64mat4x3
Default double-precision floating-point 4x3 matrix.
Definition: fwd.hpp:2547
+
highp_f32mat2x4 fmat2x4
Default single-precision floating-point 2x4 matrix.
Definition: fwd.hpp:2351
+
detail::uint8 mediump_uint8_t
Medium precision 8 bit unsigned integer type.
Definition: fwd.hpp:771
+
highp_f32mat3x4 fmat3x4
Default single-precision floating-point 3x4 matrix.
Definition: fwd.hpp:2363
+
highp_i32vec2 i32vec2
Default precision 32 bit signed integer vector of 2 components type.
Definition: fwd.hpp:527
+
highp_float64_t float64_t
Default 64 bit double-precision floating-point scalar.
Definition: fwd.hpp:1501
+
highp_i8vec3 i8vec3
Default precision 8 bit signed integer vector of 3 components type.
Definition: fwd.hpp:372
+
detail::int64 mediump_int64_t
Medium precision 64 bit signed integer type.
Definition: fwd.hpp:176
+
highp_f32mat4x4 f32mat4x4
Default single-precision floating-point 4x4 matrix.
Definition: fwd.hpp:2445
+
highp_i8vec1 i8vec1
Default precision 8 bit signed integer scalar type.
Definition: fwd.hpp:364
+
highp_i32vec4 i32vec4
Default precision 32 bit signed integer vector of 4 components type.
Definition: fwd.hpp:535
+
detail::int8 lowp_i8
Low precision 8 bit signed integer type.
Definition: fwd.hpp:132
+
highp_f32vec3 f32vec3
Default single-precision floating-point vector of 3 components.
Definition: fwd.hpp:2405
+
highp_f32vec1 fvec1
Default single-precision floating-point vector of 1 components.
Definition: fwd.hpp:2327
+
detail::int32 highp_int32_t
32 bit signed integer type.
Definition: fwd.hpp:220
+
detail::int64 mediump_int64
Medium precision 64 bit signed integer type.
Definition: fwd.hpp:160
+
detail::uint64 mediump_u64
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:799
+
highp_u64vec3 u64vec3
Default precision 64 bit unsigned integer vector of 3 components type.
Definition: fwd.hpp:1299
+
highp_f32mat3x3 fmat3x3
Default single-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2359
+
highp_i8vec4 i8vec4
Default precision 8 bit signed integer vector of 4 components type.
Definition: fwd.hpp:376
+
highp_f32vec3 fvec3
Default single-precision floating-point vector of 3 components.
Definition: fwd.hpp:2335
+
detail::uint8 lowp_u8
Low precision 8 bit unsigned integer type.
Definition: fwd.hpp:737
+
detail::uint32 highp_uint32
Medium precision 32 bit unsigned integer type.
Definition: fwd.hpp:813
+
highp_f32mat4x2 fmat4x2
Default single-precision floating-point 4x2 matrix.
Definition: fwd.hpp:2367
+
detail::uint16 mediump_uint16_t
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:775
+
detail::uint32 uint32_t
32 bit unsigned integer type.
Definition: fwd.hpp:885
+
detail::uint64 mediump_uint64_t
Medium precision 64 bit unsigned integer type.
Definition: fwd.hpp:783
+
highp_i32vec3 i32vec3
Default precision 32 bit signed integer vector of 3 components type.
Definition: fwd.hpp:531
+
highp_f32mat3x4 f32mat3x4
Default single-precision floating-point 3x4 matrix.
Definition: fwd.hpp:2433
+
highp_u8vec4 u8vec4
Default precision 8 bit unsigned integer vector of 4 components type.
Definition: fwd.hpp:985
+
detail::int64 highp_int64_t
High precision 64 bit signed integer type.
Definition: fwd.hpp:224
+
highp_i64vec1 i64vec1
Default precision 64 bit signed integer scalar type.
Definition: fwd.hpp:682
+
detail::uint16 mediump_uint16
Medium precision 16 bit unsigned integer type.
Definition: fwd.hpp:759
+
detail::uint64 u64
64 bit unsigned integer type.
Definition: fwd.hpp:906
+
detail::int64 lowp_int64
Low precision 64 bit signed integer type.
Definition: fwd.hpp:112
+
detail::int16 lowp_int16_t
Low precision 16 bit signed integer type.
Definition: fwd.hpp:120
+
detail::int16 mediump_int16
Medium precision 16 bit signed integer type.
Definition: fwd.hpp:152
+
detail::int16 int16_t
16 bit signed integer type.
Definition: fwd.hpp:272
+
detail::int64 int64_t
64 bit signed integer type.
Definition: fwd.hpp:280
+
detail::int32 i32
32 bit signed integer type.
Definition: fwd.hpp:293
+
detail::uint32 lowp_uint32_t
Low precision 32 bit unsigned integer type.
Definition: fwd.hpp:728
+
detail::int16 highp_int16
High precision 16 bit signed integer type.
Definition: fwd.hpp:200
+
detail::uint16 uint16_t
16 bit unsigned integer type.
Definition: fwd.hpp:881
+
highp_f32quat f32quat
Default single-precision floating-point quaternion.
Definition: fwd.hpp:2461
+
f64mat3x3 f64mat3
Default double-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2559
+
highp_f64vec2 f64vec2
Default double-precision floating-point vector of 2 components.
Definition: fwd.hpp:2507
+
detail::int64 i64
64 bit signed integer type.
Definition: fwd.hpp:297
+
highp_f64mat2x4 f64mat2x4
Default double-precision floating-point 2x4 matrix.
Definition: fwd.hpp:2527
+
highp_f64mat3x3 f64mat3x3
Default double-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2535
+
detail::int16 highp_int16_t
High precision 16 bit signed integer type.
Definition: fwd.hpp:216
+
highp_f32mat3x2 fmat3x2
Default single-precision floating-point 3x2 matrix.
Definition: fwd.hpp:2355
+
highp_u8vec1 u8vec1
Default precision 8 bit unsigned integer scalar type.
Definition: fwd.hpp:973
+
highp_float32_t f32
Default 32 bit single-precision floating-point scalar.
Definition: fwd.hpp:1505
+
detail::int8 highp_int8_t
High precision 8 bit signed integer type.
Definition: fwd.hpp:212
+
f32mat3x3 f32mat3
Default single-precision floating-point 3x3 matrix.
Definition: fwd.hpp:2453
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00125.html b/third_party/glm_test/doc/api/a00125.html new file mode 100644 index 0000000000000..a03dbdc912553 --- /dev/null +++ b/third_party/glm_test/doc/api/a00125.html @@ -0,0 +1,128 @@ + + + + + + +0.9.8: type_ptr.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
type_ptr.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL tmat2x2< T, defaultp > make_mat2 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat2x2< T, defaultp > make_mat2x2 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat2x3< T, defaultp > make_mat2x3 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat2x4< T, defaultp > make_mat2x4 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat3x3< T, defaultp > make_mat3 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat3x2< T, defaultp > make_mat3x2 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat3x3< T, defaultp > make_mat3x3 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat3x4< T, defaultp > make_mat3x4 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > make_mat4 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat4x2< T, defaultp > make_mat4x2 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat4x3< T, defaultp > make_mat4x3 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > make_mat4x4 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tquat< T, defaultp > make_quat (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tvec2< T, defaultp > make_vec2 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tvec3< T, defaultp > make_vec3 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tvec4< T, defaultp > make_vec4 (T const *const ptr)
 
template<typename genType >
GLM_FUNC_DECL genType::value_type const * value_ptr (genType const &vec)
 
+

Detailed Description

+

GLM_GTC_type_ptr

+
See also
GLM Core (dependence)
+
+gtc_half_float (dependence)
+
+GLM_GTC_quaternion (dependence)
+ +

Definition in file type_ptr.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00125_source.html b/third_party/glm_test/doc/api/a00125_source.html new file mode 100644 index 0000000000000..c0de66b3032b3 --- /dev/null +++ b/third_party/glm_test/doc/api/a00125_source.html @@ -0,0 +1,158 @@ + + + + + + +0.9.8: type_ptr.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_ptr.hpp
+
+
+Go to the documentation of this file.
1 
+
34 #pragma once
+
35 
+
36 // Dependency:
+
37 #include "../gtc/quaternion.hpp"
+
38 #include "../vec2.hpp"
+
39 #include "../vec3.hpp"
+
40 #include "../vec4.hpp"
+
41 #include "../mat2x2.hpp"
+
42 #include "../mat2x3.hpp"
+
43 #include "../mat2x4.hpp"
+
44 #include "../mat3x2.hpp"
+
45 #include "../mat3x3.hpp"
+
46 #include "../mat3x4.hpp"
+
47 #include "../mat4x2.hpp"
+
48 #include "../mat4x3.hpp"
+
49 #include "../mat4x4.hpp"
+
50 #include <cstring>
+
51 
+
52 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
53 # pragma message("GLM: GLM_GTC_type_ptr extension included")
+
54 #endif
+
55 
+
56 namespace glm
+
57 {
+
60 
+
63  template<typename genType>
+
64  GLM_FUNC_DECL typename genType::value_type const * value_ptr(genType const & vec);
+
65 
+
68  template<typename T>
+
69  GLM_FUNC_DECL tvec2<T, defaultp> make_vec2(T const * const ptr);
+
70 
+
73  template<typename T>
+
74  GLM_FUNC_DECL tvec3<T, defaultp> make_vec3(T const * const ptr);
+
75 
+
78  template<typename T>
+
79  GLM_FUNC_DECL tvec4<T, defaultp> make_vec4(T const * const ptr);
+
80 
+
83  template<typename T>
+
84  GLM_FUNC_DECL tmat2x2<T, defaultp> make_mat2x2(T const * const ptr);
+
85 
+
88  template<typename T>
+
89  GLM_FUNC_DECL tmat2x3<T, defaultp> make_mat2x3(T const * const ptr);
+
90 
+
93  template<typename T>
+
94  GLM_FUNC_DECL tmat2x4<T, defaultp> make_mat2x4(T const * const ptr);
+
95 
+
98  template<typename T>
+
99  GLM_FUNC_DECL tmat3x2<T, defaultp> make_mat3x2(T const * const ptr);
+
100 
+
103  template<typename T>
+
104  GLM_FUNC_DECL tmat3x3<T, defaultp> make_mat3x3(T const * const ptr);
+
105 
+
108  template<typename T>
+
109  GLM_FUNC_DECL tmat3x4<T, defaultp> make_mat3x4(T const * const ptr);
+
110 
+
113  template<typename T>
+
114  GLM_FUNC_DECL tmat4x2<T, defaultp> make_mat4x2(T const * const ptr);
+
115 
+
118  template<typename T>
+
119  GLM_FUNC_DECL tmat4x3<T, defaultp> make_mat4x3(T const * const ptr);
+
120 
+
123  template<typename T>
+
124  GLM_FUNC_DECL tmat4x4<T, defaultp> make_mat4x4(T const * const ptr);
+
125 
+
128  template<typename T>
+
129  GLM_FUNC_DECL tmat2x2<T, defaultp> make_mat2(T const * const ptr);
+
130 
+
133  template<typename T>
+
134  GLM_FUNC_DECL tmat3x3<T, defaultp> make_mat3(T const * const ptr);
+
135 
+
138  template<typename T>
+
139  GLM_FUNC_DECL tmat4x4<T, defaultp> make_mat4(T const * const ptr);
+
140 
+
143  template<typename T>
+
144  GLM_FUNC_DECL tquat<T, defaultp> make_quat(T const * const ptr);
+
145 
+
147 }//namespace glm
+
148 
+
149 #include "type_ptr.inl"
+
GLM_FUNC_DECL tmat4x4< T, defaultp > make_mat4x4(T const *const ptr)
Build a matrix from a pointer.
+
GLM_FUNC_DECL tvec3< T, defaultp > make_vec3(T const *const ptr)
Build a vector from a pointer.
+
GLM_FUNC_DECL tmat3x4< T, defaultp > make_mat3x4(T const *const ptr)
Build a matrix from a pointer.
+
GLM_FUNC_DECL tmat4x2< T, defaultp > make_mat4x2(T const *const ptr)
Build a matrix from a pointer.
+
GLM_FUNC_DECL tquat< T, defaultp > make_quat(T const *const ptr)
Build a quaternion from a pointer.
+
GLM_FUNC_DECL tvec4< T, defaultp > make_vec4(T const *const ptr)
Build a vector from a pointer.
+
GLM_FUNC_DECL tmat2x4< T, defaultp > make_mat2x4(T const *const ptr)
Build a matrix from a pointer.
+
GLM_FUNC_DECL tmat3x3< T, defaultp > make_mat3(T const *const ptr)
Build a matrix from a pointer.
+
GLM_FUNC_DECL tmat2x2< T, defaultp > make_mat2(T const *const ptr)
Build a matrix from a pointer.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL tmat2x3< T, defaultp > make_mat2x3(T const *const ptr)
Build a matrix from a pointer.
+
GLM_FUNC_DECL tmat2x2< T, defaultp > make_mat2x2(T const *const ptr)
Build a matrix from a pointer.
+
GLM_FUNC_DECL tmat3x3< T, defaultp > make_mat3x3(T const *const ptr)
Build a matrix from a pointer.
+
GLM_FUNC_DECL tvec2< T, defaultp > make_vec2(T const *const ptr)
Build a vector from a pointer.
+
GLM_FUNC_DECL tmat3x2< T, defaultp > make_mat3x2(T const *const ptr)
Build a matrix from a pointer.
+
GLM_FUNC_DECL tmat4x3< T, defaultp > make_mat4x3(T const *const ptr)
Build a matrix from a pointer.
+
GLM_FUNC_DECL tmat4x4< T, defaultp > make_mat4(T const *const ptr)
Build a matrix from a pointer.
+
GLM_FUNC_DECL genType::value_type const * value_ptr(genType const &vec)
Return the constant address to the data of the input parameter.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00126.html b/third_party/glm_test/doc/api/a00126.html new file mode 100644 index 0000000000000..45617d6768e72 --- /dev/null +++ b/third_party/glm_test/doc/api/a00126.html @@ -0,0 +1,67 @@ + + + + + + +0.9.8: type_trait.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_trait.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM_GTX_type_trait

+
See also
GLM Core (dependence)
+ +

Definition in file type_trait.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00126_source.html b/third_party/glm_test/doc/api/a00126_source.html new file mode 100644 index 0000000000000..952d5174d4bea --- /dev/null +++ b/third_party/glm_test/doc/api/a00126_source.html @@ -0,0 +1,299 @@ + + + + + + +0.9.8: type_trait.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_trait.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../detail/type_vec2.hpp"
+
17 #include "../detail/type_vec3.hpp"
+
18 #include "../detail/type_vec4.hpp"
+
19 #include "../detail/type_mat2x2.hpp"
+
20 #include "../detail/type_mat2x3.hpp"
+
21 #include "../detail/type_mat2x4.hpp"
+
22 #include "../detail/type_mat3x2.hpp"
+
23 #include "../detail/type_mat3x3.hpp"
+
24 #include "../detail/type_mat3x4.hpp"
+
25 #include "../detail/type_mat4x2.hpp"
+
26 #include "../detail/type_mat4x3.hpp"
+
27 #include "../detail/type_mat4x4.hpp"
+
28 #include "../gtc/quaternion.hpp"
+
29 #include "../gtx/dual_quaternion.hpp"
+
30 
+
31 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
32 # pragma message("GLM: GLM_GTX_type_trait extension included")
+
33 #endif
+
34 
+
35 namespace glm
+
36 {
+
39 
+
40  template <template <typename, precision> class genType, typename T, precision P>
+
41  struct type
+
42  {
+
43  static bool const is_vec = false;
+
44  static bool const is_mat = false;
+
45  static bool const is_quat = false;
+
46  static length_t const components = 0;
+
47  static length_t const cols = 0;
+
48  static length_t const rows = 0;
+
49  };
+
50 
+
51  template <typename T, precision P>
+
52  struct type<tvec1, T, P>
+
53  {
+
54  static bool const is_vec = true;
+
55  static bool const is_mat = false;
+
56  static bool const is_quat = false;
+
57  enum
+
58  {
+
59  components = 1
+
60  };
+
61  };
+
62 
+
63  template <typename T, precision P>
+
64  struct type<tvec2, T, P>
+
65  {
+
66  static bool const is_vec = true;
+
67  static bool const is_mat = false;
+
68  static bool const is_quat = false;
+
69  enum
+
70  {
+
71  components = 2
+
72  };
+
73  };
+
74 
+
75  template <typename T, precision P>
+
76  struct type<tvec3, T, P>
+
77  {
+
78  static bool const is_vec = true;
+
79  static bool const is_mat = false;
+
80  static bool const is_quat = false;
+
81  enum
+
82  {
+
83  components = 3
+
84  };
+
85  };
+
86 
+
87  template <typename T, precision P>
+
88  struct type<tvec4, T, P>
+
89  {
+
90  static bool const is_vec = true;
+
91  static bool const is_mat = false;
+
92  static bool const is_quat = false;
+
93  enum
+
94  {
+
95  components = 4
+
96  };
+
97  };
+
98 
+
99  template <typename T, precision P>
+
100  struct type<tmat2x2, T, P>
+
101  {
+
102  static bool const is_vec = false;
+
103  static bool const is_mat = true;
+
104  static bool const is_quat = false;
+
105  enum
+
106  {
+
107  components = 2,
+
108  cols = 2,
+
109  rows = 2
+
110  };
+
111  };
+
112 
+
113  template <typename T, precision P>
+
114  struct type<tmat2x3, T, P>
+
115  {
+
116  static bool const is_vec = false;
+
117  static bool const is_mat = true;
+
118  static bool const is_quat = false;
+
119  enum
+
120  {
+
121  components = 2,
+
122  cols = 2,
+
123  rows = 3
+
124  };
+
125  };
+
126 
+
127  template <typename T, precision P>
+
128  struct type<tmat2x4, T, P>
+
129  {
+
130  static bool const is_vec = false;
+
131  static bool const is_mat = true;
+
132  static bool const is_quat = false;
+
133  enum
+
134  {
+
135  components = 2,
+
136  cols = 2,
+
137  rows = 4
+
138  };
+
139  };
+
140 
+
141  template <typename T, precision P>
+
142  struct type<tmat3x2, T, P>
+
143  {
+
144  static bool const is_vec = false;
+
145  static bool const is_mat = true;
+
146  static bool const is_quat = false;
+
147  enum
+
148  {
+
149  components = 3,
+
150  cols = 3,
+
151  rows = 2
+
152  };
+
153  };
+
154 
+
155  template <typename T, precision P>
+
156  struct type<tmat3x3, T, P>
+
157  {
+
158  static bool const is_vec = false;
+
159  static bool const is_mat = true;
+
160  static bool const is_quat = false;
+
161  enum
+
162  {
+
163  components = 3,
+
164  cols = 3,
+
165  rows = 3
+
166  };
+
167  };
+
168 
+
169  template <typename T, precision P>
+
170  struct type<tmat3x4, T, P>
+
171  {
+
172  static bool const is_vec = false;
+
173  static bool const is_mat = true;
+
174  static bool const is_quat = false;
+
175  enum
+
176  {
+
177  components = 3,
+
178  cols = 3,
+
179  rows = 4
+
180  };
+
181  };
+
182 
+
183  template <typename T, precision P>
+
184  struct type<tmat4x2, T, P>
+
185  {
+
186  static bool const is_vec = false;
+
187  static bool const is_mat = true;
+
188  static bool const is_quat = false;
+
189  enum
+
190  {
+
191  components = 4,
+
192  cols = 4,
+
193  rows = 2
+
194  };
+
195  };
+
196 
+
197  template <typename T, precision P>
+
198  struct type<tmat4x3, T, P>
+
199  {
+
200  static bool const is_vec = false;
+
201  static bool const is_mat = true;
+
202  static bool const is_quat = false;
+
203  enum
+
204  {
+
205  components = 4,
+
206  cols = 4,
+
207  rows = 3
+
208  };
+
209  };
+
210 
+
211  template <typename T, precision P>
+
212  struct type<tmat4x4, T, P>
+
213  {
+
214  static bool const is_vec = false;
+
215  static bool const is_mat = true;
+
216  static bool const is_quat = false;
+
217  enum
+
218  {
+
219  components = 4,
+
220  cols = 4,
+
221  rows = 4
+
222  };
+
223  };
+
224 
+
225  template <typename T, precision P>
+
226  struct type<tquat, T, P>
+
227  {
+
228  static bool const is_vec = false;
+
229  static bool const is_mat = false;
+
230  static bool const is_quat = true;
+
231  enum
+
232  {
+
233  components = 4
+
234  };
+
235  };
+
236 
+
237  template <typename T, precision P>
+
238  struct type<tdualquat, T, P>
+
239  {
+
240  static bool const is_vec = false;
+
241  static bool const is_mat = false;
+
242  static bool const is_quat = true;
+
243  enum
+
244  {
+
245  components = 8
+
246  };
+
247  };
+
248 
+
250 }//namespace glm
+
251 
+
252 #include "type_trait.inl"
+
Definition: _noise.hpp:11
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00127.html b/third_party/glm_test/doc/api/a00127.html new file mode 100644 index 0000000000000..997816c477b10 --- /dev/null +++ b/third_party/glm_test/doc/api/a00127.html @@ -0,0 +1,192 @@ + + + + + + +0.9.8: type_vec.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
type_vec.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef highp_bvec2 bvec2
 
typedef highp_bvec3 bvec3
 
typedef highp_bvec4 bvec4
 
typedef highp_dvec2 dvec2
 
typedef highp_dvec3 dvec3
 
typedef highp_dvec4 dvec4
 
typedef tvec2< bool, highp > highp_bvec2
 
typedef tvec3< bool, highp > highp_bvec3
 
typedef tvec4< bool, highp > highp_bvec4
 
typedef tvec2< double, highp > highp_dvec2
 
typedef tvec3< double, highp > highp_dvec3
 
typedef tvec4< double, highp > highp_dvec4
 
typedef tvec2< int, highp > highp_ivec2
 
typedef tvec3< int, highp > highp_ivec3
 
typedef tvec4< int, highp > highp_ivec4
 
typedef tvec2< uint, highp > highp_uvec2
 
typedef tvec3< uint, highp > highp_uvec3
 
typedef tvec4< uint, highp > highp_uvec4
 
typedef tvec2< float, highp > highp_vec2
 
typedef tvec3< float, highp > highp_vec3
 
typedef tvec4< float, highp > highp_vec4
 
typedef highp_ivec2 ivec2
 
typedef highp_ivec3 ivec3
 
typedef highp_ivec4 ivec4
 
typedef tvec2< bool, lowp > lowp_bvec2
 
typedef tvec3< bool, lowp > lowp_bvec3
 
typedef tvec4< bool, lowp > lowp_bvec4
 
typedef tvec2< double, lowp > lowp_dvec2
 
typedef tvec3< double, lowp > lowp_dvec3
 
typedef tvec4< double, lowp > lowp_dvec4
 
typedef tvec2< int, lowp > lowp_ivec2
 
typedef tvec3< int, lowp > lowp_ivec3
 
typedef tvec4< int, lowp > lowp_ivec4
 
typedef tvec2< uint, lowp > lowp_uvec2
 
typedef tvec3< uint, lowp > lowp_uvec3
 
typedef tvec4< uint, lowp > lowp_uvec4
 
typedef tvec2< float, lowp > lowp_vec2
 
typedef tvec3< float, lowp > lowp_vec3
 
typedef tvec4< float, lowp > lowp_vec4
 
typedef tvec2< bool, mediump > mediump_bvec2
 
typedef tvec3< bool, mediump > mediump_bvec3
 
typedef tvec4< bool, mediump > mediump_bvec4
 
typedef tvec2< double, mediump > mediump_dvec2
 
typedef tvec3< double, mediump > mediump_dvec3
 
typedef tvec4< double, mediump > mediump_dvec4
 
typedef tvec2< int, mediump > mediump_ivec2
 
typedef tvec3< int, mediump > mediump_ivec3
 
typedef tvec4< int, mediump > mediump_ivec4
 
typedef tvec2< uint, mediump > mediump_uvec2
 
typedef tvec3< uint, mediump > mediump_uvec3
 
typedef tvec4< uint, mediump > mediump_uvec4
 
typedef tvec2< float, mediump > mediump_vec2
 
typedef tvec3< float, mediump > mediump_vec3
 
typedef tvec4< float, mediump > mediump_vec4
 
typedef highp_uvec2 uvec2
 
typedef highp_uvec3 uvec3
 
typedef highp_uvec4 uvec4
 
typedef highp_vec2 vec2
 
typedef highp_vec3 vec3
 
typedef highp_vec4 vec4
 
+

Detailed Description

+

GLM Core

+ +

Definition in file type_vec.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00127_source.html b/third_party/glm_test/doc/api/a00127_source.html new file mode 100644 index 0000000000000..46fbfe7f0354a --- /dev/null +++ b/third_party/glm_test/doc/api/a00127_source.html @@ -0,0 +1,435 @@ + + + + + + +0.9.8: type_vec.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_vec.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "precision.hpp"
+
7 #include "type_int.hpp"
+
8 
+
9 namespace glm{
+
10 namespace detail
+
11 {
+
12  template<std::size_t N> struct aligned {};
+
13  template<> GLM_ALIGNED_STRUCT(1) aligned<1>{};
+
14  template<> GLM_ALIGNED_STRUCT(2) aligned<2>{};
+
15  template<> GLM_ALIGNED_STRUCT(4) aligned<4>{};
+
16  template<> GLM_ALIGNED_STRUCT(8) aligned<8>{};
+
17  template<> GLM_ALIGNED_STRUCT(16) aligned<16>{};
+
18  template<> GLM_ALIGNED_STRUCT(32) aligned<32>{};
+
19  template<> GLM_ALIGNED_STRUCT(64) aligned<64>{};
+
20 
+
21  template <typename T, std::size_t size, bool aligned>
+
22  struct storage
+
23  {
+
24  typedef struct type {
+
25  uint8 data[size];
+
26  } type;
+
27  };
+
28 
+
29  template <typename T, std::size_t size>
+
30  struct storage<T, size, true>
+
31  {
+
32  struct type : aligned<size>
+
33  {
+
34  uint8 data[size];
+
35  };
+
36  };
+
37 
+
38 # if GLM_ARCH & GLM_ARCH_SSE2_BIT
+
39  template <>
+
40  struct storage<float, 16, true>
+
41  {
+
42  typedef glm_vec4 type;
+
43  };
+
44 
+
45  template <>
+
46  struct storage<int, 16, true>
+
47  {
+
48  typedef glm_ivec4 type;
+
49  };
+
50 
+
51  template <>
+
52  struct storage<unsigned int, 16, true>
+
53  {
+
54  typedef glm_uvec4 type;
+
55  };
+
56 /*
+
57 # else
+
58  typedef union __declspec(align(16)) glm_128
+
59  {
+
60  unsigned __int8 data[16];
+
61  } glm_128;
+
62 
+
63  template <>
+
64  struct storage<float, 16, true>
+
65  {
+
66  typedef glm_128 type;
+
67  };
+
68 
+
69  template <>
+
70  struct storage<int, 16, true>
+
71  {
+
72  typedef glm_128 type;
+
73  };
+
74 
+
75  template <>
+
76  struct storage<unsigned int, 16, true>
+
77  {
+
78  typedef glm_128 type;
+
79  };
+
80 */
+
81 # endif
+
82 
+
83 # if (GLM_ARCH & GLM_ARCH_AVX_BIT)
+
84  template <>
+
85  struct storage<double, 32, true>
+
86  {
+
87  typedef glm_dvec4 type;
+
88  };
+
89 # endif
+
90 
+
91 # if (GLM_ARCH & GLM_ARCH_AVX2_BIT)
+
92  template <>
+
93  struct storage<int64, 32, true>
+
94  {
+
95  typedef glm_i64vec4 type;
+
96  };
+
97 
+
98  template <>
+
99  struct storage<uint64, 32, true>
+
100  {
+
101  typedef glm_u64vec4 type;
+
102  };
+
103 # endif
+
104 }//namespace detail
+
105 
+
106  template <typename T, precision P> struct tvec1;
+
107  template <typename T, precision P> struct tvec2;
+
108  template <typename T, precision P> struct tvec3;
+
109  template <typename T, precision P> struct tvec4;
+
110 
+
111  typedef tvec1<float, highp> highp_vec1_t;
+
112  typedef tvec1<float, mediump> mediump_vec1_t;
+
113  typedef tvec1<float, lowp> lowp_vec1_t;
+
114  typedef tvec1<double, highp> highp_dvec1_t;
+
115  typedef tvec1<double, mediump> mediump_dvec1_t;
+
116  typedef tvec1<double, lowp> lowp_dvec1_t;
+
117  typedef tvec1<int, highp> highp_ivec1_t;
+
118  typedef tvec1<int, mediump> mediump_ivec1_t;
+
119  typedef tvec1<int, lowp> lowp_ivec1_t;
+
120  typedef tvec1<uint, highp> highp_uvec1_t;
+
121  typedef tvec1<uint, mediump> mediump_uvec1_t;
+
122  typedef tvec1<uint, lowp> lowp_uvec1_t;
+
123  typedef tvec1<bool, highp> highp_bvec1_t;
+
124  typedef tvec1<bool, mediump> mediump_bvec1_t;
+
125  typedef tvec1<bool, lowp> lowp_bvec1_t;
+
126 
+
129 
+
135  typedef tvec2<float, highp> highp_vec2;
+
136 
+
142  typedef tvec2<float, mediump> mediump_vec2;
+
143 
+
149  typedef tvec2<float, lowp> lowp_vec2;
+
150 
+
156  typedef tvec2<double, highp> highp_dvec2;
+
157 
+
163  typedef tvec2<double, mediump> mediump_dvec2;
+
164 
+
170  typedef tvec2<double, lowp> lowp_dvec2;
+
171 
+
177  typedef tvec2<int, highp> highp_ivec2;
+
178 
+
184  typedef tvec2<int, mediump> mediump_ivec2;
+
185 
+
191  typedef tvec2<int, lowp> lowp_ivec2;
+
192 
+
198  typedef tvec2<uint, highp> highp_uvec2;
+
199 
+
205  typedef tvec2<uint, mediump> mediump_uvec2;
+
206 
+
212  typedef tvec2<uint, lowp> lowp_uvec2;
+
213 
+
219  typedef tvec2<bool, highp> highp_bvec2;
+
220 
+
226  typedef tvec2<bool, mediump> mediump_bvec2;
+
227 
+
233  typedef tvec2<bool, lowp> lowp_bvec2;
+
234 
+
236 
+
239 
+
245  typedef tvec3<float, highp> highp_vec3;
+
246 
+
252  typedef tvec3<float, mediump> mediump_vec3;
+
253 
+
259  typedef tvec3<float, lowp> lowp_vec3;
+
260 
+
266  typedef tvec3<double, highp> highp_dvec3;
+
267 
+
273  typedef tvec3<double, mediump> mediump_dvec3;
+
274 
+
280  typedef tvec3<double, lowp> lowp_dvec3;
+
281 
+
287  typedef tvec3<int, highp> highp_ivec3;
+
288 
+
294  typedef tvec3<int, mediump> mediump_ivec3;
+
295 
+
301  typedef tvec3<int, lowp> lowp_ivec3;
+
302 
+
308  typedef tvec3<uint, highp> highp_uvec3;
+
309 
+
315  typedef tvec3<uint, mediump> mediump_uvec3;
+
316 
+
322  typedef tvec3<uint, lowp> lowp_uvec3;
+
323 
+
328  typedef tvec3<bool, highp> highp_bvec3;
+
329 
+
334  typedef tvec3<bool, mediump> mediump_bvec3;
+
335 
+
340  typedef tvec3<bool, lowp> lowp_bvec3;
+
341 
+
343 
+
346 
+
351  typedef tvec4<float, highp> highp_vec4;
+
352 
+
357  typedef tvec4<float, mediump> mediump_vec4;
+
358 
+
363  typedef tvec4<float, lowp> lowp_vec4;
+
364 
+
369  typedef tvec4<double, highp> highp_dvec4;
+
370 
+
375  typedef tvec4<double, mediump> mediump_dvec4;
+
376 
+
381  typedef tvec4<double, lowp> lowp_dvec4;
+
382 
+
387  typedef tvec4<int, highp> highp_ivec4;
+
388 
+
393  typedef tvec4<int, mediump> mediump_ivec4;
+
394 
+
399  typedef tvec4<int, lowp> lowp_ivec4;
+
400 
+
405  typedef tvec4<uint, highp> highp_uvec4;
+
406 
+
411  typedef tvec4<uint, mediump> mediump_uvec4;
+
412 
+
417  typedef tvec4<uint, lowp> lowp_uvec4;
+
418 
+
423  typedef tvec4<bool, highp> highp_bvec4;
+
424 
+
429  typedef tvec4<bool, mediump> mediump_bvec4;
+
430 
+
435  typedef tvec4<bool, lowp> lowp_bvec4;
+
436 
+
438 
+
441 
+
442  // -- Default float definition --
+
443 
+
444 #if(defined(GLM_PRECISION_LOWP_FLOAT))
+
445  typedef lowp_vec2 vec2;
+
446  typedef lowp_vec3 vec3;
+
447  typedef lowp_vec4 vec4;
+
448 #elif(defined(GLM_PRECISION_MEDIUMP_FLOAT))
+
449  typedef mediump_vec2 vec2;
+
450  typedef mediump_vec3 vec3;
+
451  typedef mediump_vec4 vec4;
+
452 #else //defined(GLM_PRECISION_HIGHP_FLOAT)
+
453  typedef highp_vec2 vec2;
+
457 
+
461  typedef highp_vec3 vec3;
+
462 
+
466  typedef highp_vec4 vec4;
+
467 #endif//GLM_PRECISION
+
468 
+
469  // -- Default double definition --
+
470 
+
471 #if(defined(GLM_PRECISION_LOWP_DOUBLE))
+
472  typedef lowp_dvec2 dvec2;
+
473  typedef lowp_dvec3 dvec3;
+
474  typedef lowp_dvec4 dvec4;
+
475 #elif(defined(GLM_PRECISION_MEDIUMP_DOUBLE))
+
476  typedef mediump_dvec2 dvec2;
+
477  typedef mediump_dvec3 dvec3;
+
478  typedef mediump_dvec4 dvec4;
+
479 #else //defined(GLM_PRECISION_HIGHP_DOUBLE)
+
480  typedef highp_dvec2 dvec2;
+
484 
+
488  typedef highp_dvec3 dvec3;
+
489 
+
493  typedef highp_dvec4 dvec4;
+
494 #endif//GLM_PRECISION
+
495 
+
496  // -- Signed integer definition --
+
497 
+
498 #if(defined(GLM_PRECISION_LOWP_INT))
+
499  typedef lowp_ivec2 ivec2;
+
500  typedef lowp_ivec3 ivec3;
+
501  typedef lowp_ivec4 ivec4;
+
502 #elif(defined(GLM_PRECISION_MEDIUMP_INT))
+
503  typedef mediump_ivec2 ivec2;
+
504  typedef mediump_ivec3 ivec3;
+
505  typedef mediump_ivec4 ivec4;
+
506 #else //defined(GLM_PRECISION_HIGHP_INT)
+
507  typedef highp_ivec2 ivec2;
+
511 
+
515  typedef highp_ivec3 ivec3;
+
516 
+
520  typedef highp_ivec4 ivec4;
+
521 #endif//GLM_PRECISION
+
522 
+
523  // -- Unsigned integer definition --
+
524 
+
525 #if(defined(GLM_PRECISION_LOWP_UINT))
+
526  typedef lowp_uvec2 uvec2;
+
527  typedef lowp_uvec3 uvec3;
+
528  typedef lowp_uvec4 uvec4;
+
529 #elif(defined(GLM_PRECISION_MEDIUMP_UINT))
+
530  typedef mediump_uvec2 uvec2;
+
531  typedef mediump_uvec3 uvec3;
+
532  typedef mediump_uvec4 uvec4;
+
533 #else //defined(GLM_PRECISION_HIGHP_UINT)
+
534  typedef highp_uvec2 uvec2;
+
538 
+
542  typedef highp_uvec3 uvec3;
+
543 
+
547  typedef highp_uvec4 uvec4;
+
548 #endif//GLM_PRECISION
+
549 
+
550  // -- Boolean definition --
+
551 
+
552 #if(defined(GLM_PRECISION_LOWP_BOOL))
+
553  typedef lowp_bvec2 bvec2;
+
554  typedef lowp_bvec3 bvec3;
+
555  typedef lowp_bvec4 bvec4;
+
556 #elif(defined(GLM_PRECISION_MEDIUMP_BOOL))
+
557  typedef mediump_bvec2 bvec2;
+
558  typedef mediump_bvec3 bvec3;
+
559  typedef mediump_bvec4 bvec4;
+
560 #else //defined(GLM_PRECISION_HIGHP_BOOL)
+
561  typedef highp_bvec2 bvec2;
+
565 
+
569  typedef highp_bvec3 bvec3;
+
570 
+
574  typedef highp_bvec4 bvec4;
+
575 #endif//GLM_PRECISION
+
576 
+
578 }//namespace glm
+
highp_ivec3 ivec3
3 components vector of signed integer numbers.
Definition: type_vec.hpp:515
+
tvec4< int, lowp > lowp_ivec4
4 components vector of low precision signed integer numbers.
Definition: type_vec.hpp:399
+
highp_bvec3 bvec3
3 components vector of boolean.
Definition: type_vec.hpp:569
+
tvec4< int, highp > highp_ivec4
4 components vector of high precision signed integer numbers.
Definition: type_vec.hpp:387
+
tvec4< float, lowp > lowp_vec4
4 components vector of low single-precision floating-point numbers.
Definition: type_vec.hpp:363
+
tvec2< float, lowp > lowp_vec2
2 components vector of low single-precision floating-point numbers.
Definition: type_vec.hpp:149
+
tvec3< float, highp > highp_vec3
3 components vector of high single-precision floating-point numbers.
Definition: type_vec.hpp:245
+
tvec3< double, lowp > lowp_dvec3
3 components vector of low double-precision floating-point numbers.
Definition: type_vec.hpp:280
+
highp_bvec4 bvec4
4 components vector of boolean.
Definition: type_vec.hpp:574
+
tvec2< int, lowp > lowp_ivec2
2 components vector of low precision signed integer numbers.
Definition: type_vec.hpp:191
+
tvec4< float, mediump > mediump_vec4
4 components vector of medium single-precision floating-point numbers.
Definition: type_vec.hpp:357
+
tvec2< uint, highp > highp_uvec2
2 components vector of high precision unsigned integer numbers.
Definition: type_vec.hpp:198
+
highp_vec4 vec4
4 components vector of floating-point numbers.
Definition: type_vec.hpp:466
+
tvec3< double, highp > highp_dvec3
3 components vector of high double-precision floating-point numbers.
Definition: type_vec.hpp:266
+
highp_ivec2 ivec2
2 components vector of signed integer numbers.
Definition: type_vec.hpp:510
+
tvec3< float, lowp > lowp_vec3
3 components vector of low single-precision floating-point numbers.
Definition: type_vec.hpp:259
+
tvec4< int, mediump > mediump_ivec4
4 components vector of medium precision signed integer numbers.
Definition: type_vec.hpp:393
+
tvec2< int, mediump > mediump_ivec2
2 components vector of medium precision signed integer numbers.
Definition: type_vec.hpp:184
+
tvec3< int, lowp > lowp_ivec3
3 components vector of low precision signed integer numbers.
Definition: type_vec.hpp:301
+
Definition: _noise.hpp:11
+
tvec4< bool, highp > highp_bvec4
4 components vector of high precision bool numbers.
Definition: type_vec.hpp:423
+
highp_bvec2 bvec2
2 components vector of boolean.
Definition: type_vec.hpp:564
+
tvec3< bool, highp > highp_bvec3
3 components vector of high precision bool numbers.
Definition: type_vec.hpp:328
+
tvec4< float, highp > highp_vec4
4 components vector of high single-precision floating-point numbers.
Definition: type_vec.hpp:351
+
tvec2< bool, lowp > lowp_bvec2
2 components vector of low precision bool numbers.
Definition: type_vec.hpp:233
+
tvec4< double, highp > highp_dvec4
4 components vector of high double-precision floating-point numbers.
Definition: type_vec.hpp:369
+
tvec2< double, lowp > lowp_dvec2
2 components vector of low double-precision floating-point numbers.
Definition: type_vec.hpp:170
+
highp_uvec3 uvec3
3 components vector of unsigned integer numbers.
Definition: type_vec.hpp:542
+
tvec3< float, mediump > mediump_vec3
3 components vector of medium single-precision floating-point numbers.
Definition: type_vec.hpp:252
+
tvec4< bool, mediump > mediump_bvec4
4 components vector of medium precision bool numbers.
Definition: type_vec.hpp:429
+
tvec4< bool, lowp > lowp_bvec4
4 components vector of low precision bool numbers.
Definition: type_vec.hpp:435
+
tvec4< uint, mediump > mediump_uvec4
4 components vector of medium precision unsigned integer numbers.
Definition: type_vec.hpp:411
+
tvec4< uint, highp > highp_uvec4
4 components vector of high precision unsigned integer numbers.
Definition: type_vec.hpp:405
+
tvec3< uint, highp > highp_uvec3
3 components vector of high precision unsigned integer numbers.
Definition: type_vec.hpp:308
+
tvec4< double, lowp > lowp_dvec4
4 components vector of low double-precision floating-point numbers.
Definition: type_vec.hpp:381
+
tvec3< int, highp > highp_ivec3
3 components vector of high precision signed integer numbers.
Definition: type_vec.hpp:287
+
tvec2< float, mediump > mediump_vec2
2 components vector of medium single-precision floating-point numbers.
Definition: type_vec.hpp:142
+
highp_uvec4 uvec4
4 components vector of unsigned integer numbers.
Definition: type_vec.hpp:547
+
tvec2< double, mediump > mediump_dvec2
2 components vector of medium double-precision floating-point numbers.
Definition: type_vec.hpp:163
+
tvec2< float, highp > highp_vec2
2 components vector of high single-precision floating-point numbers.
Definition: type_vec.hpp:135
+
tvec2< bool, mediump > mediump_bvec2
2 components vector of medium precision bool numbers.
Definition: type_vec.hpp:226
+
tvec3< bool, mediump > mediump_bvec3
3 components vector of medium precision bool numbers.
Definition: type_vec.hpp:334
+
GLM Core
+
tvec2< bool, highp > highp_bvec2
2 components vector of high precision bool numbers.
Definition: type_vec.hpp:219
+
highp_dvec3 dvec3
3 components vector of double-precision floating-point numbers.
Definition: type_vec.hpp:488
+
tvec2< uint, mediump > mediump_uvec2
2 components vector of medium precision unsigned integer numbers.
Definition: type_vec.hpp:205
+
highp_uvec2 uvec2
2 components vector of unsigned integer numbers.
Definition: type_vec.hpp:537
+
highp_dvec4 dvec4
4 components vector of double-precision floating-point numbers.
Definition: type_vec.hpp:493
+
tvec4< double, mediump > mediump_dvec4
4 components vector of medium double-precision floating-point numbers.
Definition: type_vec.hpp:375
+
tvec3< uint, lowp > lowp_uvec3
3 components vector of low precision unsigned integer numbers.
Definition: type_vec.hpp:322
+
tvec3< double, mediump > mediump_dvec3
3 components vector of medium double-precision floating-point numbers.
Definition: type_vec.hpp:273
+
tvec2< uint, lowp > lowp_uvec2
2 components vector of low precision unsigned integer numbers.
Definition: type_vec.hpp:212
+
tvec2< int, highp > highp_ivec2
2 components vector of high precision signed integer numbers.
Definition: type_vec.hpp:177
+
tvec3< bool, lowp > lowp_bvec3
3 components vector of low precision bool numbers.
Definition: type_vec.hpp:340
+
tvec3< int, mediump > mediump_ivec3
3 components vector of medium precision signed integer numbers.
Definition: type_vec.hpp:294
+
highp_vec3 vec3
3 components vector of floating-point numbers.
Definition: type_vec.hpp:461
+
highp_dvec2 dvec2
2 components vector of double-precision floating-point numbers.
Definition: type_vec.hpp:483
+
tvec2< double, highp > highp_dvec2
2 components vector of high double-precision floating-point numbers.
Definition: type_vec.hpp:156
+
highp_vec2 vec2
2 components vector of floating-point numbers.
Definition: type_vec.hpp:456
+
tvec3< uint, mediump > mediump_uvec3
3 components vector of medium precision unsigned integer numbers.
Definition: type_vec.hpp:315
+
tvec4< uint, lowp > lowp_uvec4
4 components vector of low precision unsigned integer numbers.
Definition: type_vec.hpp:417
+
GLM Core
+
highp_ivec4 ivec4
4 components vector of signed integer numbers.
Definition: type_vec.hpp:520
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00128.html b/third_party/glm_test/doc/api/a00128.html new file mode 100644 index 0000000000000..d59c9e03dacb3 --- /dev/null +++ b/third_party/glm_test/doc/api/a00128.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: type_vec1.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_vec1.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file type_vec1.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00128_source.html b/third_party/glm_test/doc/api/a00128_source.html new file mode 100644 index 0000000000000..c62a74d7c5704 --- /dev/null +++ b/third_party/glm_test/doc/api/a00128_source.html @@ -0,0 +1,357 @@ + + + + + + +0.9.8: type_vec1.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_vec1.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "../fwd.hpp"
+
7 #include "type_vec.hpp"
+
8 #if GLM_SWIZZLE == GLM_SWIZZLE_ENABLED
+
9 # if GLM_HAS_UNRESTRICTED_UNIONS
+
10 # include "_swizzle.hpp"
+
11 # else
+
12 # include "_swizzle_func.hpp"
+
13 # endif
+
14 #endif //GLM_SWIZZLE
+
15 #include <cstddef>
+
16 
+
17 namespace glm
+
18 {
+
19  template <typename T, precision P = defaultp>
+
20  struct tvec1
+
21  {
+
22  // -- Implementation detail --
+
23 
+
24  typedef T value_type;
+
25  typedef tvec1<T, P> type;
+
26  typedef tvec1<bool, P> bool_type;
+
27 
+
28  // -- Data --
+
29 
+
30 # if GLM_HAS_ALIGNED_TYPE
+
31 # if GLM_COMPILER & GLM_COMPILER_GCC
+
32 # pragma GCC diagnostic push
+
33 # pragma GCC diagnostic ignored "-pedantic"
+
34 # endif
+
35 # if GLM_COMPILER & GLM_COMPILER_CLANG
+
36 # pragma clang diagnostic push
+
37 # pragma clang diagnostic ignored "-Wgnu-anonymous-struct"
+
38 # pragma clang diagnostic ignored "-Wnested-anon-types"
+
39 # endif
+
40 
+
41  union
+
42  {
+
43  T x;
+
44  T r;
+
45  T s;
+
46 /*
+
47 # if GLM_SWIZZLE == GLM_SWIZZLE_ENABLED
+
48  _GLM_SWIZZLE1_2_MEMBERS(T, P, tvec2, x)
+
49  _GLM_SWIZZLE1_2_MEMBERS(T, P, tvec2, r)
+
50  _GLM_SWIZZLE1_2_MEMBERS(T, P, tvec2, s)
+
51  _GLM_SWIZZLE1_3_MEMBERS(T, P, tvec3, x)
+
52  _GLM_SWIZZLE1_3_MEMBERS(T, P, tvec3, r)
+
53  _GLM_SWIZZLE1_3_MEMBERS(T, P, tvec3, s)
+
54  _GLM_SWIZZLE1_4_MEMBERS(T, P, tvec4, x)
+
55  _GLM_SWIZZLE1_4_MEMBERS(T, P, tvec4, r)
+
56  _GLM_SWIZZLE1_4_MEMBERS(T, P, tvec4, s)
+
57 # endif//GLM_SWIZZLE*/
+
58  };
+
59 
+
60 # if GLM_COMPILER & GLM_COMPILER_CLANG
+
61 # pragma clang diagnostic pop
+
62 # endif
+
63 # if GLM_COMPILER & GLM_COMPILER_GCC
+
64 # pragma GCC diagnostic pop
+
65 # endif
+
66 # else
+
67  union {T x, r, s;};
+
68 /*
+
69 # if GLM_SWIZZLE == GLM_SWIZZLE_ENABLED
+
70  GLM_SWIZZLE_GEN_VEC_FROM_VEC1(T, P, tvec2, tvec2, tvec3, tvec4)
+
71 # endif//GLM_SWIZZLE*/
+
72 # endif
+
73 
+
74  // -- Component accesses --
+
75 
+
77  typedef length_t length_type;
+
78  GLM_FUNC_DECL GLM_CONSTEXPR length_type length() const;
+
79 
+
80  GLM_FUNC_DECL T & operator[](length_type i);
+
81  GLM_FUNC_DECL T const & operator[](length_type i) const;
+
82 
+
83  // -- Implicit basic constructors --
+
84 
+
85  GLM_FUNC_DECL GLM_CONSTEXPR tvec1() GLM_DEFAULT_CTOR;
+
86  GLM_FUNC_DECL GLM_CONSTEXPR tvec1(tvec1<T, P> const & v) GLM_DEFAULT;
+
87  template <precision Q>
+
88  GLM_FUNC_DECL GLM_CONSTEXPR tvec1(tvec1<T, Q> const & v);
+
89 
+
90  // -- Explicit basic constructors --
+
91 
+
92  GLM_FUNC_DECL GLM_CONSTEXPR_CTOR explicit tvec1(ctor);
+
93  GLM_FUNC_DECL GLM_CONSTEXPR explicit tvec1(T scalar);
+
94 
+
95  // -- Conversion vector constructors --
+
96 
+
98  template <typename U, precision Q>
+
99  GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT tvec1(tvec2<U, Q> const & v);
+
101  template <typename U, precision Q>
+
102  GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT tvec1(tvec3<U, Q> const & v);
+
104  template <typename U, precision Q>
+
105  GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT tvec1(tvec4<U, Q> const & v);
+
106 
+
108  template <typename U, precision Q>
+
109  GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT tvec1(tvec1<U, Q> const & v);
+
110 
+
111  // -- Swizzle constructors --
+
112 /*
+
113 # if(GLM_HAS_UNRESTRICTED_UNIONS && (GLM_SWIZZLE == GLM_SWIZZLE_ENABLED))
+
114  template <int E0>
+
115  GLM_FUNC_DECL tvec1(detail::_swizzle<1, T, P, tvec1, E0, -1,-2,-3> const & that)
+
116  {
+
117  *this = that();
+
118  }
+
119 # endif//(GLM_HAS_UNRESTRICTED_UNIONS && (GLM_SWIZZLE == GLM_SWIZZLE_ENABLED))
+
120 */
+
121  // -- Unary arithmetic operators --
+
122 
+
123  GLM_FUNC_DECL tvec1<T, P> & operator=(tvec1<T, P> const & v) GLM_DEFAULT;
+
124 
+
125  template <typename U>
+
126  GLM_FUNC_DECL tvec1<T, P> & operator=(tvec1<U, P> const & v);
+
127  template <typename U>
+
128  GLM_FUNC_DECL tvec1<T, P> & operator+=(U scalar);
+
129  template <typename U>
+
130  GLM_FUNC_DECL tvec1<T, P> & operator+=(tvec1<U, P> const & v);
+
131  template <typename U>
+
132  GLM_FUNC_DECL tvec1<T, P> & operator-=(U scalar);
+
133  template <typename U>
+
134  GLM_FUNC_DECL tvec1<T, P> & operator-=(tvec1<U, P> const & v);
+
135  template <typename U>
+
136  GLM_FUNC_DECL tvec1<T, P> & operator*=(U scalar);
+
137  template <typename U>
+
138  GLM_FUNC_DECL tvec1<T, P> & operator*=(tvec1<U, P> const & v);
+
139  template <typename U>
+
140  GLM_FUNC_DECL tvec1<T, P> & operator/=(U scalar);
+
141  template <typename U>
+
142  GLM_FUNC_DECL tvec1<T, P> & operator/=(tvec1<U, P> const & v);
+
143 
+
144  // -- Increment and decrement operators --
+
145 
+
146  GLM_FUNC_DECL tvec1<T, P> & operator++();
+
147  GLM_FUNC_DECL tvec1<T, P> & operator--();
+
148  GLM_FUNC_DECL tvec1<T, P> operator++(int);
+
149  GLM_FUNC_DECL tvec1<T, P> operator--(int);
+
150 
+
151  // -- Unary bit operators --
+
152 
+
153  template <typename U>
+
154  GLM_FUNC_DECL tvec1<T, P> & operator%=(U scalar);
+
155  template <typename U>
+
156  GLM_FUNC_DECL tvec1<T, P> & operator%=(tvec1<U, P> const & v);
+
157  template <typename U>
+
158  GLM_FUNC_DECL tvec1<T, P> & operator&=(U scalar);
+
159  template <typename U>
+
160  GLM_FUNC_DECL tvec1<T, P> & operator&=(tvec1<U, P> const & v);
+
161  template <typename U>
+
162  GLM_FUNC_DECL tvec1<T, P> & operator|=(U scalar);
+
163  template <typename U>
+
164  GLM_FUNC_DECL tvec1<T, P> & operator|=(tvec1<U, P> const & v);
+
165  template <typename U>
+
166  GLM_FUNC_DECL tvec1<T, P> & operator^=(U scalar);
+
167  template <typename U>
+
168  GLM_FUNC_DECL tvec1<T, P> & operator^=(tvec1<U, P> const & v);
+
169  template <typename U>
+
170  GLM_FUNC_DECL tvec1<T, P> & operator<<=(U scalar);
+
171  template <typename U>
+
172  GLM_FUNC_DECL tvec1<T, P> & operator<<=(tvec1<U, P> const & v);
+
173  template <typename U>
+
174  GLM_FUNC_DECL tvec1<T, P> & operator>>=(U scalar);
+
175  template <typename U>
+
176  GLM_FUNC_DECL tvec1<T, P> & operator>>=(tvec1<U, P> const & v);
+
177  };
+
178 
+
179  // -- Unary operators --
+
180 
+
181  template <typename T, precision P>
+
182  GLM_FUNC_DECL tvec1<T, P> operator+(tvec1<T, P> const & v);
+
183 
+
184  template <typename T, precision P>
+
185  GLM_FUNC_DECL tvec1<T, P> operator-(tvec1<T, P> const & v);
+
186 
+
187  // -- Binary operators --
+
188 
+
189  template <typename T, precision P>
+
190  GLM_FUNC_DECL tvec1<T, P> operator+(tvec1<T, P> const & v, T scalar);
+
191 
+
192  template <typename T, precision P>
+
193  GLM_FUNC_DECL tvec1<T, P> operator+(T scalar, tvec1<T, P> const & v);
+
194 
+
195  template <typename T, precision P>
+
196  GLM_FUNC_DECL tvec1<T, P> operator+(tvec1<T, P> const & v1, tvec1<T, P> const & v2);
+
197 
+
198  template <typename T, precision P>
+
199  GLM_FUNC_DECL tvec1<T, P> operator-(tvec1<T, P> const & v, T scalar);
+
200 
+
201  template <typename T, precision P>
+
202  GLM_FUNC_DECL tvec1<T, P> operator-(T scalar, tvec1<T, P> const & v);
+
203 
+
204  template <typename T, precision P>
+
205  GLM_FUNC_DECL tvec1<T, P> operator- (tvec1<T, P> const & v1, tvec1<T, P> const & v2);
+
206 
+
207  template <typename T, precision P>
+
208  GLM_FUNC_DECL tvec1<T, P> operator*(tvec1<T, P> const & v, T scalar);
+
209 
+
210  template <typename T, precision P>
+
211  GLM_FUNC_DECL tvec1<T, P> operator*(T scalar, tvec1<T, P> const & v);
+
212 
+
213  template <typename T, precision P>
+
214  GLM_FUNC_DECL tvec1<T, P> operator*(tvec1<T, P> const & v1, tvec1<T, P> const & v2);
+
215 
+
216  template <typename T, precision P>
+
217  GLM_FUNC_DECL tvec1<T, P> operator/(tvec1<T, P> const & v, T scalar);
+
218 
+
219  template <typename T, precision P>
+
220  GLM_FUNC_DECL tvec1<T, P> operator/(T scalar, tvec1<T, P> const & v);
+
221 
+
222  template <typename T, precision P>
+
223  GLM_FUNC_DECL tvec1<T, P> operator/(tvec1<T, P> const & v1, tvec1<T, P> const & v2);
+
224 
+
225  template <typename T, precision P>
+
226  GLM_FUNC_DECL tvec1<T, P> operator%(tvec1<T, P> const & v, T scalar);
+
227 
+
228  template <typename T, precision P>
+
229  GLM_FUNC_DECL tvec1<T, P> operator%(T scalar, tvec1<T, P> const & v);
+
230 
+
231  template <typename T, precision P>
+
232  GLM_FUNC_DECL tvec1<T, P> operator%(tvec1<T, P> const & v1, tvec1<T, P> const & v2);
+
233 
+
234  template <typename T, precision P>
+
235  GLM_FUNC_DECL tvec1<T, P> operator&(tvec1<T, P> const & v, T scalar);
+
236 
+
237  template <typename T, precision P>
+
238  GLM_FUNC_DECL tvec1<T, P> operator&(T scalar, tvec1<T, P> const & v);
+
239 
+
240  template <typename T, precision P>
+
241  GLM_FUNC_DECL tvec1<T, P> operator&(tvec1<T, P> const & v1, tvec1<T, P> const & v2);
+
242 
+
243  template <typename T, precision P>
+
244  GLM_FUNC_DECL tvec1<T, P> operator|(tvec1<T, P> const & v, T scalar);
+
245 
+
246  template <typename T, precision P>
+
247  GLM_FUNC_DECL tvec1<T, P> operator|(T scalar, tvec1<T, P> const & v);
+
248 
+
249  template <typename T, precision P>
+
250  GLM_FUNC_DECL tvec1<T, P> operator|(tvec1<T, P> const & v1, tvec1<T, P> const & v2);
+
251 
+
252  template <typename T, precision P>
+
253  GLM_FUNC_DECL tvec1<T, P> operator^(tvec1<T, P> const & v, T scalar);
+
254 
+
255  template <typename T, precision P>
+
256  GLM_FUNC_DECL tvec1<T, P> operator^(T scalar, tvec1<T, P> const & v);
+
257 
+
258  template <typename T, precision P>
+
259  GLM_FUNC_DECL tvec1<T, P> operator^(tvec1<T, P> const & v1, tvec1<T, P> const & v2);
+
260 
+
261  template <typename T, precision P>
+
262  GLM_FUNC_DECL tvec1<T, P> operator<<(tvec1<T, P> const & v, T scalar);
+
263 
+
264  template <typename T, precision P>
+
265  GLM_FUNC_DECL tvec1<T, P> operator<<(T scalar, tvec1<T, P> const & v);
+
266 
+
267  template <typename T, precision P>
+
268  GLM_FUNC_DECL tvec1<T, P> operator<<(tvec1<T, P> const & v1, tvec1<T, P> const & v2);
+
269 
+
270  template <typename T, precision P>
+
271  GLM_FUNC_DECL tvec1<T, P> operator>>(tvec1<T, P> const & v, T scalar);
+
272 
+
273  template <typename T, precision P>
+
274  GLM_FUNC_DECL tvec1<T, P> operator>>(T scalar, tvec1<T, P> const & v);
+
275 
+
276  template <typename T, precision P>
+
277  GLM_FUNC_DECL tvec1<T, P> operator>>(tvec1<T, P> const & v1, tvec1<T, P> const & v2);
+
278 
+
279  template <typename T, precision P>
+
280  GLM_FUNC_DECL tvec1<T, P> operator~(tvec1<T, P> const & v);
+
281 
+
282  // -- Boolean operators --
+
283 
+
284  template <typename T, precision P>
+
285  GLM_FUNC_DECL bool operator==(tvec1<T, P> const & v1, tvec1<T, P> const & v2);
+
286 
+
287  template <typename T, precision P>
+
288  GLM_FUNC_DECL bool operator!=(tvec1<T, P> const & v1, tvec1<T, P> const & v2);
+
289 
+
290  template <precision P>
+
291  GLM_FUNC_DECL tvec1<bool, P> operator&&(tvec1<bool, P> const & v1, tvec1<bool, P> const & v2);
+
292 
+
293  template <precision P>
+
294  GLM_FUNC_DECL tvec1<bool, P> operator||(tvec1<bool, P> const & v1, tvec1<bool, P> const & v2);
+
295 }//namespace glm
+
296 
+
297 #ifndef GLM_EXTERNAL_TEMPLATE
+
298 #include "type_vec1.inl"
+
299 #endif//GLM_EXTERNAL_TEMPLATE
+
GLM Core
+
Definition: _noise.hpp:11
+ +
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
GLM Core
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00129.html b/third_party/glm_test/doc/api/a00129.html new file mode 100644 index 0000000000000..c81a826cbdafb --- /dev/null +++ b/third_party/glm_test/doc/api/a00129.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: type_vec2.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_vec2.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file type_vec2.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00129_source.html b/third_party/glm_test/doc/api/a00129_source.html new file mode 100644 index 0000000000000..35bff731faba7 --- /dev/null +++ b/third_party/glm_test/doc/api/a00129_source.html @@ -0,0 +1,443 @@ + + + + + + +0.9.8: type_vec2.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_vec2.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "type_vec.hpp"
+
7 #if GLM_SWIZZLE == GLM_SWIZZLE_ENABLED
+
8 # if GLM_HAS_UNRESTRICTED_UNIONS
+
9 # include "_swizzle.hpp"
+
10 # else
+
11 # include "_swizzle_func.hpp"
+
12 # endif
+
13 #endif //GLM_SWIZZLE
+
14 #include <cstddef>
+
15 
+
16 namespace glm
+
17 {
+
18  template <typename T, precision P = defaultp>
+
19  struct tvec2
+
20  {
+
21  // -- Implementation detail --
+
22 
+
23  typedef T value_type;
+
24  typedef tvec2<T, P> type;
+
25  typedef tvec2<bool, P> bool_type;
+
26 
+
27  // -- Data --
+
28 
+
29 # if GLM_HAS_ALIGNED_TYPE
+
30 # if GLM_COMPILER & GLM_COMPILER_GCC
+
31 # pragma GCC diagnostic push
+
32 # pragma GCC diagnostic ignored "-pedantic"
+
33 # endif
+
34 # if GLM_COMPILER & GLM_COMPILER_CLANG
+
35 # pragma clang diagnostic push
+
36 # pragma clang diagnostic ignored "-Wgnu-anonymous-struct"
+
37 # pragma clang diagnostic ignored "-Wnested-anon-types"
+
38 # endif
+
39 
+
40  union
+
41  {
+
42  struct{ T x, y; };
+
43  struct{ T r, g; };
+
44  struct{ T s, t; };
+
45 
+
46 # if GLM_SWIZZLE == GLM_SWIZZLE_ENABLED
+
47  _GLM_SWIZZLE2_2_MEMBERS(T, P, glm::tvec2, x, y)
+
48  _GLM_SWIZZLE2_2_MEMBERS(T, P, glm::tvec2, r, g)
+
49  _GLM_SWIZZLE2_2_MEMBERS(T, P, glm::tvec2, s, t)
+
50  _GLM_SWIZZLE2_3_MEMBERS(T, P, glm::tvec3, x, y)
+
51  _GLM_SWIZZLE2_3_MEMBERS(T, P, glm::tvec3, r, g)
+
52  _GLM_SWIZZLE2_3_MEMBERS(T, P, glm::tvec3, s, t)
+
53  _GLM_SWIZZLE2_4_MEMBERS(T, P, glm::tvec4, x, y)
+
54  _GLM_SWIZZLE2_4_MEMBERS(T, P, glm::tvec4, r, g)
+
55  _GLM_SWIZZLE2_4_MEMBERS(T, P, glm::tvec4, s, t)
+
56 # endif//GLM_SWIZZLE
+
57 
+
58  };
+
59 
+
60 # if GLM_COMPILER & GLM_COMPILER_CLANG
+
61 # pragma clang diagnostic pop
+
62 # endif
+
63 # if GLM_COMPILER & GLM_COMPILER_GCC
+
64 # pragma GCC diagnostic pop
+
65 # endif
+
66 # else
+
67  union {T x, r, s;};
+
68  union {T y, g, t;};
+
69 
+
70 # if GLM_SWIZZLE == GLM_SWIZZLE_ENABLED
+
71  GLM_SWIZZLE_GEN_VEC_FROM_VEC2(T, P, tvec2, tvec2, tvec3, tvec4)
+
72 # endif//GLM_SWIZZLE
+
73 # endif
+
74 
+
75  // -- Component accesses --
+
76 
+
78  typedef length_t length_type;
+
79  GLM_FUNC_DECL GLM_CONSTEXPR length_type length() const;
+
80 
+
81  GLM_FUNC_DECL T & operator[](length_type i);
+
82  GLM_FUNC_DECL T const & operator[](length_type i) const;
+
83 
+
84  // -- Implicit basic constructors --
+
85 
+
86  GLM_FUNC_DECL GLM_CONSTEXPR tvec2() GLM_DEFAULT_CTOR;
+
87  GLM_FUNC_DECL GLM_CONSTEXPR tvec2(tvec2<T, P> const& v) GLM_DEFAULT;
+
88  template <precision Q>
+
89  GLM_FUNC_DECL GLM_CONSTEXPR tvec2(tvec2<T, Q> const& v);
+
90 
+
91  // -- Explicit basic constructors --
+
92 
+
93  GLM_FUNC_DECL GLM_CONSTEXPR_CTOR explicit tvec2(ctor);
+
94  GLM_FUNC_DECL GLM_CONSTEXPR explicit tvec2(T scalar);
+
95  GLM_FUNC_DECL GLM_CONSTEXPR tvec2(T s1, T s2);
+
96 
+
97  // -- Conversion constructors --
+
98 
+
100  template <typename A, typename B>
+
101  GLM_FUNC_DECL GLM_CONSTEXPR tvec2(A x, B y);
+
102  template <typename A, typename B>
+
103  GLM_FUNC_DECL GLM_CONSTEXPR tvec2(tvec1<A, P> const & v1, tvec1<B, P> const & v2);
+
104 
+
105  // -- Conversion vector constructors --
+
106 
+
108  template <typename U, precision Q>
+
109  GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT tvec2(tvec3<U, Q> const & v);
+
111  template <typename U, precision Q>
+
112  GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT tvec2(tvec4<U, Q> const & v);
+
113 
+
115  template <typename U, precision Q>
+
116  GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT tvec2(tvec2<U, Q> const & v);
+
117 
+
118  // -- Swizzle constructors --
+
119 # if GLM_HAS_UNRESTRICTED_UNIONS && (GLM_SWIZZLE == GLM_SWIZZLE_ENABLED)
+
120  template <int E0, int E1>
+
121  GLM_FUNC_DECL tvec2(detail::_swizzle<2, T, P, glm::tvec2, E0, E1,-1,-2> const& that)
+
122  {
+
123  *this = that();
+
124  }
+
125 # endif// GLM_HAS_UNRESTRICTED_UNIONS && (GLM_SWIZZLE == GLM_SWIZZLE_ENABLED)
+
126 
+
127  // -- Unary arithmetic operators --
+
128 
+
129  GLM_FUNC_DECL tvec2<T, P>& operator=(tvec2<T, P> const & v) GLM_DEFAULT;
+
130 
+
131  template <typename U>
+
132  GLM_FUNC_DECL tvec2<T, P>& operator=(tvec2<U, P> const & v);
+
133  template <typename U>
+
134  GLM_FUNC_DECL tvec2<T, P>& operator+=(U scalar);
+
135  template <typename U>
+
136  GLM_FUNC_DECL tvec2<T, P>& operator+=(tvec1<U, P> const & v);
+
137  template <typename U>
+
138  GLM_FUNC_DECL tvec2<T, P>& operator+=(tvec2<U, P> const & v);
+
139  template <typename U>
+
140  GLM_FUNC_DECL tvec2<T, P>& operator-=(U scalar);
+
141  template <typename U>
+
142  GLM_FUNC_DECL tvec2<T, P>& operator-=(tvec1<U, P> const & v);
+
143  template <typename U>
+
144  GLM_FUNC_DECL tvec2<T, P>& operator-=(tvec2<U, P> const & v);
+
145  template <typename U>
+
146  GLM_FUNC_DECL tvec2<T, P>& operator*=(U scalar);
+
147  template <typename U>
+
148  GLM_FUNC_DECL tvec2<T, P>& operator*=(tvec1<U, P> const & v);
+
149  template <typename U>
+
150  GLM_FUNC_DECL tvec2<T, P>& operator*=(tvec2<U, P> const & v);
+
151  template <typename U>
+
152  GLM_FUNC_DECL tvec2<T, P>& operator/=(U scalar);
+
153  template <typename U>
+
154  GLM_FUNC_DECL tvec2<T, P>& operator/=(tvec1<U, P> const & v);
+
155  template <typename U>
+
156  GLM_FUNC_DECL tvec2<T, P>& operator/=(tvec2<U, P> const & v);
+
157 
+
158  // -- Increment and decrement operators --
+
159 
+
160  GLM_FUNC_DECL tvec2<T, P> & operator++();
+
161  GLM_FUNC_DECL tvec2<T, P> & operator--();
+
162  GLM_FUNC_DECL tvec2<T, P> operator++(int);
+
163  GLM_FUNC_DECL tvec2<T, P> operator--(int);
+
164 
+
165  // -- Unary bit operators --
+
166 
+
167  template <typename U>
+
168  GLM_FUNC_DECL tvec2<T, P> & operator%=(U scalar);
+
169  template <typename U>
+
170  GLM_FUNC_DECL tvec2<T, P> & operator%=(tvec1<U, P> const & v);
+
171  template <typename U>
+
172  GLM_FUNC_DECL tvec2<T, P> & operator%=(tvec2<U, P> const & v);
+
173  template <typename U>
+
174  GLM_FUNC_DECL tvec2<T, P> & operator&=(U scalar);
+
175  template <typename U>
+
176  GLM_FUNC_DECL tvec2<T, P> & operator&=(tvec1<U, P> const & v);
+
177  template <typename U>
+
178  GLM_FUNC_DECL tvec2<T, P> & operator&=(tvec2<U, P> const & v);
+
179  template <typename U>
+
180  GLM_FUNC_DECL tvec2<T, P> & operator|=(U scalar);
+
181  template <typename U>
+
182  GLM_FUNC_DECL tvec2<T, P> & operator|=(tvec1<U, P> const & v);
+
183  template <typename U>
+
184  GLM_FUNC_DECL tvec2<T, P> & operator|=(tvec2<U, P> const & v);
+
185  template <typename U>
+
186  GLM_FUNC_DECL tvec2<T, P> & operator^=(U scalar);
+
187  template <typename U>
+
188  GLM_FUNC_DECL tvec2<T, P> & operator^=(tvec1<U, P> const & v);
+
189  template <typename U>
+
190  GLM_FUNC_DECL tvec2<T, P> & operator^=(tvec2<U, P> const & v);
+
191  template <typename U>
+
192  GLM_FUNC_DECL tvec2<T, P> & operator<<=(U scalar);
+
193  template <typename U>
+
194  GLM_FUNC_DECL tvec2<T, P> & operator<<=(tvec1<U, P> const & v);
+
195  template <typename U>
+
196  GLM_FUNC_DECL tvec2<T, P> & operator<<=(tvec2<U, P> const & v);
+
197  template <typename U>
+
198  GLM_FUNC_DECL tvec2<T, P> & operator>>=(U scalar);
+
199  template <typename U>
+
200  GLM_FUNC_DECL tvec2<T, P> & operator>>=(tvec1<U, P> const & v);
+
201  template <typename U>
+
202  GLM_FUNC_DECL tvec2<T, P> & operator>>=(tvec2<U, P> const & v);
+
203  };
+
204 
+
205  // -- Unary operators --
+
206 
+
207  template <typename T, precision P>
+
208  GLM_FUNC_DECL tvec2<T, P> operator+(tvec2<T, P> const & v);
+
209 
+
210  template <typename T, precision P>
+
211  GLM_FUNC_DECL tvec2<T, P> operator-(tvec2<T, P> const & v);
+
212 
+
213  // -- Binary operators --
+
214 
+
215  template <typename T, precision P>
+
216  GLM_FUNC_DECL tvec2<T, P> operator+(tvec2<T, P> const & v, T scalar);
+
217 
+
218  template <typename T, precision P>
+
219  GLM_FUNC_DECL tvec2<T, P> operator+(tvec2<T, P> const & v1, tvec1<T, P> const & v2);
+
220 
+
221  template <typename T, precision P>
+
222  GLM_FUNC_DECL tvec2<T, P> operator+(T scalar, tvec2<T, P> const & v);
+
223 
+
224  template <typename T, precision P>
+
225  GLM_FUNC_DECL tvec2<T, P> operator+(tvec1<T, P> const & v1, tvec2<T, P> const & v2);
+
226 
+
227  template <typename T, precision P>
+
228  GLM_FUNC_DECL tvec2<T, P> operator+(tvec2<T, P> const & v1, tvec2<T, P> const & v2);
+
229 
+
230  template <typename T, precision P>
+
231  GLM_FUNC_DECL tvec2<T, P> operator-(tvec2<T, P> const & v, T scalar);
+
232 
+
233  template <typename T, precision P>
+
234  GLM_FUNC_DECL tvec2<T, P> operator-(tvec2<T, P> const & v1, tvec1<T, P> const & v2);
+
235 
+
236  template <typename T, precision P>
+
237  GLM_FUNC_DECL tvec2<T, P> operator-(T scalar, tvec2<T, P> const & v);
+
238 
+
239  template <typename T, precision P>
+
240  GLM_FUNC_DECL tvec2<T, P> operator-(tvec1<T, P> const & v1, tvec2<T, P> const & v2);
+
241 
+
242  template <typename T, precision P>
+
243  GLM_FUNC_DECL tvec2<T, P> operator-(tvec2<T, P> const & v1, tvec2<T, P> const & v2);
+
244 
+
245  template <typename T, precision P>
+
246  GLM_FUNC_DECL tvec2<T, P> operator*(tvec2<T, P> const & v, T scalar);
+
247 
+
248  template <typename T, precision P>
+
249  GLM_FUNC_DECL tvec2<T, P> operator*(tvec2<T, P> const & v1, tvec1<T, P> const & v2);
+
250 
+
251  template <typename T, precision P>
+
252  GLM_FUNC_DECL tvec2<T, P> operator*(T scalar, tvec2<T, P> const & v);
+
253 
+
254  template <typename T, precision P>
+
255  GLM_FUNC_DECL tvec2<T, P> operator*(tvec1<T, P> const & v1, tvec2<T, P> const & v2);
+
256 
+
257  template <typename T, precision P>
+
258  GLM_FUNC_DECL tvec2<T, P> operator*(tvec2<T, P> const & v1, tvec2<T, P> const & v2);
+
259 
+
260  template <typename T, precision P>
+
261  GLM_FUNC_DECL tvec2<T, P> operator/(tvec2<T, P> const & v, T scalar);
+
262 
+
263  template <typename T, precision P>
+
264  GLM_FUNC_DECL tvec2<T, P> operator/(tvec2<T, P> const & v1, tvec1<T, P> const & v2);
+
265 
+
266  template <typename T, precision P>
+
267  GLM_FUNC_DECL tvec2<T, P> operator/(T scalar, tvec2<T, P> const & v);
+
268 
+
269  template <typename T, precision P>
+
270  GLM_FUNC_DECL tvec2<T, P> operator/(tvec1<T, P> const & v1, tvec2<T, P> const & v2);
+
271 
+
272  template <typename T, precision P>
+
273  GLM_FUNC_DECL tvec2<T, P> operator/(tvec2<T, P> const & v1, tvec2<T, P> const & v2);
+
274 
+
275  template <typename T, precision P>
+
276  GLM_FUNC_DECL tvec2<T, P> operator%(tvec2<T, P> const & v, T scalar);
+
277 
+
278  template <typename T, precision P>
+
279  GLM_FUNC_DECL tvec2<T, P> operator%(tvec2<T, P> const & v1, tvec1<T, P> const & v2);
+
280 
+
281  template <typename T, precision P>
+
282  GLM_FUNC_DECL tvec2<T, P> operator%(T scalar, tvec2<T, P> const & v);
+
283 
+
284  template <typename T, precision P>
+
285  GLM_FUNC_DECL tvec2<T, P> operator%(tvec1<T, P> const & v1, tvec2<T, P> const & v2);
+
286 
+
287  template <typename T, precision P>
+
288  GLM_FUNC_DECL tvec2<T, P> operator%(tvec2<T, P> const & v1, tvec2<T, P> const & v2);
+
289 
+
290  template <typename T, precision P>
+
291  GLM_FUNC_DECL tvec2<T, P> operator&(tvec2<T, P> const & v, T scalar);
+
292 
+
293  template <typename T, precision P>
+
294  GLM_FUNC_DECL tvec2<T, P> operator&(tvec2<T, P> const & v1, tvec1<T, P> const & v2);
+
295 
+
296  template <typename T, precision P>
+
297  GLM_FUNC_DECL tvec2<T, P> operator&(T scalar, tvec2<T, P> const & v);
+
298 
+
299  template <typename T, precision P>
+
300  GLM_FUNC_DECL tvec2<T, P> operator&(tvec1<T, P> const & v1, tvec2<T, P> const & v2);
+
301 
+
302  template <typename T, precision P>
+
303  GLM_FUNC_DECL tvec2<T, P> operator&(tvec2<T, P> const & v1, tvec2<T, P> const & v2);
+
304 
+
305  template <typename T, precision P>
+
306  GLM_FUNC_DECL tvec2<T, P> operator|(tvec2<T, P> const & v, T scalar);
+
307 
+
308  template <typename T, precision P>
+
309  GLM_FUNC_DECL tvec2<T, P> operator|(tvec2<T, P> const & v1, tvec1<T, P> const & v2);
+
310 
+
311  template <typename T, precision P>
+
312  GLM_FUNC_DECL tvec2<T, P> operator|(T scalar, tvec2<T, P> const & v);
+
313 
+
314  template <typename T, precision P>
+
315  GLM_FUNC_DECL tvec2<T, P> operator|(tvec1<T, P> const & v1, tvec2<T, P> const & v2);
+
316 
+
317  template <typename T, precision P>
+
318  GLM_FUNC_DECL tvec2<T, P> operator|(tvec2<T, P> const & v1, tvec2<T, P> const & v2);
+
319 
+
320  template <typename T, precision P>
+
321  GLM_FUNC_DECL tvec2<T, P> operator^(tvec2<T, P> const & v, T scalar);
+
322 
+
323  template <typename T, precision P>
+
324  GLM_FUNC_DECL tvec2<T, P> operator^(tvec2<T, P> const & v1, tvec1<T, P> const & v2);
+
325 
+
326  template <typename T, precision P>
+
327  GLM_FUNC_DECL tvec2<T, P> operator^(T scalar, tvec2<T, P> const & v);
+
328 
+
329  template <typename T, precision P>
+
330  GLM_FUNC_DECL tvec2<T, P> operator^(tvec1<T, P> const & v1, tvec2<T, P> const & v2);
+
331 
+
332  template <typename T, precision P>
+
333  GLM_FUNC_DECL tvec2<T, P> operator^(tvec2<T, P> const & v1, tvec2<T, P> const & v2);
+
334 
+
335  template <typename T, precision P>
+
336  GLM_FUNC_DECL tvec2<T, P> operator<<(tvec2<T, P> const & v, T scalar);
+
337 
+
338  template <typename T, precision P>
+
339  GLM_FUNC_DECL tvec2<T, P> operator<<(tvec2<T, P> const & v1, tvec1<T, P> const & v2);
+
340 
+
341  template <typename T, precision P>
+
342  GLM_FUNC_DECL tvec2<T, P> operator<<(T scalar, tvec2<T, P> const & v);
+
343 
+
344  template <typename T, precision P>
+
345  GLM_FUNC_DECL tvec2<T, P> operator<<(tvec1<T, P> const & v1, tvec2<T, P> const & v2);
+
346 
+
347  template <typename T, precision P>
+
348  GLM_FUNC_DECL tvec2<T, P> operator<<(tvec2<T, P> const & v1, tvec2<T, P> const & v2);
+
349 
+
350  template <typename T, precision P>
+
351  GLM_FUNC_DECL tvec2<T, P> operator>>(tvec2<T, P> const & v, T scalar);
+
352 
+
353  template <typename T, precision P>
+
354  GLM_FUNC_DECL tvec2<T, P> operator>>(tvec2<T, P> const & v1, tvec1<T, P> const & v2);
+
355 
+
356  template <typename T, precision P>
+
357  GLM_FUNC_DECL tvec2<T, P> operator>>(T scalar, tvec2<T, P> const & v);
+
358 
+
359  template <typename T, precision P>
+
360  GLM_FUNC_DECL tvec2<T, P> operator>>(tvec1<T, P> const & v1, tvec2<T, P> const & v2);
+
361 
+
362  template <typename T, precision P>
+
363  GLM_FUNC_DECL tvec2<T, P> operator>>(tvec2<T, P> const & v1, tvec2<T, P> const & v2);
+
364 
+
365  template <typename T, precision P>
+
366  GLM_FUNC_DECL tvec2<T, P> operator~(tvec2<T, P> const & v);
+
367 
+
368  // -- Boolean operators --
+
369 
+
370  template <typename T, precision P>
+
371  GLM_FUNC_DECL bool operator==(tvec2<T, P> const & v1, tvec2<T, P> const & v2);
+
372 
+
373  template <typename T, precision P>
+
374  GLM_FUNC_DECL bool operator!=(tvec2<T, P> const & v1, tvec2<T, P> const & v2);
+
375 
+
376  template <precision P>
+
377  GLM_FUNC_DECL tvec2<bool, P> operator&&(tvec2<bool, P> const & v1, tvec2<bool, P> const & v2);
+
378 
+
379  template <precision P>
+
380  GLM_FUNC_DECL tvec2<bool, P> operator||(tvec2<bool, P> const & v1, tvec2<bool, P> const & v2);
+
381 }//namespace glm
+
382 
+
383 #ifndef GLM_EXTERNAL_TEMPLATE
+
384 #include "type_vec2.inl"
+
385 #endif//GLM_EXTERNAL_TEMPLATE
+
GLM Core
+
Definition: _noise.hpp:11
+ +
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
GLM Core
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00130.html b/third_party/glm_test/doc/api/a00130.html new file mode 100644 index 0000000000000..c06878a74c0f0 --- /dev/null +++ b/third_party/glm_test/doc/api/a00130.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: type_vec3.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_vec3.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file type_vec3.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00130_source.html b/third_party/glm_test/doc/api/a00130_source.html new file mode 100644 index 0000000000000..bc6af51909290 --- /dev/null +++ b/third_party/glm_test/doc/api/a00130_source.html @@ -0,0 +1,461 @@ + + + + + + +0.9.8: type_vec3.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_vec3.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "type_vec.hpp"
+
7 #if GLM_SWIZZLE == GLM_SWIZZLE_ENABLED
+
8 # if GLM_HAS_UNRESTRICTED_UNIONS
+
9 # include "_swizzle.hpp"
+
10 # else
+
11 # include "_swizzle_func.hpp"
+
12 # endif
+
13 #endif //GLM_SWIZZLE == GLM_SWIZZLE_ENABLED
+
14 #include <cstddef>
+
15 
+
16 namespace glm
+
17 {
+
18  template <typename T, precision P = defaultp>
+
19  struct tvec3
+
20  {
+
21  // -- Implementation detail --
+
22 
+
23  typedef T value_type;
+
24  typedef tvec3<T, P> type;
+
25  typedef tvec3<bool, P> bool_type;
+
26 
+
27  // -- Data --
+
28 
+
29 # if GLM_HAS_ALIGNED_TYPE
+
30 # if GLM_COMPILER & GLM_COMPILER_GCC
+
31 # pragma GCC diagnostic push
+
32 # pragma GCC diagnostic ignored "-pedantic"
+
33 # endif
+
34 # if GLM_COMPILER & GLM_COMPILER_CLANG
+
35 # pragma clang diagnostic push
+
36 # pragma clang diagnostic ignored "-Wgnu-anonymous-struct"
+
37 # pragma clang diagnostic ignored "-Wnested-anon-types"
+
38 # endif
+
39 
+
40  union
+
41  {
+
42  struct{ T x, y, z; };
+
43  struct{ T r, g, b; };
+
44  struct{ T s, t, p; };
+
45 
+
46 # if GLM_SWIZZLE == GLM_SWIZZLE_ENABLED
+
47  _GLM_SWIZZLE3_2_MEMBERS(T, P, glm::tvec2, x, y, z)
+
48  _GLM_SWIZZLE3_2_MEMBERS(T, P, glm::tvec2, r, g, b)
+
49  _GLM_SWIZZLE3_2_MEMBERS(T, P, glm::tvec2, s, t, p)
+
50  _GLM_SWIZZLE3_3_MEMBERS(T, P, glm::tvec3, x, y, z)
+
51  _GLM_SWIZZLE3_3_MEMBERS(T, P, glm::tvec3, r, g, b)
+
52  _GLM_SWIZZLE3_3_MEMBERS(T, P, glm::tvec3, s, t, p)
+
53  _GLM_SWIZZLE3_4_MEMBERS(T, P, glm::tvec4, x, y, z)
+
54  _GLM_SWIZZLE3_4_MEMBERS(T, P, glm::tvec4, r, g, b)
+
55  _GLM_SWIZZLE3_4_MEMBERS(T, P, glm::tvec4, s, t, p)
+
56 # endif//GLM_SWIZZLE
+
57  };
+
58 
+
59 # if GLM_COMPILER & GLM_COMPILER_CLANG
+
60 # pragma clang diagnostic pop
+
61 # endif
+
62 # if GLM_COMPILER & GLM_COMPILER_GCC
+
63 # pragma GCC diagnostic pop
+
64 # endif
+
65 # else
+
66  union { T x, r, s; };
+
67  union { T y, g, t; };
+
68  union { T z, b, p; };
+
69 
+
70 # if GLM_SWIZZLE == GLM_SWIZZLE_ENABLED
+
71  GLM_SWIZZLE_GEN_VEC_FROM_VEC3(T, P, tvec3, tvec2, tvec3, tvec4)
+
72 # endif//GLM_SWIZZLE
+
73 # endif//GLM_LANG
+
74 
+
75  // -- Component accesses --
+
76 
+
78  typedef length_t length_type;
+
79  GLM_FUNC_DECL GLM_CONSTEXPR length_type length() const;
+
80 
+
81  GLM_FUNC_DECL T & operator[](length_type i);
+
82  GLM_FUNC_DECL T const & operator[](length_type i) const;
+
83 
+
84  // -- Implicit basic constructors --
+
85 
+
86  GLM_FUNC_DECL GLM_CONSTEXPR tvec3() GLM_DEFAULT_CTOR;
+
87  GLM_FUNC_DECL GLM_CONSTEXPR tvec3(tvec3<T, P> const & v) GLM_DEFAULT;
+
88  template <precision Q>
+
89  GLM_FUNC_DECL GLM_CONSTEXPR tvec3(tvec3<T, Q> const & v);
+
90 
+
91  // -- Explicit basic constructors --
+
92 
+
93  GLM_FUNC_DECL GLM_CONSTEXPR_CTOR explicit tvec3(ctor);
+
94  GLM_FUNC_DECL GLM_CONSTEXPR explicit tvec3(T scalar);
+
95  GLM_FUNC_DECL GLM_CONSTEXPR tvec3(T a, T b, T c);
+
96 
+
97  // -- Conversion scalar constructors --
+
98 
+
100  template <typename A, typename B, typename C>
+
101  GLM_FUNC_DECL GLM_CONSTEXPR tvec3(A a, B b, C c);
+
102  template <typename A, typename B, typename C>
+
103  GLM_FUNC_DECL GLM_CONSTEXPR tvec3(tvec1<A, P> const & a, tvec1<B, P> const & b, tvec1<C, P> const & c);
+
104 
+
105  // -- Conversion vector constructors --
+
106 
+
108  template <typename A, typename B, precision Q>
+
109  GLM_FUNC_DECL GLM_CONSTEXPR tvec3(tvec2<A, Q> const & a, B b);
+
111  template <typename A, typename B, precision Q>
+
112  GLM_FUNC_DECL GLM_CONSTEXPR tvec3(tvec2<A, Q> const & a, tvec1<B, Q> const & b);
+
114  template <typename A, typename B, precision Q>
+
115  GLM_FUNC_DECL GLM_CONSTEXPR tvec3(A a, tvec2<B, Q> const & b);
+
117  template <typename A, typename B, precision Q>
+
118  GLM_FUNC_DECL GLM_CONSTEXPR tvec3(tvec1<A, Q> const & a, tvec2<B, Q> const & b);
+
120  template <typename U, precision Q>
+
121  GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT tvec3(tvec4<U, Q> const & v);
+
122 
+
124  template <typename U, precision Q>
+
125  GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT tvec3(tvec3<U, Q> const & v);
+
126 
+
127  // -- Swizzle constructors --
+
128 # if GLM_HAS_UNRESTRICTED_UNIONS && (GLM_SWIZZLE == GLM_SWIZZLE_ENABLED)
+
129  template <int E0, int E1, int E2>
+
130  GLM_FUNC_DECL tvec3(detail::_swizzle<3, T, P, glm::tvec3, E0, E1, E2, -1> const & that)
+
131  {
+
132  *this = that();
+
133  }
+
134 
+
135  template <int E0, int E1>
+
136  GLM_FUNC_DECL tvec3(detail::_swizzle<2, T, P, glm::tvec2, E0, E1, -1, -2> const & v, T const & scalar)
+
137  {
+
138  *this = tvec3<T, P>(v(), scalar);
+
139  }
+
140 
+
141  template <int E0, int E1>
+
142  GLM_FUNC_DECL tvec3(T const & scalar, detail::_swizzle<2, T, P, glm::tvec2, E0, E1, -1, -2> const & v)
+
143  {
+
144  *this = tvec3<T, P>(scalar, v());
+
145  }
+
146 # endif// GLM_HAS_UNRESTRICTED_UNIONS && (GLM_SWIZZLE == GLM_SWIZZLE_ENABLED)
+
147 
+
148  // -- Unary arithmetic operators --
+
149 
+
150  GLM_FUNC_DECL tvec3<T, P> & operator=(tvec3<T, P> const & v) GLM_DEFAULT;
+
151 
+
152  template <typename U>
+
153  GLM_FUNC_DECL tvec3<T, P> & operator=(tvec3<U, P> const & v);
+
154  template <typename U>
+
155  GLM_FUNC_DECL tvec3<T, P> & operator+=(U scalar);
+
156  template <typename U>
+
157  GLM_FUNC_DECL tvec3<T, P> & operator+=(tvec1<U, P> const & v);
+
158  template <typename U>
+
159  GLM_FUNC_DECL tvec3<T, P> & operator+=(tvec3<U, P> const & v);
+
160  template <typename U>
+
161  GLM_FUNC_DECL tvec3<T, P> & operator-=(U scalar);
+
162  template <typename U>
+
163  GLM_FUNC_DECL tvec3<T, P> & operator-=(tvec1<U, P> const & v);
+
164  template <typename U>
+
165  GLM_FUNC_DECL tvec3<T, P> & operator-=(tvec3<U, P> const & v);
+
166  template <typename U>
+
167  GLM_FUNC_DECL tvec3<T, P> & operator*=(U scalar);
+
168  template <typename U>
+
169  GLM_FUNC_DECL tvec3<T, P> & operator*=(tvec1<U, P> const & v);
+
170  template <typename U>
+
171  GLM_FUNC_DECL tvec3<T, P> & operator*=(tvec3<U, P> const & v);
+
172  template <typename U>
+
173  GLM_FUNC_DECL tvec3<T, P> & operator/=(U scalar);
+
174  template <typename U>
+
175  GLM_FUNC_DECL tvec3<T, P> & operator/=(tvec1<U, P> const & v);
+
176  template <typename U>
+
177  GLM_FUNC_DECL tvec3<T, P> & operator/=(tvec3<U, P> const & v);
+
178 
+
179  // -- Increment and decrement operators --
+
180 
+
181  GLM_FUNC_DECL tvec3<T, P> & operator++();
+
182  GLM_FUNC_DECL tvec3<T, P> & operator--();
+
183  GLM_FUNC_DECL tvec3<T, P> operator++(int);
+
184  GLM_FUNC_DECL tvec3<T, P> operator--(int);
+
185 
+
186  // -- Unary bit operators --
+
187 
+
188  template <typename U>
+
189  GLM_FUNC_DECL tvec3<T, P> & operator%=(U scalar);
+
190  template <typename U>
+
191  GLM_FUNC_DECL tvec3<T, P> & operator%=(tvec1<U, P> const & v);
+
192  template <typename U>
+
193  GLM_FUNC_DECL tvec3<T, P> & operator%=(tvec3<U, P> const & v);
+
194  template <typename U>
+
195  GLM_FUNC_DECL tvec3<T, P> & operator&=(U scalar);
+
196  template <typename U>
+
197  GLM_FUNC_DECL tvec3<T, P> & operator&=(tvec1<U, P> const & v);
+
198  template <typename U>
+
199  GLM_FUNC_DECL tvec3<T, P> & operator&=(tvec3<U, P> const & v);
+
200  template <typename U>
+
201  GLM_FUNC_DECL tvec3<T, P> & operator|=(U scalar);
+
202  template <typename U>
+
203  GLM_FUNC_DECL tvec3<T, P> & operator|=(tvec1<U, P> const & v);
+
204  template <typename U>
+
205  GLM_FUNC_DECL tvec3<T, P> & operator|=(tvec3<U, P> const & v);
+
206  template <typename U>
+
207  GLM_FUNC_DECL tvec3<T, P> & operator^=(U scalar);
+
208  template <typename U>
+
209  GLM_FUNC_DECL tvec3<T, P> & operator^=(tvec1<U, P> const & v);
+
210  template <typename U>
+
211  GLM_FUNC_DECL tvec3<T, P> & operator^=(tvec3<U, P> const & v);
+
212  template <typename U>
+
213  GLM_FUNC_DECL tvec3<T, P> & operator<<=(U scalar);
+
214  template <typename U>
+
215  GLM_FUNC_DECL tvec3<T, P> & operator<<=(tvec1<U, P> const & v);
+
216  template <typename U>
+
217  GLM_FUNC_DECL tvec3<T, P> & operator<<=(tvec3<U, P> const & v);
+
218  template <typename U>
+
219  GLM_FUNC_DECL tvec3<T, P> & operator>>=(U scalar);
+
220  template <typename U>
+
221  GLM_FUNC_DECL tvec3<T, P> & operator>>=(tvec1<U, P> const & v);
+
222  template <typename U>
+
223  GLM_FUNC_DECL tvec3<T, P> & operator>>=(tvec3<U, P> const & v);
+
224  };
+
225 
+
226  // -- Unary operators --
+
227 
+
228  template <typename T, precision P>
+
229  GLM_FUNC_DECL tvec3<T, P> operator+(tvec3<T, P> const & v);
+
230 
+
231  template <typename T, precision P>
+
232  GLM_FUNC_DECL tvec3<T, P> operator-(tvec3<T, P> const & v);
+
233 
+
234  // -- Binary operators --
+
235 
+
236  template <typename T, precision P>
+
237  GLM_FUNC_DECL tvec3<T, P> operator+(tvec3<T, P> const & v, T scalar);
+
238 
+
239  template <typename T, precision P>
+
240  GLM_FUNC_DECL tvec3<T, P> operator+(tvec3<T, P> const & v, tvec1<T, P> const & scalar);
+
241 
+
242  template <typename T, precision P>
+
243  GLM_FUNC_DECL tvec3<T, P> operator+(T scalar, tvec3<T, P> const & v);
+
244 
+
245  template <typename T, precision P>
+
246  GLM_FUNC_DECL tvec3<T, P> operator+(tvec1<T, P> const & v1, tvec3<T, P> const & v2);
+
247 
+
248  template <typename T, precision P>
+
249  GLM_FUNC_DECL tvec3<T, P> operator+(tvec3<T, P> const & v1, tvec3<T, P> const & v2);
+
250 
+
251  template <typename T, precision P>
+
252  GLM_FUNC_DECL tvec3<T, P> operator-(tvec3<T, P> const & v, T scalar);
+
253 
+
254  template <typename T, precision P>
+
255  GLM_FUNC_DECL tvec3<T, P> operator-(tvec3<T, P> const & v1, tvec1<T, P> const & v2);
+
256 
+
257  template <typename T, precision P>
+
258  GLM_FUNC_DECL tvec3<T, P> operator-(T scalar, tvec3<T, P> const & v);
+
259 
+
260  template <typename T, precision P>
+
261  GLM_FUNC_DECL tvec3<T, P> operator-(tvec1<T, P> const & v1, tvec3<T, P> const & v2);
+
262 
+
263  template <typename T, precision P>
+
264  GLM_FUNC_DECL tvec3<T, P> operator-(tvec3<T, P> const & v1, tvec3<T, P> const & v2);
+
265 
+
266  template <typename T, precision P>
+
267  GLM_FUNC_DECL tvec3<T, P> operator*(tvec3<T, P> const & v, T scalar);
+
268 
+
269  template <typename T, precision P>
+
270  GLM_FUNC_DECL tvec3<T, P> operator*(tvec3<T, P> const & v1, tvec1<T, P> const & v2);
+
271 
+
272  template <typename T, precision P>
+
273  GLM_FUNC_DECL tvec3<T, P> operator*(T scalar, tvec3<T, P> const & v);
+
274 
+
275  template <typename T, precision P>
+
276  GLM_FUNC_DECL tvec3<T, P> operator*(tvec1<T, P> const & v1, tvec3<T, P> const & v2);
+
277 
+
278  template <typename T, precision P>
+
279  GLM_FUNC_DECL tvec3<T, P> operator*(tvec3<T, P> const & v1, tvec3<T, P> const & v2);
+
280 
+
281  template <typename T, precision P>
+
282  GLM_FUNC_DECL tvec3<T, P> operator/(tvec3<T, P> const & v, T scalar);
+
283 
+
284  template <typename T, precision P>
+
285  GLM_FUNC_DECL tvec3<T, P> operator/(tvec3<T, P> const & v1, tvec1<T, P> const & v2);
+
286 
+
287  template <typename T, precision P>
+
288  GLM_FUNC_DECL tvec3<T, P> operator/(T scalar, tvec3<T, P> const & v);
+
289 
+
290  template <typename T, precision P>
+
291  GLM_FUNC_DECL tvec3<T, P> operator/(tvec1<T, P> const & v1, tvec3<T, P> const & v2);
+
292 
+
293  template <typename T, precision P>
+
294  GLM_FUNC_DECL tvec3<T, P> operator/(tvec3<T, P> const & v1, tvec3<T, P> const & v2);
+
295 
+
296  template <typename T, precision P>
+
297  GLM_FUNC_DECL tvec3<T, P> operator%(tvec3<T, P> const & v, T scalar);
+
298 
+
299  template <typename T, precision P>
+
300  GLM_FUNC_DECL tvec3<T, P> operator%(tvec3<T, P> const & v1, tvec1<T, P> const & v2);
+
301 
+
302  template <typename T, precision P>
+
303  GLM_FUNC_DECL tvec3<T, P> operator%(T const & scalar, tvec3<T, P> const & v);
+
304 
+
305  template <typename T, precision P>
+
306  GLM_FUNC_DECL tvec3<T, P> operator%(tvec1<T, P> const & v1, tvec3<T, P> const & v2);
+
307 
+
308  template <typename T, precision P>
+
309  GLM_FUNC_DECL tvec3<T, P> operator%(tvec3<T, P> const & v1, tvec3<T, P> const & v2);
+
310 
+
311  template <typename T, precision P>
+
312  GLM_FUNC_DECL tvec3<T, P> operator&(tvec3<T, P> const & v1, T scalar);
+
313 
+
314  template <typename T, precision P>
+
315  GLM_FUNC_DECL tvec3<T, P> operator&(tvec3<T, P> const & v1, tvec1<T, P> const & v2);
+
316 
+
317  template <typename T, precision P>
+
318  GLM_FUNC_DECL tvec3<T, P> operator&(T scalar, tvec3<T, P> const & v);
+
319 
+
320  template <typename T, precision P>
+
321  GLM_FUNC_DECL tvec3<T, P> operator&(tvec1<T, P> const & v1, tvec3<T, P> const & v2);
+
322 
+
323  template <typename T, precision P>
+
324  GLM_FUNC_DECL tvec3<T, P> operator&(tvec3<T, P> const & v1, tvec3<T, P> const & v2);
+
325 
+
326  template <typename T, precision P>
+
327  GLM_FUNC_DECL tvec3<T, P> operator|(tvec3<T, P> const & v, T scalar);
+
328 
+
329  template <typename T, precision P>
+
330  GLM_FUNC_DECL tvec3<T, P> operator|(tvec3<T, P> const & v1, tvec1<T, P> const & v2);
+
331 
+
332  template <typename T, precision P>
+
333  GLM_FUNC_DECL tvec3<T, P> operator|(T scalar, tvec3<T, P> const & v);
+
334 
+
335  template <typename T, precision P>
+
336  GLM_FUNC_DECL tvec3<T, P> operator|(tvec1<T, P> const & v1, tvec3<T, P> const & v2);
+
337 
+
338  template <typename T, precision P>
+
339  GLM_FUNC_DECL tvec3<T, P> operator|(tvec3<T, P> const & v1, tvec3<T, P> const & v2);
+
340 
+
341  template <typename T, precision P>
+
342  GLM_FUNC_DECL tvec3<T, P> operator^(tvec3<T, P> const & v, T scalar);
+
343 
+
344  template <typename T, precision P>
+
345  GLM_FUNC_DECL tvec3<T, P> operator^(tvec3<T, P> const & v1, tvec1<T, P> const & v2);
+
346 
+
347  template <typename T, precision P>
+
348  GLM_FUNC_DECL tvec3<T, P> operator^(T scalar, tvec3<T, P> const & v);
+
349 
+
350  template <typename T, precision P>
+
351  GLM_FUNC_DECL tvec3<T, P> operator^(tvec1<T, P> const & v1, tvec3<T, P> const & v2);
+
352 
+
353  template <typename T, precision P>
+
354  GLM_FUNC_DECL tvec3<T, P> operator^(tvec3<T, P> const & v1, tvec3<T, P> const & v2);
+
355 
+
356  template <typename T, precision P>
+
357  GLM_FUNC_DECL tvec3<T, P> operator<<(tvec3<T, P> const & v, T scalar);
+
358 
+
359  template <typename T, precision P>
+
360  GLM_FUNC_DECL tvec3<T, P> operator<<(tvec3<T, P> const & v1, tvec1<T, P> const & v2);
+
361 
+
362  template <typename T, precision P>
+
363  GLM_FUNC_DECL tvec3<T, P> operator<<(T scalar, tvec3<T, P> const & v);
+
364 
+
365  template <typename T, precision P>
+
366  GLM_FUNC_DECL tvec3<T, P> operator<<(tvec1<T, P> const & v1, tvec3<T, P> const & v2);
+
367 
+
368  template <typename T, precision P>
+
369  GLM_FUNC_DECL tvec3<T, P> operator<<(tvec3<T, P> const & v1, tvec3<T, P> const & v2);
+
370 
+
371  template <typename T, precision P>
+
372  GLM_FUNC_DECL tvec3<T, P> operator>>(tvec3<T, P> const & v, T scalar);
+
373 
+
374  template <typename T, precision P>
+
375  GLM_FUNC_DECL tvec3<T, P> operator>>(tvec3<T, P> const & v1, tvec1<T, P> const & v2);
+
376 
+
377  template <typename T, precision P>
+
378  GLM_FUNC_DECL tvec3<T, P> operator>>(T scalar, tvec3<T, P> const & v);
+
379 
+
380  template <typename T, precision P>
+
381  GLM_FUNC_DECL tvec3<T, P> operator>>(tvec1<T, P> const & v1, tvec3<T, P> const & v2);
+
382 
+
383  template <typename T, precision P>
+
384  GLM_FUNC_DECL tvec3<T, P> operator>>(tvec3<T, P> const & v1, tvec3<T, P> const & v2);
+
385 
+
386  template <typename T, precision P>
+
387  GLM_FUNC_DECL tvec3<T, P> operator~(tvec3<T, P> const & v);
+
388 
+
389  // -- Boolean operators --
+
390 
+
391  template <typename T, precision P>
+
392  GLM_FUNC_DECL bool operator==(tvec3<T, P> const & v1, tvec3<T, P> const & v2);
+
393 
+
394  template <typename T, precision P>
+
395  GLM_FUNC_DECL bool operator!=(tvec3<T, P> const & v1, tvec3<T, P> const & v2);
+
396 
+
397  template <precision P>
+
398  GLM_FUNC_DECL tvec3<bool, P> operator&&(tvec3<bool, P> const & v1, tvec3<bool, P> const & v2);
+
399 
+
400  template <precision P>
+
401  GLM_FUNC_DECL tvec3<bool, P> operator||(tvec3<bool, P> const & v1, tvec3<bool, P> const & v2);
+
402 }//namespace glm
+
403 
+
404 #ifndef GLM_EXTERNAL_TEMPLATE
+
405 #include "type_vec3.inl"
+
406 #endif//GLM_EXTERNAL_TEMPLATE
+
GLM Core
+
Definition: _noise.hpp:11
+ +
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
GLM Core
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00131.html b/third_party/glm_test/doc/api/a00131.html new file mode 100644 index 0000000000000..639953613e7e1 --- /dev/null +++ b/third_party/glm_test/doc/api/a00131.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: type_vec4.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_vec4.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file type_vec4.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00131_source.html b/third_party/glm_test/doc/api/a00131_source.html new file mode 100644 index 0000000000000..a1ad9aae44131 --- /dev/null +++ b/third_party/glm_test/doc/api/a00131_source.html @@ -0,0 +1,500 @@ + + + + + + +0.9.8: type_vec4.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
type_vec4.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "type_vec.hpp"
+
7 #if GLM_SWIZZLE == GLM_SWIZZLE_ENABLED
+
8 # if GLM_HAS_UNRESTRICTED_UNIONS
+
9 # include "_swizzle.hpp"
+
10 # else
+
11 # include "_swizzle_func.hpp"
+
12 # endif
+
13 #endif //GLM_SWIZZLE
+
14 #include <cstddef>
+
15 
+
16 namespace glm
+
17 {
+
18  template <typename T, precision P = defaultp>
+
19  struct tvec4
+
20  {
+
21  // -- Implementation detail --
+
22 
+
23  typedef T value_type;
+
24  typedef tvec4<T, P> type;
+
25  typedef tvec4<bool, P> bool_type;
+
26 
+
27  // -- Data --
+
28 
+
29 # if GLM_HAS_ALIGNED_TYPE
+
30 # if GLM_COMPILER & GLM_COMPILER_GCC
+
31 # pragma GCC diagnostic push
+
32 # pragma GCC diagnostic ignored "-pedantic"
+
33 # endif
+
34 # if GLM_COMPILER & GLM_COMPILER_CLANG
+
35 # pragma clang diagnostic push
+
36 # pragma clang diagnostic ignored "-Wgnu-anonymous-struct"
+
37 # pragma clang diagnostic ignored "-Wnested-anon-types"
+
38 # endif
+
39 
+
40  union
+
41  {
+
42  struct { T x, y, z, w;};
+
43  struct { T r, g, b, a; };
+
44  struct { T s, t, p, q; };
+
45 
+
46  typename detail::storage<T, sizeof(T) * 4, detail::is_aligned<P>::value>::type data;
+
47 
+
48 # if GLM_SWIZZLE == GLM_SWIZZLE_ENABLED
+
49  _GLM_SWIZZLE4_2_MEMBERS(T, P, glm::tvec2, x, y, z, w)
+
50  _GLM_SWIZZLE4_2_MEMBERS(T, P, glm::tvec2, r, g, b, a)
+
51  _GLM_SWIZZLE4_2_MEMBERS(T, P, glm::tvec2, s, t, p, q)
+
52  _GLM_SWIZZLE4_3_MEMBERS(T, P, glm::tvec3, x, y, z, w)
+
53  _GLM_SWIZZLE4_3_MEMBERS(T, P, glm::tvec3, r, g, b, a)
+
54  _GLM_SWIZZLE4_3_MEMBERS(T, P, glm::tvec3, s, t, p, q)
+
55  _GLM_SWIZZLE4_4_MEMBERS(T, P, glm::tvec4, x, y, z, w)
+
56  _GLM_SWIZZLE4_4_MEMBERS(T, P, glm::tvec4, r, g, b, a)
+
57  _GLM_SWIZZLE4_4_MEMBERS(T, P, glm::tvec4, s, t, p, q)
+
58 # endif//GLM_SWIZZLE
+
59  };
+
60 
+
61 # if GLM_COMPILER & GLM_COMPILER_CLANG
+
62 # pragma clang diagnostic pop
+
63 # endif
+
64 # if GLM_COMPILER & GLM_COMPILER_GCC
+
65 # pragma GCC diagnostic pop
+
66 # endif
+
67 # else
+
68  union { T x, r, s; };
+
69  union { T y, g, t; };
+
70  union { T z, b, p; };
+
71  union { T w, a, q; };
+
72 
+
73 # if GLM_SWIZZLE == GLM_SWIZZLE_ENABLED
+
74  GLM_SWIZZLE_GEN_VEC_FROM_VEC4(T, P, tvec4, tvec2, tvec3, tvec4)
+
75 # endif//GLM_SWIZZLE
+
76 # endif
+
77 
+
78  // -- Component accesses --
+
79 
+
81  typedef length_t length_type;
+
82  GLM_FUNC_DECL GLM_CONSTEXPR length_type length() const;
+
83 
+
84  GLM_FUNC_DECL T & operator[](length_type i);
+
85  GLM_FUNC_DECL T const & operator[](length_type i) const;
+
86 
+
87  // -- Implicit basic constructors --
+
88 
+
89  GLM_FUNC_DECL GLM_CONSTEXPR tvec4() GLM_DEFAULT_CTOR;
+
90  GLM_FUNC_DECL GLM_CONSTEXPR tvec4(tvec4<T, P> const& v) GLM_DEFAULT;
+
91  template <precision Q>
+
92  GLM_FUNC_DECL GLM_CONSTEXPR tvec4(tvec4<T, Q> const& v);
+
93 
+
94  // -- Explicit basic constructors --
+
95 
+
96  GLM_FUNC_DECL GLM_CONSTEXPR_CTOR explicit tvec4(ctor);
+
97  GLM_FUNC_DECL GLM_CONSTEXPR_SIMD explicit tvec4(T scalar);
+
98  GLM_FUNC_DECL GLM_CONSTEXPR_SIMD tvec4(T a, T b, T c, T d);
+
99 
+
100  // -- Conversion scalar constructors --
+
101 
+
103  template <typename A, typename B, typename C, typename D>
+
104  GLM_FUNC_DECL GLM_CONSTEXPR tvec4(A a, B b, C c, D d);
+
105  template <typename A, typename B, typename C, typename D>
+
106  GLM_FUNC_DECL GLM_CONSTEXPR tvec4(tvec1<A, P> const& a, tvec1<B, P> const& b, tvec1<C, P> const& c, tvec1<D, P> const& d);
+
107 
+
108  // -- Conversion vector constructors --
+
109 
+
111  template <typename A, typename B, typename C, precision Q>
+
112  GLM_FUNC_DECL GLM_CONSTEXPR tvec4(tvec2<A, Q> const & a, B b, C c);
+
114  template <typename A, typename B, typename C, precision Q>
+
115  GLM_FUNC_DECL GLM_CONSTEXPR tvec4(tvec2<A, Q> const & a, tvec1<B, Q> const & b, tvec1<C, Q> const & c);
+
117  template <typename A, typename B, typename C, precision Q>
+
118  GLM_FUNC_DECL GLM_CONSTEXPR tvec4(A a, tvec2<B, Q> const & b, C c);
+
120  template <typename A, typename B, typename C, precision Q>
+
121  GLM_FUNC_DECL GLM_CONSTEXPR tvec4(tvec1<A, Q> const & a, tvec2<B, Q> const & b, tvec1<C, Q> const & c);
+
123  template <typename A, typename B, typename C, precision Q>
+
124  GLM_FUNC_DECL GLM_CONSTEXPR tvec4(A a, B b, tvec2<C, Q> const & c);
+
126  template <typename A, typename B, typename C, precision Q>
+
127  GLM_FUNC_DECL GLM_CONSTEXPR tvec4(tvec1<A, Q> const & a, tvec1<B, Q> const & b, tvec2<C, Q> const & c);
+
129  template <typename A, typename B, precision Q>
+
130  GLM_FUNC_DECL GLM_CONSTEXPR tvec4(tvec3<A, Q> const & a, B b);
+
132  template <typename A, typename B, precision Q>
+
133  GLM_FUNC_DECL GLM_CONSTEXPR tvec4(tvec3<A, Q> const & a, tvec1<B, Q> const & b);
+
135  template <typename A, typename B, precision Q>
+
136  GLM_FUNC_DECL GLM_CONSTEXPR tvec4(A a, tvec3<B, Q> const & b);
+
138  template <typename A, typename B, precision Q>
+
139  GLM_FUNC_DECL GLM_CONSTEXPR tvec4(tvec1<A, Q> const & a, tvec3<B, Q> const & b);
+
141  template <typename A, typename B, precision Q>
+
142  GLM_FUNC_DECL GLM_CONSTEXPR tvec4(tvec2<A, Q> const & a, tvec2<B, Q> const & b);
+
143 
+
145  template <typename U, precision Q>
+
146  GLM_FUNC_DECL GLM_CONSTEXPR GLM_EXPLICIT tvec4(tvec4<U, Q> const& v);
+
147 
+
148  // -- Swizzle constructors --
+
149 # if GLM_HAS_UNRESTRICTED_UNIONS && (GLM_SWIZZLE == GLM_SWIZZLE_ENABLED)
+
150  template <int E0, int E1, int E2, int E3>
+
151  GLM_FUNC_DECL tvec4(detail::_swizzle<4, T, P, glm::tvec4, E0, E1, E2, E3> const & that)
+
152  {
+
153  *this = that();
+
154  }
+
155 
+
156  template <int E0, int E1, int F0, int F1>
+
157  GLM_FUNC_DECL tvec4(detail::_swizzle<2, T, P, glm::tvec2, E0, E1, -1, -2> const & v, detail::_swizzle<2, T, P, glm::tvec2, F0, F1, -1, -2> const & u)
+
158  {
+
159  *this = tvec4<T, P>(v(), u());
+
160  }
+
161 
+
162  template <int E0, int E1>
+
163  GLM_FUNC_DECL tvec4(T const & x, T const & y, detail::_swizzle<2, T, P, glm::tvec2, E0, E1, -1, -2> const & v)
+
164  {
+
165  *this = tvec4<T, P>(x, y, v());
+
166  }
+
167 
+
168  template <int E0, int E1>
+
169  GLM_FUNC_DECL tvec4(T const & x, detail::_swizzle<2, T, P, glm::tvec2, E0, E1, -1, -2> const & v, T const & w)
+
170  {
+
171  *this = tvec4<T, P>(x, v(), w);
+
172  }
+
173 
+
174  template <int E0, int E1>
+
175  GLM_FUNC_DECL tvec4(detail::_swizzle<2, T, P, glm::tvec2, E0, E1, -1, -2> const & v, T const & z, T const & w)
+
176  {
+
177  *this = tvec4<T, P>(v(), z, w);
+
178  }
+
179 
+
180  template <int E0, int E1, int E2>
+
181  GLM_FUNC_DECL tvec4(detail::_swizzle<3, T, P, glm::tvec3, E0, E1, E2, -1> const & v, T const & w)
+
182  {
+
183  *this = tvec4<T, P>(v(), w);
+
184  }
+
185 
+
186  template <int E0, int E1, int E2>
+
187  GLM_FUNC_DECL tvec4(T const & x, detail::_swizzle<3, T, P, glm::tvec3, E0, E1, E2, -1> const & v)
+
188  {
+
189  *this = tvec4<T, P>(x, v());
+
190  }
+
191 # endif// GLM_HAS_UNRESTRICTED_UNIONS && (GLM_SWIZZLE == GLM_SWIZZLE_ENABLED)
+
192 
+
193  // -- Unary arithmetic operators --
+
194 
+
195  GLM_FUNC_DECL tvec4<T, P> & operator=(tvec4<T, P> const & v) GLM_DEFAULT;
+
196 
+
197  template <typename U>
+
198  GLM_FUNC_DECL tvec4<T, P> & operator=(tvec4<U, P> const & v);
+
199  template <typename U>
+
200  GLM_FUNC_DECL tvec4<T, P> & operator+=(U scalar);
+
201  template <typename U>
+
202  GLM_FUNC_DECL tvec4<T, P> & operator+=(tvec1<U, P> const & v);
+
203  template <typename U>
+
204  GLM_FUNC_DECL tvec4<T, P> & operator+=(tvec4<U, P> const & v);
+
205  template <typename U>
+
206  GLM_FUNC_DECL tvec4<T, P> & operator-=(U scalar);
+
207  template <typename U>
+
208  GLM_FUNC_DECL tvec4<T, P> & operator-=(tvec1<U, P> const & v);
+
209  template <typename U>
+
210  GLM_FUNC_DECL tvec4<T, P> & operator-=(tvec4<U, P> const & v);
+
211  template <typename U>
+
212  GLM_FUNC_DECL tvec4<T, P> & operator*=(U scalar);
+
213  template <typename U>
+
214  GLM_FUNC_DECL tvec4<T, P> & operator*=(tvec1<U, P> const& v);
+
215  template <typename U>
+
216  GLM_FUNC_DECL tvec4<T, P> & operator*=(tvec4<U, P> const& v);
+
217  template <typename U>
+
218  GLM_FUNC_DECL tvec4<T, P> & operator/=(U scalar);
+
219  template <typename U>
+
220  GLM_FUNC_DECL tvec4<T, P> & operator/=(tvec1<U, P> const & v);
+
221  template <typename U>
+
222  GLM_FUNC_DECL tvec4<T, P> & operator/=(tvec4<U, P> const & v);
+
223 
+
224  // -- Increment and decrement operators --
+
225 
+
226  GLM_FUNC_DECL tvec4<T, P> & operator++();
+
227  GLM_FUNC_DECL tvec4<T, P> & operator--();
+
228  GLM_FUNC_DECL tvec4<T, P> operator++(int);
+
229  GLM_FUNC_DECL tvec4<T, P> operator--(int);
+
230 
+
231  // -- Unary bit operators --
+
232 
+
233  template <typename U>
+
234  GLM_FUNC_DECL tvec4<T, P> & operator%=(U scalar);
+
235  template <typename U>
+
236  GLM_FUNC_DECL tvec4<T, P> & operator%=(tvec1<U, P> const & v);
+
237  template <typename U>
+
238  GLM_FUNC_DECL tvec4<T, P> & operator%=(tvec4<U, P> const & v);
+
239  template <typename U>
+
240  GLM_FUNC_DECL tvec4<T, P> & operator&=(U scalar);
+
241  template <typename U>
+
242  GLM_FUNC_DECL tvec4<T, P> & operator&=(tvec1<U, P> const & v);
+
243  template <typename U>
+
244  GLM_FUNC_DECL tvec4<T, P> & operator&=(tvec4<U, P> const & v);
+
245  template <typename U>
+
246  GLM_FUNC_DECL tvec4<T, P> & operator|=(U scalar);
+
247  template <typename U>
+
248  GLM_FUNC_DECL tvec4<T, P> & operator|=(tvec1<U, P> const & v);
+
249  template <typename U>
+
250  GLM_FUNC_DECL tvec4<T, P> & operator|=(tvec4<U, P> const & v);
+
251  template <typename U>
+
252  GLM_FUNC_DECL tvec4<T, P> & operator^=(U scalar);
+
253  template <typename U>
+
254  GLM_FUNC_DECL tvec4<T, P> & operator^=(tvec1<U, P> const & v);
+
255  template <typename U>
+
256  GLM_FUNC_DECL tvec4<T, P> & operator^=(tvec4<U, P> const & v);
+
257  template <typename U>
+
258  GLM_FUNC_DECL tvec4<T, P> & operator<<=(U scalar);
+
259  template <typename U>
+
260  GLM_FUNC_DECL tvec4<T, P> & operator<<=(tvec1<U, P> const & v);
+
261  template <typename U>
+
262  GLM_FUNC_DECL tvec4<T, P> & operator<<=(tvec4<U, P> const & v);
+
263  template <typename U>
+
264  GLM_FUNC_DECL tvec4<T, P> & operator>>=(U scalar);
+
265  template <typename U>
+
266  GLM_FUNC_DECL tvec4<T, P> & operator>>=(tvec1<U, P> const & v);
+
267  template <typename U>
+
268  GLM_FUNC_DECL tvec4<T, P> & operator>>=(tvec4<U, P> const & v);
+
269  };
+
270 
+
271  // -- Unary operators --
+
272 
+
273  template <typename T, precision P>
+
274  GLM_FUNC_DECL tvec4<T, P> operator+(tvec4<T, P> const & v);
+
275 
+
276  template <typename T, precision P>
+
277  GLM_FUNC_DECL tvec4<T, P> operator-(tvec4<T, P> const & v);
+
278 
+
279  // -- Binary operators --
+
280 
+
281  template <typename T, precision P>
+
282  GLM_FUNC_DECL tvec4<T, P> operator+(tvec4<T, P> const & v, T scalar);
+
283 
+
284  template <typename T, precision P>
+
285  GLM_FUNC_DECL tvec4<T, P> operator+(tvec4<T, P> const & v1, tvec1<T, P> const & v2);
+
286 
+
287  template <typename T, precision P>
+
288  GLM_FUNC_DECL tvec4<T, P> operator+(T scalar, tvec4<T, P> const & v);
+
289 
+
290  template <typename T, precision P>
+
291  GLM_FUNC_DECL tvec4<T, P> operator+(tvec1<T, P> const & v1, tvec4<T, P> const & v2);
+
292 
+
293  template <typename T, precision P>
+
294  GLM_FUNC_DECL tvec4<T, P> operator+(tvec4<T, P> const & v1, tvec4<T, P> const & v2);
+
295 
+
296  template <typename T, precision P>
+
297  GLM_FUNC_DECL tvec4<T, P> operator-(tvec4<T, P> const & v, T scalar);
+
298 
+
299  template <typename T, precision P>
+
300  GLM_FUNC_DECL tvec4<T, P> operator-(tvec4<T, P> const & v1, tvec1<T, P> const & v2);
+
301 
+
302  template <typename T, precision P>
+
303  GLM_FUNC_DECL tvec4<T, P> operator-(T scalar, tvec4<T, P> const & v);
+
304 
+
305  template <typename T, precision P>
+
306  GLM_FUNC_DECL tvec4<T, P> operator-(tvec1<T, P> const & v1, tvec4<T, P> const & v2);
+
307 
+
308  template <typename T, precision P>
+
309  GLM_FUNC_DECL tvec4<T, P> operator-(tvec4<T, P> const & v1, tvec4<T, P> const & v2);
+
310 
+
311  template <typename T, precision P>
+
312  GLM_FUNC_DECL tvec4<T, P> operator*(tvec4<T, P> const & v, T scalar);
+
313 
+
314  template <typename T, precision P>
+
315  GLM_FUNC_DECL tvec4<T, P> operator*(tvec4<T, P> const & v1, tvec1<T, P> const & v2);
+
316 
+
317  template <typename T, precision P>
+
318  GLM_FUNC_DECL tvec4<T, P> operator*(T scalar, tvec4<T, P> const & v);
+
319 
+
320  template <typename T, precision P>
+
321  GLM_FUNC_DECL tvec4<T, P> operator*(tvec1<T, P> const & v1, tvec4<T, P> const & v2);
+
322 
+
323  template <typename T, precision P>
+
324  GLM_FUNC_DECL tvec4<T, P> operator*(tvec4<T, P> const & v1, tvec4<T, P> const & v2);
+
325 
+
326  template <typename T, precision P>
+
327  GLM_FUNC_DECL tvec4<T, P> operator/(tvec4<T, P> const & v, T scalar);
+
328 
+
329  template <typename T, precision P>
+
330  GLM_FUNC_DECL tvec4<T, P> operator/(tvec4<T, P> const & v1, tvec1<T, P> const & v2);
+
331 
+
332  template <typename T, precision P>
+
333  GLM_FUNC_DECL tvec4<T, P> operator/(T scalar, tvec4<T, P> const & v);
+
334 
+
335  template <typename T, precision P>
+
336  GLM_FUNC_DECL tvec4<T, P> operator/(tvec1<T, P> const & v1, tvec4<T, P> const & v2);
+
337 
+
338  template <typename T, precision P>
+
339  GLM_FUNC_DECL tvec4<T, P> operator/(tvec4<T, P> const & v1, tvec4<T, P> const & v2);
+
340 
+
341  template <typename T, precision P>
+
342  GLM_FUNC_DECL tvec4<T, P> operator%(tvec4<T, P> const & v, T scalar);
+
343 
+
344  template <typename T, precision P>
+
345  GLM_FUNC_DECL tvec4<T, P> operator%(tvec4<T, P> const & v, tvec1<T, P> const & scalar);
+
346 
+
347  template <typename T, precision P>
+
348  GLM_FUNC_DECL tvec4<T, P> operator%(T scalar, tvec4<T, P> const & v);
+
349 
+
350  template <typename T, precision P>
+
351  GLM_FUNC_DECL tvec4<T, P> operator%(tvec1<T, P> const & scalar, tvec4<T, P> const & v);
+
352 
+
353  template <typename T, precision P>
+
354  GLM_FUNC_DECL tvec4<T, P> operator%(tvec4<T, P> const & v1, tvec4<T, P> const & v2);
+
355 
+
356  template <typename T, precision P>
+
357  GLM_FUNC_DECL tvec4<T, P> operator&(tvec4<T, P> const & v, T scalar);
+
358 
+
359  template <typename T, precision P>
+
360  GLM_FUNC_DECL tvec4<T, P> operator&(tvec4<T, P> const & v, tvec1<T, P> const & scalar);
+
361 
+
362  template <typename T, precision P>
+
363  GLM_FUNC_DECL tvec4<T, P> operator&(T scalar, tvec4<T, P> const & v);
+
364 
+
365  template <typename T, precision P>
+
366  GLM_FUNC_DECL tvec4<T, P> operator&(tvec1<T, P> const & scalar, tvec4<T, P> const & v);
+
367 
+
368  template <typename T, precision P>
+
369  GLM_FUNC_DECL tvec4<T, P> operator&(tvec4<T, P> const & v1, tvec4<T, P> const & v2);
+
370 
+
371  template <typename T, precision P>
+
372  GLM_FUNC_DECL tvec4<T, P> operator|(tvec4<T, P> const & v, T scalar);
+
373 
+
374  template <typename T, precision P>
+
375  GLM_FUNC_DECL tvec4<T, P> operator|(tvec4<T, P> const & v, tvec1<T, P> const & scalar);
+
376 
+
377  template <typename T, precision P>
+
378  GLM_FUNC_DECL tvec4<T, P> operator|(T scalar, tvec4<T, P> const & v);
+
379 
+
380  template <typename T, precision P>
+
381  GLM_FUNC_DECL tvec4<T, P> operator|(tvec1<T, P> const & scalar, tvec4<T, P> const & v);
+
382 
+
383  template <typename T, precision P>
+
384  GLM_FUNC_DECL tvec4<T, P> operator|(tvec4<T, P> const & v1, tvec4<T, P> const & v2);
+
385 
+
386  template <typename T, precision P>
+
387  GLM_FUNC_DECL tvec4<T, P> operator^(tvec4<T, P> const & v, T scalar);
+
388 
+
389  template <typename T, precision P>
+
390  GLM_FUNC_DECL tvec4<T, P> operator^(tvec4<T, P> const & v, tvec1<T, P> const & scalar);
+
391 
+
392  template <typename T, precision P>
+
393  GLM_FUNC_DECL tvec4<T, P> operator^(T scalar, tvec4<T, P> const & v);
+
394 
+
395  template <typename T, precision P>
+
396  GLM_FUNC_DECL tvec4<T, P> operator^(tvec1<T, P> const & scalar, tvec4<T, P> const & v);
+
397 
+
398  template <typename T, precision P>
+
399  GLM_FUNC_DECL tvec4<T, P> operator^(tvec4<T, P> const & v1, tvec4<T, P> const & v2);
+
400 
+
401  template <typename T, precision P>
+
402  GLM_FUNC_DECL tvec4<T, P> operator<<(tvec4<T, P> const & v, T scalar);
+
403 
+
404  template <typename T, precision P>
+
405  GLM_FUNC_DECL tvec4<T, P> operator<<(tvec4<T, P> const & v, tvec1<T, P> const & scalar);
+
406 
+
407  template <typename T, precision P>
+
408  GLM_FUNC_DECL tvec4<T, P> operator<<(T scalar, tvec4<T, P> const & v);
+
409 
+
410  template <typename T, precision P>
+
411  GLM_FUNC_DECL tvec4<T, P> operator<<(tvec1<T, P> const & scalar, tvec4<T, P> const & v);
+
412 
+
413  template <typename T, precision P>
+
414  GLM_FUNC_DECL tvec4<T, P> operator<<(tvec4<T, P> const & v1, tvec4<T, P> const & v2);
+
415 
+
416  template <typename T, precision P>
+
417  GLM_FUNC_DECL tvec4<T, P> operator>>(tvec4<T, P> const & v, T scalar);
+
418 
+
419  template <typename T, precision P>
+
420  GLM_FUNC_DECL tvec4<T, P> operator>>(tvec4<T, P> const & v, tvec1<T, P> const & scalar);
+
421 
+
422  template <typename T, precision P>
+
423  GLM_FUNC_DECL tvec4<T, P> operator>>(T scalar, tvec4<T, P> const & v);
+
424 
+
425  template <typename T, precision P>
+
426  GLM_FUNC_DECL tvec4<T, P> operator>>(tvec1<T, P> const & scalar, tvec4<T, P> const & v);
+
427 
+
428  template <typename T, precision P>
+
429  GLM_FUNC_DECL tvec4<T, P> operator>>(tvec4<T, P> const & v1, tvec4<T, P> const & v2);
+
430 
+
431  template <typename T, precision P>
+
432  GLM_FUNC_DECL tvec4<T, P> operator~(tvec4<T, P> const & v);
+
433 
+
434  // -- Boolean operators --
+
435 
+
436  template <typename T, precision P>
+
437  GLM_FUNC_DECL bool operator==(tvec4<T, P> const & v1, tvec4<T, P> const & v2);
+
438 
+
439  template <typename T, precision P>
+
440  GLM_FUNC_DECL bool operator!=(tvec4<T, P> const & v1, tvec4<T, P> const & v2);
+
441 
+
442  template <precision P>
+
443  GLM_FUNC_DECL tvec4<bool, P> operator&&(tvec4<bool, P> const & v1, tvec4<bool, P> const & v2);
+
444 
+
445  template <precision P>
+
446  GLM_FUNC_DECL tvec4<bool, P> operator||(tvec4<bool, P> const & v1, tvec4<bool, P> const & v2);
+
447 }//namespace glm
+
448 
+
449 #ifndef GLM_EXTERNAL_TEMPLATE
+
450 #include "type_vec4.inl"
+
451 #endif//GLM_EXTERNAL_TEMPLATE
+
GLM Core
+
Definition: _noise.hpp:11
+ +
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x).
+
GLM Core
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00132.html b/third_party/glm_test/doc/api/a00132.html new file mode 100644 index 0000000000000..0b31c51b41a2b --- /dev/null +++ b/third_party/glm_test/doc/api/a00132.html @@ -0,0 +1,91 @@ + + + + + + +0.9.8: ulp.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
ulp.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL uint float_distance (T const &x, T const &y)
 
template<typename T , template< typename > class vecType>
GLM_FUNC_DECL vecType< uint > float_distance (vecType< T > const &x, vecType< T > const &y)
 
template<typename genType >
GLM_FUNC_DECL genType next_float (genType const &x)
 
template<typename genType >
GLM_FUNC_DECL genType next_float (genType const &x, uint const &Distance)
 
template<typename genType >
GLM_FUNC_DECL genType prev_float (genType const &x)
 
template<typename genType >
GLM_FUNC_DECL genType prev_float (genType const &x, uint const &Distance)
 
+

Detailed Description

+

GLM_GTC_ulp

+
See also
GLM Core (dependence)
+ +

Definition in file ulp.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00132_source.html b/third_party/glm_test/doc/api/a00132_source.html new file mode 100644 index 0000000000000..a8bd8ae4334e8 --- /dev/null +++ b/third_party/glm_test/doc/api/a00132_source.html @@ -0,0 +1,101 @@ + + + + + + +0.9.8: ulp.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
ulp.hpp
+
+
+Go to the documentation of this file.
1 
+
14 #pragma once
+
15 
+
16 // Dependencies
+
17 #include "../detail/setup.hpp"
+
18 #include "../detail/precision.hpp"
+
19 #include "../detail/type_int.hpp"
+
20 
+
21 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
22 # pragma message("GLM: GLM_GTC_ulp extension included")
+
23 #endif
+
24 
+
25 namespace glm
+
26 {
+
29 
+
32  template <typename genType>
+
33  GLM_FUNC_DECL genType next_float(genType const & x);
+
34 
+
37  template <typename genType>
+
38  GLM_FUNC_DECL genType prev_float(genType const & x);
+
39 
+
42  template <typename genType>
+
43  GLM_FUNC_DECL genType next_float(genType const & x, uint const & Distance);
+
44 
+
47  template <typename genType>
+
48  GLM_FUNC_DECL genType prev_float(genType const & x, uint const & Distance);
+
49 
+
52  template <typename T>
+
53  GLM_FUNC_DECL uint float_distance(T const & x, T const & y);
+
54 
+
57  template<typename T, template<typename> class vecType>
+
58  GLM_FUNC_DECL vecType<uint> float_distance(vecType<T> const & x, vecType<T> const & y);
+
59 
+
61 }// namespace glm
+
62 
+
63 #include "ulp.inl"
+
unsigned int uint
Unsigned integer type.
Definition: type_int.hpp:288
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL genType prev_float(genType const &x, uint const &Distance)
Return the value(s) ULP distance before the input value(s).
+
GLM_FUNC_DECL genType next_float(genType const &x, uint const &Distance)
Return the value(s) ULP distance after the input value(s).
+
GLM_FUNC_DECL vecType< uint > float_distance(vecType< T > const &x, vecType< T > const &y)
Return the distance in the number of ULP between 2 vectors.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00133.html b/third_party/glm_test/doc/api/a00133.html new file mode 100644 index 0000000000000..dc9036594d174 --- /dev/null +++ b/third_party/glm_test/doc/api/a00133.html @@ -0,0 +1,107 @@ + + + + + + +0.9.8: vec1.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
vec1.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef highp_bvec1 bvec1
 
typedef highp_dvec1 dvec1
 
typedef highp_bvec1_t highp_bvec1
 
typedef highp_dvec1_t highp_dvec1
 
typedef highp_ivec1_t highp_ivec1
 
typedef highp_uvec1_t highp_uvec1
 
typedef highp_ivec1 ivec1
 
typedef lowp_bvec1_t lowp_bvec1
 
typedef lowp_dvec1_t lowp_dvec1
 
typedef lowp_ivec1_t lowp_ivec1
 
typedef lowp_uvec1_t lowp_uvec1
 
typedef mediump_bvec1_t mediump_bvec1
 
typedef mediump_dvec1_t mediump_dvec1
 
typedef mediump_ivec1_t mediump_ivec1
 
typedef mediump_uvec1_t mediump_uvec1
 
typedef highp_uvec1 uvec1
 
typedef highp_vec1 vec1
 
+

Detailed Description

+

GLM_GTC_vec1

+
See also
GLM Core (dependence)
+ +

Definition in file vec1.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00133_source.html b/third_party/glm_test/doc/api/a00133_source.html new file mode 100644 index 0000000000000..7c20417202875 --- /dev/null +++ b/third_party/glm_test/doc/api/a00133_source.html @@ -0,0 +1,159 @@ + + + + + + +0.9.8: vec1.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
vec1.hpp
+
+
+Go to the documentation of this file.
1 
+
12 #pragma once
+
13 
+
14 // Dependency:
+
15 #include "../glm.hpp"
+
16 #include "../detail/type_vec1.hpp"
+
17 
+
18 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
19 # pragma message("GLM: GLM_GTC_vec1 extension included")
+
20 #endif
+
21 
+
22 namespace glm
+
23 {
+
27  typedef highp_vec1_t highp_vec1;
+
28 
+
32  typedef mediump_vec1_t mediump_vec1;
+
33 
+
37  typedef lowp_vec1_t lowp_vec1;
+
38 
+
42  typedef highp_dvec1_t highp_dvec1;
+
43 
+
47  typedef mediump_dvec1_t mediump_dvec1;
+
48 
+
52  typedef lowp_dvec1_t lowp_dvec1;
+
53 
+
57  typedef highp_ivec1_t highp_ivec1;
+
58 
+
62  typedef mediump_ivec1_t mediump_ivec1;
+
63 
+
67  typedef lowp_ivec1_t lowp_ivec1;
+
68 
+
72  typedef highp_uvec1_t highp_uvec1;
+
73 
+
77  typedef mediump_uvec1_t mediump_uvec1;
+
78 
+
82  typedef lowp_uvec1_t lowp_uvec1;
+
83 
+
87  typedef highp_bvec1_t highp_bvec1;
+
88 
+
92  typedef mediump_bvec1_t mediump_bvec1;
+
93 
+
97  typedef lowp_bvec1_t lowp_bvec1;
+
98 
+
100  // vec1 definition
+
101 
+
102 #if(defined(GLM_PRECISION_HIGHP_BOOL))
+
103  typedef highp_bvec1 bvec1;
+
104 #elif(defined(GLM_PRECISION_MEDIUMP_BOOL))
+
105  typedef mediump_bvec1 bvec1;
+
106 #elif(defined(GLM_PRECISION_LOWP_BOOL))
+
107  typedef lowp_bvec1 bvec1;
+
108 #else
+
109  typedef highp_bvec1 bvec1;
+
112 #endif//GLM_PRECISION
+
113 
+
114 #if(defined(GLM_PRECISION_HIGHP_FLOAT))
+
115  typedef highp_vec1 vec1;
+
116 #elif(defined(GLM_PRECISION_MEDIUMP_FLOAT))
+
117  typedef mediump_vec1 vec1;
+
118 #elif(defined(GLM_PRECISION_LOWP_FLOAT))
+
119  typedef lowp_vec1 vec1;
+
120 #else
+
121  typedef highp_vec1 vec1;
+
124 #endif//GLM_PRECISION
+
125 
+
126 #if(defined(GLM_PRECISION_HIGHP_DOUBLE))
+
127  typedef highp_dvec1 dvec1;
+
128 #elif(defined(GLM_PRECISION_MEDIUMP_DOUBLE))
+
129  typedef mediump_dvec1 dvec1;
+
130 #elif(defined(GLM_PRECISION_LOWP_DOUBLE))
+
131  typedef lowp_dvec1 dvec1;
+
132 #else
+
133  typedef highp_dvec1 dvec1;
+
136 #endif//GLM_PRECISION
+
137 
+
138 #if(defined(GLM_PRECISION_HIGHP_INT))
+
139  typedef highp_ivec1 ivec1;
+
140 #elif(defined(GLM_PRECISION_MEDIUMP_INT))
+
141  typedef mediump_ivec1 ivec1;
+
142 #elif(defined(GLM_PRECISION_LOWP_INT))
+
143  typedef lowp_ivec1 ivec1;
+
144 #else
+
145  typedef highp_ivec1 ivec1;
+
148 #endif//GLM_PRECISION
+
149 
+
150 #if(defined(GLM_PRECISION_HIGHP_UINT))
+
151  typedef highp_uvec1 uvec1;
+
152 #elif(defined(GLM_PRECISION_MEDIUMP_UINT))
+
153  typedef mediump_uvec1 uvec1;
+
154 #elif(defined(GLM_PRECISION_LOWP_UINT))
+
155  typedef lowp_uvec1 uvec1;
+
156 #else
+
157  typedef highp_uvec1 uvec1;
+
160 #endif//GLM_PRECISION
+
161 
+
162 }// namespace glm
+
163 
+
164 #include "vec1.inl"
+
Definition: _noise.hpp:11
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00134.html b/third_party/glm_test/doc/api/a00134.html new file mode 100644 index 0000000000000..78d66bac2959e --- /dev/null +++ b/third_party/glm_test/doc/api/a00134.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: vec2.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
vec2.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file vec2.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00134_source.html b/third_party/glm_test/doc/api/a00134_source.html new file mode 100644 index 0000000000000..9018d423b4b51 --- /dev/null +++ b/third_party/glm_test/doc/api/a00134_source.html @@ -0,0 +1,65 @@ + + + + + + +0.9.8: vec2.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
vec2.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "detail/type_vec2.hpp"
+
GLM Core
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00135.html b/third_party/glm_test/doc/api/a00135.html new file mode 100644 index 0000000000000..ee0ef42739c6f --- /dev/null +++ b/third_party/glm_test/doc/api/a00135.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: vec3.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
vec3.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file vec3.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00135_source.html b/third_party/glm_test/doc/api/a00135_source.html new file mode 100644 index 0000000000000..f7a3b5d920e56 --- /dev/null +++ b/third_party/glm_test/doc/api/a00135_source.html @@ -0,0 +1,65 @@ + + + + + + +0.9.8: vec3.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
vec3.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "detail/type_vec3.hpp"
+
GLM Core
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00136.html b/third_party/glm_test/doc/api/a00136.html new file mode 100644 index 0000000000000..abae3831cb55f --- /dev/null +++ b/third_party/glm_test/doc/api/a00136.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: vec4.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
vec4.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file vec4.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00136_source.html b/third_party/glm_test/doc/api/a00136_source.html new file mode 100644 index 0000000000000..6cd883ffcb33c --- /dev/null +++ b/third_party/glm_test/doc/api/a00136_source.html @@ -0,0 +1,65 @@ + + + + + + +0.9.8: vec4.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
vec4.hpp
+
+
+Go to the documentation of this file.
1 
+
4 #pragma once
+
5 
+
6 #include "detail/type_vec4.hpp"
+
GLM Core
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00137.html b/third_party/glm_test/doc/api/a00137.html new file mode 100644 index 0000000000000..e59e541cdbb48 --- /dev/null +++ b/third_party/glm_test/doc/api/a00137.html @@ -0,0 +1,86 @@ + + + + + + +0.9.8: vector_angle.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
vector_angle.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + +

+Functions

template<typename vecType >
GLM_FUNC_DECL vecType::value_type angle (vecType const &x, vecType const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL T orientedAngle (tvec2< T, P > const &x, tvec2< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL T orientedAngle (tvec3< T, P > const &x, tvec3< T, P > const &y, tvec3< T, P > const &ref)
 
+

Detailed Description

+

GLM_GTX_vector_angle

+
See also
GLM Core (dependence)
+
+GLM_GTX_quaternion (dependence)
+
+gtx_epsilon (dependence)
+ +

Definition in file vector_angle.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00137_source.html b/third_party/glm_test/doc/api/a00137_source.html new file mode 100644 index 0000000000000..38af63aca47db --- /dev/null +++ b/third_party/glm_test/doc/api/a00137_source.html @@ -0,0 +1,98 @@ + + + + + + +0.9.8: vector_angle.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
vector_angle.hpp
+
+
+Go to the documentation of this file.
1 
+
15 #pragma once
+
16 
+
17 // Dependency:
+
18 #include "../glm.hpp"
+
19 #include "../gtc/epsilon.hpp"
+
20 #include "../gtx/quaternion.hpp"
+
21 #include "../gtx/rotate_vector.hpp"
+
22 
+
23 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
24 # pragma message("GLM: GLM_GTX_vector_angle extension included")
+
25 #endif
+
26 
+
27 namespace glm
+
28 {
+
31 
+
35  template <typename vecType>
+
36  GLM_FUNC_DECL typename vecType::value_type angle(
+
37  vecType const & x,
+
38  vecType const & y);
+
39 
+
43  template <typename T, precision P>
+
44  GLM_FUNC_DECL T orientedAngle(
+
45  tvec2<T, P> const & x,
+
46  tvec2<T, P> const & y);
+
47 
+
51  template <typename T, precision P>
+
52  GLM_FUNC_DECL T orientedAngle(
+
53  tvec3<T, P> const & x,
+
54  tvec3<T, P> const & y,
+
55  tvec3<T, P> const & ref);
+
56 
+
58 }// namespace glm
+
59 
+
60 #include "vector_angle.inl"
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL vecType::value_type angle(vecType const &x, vecType const &y)
Returns the absolute angle between two vectors.
+
GLM_FUNC_DECL T orientedAngle(tvec3< T, P > const &x, tvec3< T, P > const &y, tvec3< T, P > const &ref)
Returns the oriented angle between two 3d vectors based from a reference axis.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00138.html b/third_party/glm_test/doc/api/a00138.html new file mode 100644 index 0000000000000..00c85dd549c9f --- /dev/null +++ b/third_party/glm_test/doc/api/a00138.html @@ -0,0 +1,91 @@ + + + + + + +0.9.8: vector_query.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
vector_query.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL bool areCollinear (vecType< T, P > const &v0, vecType< T, P > const &v1, T const &epsilon)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL bool areOrthogonal (vecType< T, P > const &v0, vecType< T, P > const &v1, T const &epsilon)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL bool areOrthonormal (vecType< T, P > const &v0, vecType< T, P > const &v1, T const &epsilon)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > isCompNull (vecType< T, P > const &v, T const &epsilon)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL bool isNormalized (vecType< T, P > const &v, T const &epsilon)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL bool isNull (vecType< T, P > const &v, T const &epsilon)
 
+

Detailed Description

+

GLM_GTX_vector_query

+
See also
GLM Core (dependence)
+ +

Definition in file vector_query.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00138_source.html b/third_party/glm_test/doc/api/a00138_source.html new file mode 100644 index 0000000000000..cbd24ba2726e1 --- /dev/null +++ b/third_party/glm_test/doc/api/a00138_source.html @@ -0,0 +1,104 @@ + + + + + + +0.9.8: vector_query.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
vector_query.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 #include <cfloat>
+
18 #include <limits>
+
19 
+
20 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
21 # pragma message("GLM: GLM_GTX_vector_query extension included")
+
22 #endif
+
23 
+
24 namespace glm
+
25 {
+
28 
+
31  template <typename T, precision P, template <typename, precision> class vecType>
+
32  GLM_FUNC_DECL bool areCollinear(vecType<T, P> const & v0, vecType<T, P> const & v1, T const & epsilon);
+
33 
+
36  template <typename T, precision P, template <typename, precision> class vecType>
+
37  GLM_FUNC_DECL bool areOrthogonal(vecType<T, P> const & v0, vecType<T, P> const & v1, T const & epsilon);
+
38 
+
41  template <typename T, precision P, template <typename, precision> class vecType>
+
42  GLM_FUNC_DECL bool isNormalized(vecType<T, P> const & v, T const & epsilon);
+
43 
+
46  template <typename T, precision P, template <typename, precision> class vecType>
+
47  GLM_FUNC_DECL bool isNull(vecType<T, P> const & v, T const & epsilon);
+
48 
+
51  template <typename T, precision P, template <typename, precision> class vecType>
+
52  GLM_FUNC_DECL vecType<bool, P> isCompNull(vecType<T, P> const & v, T const & epsilon);
+
53 
+
56  template <typename T, precision P, template <typename, precision> class vecType>
+
57  GLM_FUNC_DECL bool areOrthonormal(vecType<T, P> const & v0, vecType<T, P> const & v1, T const & epsilon);
+
58 
+
60 }// namespace glm
+
61 
+
62 #include "vector_query.inl"
+
GLM_FUNC_DECL bool isNormalized(vecType< T, P > const &v, T const &epsilon)
Check whether a vector is normalized.
+
GLM_FUNC_DECL GLM_CONSTEXPR genType epsilon()
Return the epsilon constant for floating point types.
+
Definition: _noise.hpp:11
+
GLM_FUNC_DECL bool areOrthonormal(vecType< T, P > const &v0, vecType< T, P > const &v1, T const &epsilon)
Check whether two vectors are orthonormal.
+
GLM_FUNC_DECL bool areOrthogonal(vecType< T, P > const &v0, vecType< T, P > const &v1, T const &epsilon)
Check whether two vectors are orthogonals.
+
GLM_FUNC_DECL vecType< bool, P > isCompNull(vecType< T, P > const &v, T const &epsilon)
Check whether a each component of a vector is null.
+
GLM_FUNC_DECL bool areCollinear(vecType< T, P > const &v0, vecType< T, P > const &v1, T const &epsilon)
Check whether two vectors are collinears.
+
GLM_FUNC_DECL bool isNull(vecType< T, P > const &v, T const &epsilon)
Check whether a vector is null.
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00139.html b/third_party/glm_test/doc/api/a00139.html new file mode 100644 index 0000000000000..584425c27c91b --- /dev/null +++ b/third_party/glm_test/doc/api/a00139.html @@ -0,0 +1,66 @@ + + + + + + +0.9.8: vector_relational.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
vector_relational.hpp File Reference
+
+
+ +

Go to the source code of this file.

+

Detailed Description

+

GLM Core

+ +

Definition in file vector_relational.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00139_source.html b/third_party/glm_test/doc/api/a00139_source.html new file mode 100644 index 0000000000000..3ceca0c0be22c --- /dev/null +++ b/third_party/glm_test/doc/api/a00139_source.html @@ -0,0 +1,65 @@ + + + + + + +0.9.8: vector_relational.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
vector_relational.hpp
+
+ + + + + diff --git a/third_party/glm_test/doc/api/a00140.html b/third_party/glm_test/doc/api/a00140.html new file mode 100644 index 0000000000000..d790d10af3f82 --- /dev/null +++ b/third_party/glm_test/doc/api/a00140.html @@ -0,0 +1,85 @@ + + + + + + +0.9.8: wrap.hpp File Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+ +
+
wrap.hpp File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType clamp (genType const &Texcoord)
 
template<typename genType >
GLM_FUNC_DECL genType mirrorClamp (genType const &Texcoord)
 
template<typename genType >
GLM_FUNC_DECL genType mirrorRepeat (genType const &Texcoord)
 
template<typename genType >
GLM_FUNC_DECL genType repeat (genType const &Texcoord)
 
+

Detailed Description

+

GLM_GTX_wrap

+
See also
GLM Core (dependence)
+ +

Definition in file wrap.hpp.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00140_source.html b/third_party/glm_test/doc/api/a00140_source.html new file mode 100644 index 0000000000000..8c663e75057a9 --- /dev/null +++ b/third_party/glm_test/doc/api/a00140_source.html @@ -0,0 +1,94 @@ + + + + + + +0.9.8: wrap.hpp Source File + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + + +
+
+
+
wrap.hpp
+
+
+Go to the documentation of this file.
1 
+
13 #pragma once
+
14 
+
15 // Dependency:
+
16 #include "../glm.hpp"
+
17 #include "../gtc/vec1.hpp"
+
18 
+
19 #if GLM_MESSAGES == GLM_MESSAGES_ENABLED && !defined(GLM_EXT_INCLUDED)
+
20 # pragma message("GLM: GLM_GTX_wrap extension included")
+
21 #endif
+
22 
+
23 namespace glm
+
24 {
+
27 
+
30  template <typename genType>
+
31  GLM_FUNC_DECL genType clamp(genType const& Texcoord);
+
32 
+
35  template <typename genType>
+
36  GLM_FUNC_DECL genType repeat(genType const& Texcoord);
+
37 
+
40  template <typename genType>
+
41  GLM_FUNC_DECL genType mirrorClamp(genType const& Texcoord);
+
42 
+
45  template <typename genType>
+
46  GLM_FUNC_DECL genType mirrorRepeat(genType const& Texcoord);
+
47 
+
49 }// namespace glm
+
50 
+
51 #include "wrap.inl"
+
GLM_FUNC_DECL genType clamp(genType const &Texcoord)
Simulate GL_CLAMP OpenGL wrap mode.
+
GLM_FUNC_DECL genType repeat(genType const &Texcoord)
Simulate GL_REPEAT OpenGL wrap mode.
+
GLM_FUNC_DECL genType mirrorRepeat(genType const &Texcoord)
Simulate GL_MIRROR_REPEAT OpenGL wrap mode.
+
GLM_FUNC_DECL genType mirrorClamp(genType const &Texcoord)
Simulate GL_MIRRORED_REPEAT OpenGL wrap mode.
+
Definition: _noise.hpp:11
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00146.html b/third_party/glm_test/doc/api/a00146.html new file mode 100644 index 0000000000000..429ee297720d7 --- /dev/null +++ b/third_party/glm_test/doc/api/a00146.html @@ -0,0 +1,1123 @@ + + + + + + +0.9.8: Common functions + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
Common functions
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType abs (genType x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > ceil (vecType< T, P > const &x)
 
template<typename genType >
GLM_FUNC_DECL genType clamp (genType x, genType minVal, genType maxVal)
 
GLM_FUNC_DECL int floatBitsToInt (float const &v)
 
template<template< typename, precision > class vecType, precision P>
GLM_FUNC_DECL vecType< int, P > floatBitsToInt (vecType< float, P > const &v)
 
GLM_FUNC_DECL uint floatBitsToUint (float const &v)
 
template<template< typename, precision > class vecType, precision P>
GLM_FUNC_DECL vecType< uint, P > floatBitsToUint (vecType< float, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > floor (vecType< T, P > const &x)
 
template<typename genType >
GLM_FUNC_DECL genType fma (genType const &a, genType const &b, genType const &c)
 
template<typename genType >
GLM_FUNC_DECL genType fract (genType x)
 
template<typename genType , typename genIType >
GLM_FUNC_DECL genType frexp (genType const &x, genIType &exp)
 
GLM_FUNC_DECL float intBitsToFloat (int const &v)
 
template<template< typename, precision > class vecType, precision P>
GLM_FUNC_DECL vecType< float, P > intBitsToFloat (vecType< int, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > isinf (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > isnan (vecType< T, P > const &x)
 
template<typename genType , typename genIType >
GLM_FUNC_DECL genType ldexp (genType const &x, genIType const &exp)
 
template<typename genType >
GLM_FUNC_DECL genType max (genType x, genType y)
 
template<typename genType >
GLM_FUNC_DECL genType min (genType x, genType y)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > mix (vecType< T, P > const &x, vecType< T, P > const &y, vecType< U, P > const &a)
 
template<typename genType >
GLM_FUNC_DECL genType mod (genType x, genType y)
 
template<typename genType >
GLM_FUNC_DECL genType modf (genType x, genType &i)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > round (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > roundEven (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > sign (vecType< T, P > const &x)
 
template<typename genType >
GLM_FUNC_DECL genType smoothstep (genType edge0, genType edge1, genType x)
 
template<typename genType >
GLM_FUNC_DECL genType step (genType edge, genType x)
 
template<template< typename, precision > class vecType, typename T , precision P>
GLM_FUNC_DECL vecType< T, P > step (T edge, vecType< T, P > const &x)
 
template<template< typename, precision > class vecType, typename T , precision P>
GLM_FUNC_DECL vecType< T, P > step (vecType< T, P > const &edge, vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > trunc (vecType< T, P > const &x)
 
GLM_FUNC_DECL float uintBitsToFloat (uint const &v)
 
template<template< typename, precision > class vecType, precision P>
GLM_FUNC_DECL vecType< float, P > uintBitsToFloat (vecType< uint, P > const &v)
 
+

Detailed Description

+

These all operate component-wise.

+

The description is per component.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::abs (genType x)
+
+ +

Returns x if x >= 0; otherwise, it returns -x.

+
Template Parameters
+ + +
genTypefloating-point or signed integer; scalar or vector types.
+
+
+
See also
GLSL abs man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::ceil (vecType< T, P > const & x)
+
+ +

Returns a value equal to the nearest integer that is greater than or equal to x.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL ceil man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::clamp (genType x,
genType minVal,
genType maxVal 
)
+
+ +

Returns min(max(x, minVal), maxVal) for each component in x using the floating-point values minVal and maxVal.

+
Template Parameters
+ + +
genTypeFloating-point or integer; scalar or vector types.
+
+
+
See also
GLSL clamp man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +

Referenced by glm::saturate().

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL int glm::floatBitsToInt (float const & v)
+
+ +

Returns a signed integer value representing the encoding of a floating-point value.

+

The floating-point value's bit-level representation is preserved.

+
See also
GLSL floatBitsToInt man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<int, P> glm::floatBitsToInt (vecType< float, P > const & v)
+
+ +

Returns a signed integer value representing the encoding of a floating-point value.

+

The floatingpoint value's bit-level representation is preserved.

+
See also
GLSL floatBitsToInt man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint glm::floatBitsToUint (float const & v)
+
+ +

Returns a unsigned integer value representing the encoding of a floating-point value.

+

The floatingpoint value's bit-level representation is preserved.

+
See also
GLSL floatBitsToUint man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<uint, P> glm::floatBitsToUint (vecType< float, P > const & v)
+
+ +

Returns a unsigned integer value representing the encoding of a floating-point value.

+

The floatingpoint value's bit-level representation is preserved.

+
See also
GLSL floatBitsToUint man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::floor (vecType< T, P > const & x)
+
+ +

Returns a value equal to the nearest integer that is less then or equal to x.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL floor man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::fma (genType const & a,
genType const & b,
genType const & c 
)
+
+ +

Computes and returns a * b + c.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL fma man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::fract (genType x)
+
+ +

Return x - floor(x).

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL fract man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::frexp (genType const & x,
genIType & exp 
)
+
+ +

Splits x into a floating-point significand in the range [0.5, 1.0) and an integral exponent of two, such that: x = significand * exp(2, exponent)

+

The significand is returned by the function and the exponent is returned in the parameter exp. For a floating-point value of zero, the significant and exponent are both zero. For a floating-point value that is an infinity or is not a number, the results are undefined.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL frexp man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL float glm::intBitsToFloat (int const & v)
+
+ +

Returns a floating-point value corresponding to a signed integer encoding of a floating-point value.

+

If an inf or NaN is passed in, it will not signal, and the resulting floating point value is unspecified. Otherwise, the bit-level representation is preserved.

+
See also
GLSL intBitsToFloat man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<float, P> glm::intBitsToFloat (vecType< int, P > const & v)
+
+ +

Returns a floating-point value corresponding to a signed integer encoding of a floating-point value.

+

If an inf or NaN is passed in, it will not signal, and the resulting floating point value is unspecified. Otherwise, the bit-level representation is preserved.

+
See also
GLSL intBitsToFloat man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<bool, P> glm::isinf (vecType< T, P > const & x)
+
+ +

Returns true if x holds a positive infinity or negative infinity representation in the underlying implementation's set of floating point representations.

+

Returns false otherwise, including for implementations with no infinity representations.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL isinf man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<bool, P> glm::isnan (vecType< T, P > const & x)
+
+ +

Returns true if x holds a NaN (not a number) representation in the underlying implementation's set of floating point representations.

+

Returns false otherwise, including for implementations with no NaN representations.

+

/!\ When using compiler fast math, this function may fail.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL isnan man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::ldexp (genType const & x,
genIType const & exp 
)
+
+ +

Builds a floating-point number from x and the corresponding integral exponent of two in exp, returning: significand * exp(2, exponent)

+

If this product is too large to be represented in the floating-point type, the result is undefined.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL ldexp man page;
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::max (genType x,
genType y 
)
+
+ +

Returns y if x < y; otherwise, it returns x.

+
Template Parameters
+ + +
genTypeFloating-point or integer; scalar or vector types.
+
+
+
See also
GLSL max man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::min (genType x,
genType y 
)
+
+ +

Returns y if y < x; otherwise, it returns x.

+
Template Parameters
+ + +
genTypeFloating-point or integer; scalar or vector types.
+
+
+
See also
GLSL min man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::mix (vecType< T, P > const & x,
vecType< T, P > const & y,
vecType< U, P > const & a 
)
+
+ +

If genTypeU is a floating scalar or vector: Returns x * (1.0 - a) + y * a, i.e., the linear blend of x and y using the floating-point value a.

+

The value for a is not restricted to the range [0, 1].

+

If genTypeU is a boolean scalar or vector: Selects which vector each returned component comes from. For a component of that is false, the corresponding component of x is returned. For a component of a that is true, the corresponding component of y is returned. Components of x and y that are not selected are allowed to be invalid floating point values and will have no effect on the results. Thus, this provides different functionality than genType mix(genType x, genType y, genType(a)) where a is a Boolean vector.

+
See also
GLSL mix man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+
Parameters
+ + + + +
[in]xValue to interpolate.
[in]yValue to interpolate.
[in]aInterpolant.
+
+
+
Template Parameters
+ + + +
genTypeTFloating point scalar or vector.
genTypeUFloating point or boolean scalar or vector. It can't be a vector if it is the length of genTypeT.
+
+
+
#include <glm/glm.hpp>
+
...
+
float a;
+
bool b;
+ + + + +
...
+
glm::vec4 r = glm::mix(g, h, a); // Interpolate with a floating-point scalar two vectors.
+
glm::vec4 s = glm::mix(g, h, b); // Teturns g or h;
+
glm::dvec3 t = glm::mix(e, f, a); // Types of the third parameter is not required to match with the first and the second.
+
glm::vec4 u = glm::mix(g, h, r); // Interpolations can be perform per component with a vector for the last parameter.
+
+

Referenced by glm::lerp().

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::mod (genType x,
genType y 
)
+
+ +

Modulus.

+

Returns x - y * floor(x / y) for each component in x using the floating point value y.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL mod man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::modf (genType x,
genType & i 
)
+
+ +

Returns the fractional part of x and sets i to the integer part (as a whole number floating point value).

+

Both the return value and the output parameter will have the same sign as x.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL modf man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::round (vecType< T, P > const & x)
+
+ +

Returns a value equal to the nearest integer to x.

+

The fraction 0.5 will round in a direction chosen by the implementation, presumably the direction that is fastest. This includes the possibility that round(x) returns the same value as roundEven(x) for all values of x.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL round man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::roundEven (vecType< T, P > const & x)
+
+ +

Returns a value equal to the nearest integer to x.

+

A fractional part of 0.5 will round toward the nearest even integer. (Both 3.5 and 4.5 for x will return 4.0.)

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL roundEven man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+
+New round to even technique
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::sign (vecType< T, P > const & x)
+
+ +

Returns 1.0 if x > 0, 0.0 if x == 0, or -1.0 if x < 0.

+
Template Parameters
+ + +
genTypeFloating-point or signed integer; scalar or vector types.
+
+
+
See also
GLSL sign man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::smoothstep (genType edge0,
genType edge1,
genType x 
)
+
+ +

Returns 0.0 if x <= edge0 and 1.0 if x >= edge1 and performs smooth Hermite interpolation between 0 and 1 when edge0 < x < edge1.

+

This is useful in cases where you would want a threshold function with a smooth transition. This is equivalent to: genType t; t = clamp ((x - edge0) / (edge1 - edge0), 0, 1); return t * t * (3 - 2 * t); Results are undefined if edge0 >= edge1.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL smoothstep man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::step (genType edge,
genType x 
)
+
+ +

Returns 0.0 if x < edge, otherwise it returns 1.0 for each component of a genType.

+
See also
GLSL step man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::step (edge,
vecType< T, P > const & x 
)
+
+ +

Returns 0.0 if x < edge, otherwise it returns 1.0.

+
See also
GLSL step man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::step (vecType< T, P > const & edge,
vecType< T, P > const & x 
)
+
+ +

Returns 0.0 if x < edge, otherwise it returns 1.0.

+
See also
GLSL step man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::trunc (vecType< T, P > const & x)
+
+ +

Returns a value equal to the nearest integer to x whose absolute value is not larger than the absolute value of x.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL trunc man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL float glm::uintBitsToFloat (uint const & v)
+
+ +

Returns a floating-point value corresponding to a unsigned integer encoding of a floating-point value.

+

If an inf or NaN is passed in, it will not signal, and the resulting floating point value is unspecified. Otherwise, the bit-level representation is preserved.

+
See also
GLSL uintBitsToFloat man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<float, P> glm::uintBitsToFloat (vecType< uint, P > const & v)
+
+ +

Returns a floating-point value corresponding to a unsigned integer encoding of a floating-point value.

+

If an inf or NaN is passed in, it will not signal, and the resulting floating point value is unspecified. Otherwise, the bit-level representation is preserved.

+
See also
GLSL uintBitsToFloat man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00147.html b/third_party/glm_test/doc/api/a00147.html new file mode 100644 index 0000000000000..2e27dd8c154f9 --- /dev/null +++ b/third_party/glm_test/doc/api/a00147.html @@ -0,0 +1,325 @@ + + + + + + +0.9.8: Exponential functions + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
Exponential functions
+
+
+ + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > exp (vecType< T, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > exp2 (vecType< T, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > inversesqrt (vecType< T, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > log (vecType< T, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > log2 (vecType< T, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > pow (vecType< T, P > const &base, vecType< T, P > const &exponent)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > sqrt (vecType< T, P > const &v)
 
+

Detailed Description

+

These all operate component-wise.

+

The description is per component.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::exp (vecType< T, P > const & v)
+
+ +

Returns the natural exponentiation of x, i.e., e^x.

+
Parameters
+ + +
vexp function is defined for input values of v defined in the range (inf-, inf+) in the limit of the type precision.
+
+
+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL exp man page
+
+GLSL 4.20.8 specification, section 8.2 Exponential Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::exp2 (vecType< T, P > const & v)
+
+ +

Returns 2 raised to the v power.

+
Parameters
+ + +
vexp2 function is defined for input values of v defined in the range (inf-, inf+) in the limit of the type precision.
+
+
+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL exp2 man page
+
+GLSL 4.20.8 specification, section 8.2 Exponential Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::inversesqrt (vecType< T, P > const & v)
+
+ +

Returns the reciprocal of the positive square root of v.

+
Parameters
+ + +
vinversesqrt function is defined for input values of v defined in the range [0, inf+) in the limit of the type precision.
+
+
+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL inversesqrt man page
+
+GLSL 4.20.8 specification, section 8.2 Exponential Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::log (vecType< T, P > const & v)
+
+ +

Returns the natural logarithm of v, i.e., returns the value y which satisfies the equation x = e^y.

+

Results are undefined if v <= 0.

+
Parameters
+ + +
vlog function is defined for input values of v defined in the range (0, inf+) in the limit of the type precision.
+
+
+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL log man page
+
+GLSL 4.20.8 specification, section 8.2 Exponential Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::log2 (vecType< T, P > const & v)
+
+ +

Returns the base 2 log of x, i.e., returns the value y, which satisfies the equation x = 2 ^ y.

+
Parameters
+ + +
vlog2 function is defined for input values of v defined in the range (0, inf+) in the limit of the type precision.
+
+
+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL log2 man page
+
+GLSL 4.20.8 specification, section 8.2 Exponential Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::pow (vecType< T, P > const & base,
vecType< T, P > const & exponent 
)
+
+ +

Returns 'base' raised to the power 'exponent'.

+
Parameters
+ + + +
baseFloating point value. pow function is defined for input values of 'base' defined in the range (inf-, inf+) in the limit of the type precision.
exponentFloating point value representing the 'exponent'.
+
+
+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL pow man page
+
+GLSL 4.20.8 specification, section 8.2 Exponential Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::sqrt (vecType< T, P > const & v)
+
+ +

Returns the positive square root of v.

+
Parameters
+ + +
vsqrt function is defined for input values of v defined in the range [0, inf+) in the limit of the type precision.
+
+
+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL sqrt man page
+
+GLSL 4.20.8 specification, section 8.2 Exponential Functions
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00148.html b/third_party/glm_test/doc/api/a00148.html new file mode 100644 index 0000000000000..5d0a08162038c --- /dev/null +++ b/third_party/glm_test/doc/api/a00148.html @@ -0,0 +1,367 @@ + + + + + + +0.9.8: Geometric functions + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
Geometric functions
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > cross (tvec3< T, P > const &x, tvec3< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T distance (vecType< T, P > const &p0, vecType< T, P > const &p1)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T dot (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > faceforward (vecType< T, P > const &N, vecType< T, P > const &I, vecType< T, P > const &Nref)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T length (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > normalize (vecType< T, P > const &x)
 
template<typename genType >
GLM_FUNC_DECL genType reflect (genType const &I, genType const &N)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > refract (vecType< T, P > const &I, vecType< T, P > const &N, T eta)
 
+

Detailed Description

+

These operate on vectors as vectors, not component-wise.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::cross (tvec3< T, P > const & x,
tvec3< T, P > const & y 
)
+
+ +

Returns the cross product of x and y.

+
Template Parameters
+ + +
valTypeFloating-point scalar types.
+
+
+
See also
GLSL cross man page
+
+GLSL 4.20.8 specification, section 8.5 Geometric Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::distance (vecType< T, P > const & p0,
vecType< T, P > const & p1 
)
+
+ +

Returns the distance betwwen p0 and p1, i.e., length(p0 - p1).

+
Template Parameters
+ + +
genTypeFloating-point vector types.
+
+
+
See also
GLSL distance man page
+
+GLSL 4.20.8 specification, section 8.5 Geometric Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::dot (vecType< T, P > const & x,
vecType< T, P > const & y 
)
+
+ +

Returns the dot product of x and y, i.e., result = x * y.

+
Template Parameters
+ + +
genTypeFloating-point vector types.
+
+
+
See also
GLSL dot man page
+
+GLSL 4.20.8 specification, section 8.5 Geometric Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::faceforward (vecType< T, P > const & N,
vecType< T, P > const & I,
vecType< T, P > const & Nref 
)
+
+ +

If dot(Nref, I) < 0.0, return N, otherwise, return -N.

+
Template Parameters
+ + +
genTypeFloating-point vector types.
+
+
+
See also
GLSL faceforward man page
+
+GLSL 4.20.8 specification, section 8.5 Geometric Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::length (vecType< T, P > const & x)
+
+ +

Returns the length of x, i.e., sqrt(x * x).

+
Template Parameters
+ + +
genTypeFloating-point vector types.
+
+
+
See also
GLSL length man page
+
+GLSL 4.20.8 specification, section 8.5 Geometric Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::normalize (vecType< T, P > const & x)
+
+ +

Returns a vector in the same direction as x but with length of 1.

+

According to issue 10 GLSL 1.10 specification, if length(x) == 0 then result is undefined and generate an error.

+
See also
GLSL normalize man page
+
+GLSL 4.20.8 specification, section 8.5 Geometric Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::reflect (genType const & I,
genType const & N 
)
+
+ +

For the incident vector I and surface orientation N, returns the reflection direction : result = I - 2.0 * dot(N, I) * N.

+
Template Parameters
+ + +
genTypeFloating-point vector types.
+
+
+
See also
GLSL reflect man page
+
+GLSL 4.20.8 specification, section 8.5 Geometric Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::refract (vecType< T, P > const & I,
vecType< T, P > const & N,
eta 
)
+
+ +

For the incident vector I and surface normal N, and the ratio of indices of refraction eta, return the refraction vector.

+
Template Parameters
+ + +
genTypeFloating-point vector types.
+
+
+
See also
GLSL refract man page
+
+GLSL 4.20.8 specification, section 8.5 Geometric Functions
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00149.html b/third_party/glm_test/doc/api/a00149.html new file mode 100644 index 0000000000000..e2bee04e77923 --- /dev/null +++ b/third_party/glm_test/doc/api/a00149.html @@ -0,0 +1,577 @@ + + + + + + +0.9.8: Integer functions + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
Integer functions
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL int bitCount (genType v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< int, P > bitCount (vecType< T, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > bitfieldExtract (vecType< T, P > const &Value, int Offset, int Bits)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > bitfieldInsert (vecType< T, P > const &Base, vecType< T, P > const &Insert, int Offset, int Bits)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > bitfieldReverse (vecType< T, P > const &v)
 
template<typename genIUType >
GLM_FUNC_DECL int findLSB (genIUType x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< int, P > findLSB (vecType< T, P > const &v)
 
template<typename genIUType >
GLM_FUNC_DECL int findMSB (genIUType x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< int, P > findMSB (vecType< T, P > const &v)
 
template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL void imulExtended (vecType< int, P > const &x, vecType< int, P > const &y, vecType< int, P > &msb, vecType< int, P > &lsb)
 
template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< uint, P > uaddCarry (vecType< uint, P > const &x, vecType< uint, P > const &y, vecType< uint, P > &carry)
 
template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL void umulExtended (vecType< uint, P > const &x, vecType< uint, P > const &y, vecType< uint, P > &msb, vecType< uint, P > &lsb)
 
template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< uint, P > usubBorrow (vecType< uint, P > const &x, vecType< uint, P > const &y, vecType< uint, P > &borrow)
 
+

Detailed Description

+

These all operate component-wise.

+

The description is per component. The notation [a, b] means the set of bits from bit-number a through bit-number b, inclusive. The lowest-order bit is bit 0.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL int glm::bitCount (genType v)
+
+ +

Returns the number of bits set to 1 in the binary representation of value.

+
Template Parameters
+ + +
TSigned or unsigned integer scalar or vector types.
+
+
+
See also
GLSL bitCount man page
+
+GLSL 4.20.8 specification, section 8.8 Integer Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<int, P> glm::bitCount (vecType< T, P > const & v)
+
+ +

Returns the number of bits set to 1 in the binary representation of value.

+
Template Parameters
+ + +
TSigned or unsigned integer scalar or vector types.
+
+
+
See also
GLSL bitCount man page
+
+GLSL 4.20.8 specification, section 8.8 Integer Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::bitfieldExtract (vecType< T, P > const & Value,
int Offset,
int Bits 
)
+
+ +

Extracts bits [offset, offset + bits - 1] from value, returning them in the least significant bits of the result.

+

For unsigned data types, the most significant bits of the result will be set to zero. For signed data types, the most significant bits will be set to the value of bit offset + base - 1.

+

If bits is zero, the result will be zero. The result will be undefined if offset or bits is negative, or if the sum of offset and bits is greater than the number of bits used to store the operand.

+
Template Parameters
+ + +
TSigned or unsigned integer scalar or vector types.
+
+
+
See also
GLSL bitfieldExtract man page
+
+GLSL 4.20.8 specification, section 8.8 Integer Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::bitfieldInsert (vecType< T, P > const & Base,
vecType< T, P > const & Insert,
int Offset,
int Bits 
)
+
+ +

Returns the insertion the bits least-significant bits of insert into base.

+

The result will have bits [offset, offset + bits - 1] taken from bits [0, bits - 1] of insert, and all other bits taken directly from the corresponding bits of base. If bits is zero, the result will simply be base. The result will be undefined if offset or bits is negative, or if the sum of offset and bits is greater than the number of bits used to store the operand.

+
Template Parameters
+ + +
TSigned or unsigned integer scalar or vector types.
+
+
+
See also
GLSL bitfieldInsert man page
+
+GLSL 4.20.8 specification, section 8.8 Integer Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::bitfieldReverse (vecType< T, P > const & v)
+
+ +

Returns the reversal of the bits of value.

+

The bit numbered n of the result will be taken from bit (bits - 1) - n of value, where bits is the total number of bits used to represent value.

+
Template Parameters
+ + +
TSigned or unsigned integer scalar or vector types.
+
+
+
See also
GLSL bitfieldReverse man page
+
+GLSL 4.20.8 specification, section 8.8 Integer Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL int glm::findLSB (genIUType x)
+
+ +

Returns the bit number of the least significant bit set to 1 in the binary representation of value.

+

If value is zero, -1 will be returned.

+
Template Parameters
+ + +
TSigned or unsigned integer scalar types.
+
+
+
See also
GLSL findLSB man page
+
+GLSL 4.20.8 specification, section 8.8 Integer Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<int, P> glm::findLSB (vecType< T, P > const & v)
+
+ +

Returns the bit number of the least significant bit set to 1 in the binary representation of value.

+

If value is zero, -1 will be returned.

+
Template Parameters
+ + +
TSigned or unsigned integer scalar types.
+
+
+
See also
GLSL findLSB man page
+
+GLSL 4.20.8 specification, section 8.8 Integer Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL int glm::findMSB (genIUType x)
+
+ +

Returns the bit number of the most significant bit in the binary representation of value.

+

For positive integers, the result will be the bit number of the most significant bit set to 1. For negative integers, the result will be the bit number of the most significant bit set to 0. For a value of zero or negative one, -1 will be returned.

+
Template Parameters
+ + +
TSigned or unsigned integer scalar types.
+
+
+
See also
GLSL findMSB man page
+
+GLSL 4.20.8 specification, section 8.8 Integer Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<int, P> glm::findMSB (vecType< T, P > const & v)
+
+ +

Returns the bit number of the most significant bit in the binary representation of value.

+

For positive integers, the result will be the bit number of the most significant bit set to 1. For negative integers, the result will be the bit number of the most significant bit set to 0. For a value of zero or negative one, -1 will be returned.

+
Template Parameters
+ + +
TSigned or unsigned integer scalar types.
+
+
+
See also
GLSL findMSB man page
+
+GLSL 4.20.8 specification, section 8.8 Integer Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL void glm::imulExtended (vecType< int, P > const & x,
vecType< int, P > const & y,
vecType< int, P > & msb,
vecType< int, P > & lsb 
)
+
+ +

Multiplies 32-bit integers x and y, producing a 64-bit result.

+

The 32 least-significant bits are returned in lsb. The 32 most-significant bits are returned in msb.

+
Template Parameters
+ + +
genITypeSigned integer scalar or vector types.
+
+
+
See also
GLSL imulExtended man page
+
+GLSL 4.20.8 specification, section 8.8 Integer Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<uint, P> glm::uaddCarry (vecType< uint, P > const & x,
vecType< uint, P > const & y,
vecType< uint, P > & carry 
)
+
+ +

Adds 32-bit unsigned integer x and y, returning the sum modulo pow(2, 32).

+

The value carry is set to 0 if the sum was less than pow(2, 32), or to 1 otherwise.

+
Template Parameters
+ + +
genUTypeUnsigned integer scalar or vector types.
+
+
+
See also
GLSL uaddCarry man page
+
+GLSL 4.20.8 specification, section 8.8 Integer Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL void glm::umulExtended (vecType< uint, P > const & x,
vecType< uint, P > const & y,
vecType< uint, P > & msb,
vecType< uint, P > & lsb 
)
+
+ +

Multiplies 32-bit integers x and y, producing a 64-bit result.

+

The 32 least-significant bits are returned in lsb. The 32 most-significant bits are returned in msb.

+
Template Parameters
+ + +
genUTypeUnsigned integer scalar or vector types.
+
+
+
See also
GLSL umulExtended man page
+
+GLSL 4.20.8 specification, section 8.8 Integer Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<uint, P> glm::usubBorrow (vecType< uint, P > const & x,
vecType< uint, P > const & y,
vecType< uint, P > & borrow 
)
+
+ +

Subtracts the 32-bit unsigned integer y from x, returning the difference if non-negative, or pow(2, 32) plus the difference otherwise.

+

The value borrow is set to 0 if x >= y, or to 1 otherwise.

+
Template Parameters
+ + +
genUTypeUnsigned integer scalar or vector types.
+
+
+
See also
GLSL usubBorrow man page
+
+GLSL 4.20.8 specification, section 8.8 Integer Functions
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00150.html b/third_party/glm_test/doc/api/a00150.html new file mode 100644 index 0000000000000..8ea665de9276c --- /dev/null +++ b/third_party/glm_test/doc/api/a00150.html @@ -0,0 +1,210 @@ + + + + + + +0.9.8: Matrix functions + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
Matrix functions
+
+
+ + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class matType>
GLM_FUNC_DECL T determinant (matType< T, P > const &m)
 
template<typename T , precision P, template< typename, precision > class matType>
GLM_FUNC_DECL matType< T, P > inverse (matType< T, P > const &m)
 
template<typename T , precision P, template< typename, precision > class matType>
GLM_FUNC_DECL matType< T, P > matrixCompMult (matType< T, P > const &x, matType< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecTypeA, template< typename, precision > class vecTypeB>
GLM_FUNC_DECL detail::outerProduct_trait< T, P, vecTypeA, vecTypeB >::type outerProduct (vecTypeA< T, P > const &c, vecTypeB< T, P > const &r)
 
+

Detailed Description

+

For each of the following built-in matrix functions, there is both a single-precision floating point version, where all arguments and return values are single precision, and a double-precision floating version, where all arguments and return values are double precision.

+

Only the single-precision floating point version is shown.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::determinant (matType< T, P > const & m)
+
+ +

Returns the transposed matrix of x.

+
Template Parameters
+ + +
matTypeFloating-point matrix types.
+
+
+
See also
GLSL transpose man page
+
+GLSL 4.20.8 specification, section 8.6 Matrix Functions Return the determinant of a squared matrix.
+
Template Parameters
+ + +
valTypeFloating-point scalar types.
+
+
+
See also
GLSL determinant man page
+
+GLSL 4.20.8 specification, section 8.6 Matrix Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL matType< T, P > inverse (matType< T, P > const & m)
+
+ +

Return the inverse of a squared matrix.

+
Template Parameters
+ + +
valTypeFloating-point scalar types.
+
+
+
See also
GLSL inverse man page
+
+GLSL 4.20.8 specification, section 8.6 Matrix Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL matType<T, P> glm::matrixCompMult (matType< T, P > const & x,
matType< T, P > const & y 
)
+
+ +

Multiply matrix x by matrix y component-wise, i.e., result[i][j] is the scalar product of x[i][j] and y[i][j].

+
Template Parameters
+ + +
matTypeFloating-point matrix types.
+
+
+
See also
GLSL matrixCompMult man page
+
+GLSL 4.20.8 specification, section 8.6 Matrix Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL detail::outerProduct_trait<T, P, vecTypeA, vecTypeB>::type glm::outerProduct (vecTypeA< T, P > const & c,
vecTypeB< T, P > const & r 
)
+
+ +

Treats the first parameter c as a column vector and the second parameter r as a row vector and does a linear algebraic matrix multiply c * r.

+
Template Parameters
+ + +
matTypeFloating-point matrix types.
+
+
+
See also
GLSL outerProduct man page
+
+GLSL 4.20.8 specification, section 8.6 Matrix Functions
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00151.html b/third_party/glm_test/doc/api/a00151.html new file mode 100644 index 0000000000000..8c7f9821af092 --- /dev/null +++ b/third_party/glm_test/doc/api/a00151.html @@ -0,0 +1,364 @@ + + + + + + +0.9.8: Floating-Point Pack and Unpack Functions + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
Floating-Point Pack and Unpack Functions
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

GLM_FUNC_DECL double packDouble2x32 (uvec2 const &v)
 
GLM_FUNC_DECL uint packHalf2x16 (vec2 const &v)
 
GLM_FUNC_DECL uint packSnorm2x16 (vec2 const &v)
 
GLM_FUNC_DECL uint packSnorm4x8 (vec4 const &v)
 
GLM_FUNC_DECL uint packUnorm2x16 (vec2 const &v)
 
GLM_FUNC_DECL uint packUnorm4x8 (vec4 const &v)
 
GLM_FUNC_DECL uvec2 unpackDouble2x32 (double v)
 
GLM_FUNC_DECL vec2 unpackHalf2x16 (uint v)
 
GLM_FUNC_DECL vec2 unpackSnorm2x16 (uint p)
 
GLM_FUNC_DECL vec4 unpackSnorm4x8 (uint p)
 
GLM_FUNC_DECL vec2 unpackUnorm2x16 (uint p)
 
GLM_FUNC_DECL vec4 unpackUnorm4x8 (uint p)
 
+

Detailed Description

+

These functions do not operate component-wise, rather as described in each case.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL double glm::packDouble2x32 (uvec2 const & v)
+
+ +

Returns a double-precision value obtained by packing the components of v into a 64-bit value.

+

If an IEEE 754 Inf or NaN is created, it will not signal, and the resulting floating point value is unspecified. Otherwise, the bit- level representation of v is preserved. The first vector component specifies the 32 least significant bits; the second component specifies the 32 most significant bits.

+
See also
GLSL packDouble2x32 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint glm::packHalf2x16 (vec2 const & v)
+
+ +

Returns an unsigned integer obtained by converting the components of a two-component floating-point vector to the 16-bit floating-point representation found in the OpenGL Specification, and then packing these two 16- bit integers into a 32-bit unsigned integer.

+

The first vector component specifies the 16 least-significant bits of the result; the second component specifies the 16 most-significant bits.

+
See also
GLSL packHalf2x16 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint glm::packSnorm2x16 (vec2 const & v)
+
+ +

First, converts each component of the normalized floating-point value v into 8- or 16-bit integer values.

+

Then, the results are packed into the returned 32-bit unsigned integer.

+

The conversion for component c of v to fixed point is done as follows: packSnorm2x16: round(clamp(v, -1, +1) * 32767.0)

+

The first component of the vector will be written to the least significant bits of the output; the last component will be written to the most significant bits.

+
See also
GLSL packSnorm2x16 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint glm::packSnorm4x8 (vec4 const & v)
+
+ +

First, converts each component of the normalized floating-point value v into 8- or 16-bit integer values.

+

Then, the results are packed into the returned 32-bit unsigned integer.

+

The conversion for component c of v to fixed point is done as follows: packSnorm4x8: round(clamp(c, -1, +1) * 127.0)

+

The first component of the vector will be written to the least significant bits of the output; the last component will be written to the most significant bits.

+
See also
GLSL packSnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint glm::packUnorm2x16 (vec2 const & v)
+
+ +

First, converts each component of the normalized floating-point value v into 8- or 16-bit integer values.

+

Then, the results are packed into the returned 32-bit unsigned integer.

+

The conversion for component c of v to fixed point is done as follows: packUnorm2x16: round(clamp(c, 0, +1) * 65535.0)

+

The first component of the vector will be written to the least significant bits of the output; the last component will be written to the most significant bits.

+
See also
GLSL packUnorm2x16 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint glm::packUnorm4x8 (vec4 const & v)
+
+ +

First, converts each component of the normalized floating-point value v into 8- or 16-bit integer values.

+

Then, the results are packed into the returned 32-bit unsigned integer.

+

The conversion for component c of v to fixed point is done as follows: packUnorm4x8: round(clamp(c, 0, +1) * 255.0)

+

The first component of the vector will be written to the least significant bits of the output; the last component will be written to the most significant bits.

+
See also
GLSL packUnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uvec2 glm::unpackDouble2x32 (double v)
+
+ +

Returns a two-component unsigned integer vector representation of v.

+

The bit-level representation of v is preserved. The first component of the vector contains the 32 least significant bits of the double; the second component consists the 32 most significant bits.

+
See also
GLSL unpackDouble2x32 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec2 glm::unpackHalf2x16 (uint v)
+
+ +

Returns a two-component floating-point vector with components obtained by unpacking a 32-bit unsigned integer into a pair of 16-bit values, interpreting those values as 16-bit floating-point numbers according to the OpenGL Specification, and converting them to 32-bit floating-point values.

+

The first component of the vector is obtained from the 16 least-significant bits of v; the second component is obtained from the 16 most-significant bits of v.

+
See also
GLSL unpackHalf2x16 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec2 glm::unpackSnorm2x16 (uint p)
+
+ +

First, unpacks a single 32-bit unsigned integer p into a pair of 16-bit unsigned integers, four 8-bit unsigned integers, or four 8-bit signed integers.

+

Then, each component is converted to a normalized floating-point value to generate the returned two- or four-component vector.

+

The conversion for unpacked fixed-point value f to floating point is done as follows: unpackSnorm2x16: clamp(f / 32767.0, -1, +1)

+

The first component of the returned vector will be extracted from the least significant bits of the input; the last component will be extracted from the most significant bits.

+
See also
GLSL unpackSnorm2x16 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec4 glm::unpackSnorm4x8 (uint p)
+
+ +

First, unpacks a single 32-bit unsigned integer p into a pair of 16-bit unsigned integers, four 8-bit unsigned integers, or four 8-bit signed integers.

+

Then, each component is converted to a normalized floating-point value to generate the returned two- or four-component vector.

+

The conversion for unpacked fixed-point value f to floating point is done as follows: unpackSnorm4x8: clamp(f / 127.0, -1, +1)

+

The first component of the returned vector will be extracted from the least significant bits of the input; the last component will be extracted from the most significant bits.

+
See also
GLSL unpackSnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec2 glm::unpackUnorm2x16 (uint p)
+
+ +

First, unpacks a single 32-bit unsigned integer p into a pair of 16-bit unsigned integers, four 8-bit unsigned integers, or four 8-bit signed integers.

+

Then, each component is converted to a normalized floating-point value to generate the returned two- or four-component vector.

+

The conversion for unpacked fixed-point value f to floating point is done as follows: unpackUnorm2x16: f / 65535.0

+

The first component of the returned vector will be extracted from the least significant bits of the input; the last component will be extracted from the most significant bits.

+
See also
GLSL unpackUnorm2x16 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec4 glm::unpackUnorm4x8 (uint p)
+
+ +

First, unpacks a single 32-bit unsigned integer p into a pair of 16-bit unsigned integers, four 8-bit unsigned integers, or four 8-bit signed integers.

+

Then, each component is converted to a normalized floating-point value to generate the returned two- or four-component vector.

+

The conversion for unpacked fixed-point value f to floating point is done as follows: unpackUnorm4x8: f / 255.0

+

The first component of the returned vector will be extracted from the least significant bits of the input; the last component will be extracted from the most significant bits.

+
See also
GLSL unpackUnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00152.html b/third_party/glm_test/doc/api/a00152.html new file mode 100644 index 0000000000000..a7cc702f7399b --- /dev/null +++ b/third_party/glm_test/doc/api/a00152.html @@ -0,0 +1,532 @@ + + + + + + +0.9.8: Angle and Trigonometry Functions + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
Angle and Trigonometry Functions
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > acos (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > acosh (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > asin (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > asinh (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > atan (vecType< T, P > const &y, vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > atan (vecType< T, P > const &y_over_x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > atanh (vecType< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > cos (vecType< T, P > const &angle)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > cosh (vecType< T, P > const &angle)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL GLM_CONSTEXPR vecType< T, P > degrees (vecType< T, P > const &radians)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL GLM_CONSTEXPR vecType< T, P > radians (vecType< T, P > const &degrees)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > sin (vecType< T, P > const &angle)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > sinh (vecType< T, P > const &angle)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > tan (vecType< T, P > const &angle)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > tanh (vecType< T, P > const &angle)
 
+

Detailed Description

+

Function parameters specified as angle are assumed to be in units of radians.

+

In no case will any of these functions result in a divide by zero error. If the divisor of a ratio is 0, then results will be undefined.

+

These all operate component-wise. The description is per component.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::acos (vecType< T, P > const & x)
+
+ +

Arc cosine.

+

Returns an angle whose sine is x. The range of values returned by this function is [0, PI]. Results are undefined if |x| > 1.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL acos man page
+
+GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::acosh (vecType< T, P > const & x)
+
+ +

Arc hyperbolic cosine; returns the non-negative inverse of cosh.

+

Results are undefined if x < 1.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL acosh man page
+
+GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::asin (vecType< T, P > const & x)
+
+ +

Arc sine.

+

Returns an angle whose sine is x. The range of values returned by this function is [-PI/2, PI/2]. Results are undefined if |x| > 1.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL asin man page
+
+GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::asinh (vecType< T, P > const & x)
+
+ +

Arc hyperbolic sine; returns the inverse of sinh.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL asinh man page
+
+GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::atan (vecType< T, P > const & y,
vecType< T, P > const & x 
)
+
+ +

Arc tangent.

+

Returns an angle whose tangent is y/x. The signs of x and y are used to determine what quadrant the angle is in. The range of values returned by this function is [-PI, PI]. Results are undefined if x and y are both 0.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL atan man page
+
+GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions
+ +

Referenced by glm::atan2().

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::atan (vecType< T, P > const & y_over_x)
+
+ +

Arc tangent.

+

Returns an angle whose tangent is y_over_x. The range of values returned by this function is [-PI/2, PI/2].

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL atan man page
+
+GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::atanh (vecType< T, P > const & x)
+
+ +

Arc hyperbolic tangent; returns the inverse of tanh.

+

Results are undefined if abs(x) >= 1.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL atanh man page
+
+GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::cos (vecType< T, P > const & angle)
+
+ +

The standard trigonometric cosine function.

+

The values returned by this function will range from [-1, 1].

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL cos man page
+
+GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::cosh (vecType< T, P > const & angle)
+
+ +

Returns the hyperbolic cosine function, (exp(x) + exp(-x)) / 2.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL cosh man page
+
+GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR vecType<T, P> glm::degrees (vecType< T, P > const & radians)
+
+ +

Converts radians to degrees and returns the result.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL degrees man page
+
+GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR vecType<T, P> glm::radians (vecType< T, P > const & degrees)
+
+ +

Converts degrees to radians and returns the result.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL radians man page
+
+GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::sin (vecType< T, P > const & angle)
+
+ +

The standard trigonometric sine function.

+

The values returned by this function will range from [-1, 1].

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL sin man page
+
+GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::sinh (vecType< T, P > const & angle)
+
+ +

Returns the hyperbolic sine function, (exp(x) - exp(-x)) / 2.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL sinh man page
+
+GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::tan (vecType< T, P > const & angle)
+
+ +

The standard trigonometric tangent function.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL tan man page
+
+GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::tanh (vecType< T, P > const & angle)
+
+ +

Returns the hyperbolic tangent function, sinh(angle) / cosh(angle)

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL tanh man page
+
+GLSL 4.20.8 specification, section 8.1 Angle and Trigonometry Functions
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00153.html b/third_party/glm_test/doc/api/a00153.html new file mode 100644 index 0000000000000..f915e3081e644 --- /dev/null +++ b/third_party/glm_test/doc/api/a00153.html @@ -0,0 +1,393 @@ + + + + + + +0.9.8: Vector Relational Functions + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
Vector Relational Functions
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL bool all (vecType< bool, P > const &v)
 
template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL bool any (vecType< bool, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > equal (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > greaterThan (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > greaterThanEqual (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > lessThan (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > lessThanEqual (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > not_ (vecType< bool, P > const &v)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > notEqual (vecType< T, P > const &x, vecType< T, P > const &y)
 
+

Detailed Description

+

Relational and equality operators (<, <=, >, >=, ==, !=) are defined to operate on scalars and produce scalar Boolean results.

+

For vector results, use the following built-in functions.

+

In all cases, the sizes of all the input and return vectors for any particular call must match.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL bool glm::all (vecType< bool, P > const & v)
+
+ +

Returns true if all components of x are true.

+
Template Parameters
+ + +
vecTypeBoolean vector types.
+
+
+
See also
GLSL all man page
+
+GLSL 4.20.8 specification, section 8.7 Vector Relational Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL bool glm::any (vecType< bool, P > const & v)
+
+ +

Returns true if any component of x is true.

+
Template Parameters
+ + +
vecTypeBoolean vector types.
+
+
+
See also
GLSL any man page
+
+GLSL 4.20.8 specification, section 8.7 Vector Relational Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<bool, P> glm::equal (vecType< T, P > const & x,
vecType< T, P > const & y 
)
+
+ +

Returns the component-wise comparison of result x == y.

+
Template Parameters
+ + +
vecTypeFloating-point, integer or boolean vector types.
+
+
+
See also
GLSL equal man page
+
+GLSL 4.20.8 specification, section 8.7 Vector Relational Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<bool, P> glm::greaterThan (vecType< T, P > const & x,
vecType< T, P > const & y 
)
+
+ +

Returns the component-wise comparison of result x > y.

+
Template Parameters
+ + +
vecTypeFloating-point or integer vector types.
+
+
+
See also
GLSL greaterThan man page
+
+GLSL 4.20.8 specification, section 8.7 Vector Relational Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<bool, P> glm::greaterThanEqual (vecType< T, P > const & x,
vecType< T, P > const & y 
)
+
+ +

Returns the component-wise comparison of result x >= y.

+
Template Parameters
+ + +
vecTypeFloating-point or integer vector types.
+
+
+
See also
GLSL greaterThanEqual man page
+
+GLSL 4.20.8 specification, section 8.7 Vector Relational Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<bool, P> glm::lessThan (vecType< T, P > const & x,
vecType< T, P > const & y 
)
+
+ +

Returns the component-wise comparison result of x < y.

+
Template Parameters
+ + +
vecTypeFloating-point or integer vector types.
+
+
+
See also
GLSL lessThan man page
+
+GLSL 4.20.8 specification, section 8.7 Vector Relational Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<bool, P> glm::lessThanEqual (vecType< T, P > const & x,
vecType< T, P > const & y 
)
+
+ +

Returns the component-wise comparison of result x <= y.

+
Template Parameters
+ + +
vecTypeFloating-point or integer vector types.
+
+
+
See also
GLSL lessThanEqual man page
+
+GLSL 4.20.8 specification, section 8.7 Vector Relational Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<bool, P> glm::not_ (vecType< bool, P > const & v)
+
+ +

Returns the component-wise logical complement of x.

+

/!\ Because of language incompatibilities between C++ and GLSL, GLM defines the function not but not_ instead.

+
Template Parameters
+ + +
vecTypeBoolean vector types.
+
+
+
See also
GLSL not man page
+
+GLSL 4.20.8 specification, section 8.7 Vector Relational Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<bool, P> glm::notEqual (vecType< T, P > const & x,
vecType< T, P > const & y 
)
+
+ +

Returns the component-wise comparison of result x != y.

+
Template Parameters
+ + +
vecTypeFloating-point, integer or boolean vector types.
+
+
+
See also
GLSL notEqual man page
+
+GLSL 4.20.8 specification, section 8.7 Vector Relational Functions
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00154.html b/third_party/glm_test/doc/api/a00154.html new file mode 100644 index 0000000000000..b6254a9db3673 --- /dev/null +++ b/third_party/glm_test/doc/api/a00154.html @@ -0,0 +1,103 @@ + + + + + + +0.9.8: GTC Extensions (Stable) + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GTC Extensions (Stable)
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Modules

 GLM_GTC_bitfield
 
 GLM_GTC_color_space
 
 GLM_GTC_constants
 
 GLM_GTC_epsilon
 
 GLM_GTC_functions
 
 GLM_GTC_integer
 
 GLM_GTC_matrix_access
 
 GLM_GTC_matrix_integer
 
 GLM_GTC_matrix_inverse
 
 GLM_GTC_matrix_transform
 
 GLM_GTC_noise
 
 GLM_GTC_packing
 
 GLM_GTC_quaternion
 
 GLM_GTC_random
 
 GLM_GTC_reciprocal
 
 GLM_GTC_round
 
 GLM_GTC_type_aligned
 
 GLM_GTC_type_precision
 
 GLM_GTC_type_ptr
 
 GLM_GTC_ulp
 
 GLM_GTC_vec1
 
+

Detailed Description

+

Functions and types that the GLSL specification doesn't define, but useful to have for a C++ program.

+

GTC extensions aim to be stable.

+

Even if it's highly unrecommended, it's possible to include all the extensions at once by including <glm/ext.hpp>. Otherwise, each extension needs to be included a specific file.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00155.html b/third_party/glm_test/doc/api/a00155.html new file mode 100644 index 0000000000000..f8d1cca71876f --- /dev/null +++ b/third_party/glm_test/doc/api/a00155.html @@ -0,0 +1,177 @@ + + + + + + +0.9.8: GTX Extensions (Experimental) + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GTX Extensions (Experimental)
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Modules

 GLM_GTX_associated_min_max
 
 GLM_GTX_bit
 
 GLM_GTX_closest_point
 
 GLM_GTX_color_space
 
 GLM_GTX_color_space_YCoCg
 
 GLM_GTX_common
 
 GLM_GTX_compatibility
 
 GLM_GTX_component_wise
 
 GLM_GTX_dual_quaternion
 
 GLM_GTX_euler_angles
 
 GLM_GTX_extend
 
 GLM_GTX_extented_min_max
 
 GLM_GTX_fast_exponential
 
 GLM_GTX_fast_square_root
 
 GLM_GTX_fast_trigonometry
 
 GLM_GTX_gradient_paint
 
 GLM_GTX_handed_coordinate_space
 
 GLM_GTX_hash
 
 GLM_GTX_integer
 
 GLM_GTX_intersect
 
 GLM_GTX_io
 
 GLM_GTX_log_base
 
 GLM_GTX_matrix_cross_product
 
 GLM_GTX_matrix_decompose
 
 GLM_GTX_matrix_interpolation
 
 GLM_GTX_matrix_major_storage
 
 GLM_GTX_matrix_operation
 
 GLM_GTX_matrix_query
 
 GLM_GTX_matrix_transform_2d
 
 GLM_GTX_mixed_producte
 
 GLM_GTX_norm
 
 GLM_GTX_normal
 
 GLM_GTX_normalize_dot
 
 GLM_GTX_number_precision
 
 GLM_GTX_optimum_pow
 
 GLM_GTX_orthonormalize
 
 GLM_GTX_perpendicular
 
 GLM_GTX_polar_coordinates
 
 GLM_GTX_projection
 
 GLM_GTX_quaternion
 
 GLM_GTX_range
 
 GLM_GTX_raw_data
 
 GLM_GTX_rotate_normalized_axis
 
 GLM_GTX_rotate_vector
 
 GLM_GTX_scalar_relational
 
 GLM_GTX_simd_mat4
 
 GLM_GTX_simd_quat
 
 GLM_GTX_simd_vec4
 
 GLM_GTX_spline
 
 GLM_GTX_std_based_type
 
 GLM_GTX_string_cast
 
 GLM_GTX_transform
 
 GLM_GTX_transform2
 
 GLM_GTX_type_aligned
 
 GLM_GTX_type_trait
 
 GLM_GTX_vector_angle
 
 GLM_GTX_vector_query
 
 GLM_GTX_wrap
 
+

Detailed Description

+

Functions and types that the GLSL specification doesn't define, but useful to have for a C++ program.

+

Experimental extensions are useful functions and types, but the development of their API and functionality is not necessarily stable. They can change substantially between versions. Backwards compatibility is not much of an issue for them.

+

Even if it's highly unrecommended, it's possible to include all the extensions at once by including <glm/ext.hpp>. Otherwise, each extension needs to be included a specific file.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00156.html b/third_party/glm_test/doc/api/a00156.html new file mode 100644 index 0000000000000..dfbc638fb1e6b --- /dev/null +++ b/third_party/glm_test/doc/api/a00156.html @@ -0,0 +1,84 @@ + + + + + + +0.9.8: GLM Core + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM Core
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Modules

 Common functions
 
 Exponential functions
 
 Geometric functions
 
 Integer functions
 
 Matrix functions
 
 Floating-Point Pack and Unpack Functions
 
 Angle and Trigonometry Functions
 
 Vector Relational Functions
 
 Types
 
 Precision types
 
 Template types
 
+

Detailed Description

+

The core of GLM, which implements exactly and only the GLSL specification to the degree possible.

+

The GLM core consists of C++ types that mirror GLSL types and C++ functions that mirror the GLSL functions. It also includes a set of precision-based types that can be used in the appropriate functions. The C++ types are all based on a basic set of template types.

+

The best documentation for GLM Core is the current GLSL specification, version 4.2 (pdf file).

+

GLM core functionnalities require <glm/glm.hpp> to be included to be used.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00157.html b/third_party/glm_test/doc/api/a00157.html new file mode 100644 index 0000000000000..8696d9ec18fa2 --- /dev/null +++ b/third_party/glm_test/doc/api/a00157.html @@ -0,0 +1,808 @@ + + + + + + +0.9.8: Types + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
+
+
+ + + + +

+Modules

 Precision types
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef highp_bvec2 bvec2
 
typedef highp_bvec3 bvec3
 
typedef highp_bvec4 bvec4
 
typedef highp_dmat2x2 dmat2
 
typedef highp_dmat2x2 dmat2x2
 
typedef highp_dmat2x3 dmat2x3
 
typedef highp_dmat2x4 dmat2x4
 
typedef highp_dmat3x3 dmat3
 
typedef highp_dmat3x2 dmat3x2
 
typedef highp_dmat3x3 dmat3x3
 
typedef highp_dmat3x4 dmat3x4
 
typedef highp_dmat4x4 dmat4
 
typedef highp_dmat4x2 dmat4x2
 
typedef highp_dmat4x3 dmat4x3
 
typedef highp_dmat4x4 dmat4x4
 
typedef highp_dvec2 dvec2
 
typedef highp_dvec3 dvec3
 
typedef highp_dvec4 dvec4
 
typedef highp_ivec2 ivec2
 
typedef highp_ivec3 ivec3
 
typedef highp_ivec4 ivec4
 
typedef mat2x2 mat2
 
typedef highp_mat2x2 mat2x2
 
typedef highp_mat2x3 mat2x3
 
typedef highp_mat2x4 mat2x4
 
typedef mat3x3 mat3
 
typedef highp_mat3x2 mat3x2
 
typedef highp_mat3x3 mat3x3
 
typedef highp_mat3x4 mat3x4
 
typedef mat4x4 mat4
 
typedef highp_mat4x2 mat4x2
 
typedef highp_mat4x3 mat4x3
 
typedef highp_mat4x4 mat4x4
 
typedef highp_uvec2 uvec2
 
typedef highp_uvec3 uvec3
 
typedef highp_uvec4 uvec4
 
typedef highp_vec2 vec2
 
typedef highp_vec3 vec3
 
typedef highp_vec4 vec4
 
+

Detailed Description

+

The standard types defined by the specification.

+

These types are all typedefs of more generalized, template types. To see the definition of these template types, go to Template types.

+

Typedef Documentation

+ +
+
+ + + + +
typedef highp_bvec2 bvec2
+
+ +

2 components vector of boolean.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+ +

Definition at line 564 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_bvec3 bvec3
+
+ +

3 components vector of boolean.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+ +

Definition at line 569 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_bvec4 bvec4
+
+ +

4 components vector of boolean.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+ +

Definition at line 574 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_dmat2x2 dmat2
+
+ +

2 * 2 matrix of double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 707 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_dmat2x2 dmat2x2
+
+ +

2 * 2 matrix of double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 722 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_dmat2x3 dmat2x3
+
+ +

2 * 3 matrix of double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 727 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_dmat2x4 dmat2x4
+
+ +

2 * 4 matrix of double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 732 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_dmat3x3 dmat3
+
+ +

3 * 3 matrix of double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 712 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_dmat3x2 dmat3x2
+
+ +

3 * 2 matrix of double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 737 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_dmat3x3 dmat3x3
+
+ +

3 * 3 matrix of double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 742 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_dmat3x4 dmat3x4
+
+ +

3 * 4 matrix of double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 747 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_dmat4x4 dmat4
+
+ +

4 * 4 matrix of double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 717 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_dmat4x2 dmat4x2
+
+ +

4 * 2 matrix of double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 752 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_dmat4x3 dmat4x3
+
+ +

4 * 3 matrix of double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 757 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_dmat4x4 dmat4x4
+
+ +

4 * 4 matrix of double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 762 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_dvec2 dvec2
+
+ +

2 components vector of double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+ +

Definition at line 483 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_dvec3 dvec3
+
+ +

3 components vector of double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+ +

Definition at line 488 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_dvec4 dvec4
+
+ +

4 components vector of double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+ +

Definition at line 493 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_ivec2 ivec2
+
+ +

2 components vector of signed integer numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+ +

Definition at line 510 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_ivec3 ivec3
+
+ +

3 components vector of signed integer numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+ +

Definition at line 515 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_ivec4 ivec4
+
+ +

4 components vector of signed integer numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+ +

Definition at line 520 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef mat2x2 mat2
+
+ +

2 columns of 2 components matrix of floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 406 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_mat2x2 mat2x2
+
+ +

2 columns of 2 components matrix of floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 359 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_mat2x3 mat2x3
+
+ +

2 columns of 3 components matrix of floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 364 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_mat2x4 mat2x4
+
+ +

2 columns of 4 components matrix of floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 369 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef mat3x3 mat3
+
+ +

3 columns of 3 components matrix of floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 411 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_mat3x2 mat3x2
+
+ +

3 columns of 2 components matrix of floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 374 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_mat3x3 mat3x3
+
+ +

3 columns of 3 components matrix of floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 379 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_mat3x4 mat3x4
+
+ +

3 columns of 4 components matrix of floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 384 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef mat4x4 mat4
+
+ +

4 columns of 4 components matrix of floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 416 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_mat4x2 mat4x2
+
+ +

4 columns of 2 components matrix of floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 389 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_mat4x3 mat4x3
+
+ +

4 columns of 3 components matrix of floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 394 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_mat4x4 mat4x4
+
+ +

4 columns of 4 components matrix of floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+ +

Definition at line 399 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_uvec2 uvec2
+
+ +

2 components vector of unsigned integer numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+ +

Definition at line 537 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_uvec3 uvec3
+
+ +

3 components vector of unsigned integer numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+ +

Definition at line 542 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_uvec4 uvec4
+
+ +

4 components vector of unsigned integer numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+ +

Definition at line 547 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_vec2 vec2
+
+ +

2 components vector of floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+ +

Definition at line 456 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_vec3 vec3
+
+ +

3 components vector of floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+ +

Definition at line 461 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_vec4 vec4
+
+ +

4 components vector of floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+ +

Definition at line 466 of file type_vec.hpp.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00158.html b/third_party/glm_test/doc/api/a00158.html new file mode 100644 index 0000000000000..9e10add38aa7d --- /dev/null +++ b/third_party/glm_test/doc/api/a00158.html @@ -0,0 +1,2827 @@ + + + + + + +0.9.8: Precision types + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
Precision types
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef tvec2< bool, highp > highp_bvec2
 
typedef tvec3< bool, highp > highp_bvec3
 
typedef tvec4< bool, highp > highp_bvec4
 
typedef tmat2x2< double, highp > highp_dmat2
 
typedef tmat2x2< double, highp > highp_dmat2x2
 
typedef tmat2x3< double, highp > highp_dmat2x3
 
typedef tmat2x4< double, highp > highp_dmat2x4
 
typedef tmat3x3< double, highp > highp_dmat3
 
typedef tmat3x2< double, highp > highp_dmat3x2
 
typedef tmat3x3< double, highp > highp_dmat3x3
 
typedef tmat3x4< double, highp > highp_dmat3x4
 
typedef tmat4x4< double, highp > highp_dmat4
 
typedef tmat4x2< double, highp > highp_dmat4x2
 
typedef tmat4x3< double, highp > highp_dmat4x3
 
typedef tmat4x4< double, highp > highp_dmat4x4
 
typedef tvec2< double, highp > highp_dvec2
 
typedef tvec3< double, highp > highp_dvec3
 
typedef tvec4< double, highp > highp_dvec4
 
typedef highp_float_t highp_float
 
typedef detail::highp_int_t highp_int
 
typedef tvec2< int, highp > highp_ivec2
 
typedef tvec3< int, highp > highp_ivec3
 
typedef tvec4< int, highp > highp_ivec4
 
typedef tmat2x2< float, highp > highp_mat2
 
typedef tmat2x2< float, highp > highp_mat2x2
 
typedef tmat2x3< float, highp > highp_mat2x3
 
typedef tmat2x4< float, highp > highp_mat2x4
 
typedef tmat3x3< float, highp > highp_mat3
 
typedef tmat3x2< float, highp > highp_mat3x2
 
typedef tmat3x3< float, highp > highp_mat3x3
 
typedef tmat3x4< float, highp > highp_mat3x4
 
typedef tmat4x4< float, highp > highp_mat4
 
typedef tmat4x2< float, highp > highp_mat4x2
 
typedef tmat4x3< float, highp > highp_mat4x3
 
typedef tmat4x4< float, highp > highp_mat4x4
 
typedef detail::highp_uint_t highp_uint
 
typedef tvec2< uint, highp > highp_uvec2
 
typedef tvec3< uint, highp > highp_uvec3
 
typedef tvec4< uint, highp > highp_uvec4
 
typedef tvec2< float, highp > highp_vec2
 
typedef tvec3< float, highp > highp_vec3
 
typedef tvec4< float, highp > highp_vec4
 
typedef tvec2< bool, lowp > lowp_bvec2
 
typedef tvec3< bool, lowp > lowp_bvec3
 
typedef tvec4< bool, lowp > lowp_bvec4
 
typedef tmat2x2< double, lowp > lowp_dmat2
 
typedef tmat2x2< double, lowp > lowp_dmat2x2
 
typedef tmat2x3< double, lowp > lowp_dmat2x3
 
typedef tmat2x4< double, lowp > lowp_dmat2x4
 
typedef tmat3x3< float, lowp > lowp_dmat3
 
typedef tmat3x2< double, lowp > lowp_dmat3x2
 
typedef tmat3x3< double, lowp > lowp_dmat3x3
 
typedef tmat3x4< double, lowp > lowp_dmat3x4
 
typedef tmat4x4< double, lowp > lowp_dmat4
 
typedef tmat4x2< double, lowp > lowp_dmat4x2
 
typedef tmat4x3< double, lowp > lowp_dmat4x3
 
typedef tmat4x4< double, lowp > lowp_dmat4x4
 
typedef tvec2< double, lowp > lowp_dvec2
 
typedef tvec3< double, lowp > lowp_dvec3
 
typedef tvec4< double, lowp > lowp_dvec4
 
typedef lowp_float_t lowp_float
 
typedef detail::lowp_int_t lowp_int
 
typedef tvec2< int, lowp > lowp_ivec2
 
typedef tvec3< int, lowp > lowp_ivec3
 
typedef tvec4< int, lowp > lowp_ivec4
 
typedef tmat2x2< float, lowp > lowp_mat2
 
typedef tmat2x2< float, lowp > lowp_mat2x2
 
typedef tmat2x3< float, lowp > lowp_mat2x3
 
typedef tmat2x4< float, lowp > lowp_mat2x4
 
typedef tmat3x3< float, lowp > lowp_mat3
 
typedef tmat3x2< float, lowp > lowp_mat3x2
 
typedef tmat3x3< float, lowp > lowp_mat3x3
 
typedef tmat3x4< float, lowp > lowp_mat3x4
 
typedef tmat4x4< float, lowp > lowp_mat4
 
typedef tmat4x2< float, lowp > lowp_mat4x2
 
typedef tmat4x3< float, lowp > lowp_mat4x3
 
typedef tmat4x4< float, lowp > lowp_mat4x4
 
typedef detail::lowp_uint_t lowp_uint
 
typedef tvec2< uint, lowp > lowp_uvec2
 
typedef tvec3< uint, lowp > lowp_uvec3
 
typedef tvec4< uint, lowp > lowp_uvec4
 
typedef tvec2< float, lowp > lowp_vec2
 
typedef tvec3< float, lowp > lowp_vec3
 
typedef tvec4< float, lowp > lowp_vec4
 
typedef tvec2< bool, mediump > mediump_bvec2
 
typedef tvec3< bool, mediump > mediump_bvec3
 
typedef tvec4< bool, mediump > mediump_bvec4
 
typedef tmat2x2< double, mediump > mediump_dmat2
 
typedef tmat2x2< double, mediump > mediump_dmat2x2
 
typedef tmat2x3< double, mediump > mediump_dmat2x3
 
typedef tmat2x4< double, mediump > mediump_dmat2x4
 
typedef tmat3x3< double, mediump > mediump_dmat3
 
typedef tmat3x2< double, mediump > mediump_dmat3x2
 
typedef tmat3x3< double, mediump > mediump_dmat3x3
 
typedef tmat3x4< double, mediump > mediump_dmat3x4
 
typedef tmat4x4< double, mediump > mediump_dmat4
 
typedef tmat4x2< double, mediump > mediump_dmat4x2
 
typedef tmat4x3< double, mediump > mediump_dmat4x3
 
typedef tmat4x4< double, mediump > mediump_dmat4x4
 
typedef tvec2< double, mediump > mediump_dvec2
 
typedef tvec3< double, mediump > mediump_dvec3
 
typedef tvec4< double, mediump > mediump_dvec4
 
typedef mediump_float_t mediump_float
 
typedef detail::mediump_int_t mediump_int
 
typedef tvec2< int, mediump > mediump_ivec2
 
typedef tvec3< int, mediump > mediump_ivec3
 
typedef tvec4< int, mediump > mediump_ivec4
 
typedef tmat2x2< float, mediump > mediump_mat2
 
typedef tmat2x2< float, mediump > mediump_mat2x2
 
typedef tmat2x3< float, mediump > mediump_mat2x3
 
typedef tmat2x4< float, mediump > mediump_mat2x4
 
typedef tmat3x3< float, mediump > mediump_mat3
 
typedef tmat3x2< float, mediump > mediump_mat3x2
 
typedef tmat3x3< float, mediump > mediump_mat3x3
 
typedef tmat3x4< float, mediump > mediump_mat3x4
 
typedef tmat4x4< float, mediump > mediump_mat4
 
typedef tmat4x2< float, mediump > mediump_mat4x2
 
typedef tmat4x3< float, mediump > mediump_mat4x3
 
typedef tmat4x4< float, mediump > mediump_mat4x4
 
typedef detail::mediump_uint_t mediump_uint
 
typedef tvec2< uint, mediump > mediump_uvec2
 
typedef tvec3< uint, mediump > mediump_uvec3
 
typedef tvec4< uint, mediump > mediump_uvec4
 
typedef tvec2< float, mediump > mediump_vec2
 
typedef tvec3< float, mediump > mediump_vec3
 
typedef tvec4< float, mediump > mediump_vec4
 
typedef unsigned int uint
 
+

Detailed Description

+

Non-GLSL types that are used to define precision-based types.

+

The GLSL language allows the user to define the precision of a particular variable. In OpenGL's GLSL, these precision qualifiers have no effect; they are there for compatibility with OpenGL ES's precision qualifiers, where they do have an effect.

+

C++ has no language equivalent to precision qualifiers. So GLM provides the next-best thing: a number of typedefs of the Template types that use a particular precision.

+

None of these types make any guarantees about the actual precision used.

+

Typedef Documentation

+ +
+
+ + + + +
typedef tvec2<bool, highp> highp_bvec2
+
+ +

2 components vector of high precision bool numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 219 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<bool, highp> highp_bvec3
+
+ +

3 components vector of high precision bool numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 328 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4<bool, highp> highp_bvec4
+
+ +

4 components vector of high precision bool numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 423 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2<double, highp> highp_dmat2
+
+ +

2 columns of 2 components matrix of high precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 440 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2<double, highp> highp_dmat2x2
+
+ +

2 columns of 2 components matrix of high precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 458 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x3<double, highp> highp_dmat2x3
+
+ +

2 columns of 3 components matrix of high precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 481 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x4<double, highp> highp_dmat2x4
+
+ +

2 columns of 4 components matrix of high precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 504 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<double, highp> highp_dmat3
+
+ +

3 columns of 3 components matrix of high precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 550 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x2<double, highp> highp_dmat3x2
+
+ +

3 columns of 2 components matrix of high precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 527 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<double, highp> highp_dmat3x3
+
+ +

3 columns of 3 components matrix of high precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 568 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x4<double, highp> highp_dmat3x4
+
+ +

3 columns of 4 components matrix of high precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 591 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<double, highp> highp_dmat4
+
+ +

4 columns of 4 components matrix of high precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 660 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x2<double, highp> highp_dmat4x2
+
+ +

4 columns of 2 components matrix of high precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 614 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x3<double, highp> highp_dmat4x3
+
+ +

4 columns of 3 components matrix of high precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 637 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<double, highp> highp_dmat4x4
+
+ +

4 columns of 4 components matrix of high precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 678 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<double, highp> highp_dvec2
+
+ +

2 components vector of high double-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 156 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<double, highp> highp_dvec3
+
+ +

3 components vector of high double-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 266 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4<double, highp> highp_dvec4
+
+ +

4 components vector of high double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 369 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_float_t highp_float
+
+ +

High precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.4 Floats
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 41 of file type_float.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::highp_int_t highp_int
+
+ +

High precision signed integer.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.3 Integers
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 238 of file type_int.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<int, highp> highp_ivec2
+
+ +

2 components vector of high precision signed integer numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 177 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<int, highp> highp_ivec3
+
+ +

3 components vector of high precision signed integer numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 287 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4<int, highp> highp_ivec4
+
+ +

4 components vector of high precision signed integer numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 387 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2< float, highp > highp_mat2
+
+ +

2 columns of 2 components matrix of high precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 53 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2< float, highp > highp_mat2x2
+
+ +

2 columns of 2 components matrix of high precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 74 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x3< float, highp > highp_mat2x3
+
+ +

2 columns of 3 components matrix of high precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 100 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x4< float, highp > highp_mat2x4
+
+ +

2 columns of 4 components matrix of high precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 126 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3< float, highp > highp_mat3
+
+ +

3 columns of 3 components matrix of high precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 178 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x2< float, highp > highp_mat3x2
+
+ +

3 columns of 2 components matrix of high precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 152 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3< float, highp > highp_mat3x3
+
+ +

3 columns of 3 components matrix of high precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 199 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x4< float, highp > highp_mat3x4
+
+ +

3 columns of 4 components matrix of high precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 225 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4< float, highp > highp_mat4
+
+ +

4 columns of 4 components matrix of high precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 304 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x2< float, highp > highp_mat4x2
+
+ +

4 columns of 2 components matrix of high precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 251 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x3< float, highp > highp_mat4x3
+
+ +

4 columns of 3 components matrix of high precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 277 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4< float, highp > highp_mat4x4
+
+ +

4 columns of 4 components matrix of high precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 325 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::highp_uint_t highp_uint
+
+ +

High precision unsigned integer.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.3 Integers
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 259 of file type_int.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<uint, highp> highp_uvec2
+
+ +

2 components vector of high precision unsigned integer numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 198 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<uint, highp> highp_uvec3
+
+ +

3 components vector of high precision unsigned integer numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 308 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4<uint, highp> highp_uvec4
+
+ +

4 components vector of high precision unsigned integer numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 405 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2< float, highp > highp_vec2
+
+ +

2 components vector of high single-precision floating-point numbers.

+

High Single-precision floating-point vector of 2 components.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+
+Precision types
+ +

Definition at line 135 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3< float, highp > highp_vec3
+
+ +

3 components vector of high single-precision floating-point numbers.

+

High Single-precision floating-point vector of 3 components.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+
+Precision types
+ +

Definition at line 245 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4< float, highp > highp_vec4
+
+ +

4 components vector of high single-precision floating-point numbers.

+

High Single-precision floating-point vector of 4 components.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+
+Precision types
+ +

Definition at line 351 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<bool, lowp> lowp_bvec2
+
+ +

2 components vector of low precision bool numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 233 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<bool, lowp> lowp_bvec3
+
+ +

3 components vector of low precision bool numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 340 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4<bool, lowp> lowp_bvec4
+
+ +

4 components vector of low precision bool numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 435 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2<double, lowp> lowp_dmat2
+
+ +

2 columns of 2 components matrix of low precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 428 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2<double, lowp> lowp_dmat2x2
+
+ +

2 columns of 2 components matrix of low precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 446 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x3<double, lowp> lowp_dmat2x3
+
+ +

2 columns of 3 components matrix of low precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 469 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x4<double, lowp> lowp_dmat2x4
+
+ +

2 columns of 4 components matrix of low precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 492 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<float, lowp> lowp_dmat3
+
+ +

3 columns of 3 components matrix of low precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 538 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x2<double, lowp> lowp_dmat3x2
+
+ +

3 columns of 2 components matrix of low precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 515 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<double, lowp> lowp_dmat3x3
+
+ +

3 columns of 3 components matrix of low precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 556 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x4<double, lowp> lowp_dmat3x4
+
+ +

3 columns of 4 components matrix of low precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 579 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<double, lowp> lowp_dmat4
+
+ +

4 columns of 4 components matrix of low precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 648 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x2<double, lowp> lowp_dmat4x2
+
+ +

4 columns of 2 components matrix of low precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 602 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x3<double, lowp> lowp_dmat4x3
+
+ +

4 columns of 3 components matrix of low precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 625 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<double, lowp> lowp_dmat4x4
+
+ +

4 columns of 4 components matrix of low precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 666 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<double, lowp> lowp_dvec2
+
+ +

2 components vector of low double-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 170 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<double, lowp> lowp_dvec3
+
+ +

3 components vector of low double-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 280 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4<double, lowp> lowp_dvec4
+
+ +

4 components vector of low double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 381 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef lowp_float_t lowp_float
+
+ +

Low precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.4 Floats
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 27 of file type_float.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::lowp_int_t lowp_int
+
+ +

Low precision signed integer.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.3 Integers
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 224 of file type_int.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<int, lowp> lowp_ivec2
+
+ +

2 components vector of low precision signed integer numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 191 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<int, lowp> lowp_ivec3
+
+ +

3 components vector of low precision signed integer numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 301 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4<int, lowp> lowp_ivec4
+
+ +

4 components vector of low precision signed integer numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 399 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2< float, lowp > lowp_mat2
+
+ +

2 columns of 2 components matrix of low precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 39 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2< float, lowp > lowp_mat2x2
+
+ +

2 columns of 2 components matrix of low precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 60 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x3< float, lowp > lowp_mat2x3
+
+ +

2 columns of 3 components matrix of low precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 86 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x4< float, lowp > lowp_mat2x4
+
+ +

2 columns of 4 components matrix of low precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 112 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3< float, lowp > lowp_mat3
+
+ +

3 columns of 3 components matrix of low precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 164 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x2< float, lowp > lowp_mat3x2
+
+ +

3 columns of 2 components matrix of low precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 138 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3< float, lowp > lowp_mat3x3
+
+ +

3 columns of 3 components matrix of low precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 185 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x4< float, lowp > lowp_mat3x4
+
+ +

3 columns of 4 components matrix of low precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 211 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4< float, lowp > lowp_mat4
+
+ +

4 columns of 4 components matrix of low precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 290 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x2< float, lowp > lowp_mat4x2
+
+ +

4 columns of 2 components matrix of low precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 237 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x3< float, lowp > lowp_mat4x3
+
+ +

4 columns of 3 components matrix of low precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 263 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4< float, lowp > lowp_mat4x4
+
+ +

4 columns of 4 components matrix of low precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 311 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::lowp_uint_t lowp_uint
+
+ +

Low precision unsigned integer.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.3 Integers
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 245 of file type_int.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<uint, lowp> lowp_uvec2
+
+ +

2 components vector of low precision unsigned integer numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 212 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<uint, lowp> lowp_uvec3
+
+ +

3 components vector of low precision unsigned integer numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 322 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4<uint, lowp> lowp_uvec4
+
+ +

4 components vector of low precision unsigned integer numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 417 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2< float, lowp > lowp_vec2
+
+ +

2 components vector of low single-precision floating-point numbers.

+

Low single-precision floating-point vector of 2 components.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+
+Precision types
+ +

Definition at line 149 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3< float, lowp > lowp_vec3
+
+ +

3 components vector of low single-precision floating-point numbers.

+

Low single-precision floating-point vector of 3 components.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+
+Precision types
+ +

Definition at line 259 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4< float, lowp > lowp_vec4
+
+ +

4 components vector of low single-precision floating-point numbers.

+

Low single-precision floating-point vector of 4 components.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+
+Precision types
+ +

Definition at line 363 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<bool, mediump> mediump_bvec2
+
+ +

2 components vector of medium precision bool numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 226 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<bool, mediump> mediump_bvec3
+
+ +

3 components vector of medium precision bool numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 334 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4<bool, mediump> mediump_bvec4
+
+ +

4 components vector of medium precision bool numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 429 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2<double, mediump> mediump_dmat2
+
+ +

2 columns of 2 components matrix of medium precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 434 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2<double, mediump> mediump_dmat2x2
+
+ +

2 columns of 2 components matrix of medium precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 452 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x3<double, mediump> mediump_dmat2x3
+
+ +

2 columns of 3 components matrix of medium precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 475 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x4<double, mediump> mediump_dmat2x4
+
+ +

2 columns of 4 components matrix of medium precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 498 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<double, mediump> mediump_dmat3
+
+ +

3 columns of 3 components matrix of medium precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 544 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x2<double, mediump> mediump_dmat3x2
+
+ +

3 columns of 2 components matrix of medium precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 521 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<double, mediump> mediump_dmat3x3
+
+ +

3 columns of 3 components matrix of medium precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 562 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x4<double, mediump> mediump_dmat3x4
+
+ +

3 columns of 4 components matrix of medium precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 585 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<double, mediump> mediump_dmat4
+
+ +

4 columns of 4 components matrix of medium precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 654 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x2<double, mediump> mediump_dmat4x2
+
+ +

4 columns of 2 components matrix of medium precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 608 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x3<double, mediump> mediump_dmat4x3
+
+ +

4 columns of 3 components matrix of medium precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 631 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<double, mediump> mediump_dmat4x4
+
+ +

4 columns of 4 components matrix of medium precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 672 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<double, mediump> mediump_dvec2
+
+ +

2 components vector of medium double-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 163 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<double, mediump> mediump_dvec3
+
+ +

3 components vector of medium double-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 273 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4<double, mediump> mediump_dvec4
+
+ +

4 components vector of medium double-precision floating-point numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 375 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_float_t mediump_float
+
+ +

Medium precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.4 Floats
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 34 of file type_float.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::mediump_int_t mediump_int
+
+ +

Medium precision signed integer.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.3 Integers
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 231 of file type_int.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<int, mediump> mediump_ivec2
+
+ +

2 components vector of medium precision signed integer numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 184 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<int, mediump> mediump_ivec3
+
+ +

3 components vector of medium precision signed integer numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 294 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4<int, mediump> mediump_ivec4
+
+ +

4 components vector of medium precision signed integer numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 393 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2< float, mediump > mediump_mat2
+
+ +

2 columns of 2 components matrix of medium precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 46 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2< float, mediump > mediump_mat2x2
+
+ +

2 columns of 2 components matrix of medium precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 67 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x3< float, mediump > mediump_mat2x3
+
+ +

2 columns of 3 components matrix of medium precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 93 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x4< float, mediump > mediump_mat2x4
+
+ +

2 columns of 4 components matrix of medium precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 119 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3< float, mediump > mediump_mat3
+
+ +

3 columns of 3 components matrix of medium precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 171 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x2< float, mediump > mediump_mat3x2
+
+ +

3 columns of 2 components matrix of medium precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 145 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3< float, mediump > mediump_mat3x3
+
+ +

3 columns of 3 components matrix of medium precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 192 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x4< float, mediump > mediump_mat3x4
+
+ +

3 columns of 4 components matrix of medium precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 218 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4< float, mediump > mediump_mat4
+
+ +

4 columns of 4 components matrix of medium precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 297 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x2< float, mediump > mediump_mat4x2
+
+ +

4 columns of 2 components matrix of medium precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 244 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x3< float, mediump > mediump_mat4x3
+
+ +

4 columns of 3 components matrix of medium precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 270 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4< float, mediump > mediump_mat4x4
+
+ +

4 columns of 4 components matrix of medium precision floating-point numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.6 Matrices
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 318 of file type_mat.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::mediump_uint_t mediump_uint
+
+ +

Medium precision unsigned integer.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.3 Integers
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 252 of file type_int.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<uint, mediump> mediump_uvec2
+
+ +

2 components vector of medium precision unsigned integer numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 205 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<uint, mediump> mediump_uvec3
+
+ +

3 components vector of medium precision unsigned integer numbers.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 315 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4<uint, mediump> mediump_uvec4
+
+ +

4 components vector of medium precision unsigned integer numbers.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+ +

Definition at line 411 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2< float, mediump > mediump_vec2
+
+ +

2 components vector of medium single-precision floating-point numbers.

+

Medium Single-precision floating-point vector of 2 components.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+
+Precision types
+ +

Definition at line 142 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3< float, mediump > mediump_vec3
+
+ +

3 components vector of medium single-precision floating-point numbers.

+

Medium Single-precision floating-point vector of 3 components.

+

There is no guarantee on the actual precision.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+
+Precision types
+ +

Definition at line 252 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4< float, mediump > mediump_vec4
+
+ +

4 components vector of medium single-precision floating-point numbers.

+

Medium Single-precision floating-point vector of 4 components.

+
See also
GLSL 4.20.8 specification, section 4.1.5 Vectors
+
+GLSL 4.20.8 specification, section 4.7.2 Precision Qualifier
+
+Precision types
+ +

Definition at line 357 of file type_vec.hpp.

+ +
+
+ +
+
+ + + + +
typedef unsigned int uint
+
+ +

Unsigned integer type.

+
See also
GLSL 4.20.8 specification, section 4.1.3 Integers
+ +

Definition at line 288 of file type_int.hpp.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00159.html b/third_party/glm_test/doc/api/a00159.html new file mode 100644 index 0000000000000..a72c28948416e --- /dev/null +++ b/third_party/glm_test/doc/api/a00159.html @@ -0,0 +1,53 @@ + + + + + + +0.9.8: Template types + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+
+
Template types
+
+
+

The generic template types used as the basis for the core types.

+

These types are all templates used to define the actual Types. These templetes are implementation details of GLM types and should not be used explicitly.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00160.html b/third_party/glm_test/doc/api/a00160.html new file mode 100644 index 0000000000000..7b2271fd22f27 --- /dev/null +++ b/third_party/glm_test/doc/api/a00160.html @@ -0,0 +1,985 @@ + + + + + + +0.9.8: GLM_GTC_bitfield + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTC_bitfield
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genIUType >
GLM_FUNC_DECL genIUType bitfieldFillOne (genIUType Value, int FirstBit, int BitCount)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > bitfieldFillOne (vecType< T, P > const &Value, int FirstBit, int BitCount)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType bitfieldFillZero (genIUType Value, int FirstBit, int BitCount)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > bitfieldFillZero (vecType< T, P > const &Value, int FirstBit, int BitCount)
 
GLM_FUNC_DECL int16 bitfieldInterleave (int8 x, int8 y)
 
GLM_FUNC_DECL uint16 bitfieldInterleave (uint8 x, uint8 y)
 
GLM_FUNC_DECL int32 bitfieldInterleave (int16 x, int16 y)
 
GLM_FUNC_DECL uint32 bitfieldInterleave (uint16 x, uint16 y)
 
GLM_FUNC_DECL int64 bitfieldInterleave (int32 x, int32 y)
 
GLM_FUNC_DECL uint64 bitfieldInterleave (uint32 x, uint32 y)
 
GLM_FUNC_DECL int32 bitfieldInterleave (int8 x, int8 y, int8 z)
 
GLM_FUNC_DECL uint32 bitfieldInterleave (uint8 x, uint8 y, uint8 z)
 
GLM_FUNC_DECL int64 bitfieldInterleave (int16 x, int16 y, int16 z)
 
GLM_FUNC_DECL uint64 bitfieldInterleave (uint16 x, uint16 y, uint16 z)
 
GLM_FUNC_DECL int64 bitfieldInterleave (int32 x, int32 y, int32 z)
 
GLM_FUNC_DECL uint64 bitfieldInterleave (uint32 x, uint32 y, uint32 z)
 
GLM_FUNC_DECL int32 bitfieldInterleave (int8 x, int8 y, int8 z, int8 w)
 
GLM_FUNC_DECL uint32 bitfieldInterleave (uint8 x, uint8 y, uint8 z, uint8 w)
 
GLM_FUNC_DECL int64 bitfieldInterleave (int16 x, int16 y, int16 z, int16 w)
 
GLM_FUNC_DECL uint64 bitfieldInterleave (uint16 x, uint16 y, uint16 z, uint16 w)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType bitfieldRotateLeft (genIUType In, int Shift)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > bitfieldRotateLeft (vecType< T, P > const &In, int Shift)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType bitfieldRotateRight (genIUType In, int Shift)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > bitfieldRotateRight (vecType< T, P > const &In, int Shift)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType mask (genIUType Bits)
 
template<typename T , precision P, template< typename, precision > class vecIUType>
GLM_FUNC_DECL vecIUType< T, P > mask (vecIUType< T, P > const &v)
 
+

Detailed Description

+

Allow to perform bit operations on integer values.

+

<glm/gtc/bitfield.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genIUType glm::bitfieldFillOne (genIUType Value,
int FirstBit,
int BitCount 
)
+
+ +

Set to 1 a range of bits.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::bitfieldFillOne (vecType< T, P > const & Value,
int FirstBit,
int BitCount 
)
+
+ +

Set to 1 a range of bits.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genIUType glm::bitfieldFillZero (genIUType Value,
int FirstBit,
int BitCount 
)
+
+ +

Set to 0 a range of bits.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::bitfieldFillZero (vecType< T, P > const & Value,
int FirstBit,
int BitCount 
)
+
+ +

Set to 0 a range of bits.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL int16 glm::bitfieldInterleave (int8 x,
int8 y 
)
+
+ +

Interleaves the bits of x and y.

+

The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL uint16 glm::bitfieldInterleave (uint8 x,
uint8 y 
)
+
+ +

Interleaves the bits of x and y.

+

The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL int32 glm::bitfieldInterleave (int16 x,
int16 y 
)
+
+ +

Interleaves the bits of x and y.

+

The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL uint32 glm::bitfieldInterleave (uint16 x,
uint16 y 
)
+
+ +

Interleaves the bits of x and y.

+

The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL int64 glm::bitfieldInterleave (int32 x,
int32 y 
)
+
+ +

Interleaves the bits of x and y.

+

The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL uint64 glm::bitfieldInterleave (uint32 x,
uint32 y 
)
+
+ +

Interleaves the bits of x and y.

+

The first bit is the first bit of x followed by the first bit of y. The other bits are interleaved following the previous sequence.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL int32 glm::bitfieldInterleave (int8 x,
int8 y,
int8 z 
)
+
+ +

Interleaves the bits of x, y and z.

+

The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL uint32 glm::bitfieldInterleave (uint8 x,
uint8 y,
uint8 z 
)
+
+ +

Interleaves the bits of x, y and z.

+

The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL int64 glm::bitfieldInterleave (int16 x,
int16 y,
int16 z 
)
+
+ +

Interleaves the bits of x, y and z.

+

The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL uint64 glm::bitfieldInterleave (uint16 x,
uint16 y,
uint16 z 
)
+
+ +

Interleaves the bits of x, y and z.

+

The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL int64 glm::bitfieldInterleave (int32 x,
int32 y,
int32 z 
)
+
+ +

Interleaves the bits of x, y and z.

+

The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL uint64 glm::bitfieldInterleave (uint32 x,
uint32 y,
uint32 z 
)
+
+ +

Interleaves the bits of x, y and z.

+

The first bit is the first bit of x followed by the first bit of y and the first bit of z. The other bits are interleaved following the previous sequence.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL int32 glm::bitfieldInterleave (int8 x,
int8 y,
int8 z,
int8 w 
)
+
+ +

Interleaves the bits of x, y, z and w.

+

The first bit is the first bit of x followed by the first bit of y, the first bit of z and finally the first bit of w. The other bits are interleaved following the previous sequence.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL uint32 glm::bitfieldInterleave (uint8 x,
uint8 y,
uint8 z,
uint8 w 
)
+
+ +

Interleaves the bits of x, y, z and w.

+

The first bit is the first bit of x followed by the first bit of y, the first bit of z and finally the first bit of w. The other bits are interleaved following the previous sequence.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL int64 glm::bitfieldInterleave (int16 x,
int16 y,
int16 z,
int16 w 
)
+
+ +

Interleaves the bits of x, y, z and w.

+

The first bit is the first bit of x followed by the first bit of y, the first bit of z and finally the first bit of w. The other bits are interleaved following the previous sequence.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL uint64 glm::bitfieldInterleave (uint16 x,
uint16 y,
uint16 z,
uint16 w 
)
+
+ +

Interleaves the bits of x, y, z and w.

+

The first bit is the first bit of x followed by the first bit of y, the first bit of z and finally the first bit of w. The other bits are interleaved following the previous sequence.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genIUType glm::bitfieldRotateLeft (genIUType In,
int Shift 
)
+
+ +

Rotate all bits to the left.

+

All the bits dropped in the left side are inserted back on the right side.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::bitfieldRotateLeft (vecType< T, P > const & In,
int Shift 
)
+
+ +

Rotate all bits to the left.

+

All the bits dropped in the left side are inserted back on the right side.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genIUType glm::bitfieldRotateRight (genIUType In,
int Shift 
)
+
+ +

Rotate all bits to the right.

+

All the bits dropped in the right side are inserted back on the left side.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::bitfieldRotateRight (vecType< T, P > const & In,
int Shift 
)
+
+ +

Rotate all bits to the right.

+

All the bits dropped in the right side are inserted back on the left side.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genIUType glm::mask (genIUType Bits)
+
+ +

Build a mask of 'count' bits.

+
See also
GLM_GTC_bitfield
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecIUType<T, P> glm::mask (vecIUType< T, P > const & v)
+
+ +

Build a mask of 'count' bits.

+
See also
GLM_GTC_bitfield
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00161.html b/third_party/glm_test/doc/api/a00161.html new file mode 100644 index 0000000000000..f3a3a64f1cf23 --- /dev/null +++ b/third_party/glm_test/doc/api/a00161.html @@ -0,0 +1,141 @@ + + + + + + +0.9.8: GLM_GTC_color_space + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTC_color_space
+
+
+ + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > convertLinearToSRGB (vecType< T, P > const &ColorLinear)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > convertLinearToSRGB (vecType< T, P > const &ColorLinear, T Gamma)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > convertSRGBToLinear (vecType< T, P > const &ColorSRGB)
 
+template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > convertSRGBToLinear (vecType< T, P > const &ColorSRGB, T Gamma)
 
+

Detailed Description

+

Allow to perform bit operations on integer values.

+

<glm/gtc/color.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::convertLinearToSRGB (vecType< T, P > const & ColorLinear)
+
+ +

Convert a linear color to sRGB color using a standard gamma correction.

+

IEC 61966-2-1:1999 specification https://www.w3.org/Graphics/Color/srgb

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::convertLinearToSRGB (vecType< T, P > const & ColorLinear,
Gamma 
)
+
+ +

Convert a linear color to sRGB color using a custom gamma correction.

+

IEC 61966-2-1:1999 specification https://www.w3.org/Graphics/Color/srgb

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::convertSRGBToLinear (vecType< T, P > const & ColorSRGB)
+
+ +

Convert a sRGB color to linear color using a standard gamma correction.

+

IEC 61966-2-1:1999 specification https://www.w3.org/Graphics/Color/srgb

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00162.html b/third_party/glm_test/doc/api/a00162.html new file mode 100644 index 0000000000000..d9e0338d6823e --- /dev/null +++ b/third_party/glm_test/doc/api/a00162.html @@ -0,0 +1,670 @@ + + + + + + +0.9.8: GLM_GTC_constants + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTC_constants
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType e ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType epsilon ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType euler ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType four_over_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType golden_ratio ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType half_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType ln_ln_two ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType ln_ten ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType ln_two ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType one ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType one_over_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType one_over_root_two ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType one_over_two_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType quarter_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType root_five ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType root_half_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType root_ln_four ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType root_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType root_three ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType root_two ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType root_two_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType third ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType three_over_two_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType two_over_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType two_over_root_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType two_pi ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType two_thirds ()
 
template<typename genType >
GLM_FUNC_DECL GLM_CONSTEXPR genType zero ()
 
+

Detailed Description

+

Provide a list of constants and precomputed useful values.

+

<glm/gtc/constants.hpp> need to be included to use these features.

+

Function Documentation

+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::e ()
+
+ +

Return e constant.

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::epsilon ()
+
+ +

Return the epsilon constant for floating point types.

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::euler ()
+
+ +

Return Euler's constant.

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::four_over_pi ()
+
+ +

Return 4 / pi.

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::golden_ratio ()
+
+ +

Return the golden ratio constant.

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::half_pi ()
+
+ +

Return pi / 2.

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::ln_ln_two ()
+
+ +

Return ln(ln(2)).

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::ln_ten ()
+
+ +

Return ln(10).

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::ln_two ()
+
+ +

Return ln(2).

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::one ()
+
+ +

Return 1.

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::one_over_pi ()
+
+ +

Return 1 / pi.

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::one_over_root_two ()
+
+ +

Return 1 / sqrt(2).

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::one_over_two_pi ()
+
+ +

Return 1 / (pi * 2).

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::pi ()
+
+ +

Return the pi constant.

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::quarter_pi ()
+
+ +

Return pi / 4.

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::root_five ()
+
+ +

Return sqrt(5).

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::root_half_pi ()
+
+ +

Return sqrt(pi / 2).

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::root_ln_four ()
+
+ +

Return sqrt(ln(4)).

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::root_pi ()
+
+ +

Return square root of pi.

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::root_three ()
+
+ +

Return sqrt(3).

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::root_two ()
+
+ +

Return sqrt(2).

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::root_two_pi ()
+
+ +

Return sqrt(2 * pi).

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::third ()
+
+ +

Return 1 / 3.

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::three_over_two_pi ()
+
+ +

Return pi / 2 * 3.

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::two_over_pi ()
+
+ +

Return 2 / pi.

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::two_over_root_pi ()
+
+ +

Return 2 / sqrt(pi).

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::two_pi ()
+
+ +

Return pi * 2.

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::two_thirds ()
+
+ +

Return 2 / 3.

+
See also
GLM_GTC_constants
+ +
+
+ +
+
+ + + + + + + +
GLM_FUNC_DECL GLM_CONSTEXPR genType glm::zero ()
+
+ +

Return 0.

+
See also
GLM_GTC_constants
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00163.html b/third_party/glm_test/doc/api/a00163.html new file mode 100644 index 0000000000000..927505307c3ea --- /dev/null +++ b/third_party/glm_test/doc/api/a00163.html @@ -0,0 +1,217 @@ + + + + + + +0.9.8: GLM_GTC_epsilon + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
+
+
+ + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > epsilonEqual (vecType< T, P > const &x, vecType< T, P > const &y, T const &epsilon)
 
template<typename genType >
GLM_FUNC_DECL bool epsilonEqual (genType const &x, genType const &y, genType const &epsilon)
 
template<typename genType >
GLM_FUNC_DECL genType::boolType epsilonNotEqual (genType const &x, genType const &y, typename genType::value_type const &epsilon)
 
template<typename genType >
GLM_FUNC_DECL bool epsilonNotEqual (genType const &x, genType const &y, genType const &epsilon)
 
+

Detailed Description

+

Comparison functions for a user defined epsilon values.

+

<glm/gtc/epsilon.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<bool, P> glm::epsilonEqual (vecType< T, P > const & x,
vecType< T, P > const & y,
T const & epsilon 
)
+
+ +

Returns the component-wise comparison of |x - y| < epsilon.

+

True if this expression is satisfied.

+
See also
GLM_GTC_epsilon
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::epsilonEqual (genType const & x,
genType const & y,
genType const & epsilon 
)
+
+ +

Returns the component-wise comparison of |x - y| < epsilon.

+

True if this expression is satisfied.

+
See also
GLM_GTC_epsilon
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType::boolType glm::epsilonNotEqual (genType const & x,
genType const & y,
typename genType::value_type const & epsilon 
)
+
+ +

Returns the component-wise comparison of |x - y| < epsilon.

+

True if this expression is not satisfied.

+
See also
GLM_GTC_epsilon
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::epsilonNotEqual (genType const & x,
genType const & y,
genType const & epsilon 
)
+
+ +

Returns the component-wise comparison of |x - y| >= epsilon.

+

True if this expression is not satisfied.

+
See also
GLM_GTC_epsilon
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00164.html b/third_party/glm_test/doc/api/a00164.html new file mode 100644 index 0000000000000..884eea2c87985 --- /dev/null +++ b/third_party/glm_test/doc/api/a00164.html @@ -0,0 +1,137 @@ + + + + + + +0.9.8: GLM_GTC_functions + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTC_functions
+
+
+ + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL T gauss (T x, T ExpectedValue, T StandardDeviation)
 
template<typename T , precision P>
GLM_FUNC_DECL T gauss (tvec2< T, P > const &Coord, tvec2< T, P > const &ExpectedValue, tvec2< T, P > const &StandardDeviation)
 
+

Detailed Description

+

List of useful common functions.

+

<glm/gtc/functions.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::gauss (x,
ExpectedValue,
StandardDeviation 
)
+
+ +

1D gauss function

+
See also
GLM_GTC_epsilon
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::gauss (tvec2< T, P > const & Coord,
tvec2< T, P > const & ExpectedValue,
tvec2< T, P > const & StandardDeviation 
)
+
+ +

2D gauss function

+
See also
GLM_GTC_epsilon
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00165.html b/third_party/glm_test/doc/api/a00165.html new file mode 100644 index 0000000000000..5cde36e1b6951 --- /dev/null +++ b/third_party/glm_test/doc/api/a00165.html @@ -0,0 +1,290 @@ + + + + + + +0.9.8: GLM_GTC_integer + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
+
+
+ + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< int, P > iround (vecType< T, P > const &x)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType log2 (genIUType x)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType mod (genIUType x, genIUType y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > mod (vecType< T, P > const &x, T y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > mod (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< uint, P > uround (vecType< T, P > const &x)
 
+

Detailed Description

+

Allow to perform bit operations on integer values.

+

<glm/gtc/integer.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<int, P> glm::iround (vecType< T, P > const & x)
+
+ +

Returns a value equal to the nearest integer to x.

+

The fraction 0.5 will round in a direction chosen by the implementation, presumably the direction that is fastest.

+
Parameters
+ + +
xThe values of the argument must be greater or equal to zero.
+
+
+
Template Parameters
+ + + +
Tfloating point scalar types.
vecTypevector types.
+
+
+
See also
GLSL round man page
+
+GLM_GTC_integer
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genIUType glm::log2 (genIUType x)
+
+ +

Returns the log2 of x for integer values.

+

Can be reliably using to compute mipmap count from the texture size.

See also
GLM_GTC_integer
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genIUType glm::mod (genIUType x,
genIUType y 
)
+
+ +

Modulus.

+

Returns x % y for each component in x using the floating point value y.

+
Template Parameters
+ + +
genIUTypeInteger-point scalar or vector types.
+
+
+
See also
GLM_GTC_integer
+
+GLSL mod man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType< T, P > mod (vecType< T, P > const & x,
y 
)
+
+ +

Modulus.

+

Returns x % y for each component in x using the floating point value y.

+
Template Parameters
+ + + +
TInteger scalar types.
vecTypevector types.
+
+
+
See also
GLM_GTC_integer
+
+GLSL mod man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType< T, P > mod (vecType< T, P > const & x,
vecType< T, P > const & y 
)
+
+ +

Modulus.

+

Returns x % y for each component in x using the floating point value y.

+
Template Parameters
+ + + +
TInteger scalar types.
vecTypevector types.
+
+
+
See also
GLM_GTC_integer
+
+GLSL mod man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<uint, P> glm::uround (vecType< T, P > const & x)
+
+ +

Returns a value equal to the nearest integer to x.

+

The fraction 0.5 will round in a direction chosen by the implementation, presumably the direction that is fastest.

+
Parameters
+ + +
xThe values of the argument must be greater or equal to zero.
+
+
+
Template Parameters
+ + + +
Tfloating point scalar types.
vecTypevector types.
+
+
+
See also
GLSL round man page
+
+GLM_GTC_integer
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00166.html b/third_party/glm_test/doc/api/a00166.html new file mode 100644 index 0000000000000..cc9c79925b222 --- /dev/null +++ b/third_party/glm_test/doc/api/a00166.html @@ -0,0 +1,201 @@ + + + + + + +0.9.8: GLM_GTC_matrix_access + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTC_matrix_access
+
+
+ + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType::col_type column (genType const &m, length_t index)
 
template<typename genType >
GLM_FUNC_DECL genType column (genType const &m, length_t index, typename genType::col_type const &x)
 
template<typename genType >
GLM_FUNC_DECL genType::row_type row (genType const &m, length_t index)
 
template<typename genType >
GLM_FUNC_DECL genType row (genType const &m, length_t index, typename genType::row_type const &x)
 
+

Detailed Description

+

Defines functions to access rows or columns of a matrix easily.

+

<glm/gtc/matrix_access.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType::col_type glm::column (genType const & m,
length_t index 
)
+
+ +

Get a specific column of a matrix.

+
See also
GLM_GTC_matrix_access
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::column (genType const & m,
length_t index,
typename genType::col_type const & x 
)
+
+ +

Set a specific column to a matrix.

+
See also
GLM_GTC_matrix_access
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType::row_type glm::row (genType const & m,
length_t index 
)
+
+ +

Get a specific row of a matrix.

+
See also
GLM_GTC_matrix_access
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::row (genType const & m,
length_t index,
typename genType::row_type const & x 
)
+
+ +

Set a specific row to a matrix.

+
See also
GLM_GTC_matrix_access
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00167.html b/third_party/glm_test/doc/api/a00167.html new file mode 100644 index 0000000000000..8e44c1bedf4d4 --- /dev/null +++ b/third_party/glm_test/doc/api/a00167.html @@ -0,0 +1,1885 @@ + + + + + + +0.9.8: GLM_GTC_matrix_integer + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTC_matrix_integer
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef tmat2x2< int, highp > highp_imat2
 
typedef tmat2x2< int, highp > highp_imat2x2
 
typedef tmat2x3< int, highp > highp_imat2x3
 
typedef tmat2x4< int, highp > highp_imat2x4
 
typedef tmat3x3< int, highp > highp_imat3
 
typedef tmat3x2< int, highp > highp_imat3x2
 
typedef tmat3x3< int, highp > highp_imat3x3
 
typedef tmat3x4< int, highp > highp_imat3x4
 
typedef tmat4x4< int, highp > highp_imat4
 
typedef tmat4x2< int, highp > highp_imat4x2
 
typedef tmat4x3< int, highp > highp_imat4x3
 
typedef tmat4x4< int, highp > highp_imat4x4
 
typedef tmat2x2< uint, highp > highp_umat2
 
typedef tmat2x2< uint, highp > highp_umat2x2
 
typedef tmat2x3< uint, highp > highp_umat2x3
 
typedef tmat2x4< uint, highp > highp_umat2x4
 
typedef tmat3x3< uint, highp > highp_umat3
 
typedef tmat3x2< uint, highp > highp_umat3x2
 
typedef tmat3x3< uint, highp > highp_umat3x3
 
typedef tmat3x4< uint, highp > highp_umat3x4
 
typedef tmat4x4< uint, highp > highp_umat4
 
typedef tmat4x2< uint, highp > highp_umat4x2
 
typedef tmat4x3< uint, highp > highp_umat4x3
 
typedef tmat4x4< uint, highp > highp_umat4x4
 
typedef mediump_imat2 imat2
 
typedef mediump_imat2x2 imat2x2
 
typedef mediump_imat2x3 imat2x3
 
typedef mediump_imat2x4 imat2x4
 
typedef mediump_imat3 imat3
 
typedef mediump_imat3x2 imat3x2
 
typedef mediump_imat3x3 imat3x3
 
typedef mediump_imat3x4 imat3x4
 
typedef mediump_imat4 imat4
 
typedef mediump_imat4x2 imat4x2
 
typedef mediump_imat4x3 imat4x3
 
typedef mediump_imat4x4 imat4x4
 
typedef tmat2x2< int, lowp > lowp_imat2
 
typedef tmat2x2< int, lowp > lowp_imat2x2
 
typedef tmat2x3< int, lowp > lowp_imat2x3
 
typedef tmat2x4< int, lowp > lowp_imat2x4
 
typedef tmat3x3< int, lowp > lowp_imat3
 
typedef tmat3x2< int, lowp > lowp_imat3x2
 
typedef tmat3x3< int, lowp > lowp_imat3x3
 
typedef tmat3x4< int, lowp > lowp_imat3x4
 
typedef tmat4x4< int, lowp > lowp_imat4
 
typedef tmat4x2< int, lowp > lowp_imat4x2
 
typedef tmat4x3< int, lowp > lowp_imat4x3
 
typedef tmat4x4< int, lowp > lowp_imat4x4
 
typedef tmat2x2< uint, lowp > lowp_umat2
 
typedef tmat2x2< uint, lowp > lowp_umat2x2
 
typedef tmat2x3< uint, lowp > lowp_umat2x3
 
typedef tmat2x4< uint, lowp > lowp_umat2x4
 
typedef tmat3x3< uint, lowp > lowp_umat3
 
typedef tmat3x2< uint, lowp > lowp_umat3x2
 
typedef tmat3x3< uint, lowp > lowp_umat3x3
 
typedef tmat3x4< uint, lowp > lowp_umat3x4
 
typedef tmat4x4< uint, lowp > lowp_umat4
 
typedef tmat4x2< uint, lowp > lowp_umat4x2
 
typedef tmat4x3< uint, lowp > lowp_umat4x3
 
typedef tmat4x4< uint, lowp > lowp_umat4x4
 
typedef tmat2x2< int, mediump > mediump_imat2
 
typedef tmat2x2< int, mediump > mediump_imat2x2
 
typedef tmat2x3< int, mediump > mediump_imat2x3
 
typedef tmat2x4< int, mediump > mediump_imat2x4
 
typedef tmat3x3< int, mediump > mediump_imat3
 
typedef tmat3x2< int, mediump > mediump_imat3x2
 
typedef tmat3x3< int, mediump > mediump_imat3x3
 
typedef tmat3x4< int, mediump > mediump_imat3x4
 
typedef tmat4x4< int, mediump > mediump_imat4
 
typedef tmat4x2< int, mediump > mediump_imat4x2
 
typedef tmat4x3< int, mediump > mediump_imat4x3
 
typedef tmat4x4< int, mediump > mediump_imat4x4
 
typedef tmat2x2< uint, mediump > mediump_umat2
 
typedef tmat2x2< uint, mediump > mediump_umat2x2
 
typedef tmat2x3< uint, mediump > mediump_umat2x3
 
typedef tmat2x4< uint, mediump > mediump_umat2x4
 
typedef tmat3x3< uint, mediump > mediump_umat3
 
typedef tmat3x2< uint, mediump > mediump_umat3x2
 
typedef tmat3x3< uint, mediump > mediump_umat3x3
 
typedef tmat3x4< uint, mediump > mediump_umat3x4
 
typedef tmat4x4< uint, mediump > mediump_umat4
 
typedef tmat4x2< uint, mediump > mediump_umat4x2
 
typedef tmat4x3< uint, mediump > mediump_umat4x3
 
typedef tmat4x4< uint, mediump > mediump_umat4x4
 
typedef mediump_umat2 umat2
 
typedef mediump_umat2x2 umat2x2
 
typedef mediump_umat2x3 umat2x3
 
typedef mediump_umat2x4 umat2x4
 
typedef mediump_umat3 umat3
 
typedef mediump_umat3x2 umat3x2
 
typedef mediump_umat3x3 umat3x3
 
typedef mediump_umat3x4 umat3x4
 
typedef mediump_umat4 umat4
 
typedef mediump_umat4x2 umat4x2
 
typedef mediump_umat4x3 umat4x3
 
typedef mediump_umat4x4 umat4x4
 
+

Detailed Description

+

Defines a number of matrices with integer types.

+

<glm/gtc/matrix_integer.hpp> need to be included to use these functionalities.

+

Typedef Documentation

+ +
+
+ + + + +
typedef tmat2x2<int, highp> highp_imat2
+
+ +

High-precision signed integer 2x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 36 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2<int, highp> highp_imat2x2
+
+ +

High-precision signed integer 2x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 48 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x3<int, highp> highp_imat2x3
+
+ +

High-precision signed integer 2x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 52 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x4<int, highp> highp_imat2x4
+
+ +

High-precision signed integer 2x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 56 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<int, highp> highp_imat3
+
+ +

High-precision signed integer 3x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 40 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x2<int, highp> highp_imat3x2
+
+ +

High-precision signed integer 3x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 60 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<int, highp> highp_imat3x3
+
+ +

High-precision signed integer 3x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 64 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x4<int, highp> highp_imat3x4
+
+ +

High-precision signed integer 3x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 68 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<int, highp> highp_imat4
+
+ +

High-precision signed integer 4x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 44 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x2<int, highp> highp_imat4x2
+
+ +

High-precision signed integer 4x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 72 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x3<int, highp> highp_imat4x3
+
+ +

High-precision signed integer 4x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 76 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<int, highp> highp_imat4x4
+
+ +

High-precision signed integer 4x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 80 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2<uint, highp> highp_umat2
+
+ +

High-precision unsigned integer 2x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 185 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2<uint, highp> highp_umat2x2
+
+ +

High-precision unsigned integer 2x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 197 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x3<uint, highp> highp_umat2x3
+
+ +

High-precision unsigned integer 2x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 201 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x4<uint, highp> highp_umat2x4
+
+ +

High-precision unsigned integer 2x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 205 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<uint, highp> highp_umat3
+
+ +

High-precision unsigned integer 3x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 189 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x2<uint, highp> highp_umat3x2
+
+ +

High-precision unsigned integer 3x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 209 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<uint, highp> highp_umat3x3
+
+ +

High-precision unsigned integer 3x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 213 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x4<uint, highp> highp_umat3x4
+
+ +

High-precision unsigned integer 3x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 217 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<uint, highp> highp_umat4
+
+ +

High-precision unsigned integer 4x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 193 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x2<uint, highp> highp_umat4x2
+
+ +

High-precision unsigned integer 4x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 221 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x3<uint, highp> highp_umat4x3
+
+ +

High-precision unsigned integer 4x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 225 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<uint, highp> highp_umat4x4
+
+ +

High-precision unsigned integer 4x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 229 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_imat2 imat2
+
+ +

Signed integer 2x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 361 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_imat2x2 imat2x2
+
+ +

Signed integer 2x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 373 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_imat2x3 imat2x3
+
+ +

Signed integer 2x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 377 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_imat2x4 imat2x4
+
+ +

Signed integer 2x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 381 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_imat3 imat3
+
+ +

Signed integer 3x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 365 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_imat3x2 imat3x2
+
+ +

Signed integer 3x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 385 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_imat3x3 imat3x3
+
+ +

Signed integer 3x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 389 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_imat3x4 imat3x4
+
+ +

Signed integer 3x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 393 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_imat4 imat4
+
+ +

Signed integer 4x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 369 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_imat4x2 imat4x2
+
+ +

Signed integer 4x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 397 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_imat4x3 imat4x3
+
+ +

Signed integer 4x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 401 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_imat4x4 imat4x4
+
+ +

Signed integer 4x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 405 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2<int, lowp> lowp_imat2
+
+ +

Low-precision signed integer 2x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 135 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2<int, lowp> lowp_imat2x2
+
+ +

Low-precision signed integer 2x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 148 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x3<int, lowp> lowp_imat2x3
+
+ +

Low-precision signed integer 2x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 152 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x4<int, lowp> lowp_imat2x4
+
+ +

Low-precision signed integer 2x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 156 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<int, lowp> lowp_imat3
+
+ +

Low-precision signed integer 3x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 139 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x2<int, lowp> lowp_imat3x2
+
+ +

Low-precision signed integer 3x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 160 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<int, lowp> lowp_imat3x3
+
+ +

Low-precision signed integer 3x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 164 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x4<int, lowp> lowp_imat3x4
+
+ +

Low-precision signed integer 3x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 168 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<int, lowp> lowp_imat4
+
+ +

Low-precision signed integer 4x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 143 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x2<int, lowp> lowp_imat4x2
+
+ +

Low-precision signed integer 4x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 172 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x3<int, lowp> lowp_imat4x3
+
+ +

Low-precision signed integer 4x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 176 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<int, lowp> lowp_imat4x4
+
+ +

Low-precision signed integer 4x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 180 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2<uint, lowp> lowp_umat2
+
+ +

Low-precision unsigned integer 2x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 284 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2<uint, lowp> lowp_umat2x2
+
+ +

Low-precision unsigned integer 2x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 297 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x3<uint, lowp> lowp_umat2x3
+
+ +

Low-precision unsigned integer 2x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 301 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x4<uint, lowp> lowp_umat2x4
+
+ +

Low-precision unsigned integer 2x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 305 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<uint, lowp> lowp_umat3
+
+ +

Low-precision unsigned integer 3x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 288 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x2<uint, lowp> lowp_umat3x2
+
+ +

Low-precision unsigned integer 3x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 309 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<uint, lowp> lowp_umat3x3
+
+ +

Low-precision unsigned integer 3x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 313 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x4<uint, lowp> lowp_umat3x4
+
+ +

Low-precision unsigned integer 3x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 317 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<uint, lowp> lowp_umat4
+
+ +

Low-precision unsigned integer 4x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 292 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x2<uint, lowp> lowp_umat4x2
+
+ +

Low-precision unsigned integer 4x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 321 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x3<uint, lowp> lowp_umat4x3
+
+ +

Low-precision unsigned integer 4x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 325 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<uint, lowp> lowp_umat4x4
+
+ +

Low-precision unsigned integer 4x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 329 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2<int, mediump> mediump_imat2
+
+ +

Medium-precision signed integer 2x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 85 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2<int, mediump> mediump_imat2x2
+
+ +

Medium-precision signed integer 2x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 98 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x3<int, mediump> mediump_imat2x3
+
+ +

Medium-precision signed integer 2x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 102 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x4<int, mediump> mediump_imat2x4
+
+ +

Medium-precision signed integer 2x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 106 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<int, mediump> mediump_imat3
+
+ +

Medium-precision signed integer 3x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 89 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x2<int, mediump> mediump_imat3x2
+
+ +

Medium-precision signed integer 3x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 110 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<int, mediump> mediump_imat3x3
+
+ +

Medium-precision signed integer 3x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 114 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x4<int, mediump> mediump_imat3x4
+
+ +

Medium-precision signed integer 3x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 118 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<int, mediump> mediump_imat4
+
+ +

Medium-precision signed integer 4x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 93 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x2<int, mediump> mediump_imat4x2
+
+ +

Medium-precision signed integer 4x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 122 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x3<int, mediump> mediump_imat4x3
+
+ +

Medium-precision signed integer 4x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 126 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<int, mediump> mediump_imat4x4
+
+ +

Medium-precision signed integer 4x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 130 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2<uint, mediump> mediump_umat2
+
+ +

Medium-precision unsigned integer 2x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 234 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2<uint, mediump> mediump_umat2x2
+
+ +

Medium-precision unsigned integer 2x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 247 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x3<uint, mediump> mediump_umat2x3
+
+ +

Medium-precision unsigned integer 2x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 251 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x4<uint, mediump> mediump_umat2x4
+
+ +

Medium-precision unsigned integer 2x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 255 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<uint, mediump> mediump_umat3
+
+ +

Medium-precision unsigned integer 3x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 238 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x2<uint, mediump> mediump_umat3x2
+
+ +

Medium-precision unsigned integer 3x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 259 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3<uint, mediump> mediump_umat3x3
+
+ +

Medium-precision unsigned integer 3x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 263 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x4<uint, mediump> mediump_umat3x4
+
+ +

Medium-precision unsigned integer 3x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 267 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<uint, mediump> mediump_umat4
+
+ +

Medium-precision unsigned integer 4x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 242 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x2<uint, mediump> mediump_umat4x2
+
+ +

Medium-precision unsigned integer 4x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 271 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x3<uint, mediump> mediump_umat4x3
+
+ +

Medium-precision unsigned integer 4x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 275 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4<uint, mediump> mediump_umat4x4
+
+ +

Medium-precision unsigned integer 4x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 279 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_umat2 umat2
+
+ +

Unsigned integer 2x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 438 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_umat2x2 umat2x2
+
+ +

Unsigned integer 2x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 450 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_umat2x3 umat2x3
+
+ +

Unsigned integer 2x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 454 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_umat2x4 umat2x4
+
+ +

Unsigned integer 2x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 458 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_umat3 umat3
+
+ +

Unsigned integer 3x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 442 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_umat3x2 umat3x2
+
+ +

Unsigned integer 3x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 462 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_umat3x3 umat3x3
+
+ +

Unsigned integer 3x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 466 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_umat3x4 umat3x4
+
+ +

Unsigned integer 3x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 470 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_umat4 umat4
+
+ +

Unsigned integer 4x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 446 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_umat4x2 umat4x2
+
+ +

Unsigned integer 4x2 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 474 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_umat4x3 umat4x3
+
+ +

Unsigned integer 4x3 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 478 of file matrix_integer.hpp.

+ +
+
+ +
+
+ + + + +
typedef mediump_umat4x4 umat4x4
+
+ +

Unsigned integer 4x4 matrix.

+
See also
GLM_GTC_matrix_integer
+ +

Definition at line 482 of file matrix_integer.hpp.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00168.html b/third_party/glm_test/doc/api/a00168.html new file mode 100644 index 0000000000000..b821ea31e32fc --- /dev/null +++ b/third_party/glm_test/doc/api/a00168.html @@ -0,0 +1,129 @@ + + + + + + +0.9.8: GLM_GTC_matrix_inverse + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTC_matrix_inverse
+
+
+ + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType affineInverse (genType const &m)
 
template<typename genType >
GLM_FUNC_DECL genType inverseTranspose (genType const &m)
 
+

Detailed Description

+

Defines additional matrix inverting functions.

+

<glm/gtc/matrix_inverse.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::affineInverse (genType const & m)
+
+ +

Fast matrix inverse for affine matrix.

+
Parameters
+ + +
mInput matrix to invert.
+
+
+
Template Parameters
+ + +
genTypeSquared floating-point matrix: half, float or double. Inverse of matrix based of half-precision floating point value is highly innacurate.
+
+
+
See also
GLM_GTC_matrix_inverse
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::inverseTranspose (genType const & m)
+
+ +

Compute the inverse transpose of a matrix.

+
Parameters
+ + +
mInput matrix to invert transpose.
+
+
+
Template Parameters
+ + +
genTypeSquared floating-point matrix: half, float or double. Inverse of matrix based of half-precision floating point value is highly innacurate.
+
+
+
See also
GLM_GTC_matrix_inverse
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00169.html b/third_party/glm_test/doc/api/a00169.html new file mode 100644 index 0000000000000..832b7c11361d0 --- /dev/null +++ b/third_party/glm_test/doc/api/a00169.html @@ -0,0 +1,1690 @@ + + + + + + +0.9.8: GLM_GTC_matrix_transform + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTC_matrix_transform
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > frustum (T left, T right, T bottom, T top, T near, T far)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > frustumLH (T left, T right, T bottom, T top, T near, T far)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > frustumRH (T left, T right, T bottom, T top, T near, T far)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > infinitePerspective (T fovy, T aspect, T near)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > infinitePerspectiveLH (T fovy, T aspect, T near)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > infinitePerspectiveRH (T fovy, T aspect, T near)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > lookAt (tvec3< T, P > const &eye, tvec3< T, P > const &center, tvec3< T, P > const &up)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > lookAtLH (tvec3< T, P > const &eye, tvec3< T, P > const &center, tvec3< T, P > const &up)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > lookAtRH (tvec3< T, P > const &eye, tvec3< T, P > const &center, tvec3< T, P > const &up)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > ortho (T left, T right, T bottom, T top, T zNear, T zFar)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > ortho (T left, T right, T bottom, T top)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > orthoLH (T left, T right, T bottom, T top, T zNear, T zFar)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > orthoRH (T left, T right, T bottom, T top, T zNear, T zFar)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > perspective (T fovy, T aspect, T near, T far)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > perspectiveFov (T fov, T width, T height, T near, T far)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > perspectiveFovLH (T fov, T width, T height, T near, T far)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > perspectiveFovRH (T fov, T width, T height, T near, T far)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > perspectiveLH (T fovy, T aspect, T near, T far)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > perspectiveRH (T fovy, T aspect, T near, T far)
 
template<typename T , precision P, typename U >
GLM_FUNC_DECL tmat4x4< T, P > pickMatrix (tvec2< T, P > const &center, tvec2< T, P > const &delta, tvec4< U, P > const &viewport)
 
template<typename T , typename U , precision P>
GLM_FUNC_DECL tvec3< T, P > project (tvec3< T, P > const &obj, tmat4x4< T, P > const &model, tmat4x4< T, P > const &proj, tvec4< U, P > const &viewport)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > rotate (tmat4x4< T, P > const &m, T angle, tvec3< T, P > const &axis)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > scale (tmat4x4< T, P > const &m, tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > translate (tmat4x4< T, P > const &m, tvec3< T, P > const &v)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > tweakedInfinitePerspective (T fovy, T aspect, T near)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > tweakedInfinitePerspective (T fovy, T aspect, T near, T ep)
 
template<typename T , typename U , precision P>
GLM_FUNC_DECL tvec3< T, P > unProject (tvec3< T, P > const &win, tmat4x4< T, P > const &model, tmat4x4< T, P > const &proj, tvec4< U, P > const &viewport)
 
+

Detailed Description

+

Defines functions that generate common transformation matrices.

+

The matrices generated by this extension use standard OpenGL fixed-function conventions. For example, the lookAt function generates a transform from world space into the specific eye space that the projective matrix functions (perspective, ortho, etc) are designed to expect. The OpenGL compatibility specifications defines the particular layout of this eye space.

+

<glm/gtc/matrix_transform.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::frustum (left,
right,
bottom,
top,
near,
far 
)
+
+ +

Creates a frustum matrix with default handedness.

+
Parameters
+ + + + + + + +
left
right
bottom
top
near
far
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::frustumLH (left,
right,
bottom,
top,
near,
far 
)
+
+ +

Creates a left handed frustum matrix.

+
Parameters
+ + + + + + + +
left
right
bottom
top
near
far
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::frustumRH (left,
right,
bottom,
top,
near,
far 
)
+
+ +

Creates a right handed frustum matrix.

+
Parameters
+ + + + + + + +
left
right
bottom
top
near
far
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::infinitePerspective (fovy,
aspect,
near 
)
+
+ +

Creates a matrix for a symmetric perspective-view frustum with far plane at infinite with default handedness.

+
Parameters
+ + + + +
fovySpecifies the field of view angle, in degrees, in the y direction. Expressed in radians.
aspectSpecifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height).
nearSpecifies the distance from the viewer to the near clipping plane (always positive).
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::infinitePerspectiveLH (fovy,
aspect,
near 
)
+
+ +

Creates a matrix for a left handed, symmetric perspective-view frustum with far plane at infinite.

+
Parameters
+ + + + +
fovySpecifies the field of view angle, in degrees, in the y direction. Expressed in radians.
aspectSpecifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height).
nearSpecifies the distance from the viewer to the near clipping plane (always positive).
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::infinitePerspectiveRH (fovy,
aspect,
near 
)
+
+ +

Creates a matrix for a right handed, symmetric perspective-view frustum with far plane at infinite.

+
Parameters
+ + + + +
fovySpecifies the field of view angle, in degrees, in the y direction. Expressed in radians.
aspectSpecifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height).
nearSpecifies the distance from the viewer to the near clipping plane (always positive).
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::lookAt (tvec3< T, P > const & eye,
tvec3< T, P > const & center,
tvec3< T, P > const & up 
)
+
+ +

Build a look at view matrix based on the default handedness.

+
Parameters
+ + + + +
eyePosition of the camera
centerPosition where the camera is looking at
upNormalized up vector, how the camera is oriented. Typically (0, 0, 1)
+
+
+
See also
GLM_GTC_matrix_transform
+
+- frustum(T const & left, T const & right, T const & bottom, T const & top, T const & nearVal, T const & farVal) frustum(T const & left, T const & right, T const & bottom, T const & top, T const & nearVal, T const & farVal)
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::lookAtLH (tvec3< T, P > const & eye,
tvec3< T, P > const & center,
tvec3< T, P > const & up 
)
+
+ +

Build a left handed look at view matrix.

+
Parameters
+ + + + +
eyePosition of the camera
centerPosition where the camera is looking at
upNormalized up vector, how the camera is oriented. Typically (0, 0, 1)
+
+
+
See also
GLM_GTC_matrix_transform
+
+- frustum(T const & left, T const & right, T const & bottom, T const & top, T const & nearVal, T const & farVal) frustum(T const & left, T const & right, T const & bottom, T const & top, T const & nearVal, T const & farVal)
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::lookAtRH (tvec3< T, P > const & eye,
tvec3< T, P > const & center,
tvec3< T, P > const & up 
)
+
+ +

Build a right handed look at view matrix.

+
Parameters
+ + + + +
eyePosition of the camera
centerPosition where the camera is looking at
upNormalized up vector, how the camera is oriented. Typically (0, 0, 1)
+
+
+
See also
GLM_GTC_matrix_transform
+
+- frustum(T const & left, T const & right, T const & bottom, T const & top, T const & nearVal, T const & farVal) frustum(T const & left, T const & right, T const & bottom, T const & top, T const & nearVal, T const & farVal)
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::ortho (left,
right,
bottom,
top,
zNear,
zFar 
)
+
+ +

Creates a matrix for an orthographic parallel viewing volume, using the default handedness.

+
Parameters
+ + + + + + + +
left
right
bottom
top
zNear
zFar
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+
+- glm::ortho(T const & left, T const & right, T const & bottom, T const & top)
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::ortho (left,
right,
bottom,
top 
)
+
+ +

Creates a matrix for projecting two-dimensional coordinates onto the screen.

+
Parameters
+ + + + + +
left
right
bottom
top
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+
+- glm::ortho(T const & left, T const & right, T const & bottom, T const & top, T const & zNear, T const & zFar)
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::orthoLH (left,
right,
bottom,
top,
zNear,
zFar 
)
+
+ +

Creates a matrix for an orthographic parallel viewing volume, using left-handedness.

+
Parameters
+ + + + + + + +
left
right
bottom
top
zNear
zFar
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+
+- glm::ortho(T const & left, T const & right, T const & bottom, T const & top)
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::orthoRH (left,
right,
bottom,
top,
zNear,
zFar 
)
+
+ +

Creates a matrix for an orthographic parallel viewing volume, using right-handedness.

+
Parameters
+ + + + + + + +
left
right
bottom
top
zNear
zFar
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+
+- glm::ortho(T const & left, T const & right, T const & bottom, T const & top)
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::perspective (fovy,
aspect,
near,
far 
)
+
+ +

Creates a matrix for a symetric perspective-view frustum based on the default handedness.

+
Parameters
+ + + + + +
fovySpecifies the field of view angle in the y direction. Expressed in radians.
aspectSpecifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height).
nearSpecifies the distance from the viewer to the near clipping plane (always positive).
farSpecifies the distance from the viewer to the far clipping plane (always positive).
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::perspectiveFov (fov,
width,
height,
near,
far 
)
+
+ +

Builds a perspective projection matrix based on a field of view and the default handedness.

+
Parameters
+ + + + + + +
fovExpressed in radians.
width
height
nearSpecifies the distance from the viewer to the near clipping plane (always positive).
farSpecifies the distance from the viewer to the far clipping plane (always positive).
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::perspectiveFovLH (fov,
width,
height,
near,
far 
)
+
+ +

Builds a left handed perspective projection matrix based on a field of view.

+
Parameters
+ + + + + + +
fovExpressed in radians.
width
height
nearSpecifies the distance from the viewer to the near clipping plane (always positive).
farSpecifies the distance from the viewer to the far clipping plane (always positive).
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::perspectiveFovRH (fov,
width,
height,
near,
far 
)
+
+ +

Builds a right handed perspective projection matrix based on a field of view.

+
Parameters
+ + + + + + +
fovExpressed in radians.
width
height
nearSpecifies the distance from the viewer to the near clipping plane (always positive).
farSpecifies the distance from the viewer to the far clipping plane (always positive).
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::perspectiveLH (fovy,
aspect,
near,
far 
)
+
+ +

Creates a matrix for a left handed, symetric perspective-view frustum.

+
Parameters
+ + + + + +
fovySpecifies the field of view angle, in degrees, in the y direction. Expressed in radians.
aspectSpecifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height).
nearSpecifies the distance from the viewer to the near clipping plane (always positive).
farSpecifies the distance from the viewer to the far clipping plane (always positive).
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::perspectiveRH (fovy,
aspect,
near,
far 
)
+
+ +

Creates a matrix for a right handed, symetric perspective-view frustum.

+
Parameters
+ + + + + +
fovySpecifies the field of view angle, in degrees, in the y direction. Expressed in radians.
aspectSpecifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height).
nearSpecifies the distance from the viewer to the near clipping plane (always positive).
farSpecifies the distance from the viewer to the far clipping plane (always positive).
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::pickMatrix (tvec2< T, P > const & center,
tvec2< T, P > const & delta,
tvec4< U, P > const & viewport 
)
+
+ +

Define a picking region.

+
Parameters
+ + + + +
center
delta
viewport
+
+
+
Template Parameters
+ + + +
TNative type used for the computation. Currently supported: half (not recommanded), float or double.
UCurrently supported: Floating-point types and integer types.
+
+
+
See also
GLM_GTC_matrix_transform
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::project (tvec3< T, P > const & obj,
tmat4x4< T, P > const & model,
tmat4x4< T, P > const & proj,
tvec4< U, P > const & viewport 
)
+
+ +

Map the specified object coordinates (obj.x, obj.y, obj.z) into window coordinates.

+
Parameters
+ + + + + +
objSpecify the object coordinates.
modelSpecifies the current modelview matrix
projSpecifies the current projection matrix
viewportSpecifies the current viewport
+
+
+
Returns
Return the computed window coordinates.
+
Template Parameters
+ + + +
TNative type used for the computation. Currently supported: half (not recommanded), float or double.
UCurrently supported: Floating-point types and integer types.
+
+
+
See also
GLM_GTC_matrix_transform
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::rotate (tmat4x4< T, P > const & m,
angle,
tvec3< T, P > const & axis 
)
+
+ +

Builds a rotation 4 * 4 matrix created from an axis vector and an angle.

+
Parameters
+ + + + +
mInput matrix multiplied by this rotation matrix.
angleRotation angle expressed in radians.
axisRotation axis, recommended to be normalized.
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Supported: half, float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+
+- rotate(tmat4x4<T, P> const & m, T angle, T x, T y, T z)
+
+- rotate(T angle, tvec3<T, P> const & v)
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::scale (tmat4x4< T, P > const & m,
tvec3< T, P > const & v 
)
+
+ +

Builds a scale 4 * 4 matrix created from 3 scalars.

+
Parameters
+ + + +
mInput matrix multiplied by this scale matrix.
vRatio of scaling for each axis.
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+
+- scale(tmat4x4<T, P> const & m, T x, T y, T z)
+
+- scale(tvec3<T, P> const & v)
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::translate (tmat4x4< T, P > const & m,
tvec3< T, P > const & v 
)
+
+ +

Builds a translation 4 * 4 matrix created from a vector of 3 components.

+
Parameters
+ + + +
mInput matrix multiplied by this translation matrix.
vCoordinates of a translation vector.
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
#include <glm/glm.hpp>
+ +
...
+
glm::mat4 m = glm::translate(glm::mat4(1.0f), glm::vec3(1.0f));
+
// m[0][0] == 1.0f, m[0][1] == 0.0f, m[0][2] == 0.0f, m[0][3] == 0.0f
+
// m[1][0] == 0.0f, m[1][1] == 1.0f, m[1][2] == 0.0f, m[1][3] == 0.0f
+
// m[2][0] == 0.0f, m[2][1] == 0.0f, m[2][2] == 1.0f, m[2][3] == 0.0f
+
// m[3][0] == 1.0f, m[3][1] == 1.0f, m[3][2] == 1.0f, m[3][3] == 1.0f
+
+
+
+
See also
GLM_GTC_matrix_transform
+
+- translate(tmat4x4<T, P> const & m, T x, T y, T z)
+
+- translate(tvec3<T, P> const & v)
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::tweakedInfinitePerspective (fovy,
aspect,
near 
)
+
+ +

Creates a matrix for a symmetric perspective-view frustum with far plane at infinite for graphics hardware that doesn't support depth clamping.

+
Parameters
+ + + + +
fovySpecifies the field of view angle, in degrees, in the y direction. Expressed in radians.
aspectSpecifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height).
nearSpecifies the distance from the viewer to the near clipping plane (always positive).
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::tweakedInfinitePerspective (fovy,
aspect,
near,
ep 
)
+
+ +

Creates a matrix for a symmetric perspective-view frustum with far plane at infinite for graphics hardware that doesn't support depth clamping.

+
Parameters
+ + + + + +
fovySpecifies the field of view angle, in degrees, in the y direction. Expressed in radians.
aspectSpecifies the aspect ratio that determines the field of view in the x direction. The aspect ratio is the ratio of x (width) to y (height).
nearSpecifies the distance from the viewer to the near clipping plane (always positive).
ep
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTC_matrix_transform
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::unProject (tvec3< T, P > const & win,
tmat4x4< T, P > const & model,
tmat4x4< T, P > const & proj,
tvec4< U, P > const & viewport 
)
+
+ +

Map the specified window coordinates (win.x, win.y, win.z) into object coordinates.

+
Parameters
+ + + + + +
winSpecify the window coordinates to be mapped.
modelSpecifies the modelview matrix
projSpecifies the projection matrix
viewportSpecifies the viewport
+
+
+
Returns
Returns the computed object coordinates.
+
Template Parameters
+ + + +
TNative type used for the computation. Currently supported: half (not recommanded), float or double.
UCurrently supported: Floating-point types and integer types.
+
+
+
See also
GLM_GTC_matrix_transform
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00170.html b/third_party/glm_test/doc/api/a00170.html new file mode 100644 index 0000000000000..100dc15b0a429 --- /dev/null +++ b/third_party/glm_test/doc/api/a00170.html @@ -0,0 +1,136 @@ + + + + + + +0.9.8: GLM_GTC_noise + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
+
+
+ + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T perlin (vecType< T, P > const &p)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T perlin (vecType< T, P > const &p, vecType< T, P > const &rep)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T simplex (vecType< T, P > const &p)
 
+

Detailed Description

+

Defines 2D, 3D and 4D procedural noise functions Based on the work of Stefan Gustavson and Ashima Arts on "webgl-noise": https://github.com/ashima/webgl-noise Following Stefan Gustavson's paper "Simplex noise demystified": http://www.itn.liu.se/~stegu/simplexnoise/simplexnoise.pdf <glm/gtc/noise.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::perlin (vecType< T, P > const & p)
+
+ +

Classic perlin noise.

+
See also
GLM_GTC_noise
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::perlin (vecType< T, P > const & p,
vecType< T, P > const & rep 
)
+
+ +

Periodic perlin noise.

+
See also
GLM_GTC_noise
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::simplex (vecType< T, P > const & p)
+
+ +

Simplex noise.

+
See also
GLM_GTC_noise
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00171.html b/third_party/glm_test/doc/api/a00171.html new file mode 100644 index 0000000000000..5be9454776b54 --- /dev/null +++ b/third_party/glm_test/doc/api/a00171.html @@ -0,0 +1,1406 @@ + + + + + + +0.9.8: GLM_GTC_packing + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

GLM_FUNC_DECL uint32 packF2x11_1x10 (vec3 const &v)
 
GLM_FUNC_DECL uint32 packF3x9_E1x5 (vec3 const &v)
 
template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< uint16, P > packHalf (vecType< float, P > const &v)
 
GLM_FUNC_DECL uint16 packHalf1x16 (float v)
 
GLM_FUNC_DECL uint64 packHalf4x16 (vec4 const &v)
 
GLM_FUNC_DECL uint32 packI3x10_1x2 (ivec4 const &v)
 
template<typename intType , typename floatType , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< intType, P > packSnorm (vecType< floatType, P > const &v)
 
GLM_FUNC_DECL uint16 packSnorm1x16 (float v)
 
GLM_FUNC_DECL uint8 packSnorm1x8 (float s)
 
GLM_FUNC_DECL uint16 packSnorm2x8 (vec2 const &v)
 
GLM_FUNC_DECL uint32 packSnorm3x10_1x2 (vec4 const &v)
 
GLM_FUNC_DECL uint64 packSnorm4x16 (vec4 const &v)
 
GLM_FUNC_DECL uint32 packU3x10_1x2 (uvec4 const &v)
 
template<typename uintType , typename floatType , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< uintType, P > packUnorm (vecType< floatType, P > const &v)
 
GLM_FUNC_DECL uint16 packUnorm1x16 (float v)
 
GLM_FUNC_DECL uint16 packUnorm1x5_1x6_1x5 (vec3 const &v)
 
GLM_FUNC_DECL uint8 packUnorm1x8 (float v)
 
GLM_FUNC_DECL uint8 packUnorm2x3_1x2 (vec3 const &v)
 
GLM_FUNC_DECL uint8 packUnorm2x4 (vec2 const &v)
 
GLM_FUNC_DECL uint16 packUnorm2x8 (vec2 const &v)
 
GLM_FUNC_DECL uint32 packUnorm3x10_1x2 (vec4 const &v)
 
GLM_FUNC_DECL uint16 packUnorm3x5_1x1 (vec4 const &v)
 
GLM_FUNC_DECL uint64 packUnorm4x16 (vec4 const &v)
 
GLM_FUNC_DECL uint16 packUnorm4x4 (vec4 const &v)
 
GLM_FUNC_DECL vec3 unpackF2x11_1x10 (uint32 p)
 
GLM_FUNC_DECL vec3 unpackF3x9_E1x5 (uint32 p)
 
template<precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< float, P > unpackHalf (vecType< uint16, P > const &p)
 
GLM_FUNC_DECL float unpackHalf1x16 (uint16 v)
 
GLM_FUNC_DECL vec4 unpackHalf4x16 (uint64 p)
 
GLM_FUNC_DECL ivec4 unpackI3x10_1x2 (uint32 p)
 
template<typename intType , typename floatType , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< floatType, P > unpackSnorm (vecType< intType, P > const &v)
 
GLM_FUNC_DECL float unpackSnorm1x16 (uint16 p)
 
GLM_FUNC_DECL float unpackSnorm1x8 (uint8 p)
 
GLM_FUNC_DECL vec2 unpackSnorm2x8 (uint16 p)
 
GLM_FUNC_DECL vec4 unpackSnorm3x10_1x2 (uint32 p)
 
GLM_FUNC_DECL vec4 unpackSnorm4x16 (uint64 p)
 
GLM_FUNC_DECL uvec4 unpackU3x10_1x2 (uint32 p)
 
template<typename uintType , typename floatType , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< floatType, P > unpackUnorm (vecType< uintType, P > const &v)
 
GLM_FUNC_DECL float unpackUnorm1x16 (uint16 p)
 
GLM_FUNC_DECL vec3 unpackUnorm1x5_1x6_1x5 (uint16 p)
 
GLM_FUNC_DECL float unpackUnorm1x8 (uint8 p)
 
GLM_FUNC_DECL vec3 unpackUnorm2x3_1x2 (uint8 p)
 
GLM_FUNC_DECL vec2 unpackUnorm2x4 (uint8 p)
 
GLM_FUNC_DECL vec2 unpackUnorm2x8 (uint16 p)
 
GLM_FUNC_DECL vec4 unpackUnorm3x10_1x2 (uint32 p)
 
GLM_FUNC_DECL vec4 unpackUnorm3x5_1x1 (uint16 p)
 
GLM_FUNC_DECL vec4 unpackUnorm4x16 (uint64 p)
 
GLM_FUNC_DECL vec4 unpackUnorm4x4 (uint16 p)
 
+

Detailed Description

+

This extension provides a set of function to convert vertors to packed formats.

+

<glm/gtc/packing.hpp> need to be included to use these features.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint32 glm::packF2x11_1x10 (vec3 const & v)
+
+ +

First, converts the first two components of the normalized floating-point value v into 11-bit signless floating-point values.

+

Then, converts the third component of the normalized floating-point value v into a 10-bit signless floating-point value. Then, the results are packed into the returned 32-bit unsigned integer.

+

The first vector component specifies the 11 least-significant bits of the result; the last component specifies the 10 most-significant bits.

+
See also
GLM_GTC_packing
+
+vec3 unpackF2x11_1x10(uint32 const & p)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint32 glm::packF3x9_E1x5 (vec3 const & v)
+
+ +

First, converts the first two components of the normalized floating-point value v into 11-bit signless floating-point values.

+

Then, converts the third component of the normalized floating-point value v into a 10-bit signless floating-point value. Then, the results are packed into the returned 32-bit unsigned integer.

+

The first vector component specifies the 11 least-significant bits of the result; the last component specifies the 10 most-significant bits.

+
See also
GLM_GTC_packing
+
+vec3 unpackF3x9_E1x5(uint32 const & p)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<uint16, P> glm::packHalf (vecType< float, P > const & v)
+
+ +

Returns an unsigned integer vector obtained by converting the components of a floating-point vector to the 16-bit floating-point representation found in the OpenGL Specification.

+

The first vector component specifies the 16 least-significant bits of the result; the forth component specifies the 16 most-significant bits.

+
See also
GLM_GTC_packing
+
+vecType<float, P> unpackHalf(vecType<uint16, P> const & p)
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint16 glm::packHalf1x16 (float v)
+
+ +

Returns an unsigned integer obtained by converting the components of a floating-point scalar to the 16-bit floating-point representation found in the OpenGL Specification, and then packing this 16-bit value into a 16-bit unsigned integer.

+
See also
GLM_GTC_packing
+
+uint32 packHalf2x16(vec2 const & v)
+
+uint64 packHalf4x16(vec4 const & v)
+
+GLSL packHalf2x16 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint64 glm::packHalf4x16 (vec4 const & v)
+
+ +

Returns an unsigned integer obtained by converting the components of a four-component floating-point vector to the 16-bit floating-point representation found in the OpenGL Specification, and then packing these four 16-bit values into a 64-bit unsigned integer.

+

The first vector component specifies the 16 least-significant bits of the result; the forth component specifies the 16 most-significant bits.

+
See also
GLM_GTC_packing
+
+uint16 packHalf1x16(float const & v)
+
+uint32 packHalf2x16(vec2 const & v)
+
+GLSL packHalf2x16 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint32 glm::packI3x10_1x2 (ivec4 const & v)
+
+ +

Returns an unsigned integer obtained by converting the components of a four-component signed integer vector to the 10-10-10-2-bit signed integer representation found in the OpenGL Specification, and then packing these four values into a 32-bit unsigned integer.

+

The first vector component specifies the 10 least-significant bits of the result; the forth component specifies the 2 most-significant bits.

+
See also
GLM_GTC_packing
+
+uint32 packI3x10_1x2(uvec4 const & v)
+
+uint32 packSnorm3x10_1x2(vec4 const & v)
+
+uint32 packUnorm3x10_1x2(vec4 const & v)
+
+ivec4 unpackI3x10_1x2(uint32 const & p)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<intType, P> glm::packSnorm (vecType< floatType, P > const & v)
+
+ +

Convert each component of the normalized floating-point vector into signed integer values.

+
See also
GLM_GTC_packing
+
+vecType<floatType, P> unpackSnorm(vecType<intType, P> const & p);
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint16 glm::packSnorm1x16 (float v)
+
+ +

First, converts the normalized floating-point value v into 16-bit integer value.

+

Then, the results are packed into the returned 16-bit unsigned integer.

+

The conversion to fixed point is done as follows: packSnorm1x8: round(clamp(s, -1, +1) * 32767.0)

+
See also
GLM_GTC_packing
+
+uint32 packSnorm2x16(vec2 const & v)
+
+uint64 packSnorm4x16(vec4 const & v)
+
+GLSL packSnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint8 glm::packSnorm1x8 (float s)
+
+ +

First, converts the normalized floating-point value v into 8-bit integer value.

+

Then, the results are packed into the returned 8-bit unsigned integer.

+

The conversion to fixed point is done as follows: packSnorm1x8: round(clamp(s, -1, +1) * 127.0)

+
See also
GLM_GTC_packing
+
+uint16 packSnorm2x8(vec2 const & v)
+
+uint32 packSnorm4x8(vec4 const & v)
+
+GLSL packSnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint16 glm::packSnorm2x8 (vec2 const & v)
+
+ +

First, converts each component of the normalized floating-point value v into 8-bit integer values.

+

Then, the results are packed into the returned 16-bit unsigned integer.

+

The conversion for component c of v to fixed point is done as follows: packSnorm2x8: round(clamp(c, -1, +1) * 127.0)

+

The first component of the vector will be written to the least significant bits of the output; the last component will be written to the most significant bits.

+
See also
GLM_GTC_packing
+
+uint8 packSnorm1x8(float const & v)
+
+uint32 packSnorm4x8(vec4 const & v)
+
+GLSL packSnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint32 glm::packSnorm3x10_1x2 (vec4 const & v)
+
+ +

First, converts the first three components of the normalized floating-point value v into 10-bit signed integer values.

+

Then, converts the forth component of the normalized floating-point value v into 2-bit signed integer values. Then, the results are packed into the returned 32-bit unsigned integer.

+

The conversion for component c of v to fixed point is done as follows: packSnorm3x10_1x2(xyz): round(clamp(c, -1, +1) * 511.0) packSnorm3x10_1x2(w): round(clamp(c, -1, +1) * 1.0)

+

The first vector component specifies the 10 least-significant bits of the result; the forth component specifies the 2 most-significant bits.

+
See also
GLM_GTC_packing
+
+vec4 unpackSnorm3x10_1x2(uint32 const & p)
+
+uint32 packUnorm3x10_1x2(vec4 const & v)
+
+uint32 packU3x10_1x2(uvec4 const & v)
+
+uint32 packI3x10_1x2(ivec4 const & v)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint64 glm::packSnorm4x16 (vec4 const & v)
+
+ +

First, converts each component of the normalized floating-point value v into 16-bit integer values.

+

Then, the results are packed into the returned 64-bit unsigned integer.

+

The conversion for component c of v to fixed point is done as follows: packSnorm2x8: round(clamp(c, -1, +1) * 32767.0)

+

The first component of the vector will be written to the least significant bits of the output; the last component will be written to the most significant bits.

+
See also
GLM_GTC_packing
+
+uint16 packSnorm1x16(float const & v)
+
+uint32 packSnorm2x16(vec2 const & v)
+
+GLSL packSnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint32 glm::packU3x10_1x2 (uvec4 const & v)
+
+ +

Returns an unsigned integer obtained by converting the components of a four-component unsigned integer vector to the 10-10-10-2-bit unsigned integer representation found in the OpenGL Specification, and then packing these four values into a 32-bit unsigned integer.

+

The first vector component specifies the 10 least-significant bits of the result; the forth component specifies the 2 most-significant bits.

+
See also
GLM_GTC_packing
+
+uint32 packI3x10_1x2(ivec4 const & v)
+
+uint32 packSnorm3x10_1x2(vec4 const & v)
+
+uint32 packUnorm3x10_1x2(vec4 const & v)
+
+ivec4 unpackU3x10_1x2(uint32 const & p)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<uintType, P> glm::packUnorm (vecType< floatType, P > const & v)
+
+ +

Convert each component of the normalized floating-point vector into unsigned integer values.

+
See also
GLM_GTC_packing
+
+vecType<floatType, P> unpackUnorm(vecType<intType, P> const & p);
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint16 glm::packUnorm1x16 (float v)
+
+ +

First, converts the normalized floating-point value v into a 16-bit integer value.

+

Then, the results are packed into the returned 16-bit unsigned integer.

+

The conversion for component c of v to fixed point is done as follows: packUnorm1x16: round(clamp(c, 0, +1) * 65535.0)

+
See also
GLM_GTC_packing
+
+uint16 packSnorm1x16(float const & v)
+
+uint64 packSnorm4x16(vec4 const & v)
+
+GLSL packUnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint16 glm::packUnorm1x5_1x6_1x5 (vec3 const & v)
+
+ +

Convert each component of the normalized floating-point vector into unsigned integer values.

+
See also
GLM_GTC_packing
+
+vec3 unpackUnorm1x5_1x6_1x5(uint16 p)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint8 glm::packUnorm1x8 (float v)
+
+ +

First, converts the normalized floating-point value v into a 8-bit integer value.

+

Then, the results are packed into the returned 8-bit unsigned integer.

+

The conversion for component c of v to fixed point is done as follows: packUnorm1x8: round(clamp(c, 0, +1) * 255.0)

+
See also
GLM_GTC_packing
+
+uint16 packUnorm2x8(vec2 const & v)
+
+uint32 packUnorm4x8(vec4 const & v)
+
+GLSL packUnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint8 glm::packUnorm2x3_1x2 (vec3 const & v)
+
+ +

Convert each component of the normalized floating-point vector into unsigned integer values.

+
See also
GLM_GTC_packing
+
+vec3 unpackUnorm2x3_1x2(uint8 p)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint8 glm::packUnorm2x4 (vec2 const & v)
+
+ +

Convert each component of the normalized floating-point vector into unsigned integer values.

+
See also
GLM_GTC_packing
+
+vec2 unpackUnorm2x4(uint8 p)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint16 glm::packUnorm2x8 (vec2 const & v)
+
+ +

First, converts each component of the normalized floating-point value v into 8-bit integer values.

+

Then, the results are packed into the returned 16-bit unsigned integer.

+

The conversion for component c of v to fixed point is done as follows: packUnorm2x8: round(clamp(c, 0, +1) * 255.0)

+

The first component of the vector will be written to the least significant bits of the output; the last component will be written to the most significant bits.

+
See also
GLM_GTC_packing
+
+uint8 packUnorm1x8(float const & v)
+
+uint32 packUnorm4x8(vec4 const & v)
+
+GLSL packUnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint32 glm::packUnorm3x10_1x2 (vec4 const & v)
+
+ +

First, converts the first three components of the normalized floating-point value v into 10-bit unsigned integer values.

+

Then, converts the forth component of the normalized floating-point value v into 2-bit signed uninteger values. Then, the results are packed into the returned 32-bit unsigned integer.

+

The conversion for component c of v to fixed point is done as follows: packUnorm3x10_1x2(xyz): round(clamp(c, 0, +1) * 1023.0) packUnorm3x10_1x2(w): round(clamp(c, 0, +1) * 3.0)

+

The first vector component specifies the 10 least-significant bits of the result; the forth component specifies the 2 most-significant bits.

+
See also
GLM_GTC_packing
+
+vec4 unpackUnorm3x10_1x2(uint32 const & p)
+
+uint32 packUnorm3x10_1x2(vec4 const & v)
+
+uint32 packU3x10_1x2(uvec4 const & v)
+
+uint32 packI3x10_1x2(ivec4 const & v)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint16 glm::packUnorm3x5_1x1 (vec4 const & v)
+
+ +

Convert each component of the normalized floating-point vector into unsigned integer values.

+
See also
GLM_GTC_packing
+
+vec4 unpackUnorm3x5_1x1(uint16 p)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint64 glm::packUnorm4x16 (vec4 const & v)
+
+ +

First, converts each component of the normalized floating-point value v into 16-bit integer values.

+

Then, the results are packed into the returned 64-bit unsigned integer.

+

The conversion for component c of v to fixed point is done as follows: packUnorm4x16: round(clamp(c, 0, +1) * 65535.0)

+

The first component of the vector will be written to the least significant bits of the output; the last component will be written to the most significant bits.

+
See also
GLM_GTC_packing
+
+uint16 packUnorm1x16(float const & v)
+
+uint32 packUnorm2x16(vec2 const & v)
+
+GLSL packUnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint16 glm::packUnorm4x4 (vec4 const & v)
+
+ +

Convert each component of the normalized floating-point vector into unsigned integer values.

+
See also
GLM_GTC_packing
+
+vec4 unpackUnorm4x4(uint16 p)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec3 glm::unpackF2x11_1x10 (uint32 p)
+
+ +

First, unpacks a single 32-bit unsigned integer p into two 11-bit signless floating-point values and one 10-bit signless floating-point value .

+

Then, each component is converted to a normalized floating-point value to generate the returned three-component vector.

+

The first component of the returned vector will be extracted from the least significant bits of the input; the last component will be extracted from the most significant bits.

+
See also
GLM_GTC_packing
+
+uint32 packF2x11_1x10(vec3 const & v)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec3 glm::unpackF3x9_E1x5 (uint32 p)
+
+ +

First, unpacks a single 32-bit unsigned integer p into two 11-bit signless floating-point values and one 10-bit signless floating-point value .

+

Then, each component is converted to a normalized floating-point value to generate the returned three-component vector.

+

The first component of the returned vector will be extracted from the least significant bits of the input; the last component will be extracted from the most significant bits.

+
See also
GLM_GTC_packing
+
+uint32 packF3x9_E1x5(vec3 const & v)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<float, P> glm::unpackHalf (vecType< uint16, P > const & p)
+
+ +

Returns a floating-point vector with components obtained by reinterpreting an integer vector as 16-bit floating-point numbers and converting them to 32-bit floating-point values.

+

The first component of the vector is obtained from the 16 least-significant bits of v; the forth component is obtained from the 16 most-significant bits of v.

+
See also
GLM_GTC_packing
+
+vecType<uint16, P> packHalf(vecType<float, P> const & v)
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL float glm::unpackHalf1x16 (uint16 v)
+
+ +

Returns a floating-point scalar with components obtained by unpacking a 16-bit unsigned integer into a 16-bit value, interpreted as a 16-bit floating-point number according to the OpenGL Specification, and converting it to 32-bit floating-point values.

+
See also
GLM_GTC_packing
+
+vec2 unpackHalf2x16(uint32 const & v)
+
+vec4 unpackHalf4x16(uint64 const & v)
+
+GLSL unpackHalf2x16 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec4 glm::unpackHalf4x16 (uint64 p)
+
+ +

Returns a four-component floating-point vector with components obtained by unpacking a 64-bit unsigned integer into four 16-bit values, interpreting those values as 16-bit floating-point numbers according to the OpenGL Specification, and converting them to 32-bit floating-point values.

+

The first component of the vector is obtained from the 16 least-significant bits of v; the forth component is obtained from the 16 most-significant bits of v.

+
See also
GLM_GTC_packing
+
+float unpackHalf1x16(uint16 const & v)
+
+vec2 unpackHalf2x16(uint32 const & v)
+
+GLSL unpackHalf2x16 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL ivec4 glm::unpackI3x10_1x2 (uint32 p)
+
+ +

Unpacks a single 32-bit unsigned integer p into three 10-bit and one 2-bit signed integers.

+

The first component of the returned vector will be extracted from the least significant bits of the input; the last component will be extracted from the most significant bits.

+
See also
GLM_GTC_packing
+
+uint32 packU3x10_1x2(uvec4 const & v)
+
+vec4 unpackSnorm3x10_1x2(uint32 const & p);
+
+uvec4 unpackI3x10_1x2(uint32 const & p);
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<floatType, P> glm::unpackSnorm (vecType< intType, P > const & v)
+
+ +

Convert each signed integer components of a vector to normalized floating-point values.

+
See also
GLM_GTC_packing
+
+vecType<intType, P> packSnorm(vecType<floatType, P> const & v)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL float glm::unpackSnorm1x16 (uint16 p)
+
+ +

First, unpacks a single 16-bit unsigned integer p into a single 16-bit signed integers.

+

Then, each component is converted to a normalized floating-point value to generate the returned scalar.

+

The conversion for unpacked fixed-point value f to floating point is done as follows: unpackSnorm1x16: clamp(f / 32767.0, -1, +1)

+
See also
GLM_GTC_packing
+
+vec2 unpackSnorm2x16(uint32 p)
+
+vec4 unpackSnorm4x16(uint64 p)
+
+GLSL unpackSnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL float glm::unpackSnorm1x8 (uint8 p)
+
+ +

First, unpacks a single 8-bit unsigned integer p into a single 8-bit signed integers.

+

Then, the value is converted to a normalized floating-point value to generate the returned scalar.

+

The conversion for unpacked fixed-point value f to floating point is done as follows: unpackSnorm1x8: clamp(f / 127.0, -1, +1)

+
See also
GLM_GTC_packing
+
+vec2 unpackSnorm2x8(uint16 p)
+
+vec4 unpackSnorm4x8(uint32 p)
+
+GLSL unpackSnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec2 glm::unpackSnorm2x8 (uint16 p)
+
+ +

First, unpacks a single 16-bit unsigned integer p into a pair of 8-bit signed integers.

+

Then, each component is converted to a normalized floating-point value to generate the returned two-component vector.

+

The conversion for unpacked fixed-point value f to floating point is done as follows: unpackSnorm2x8: clamp(f / 127.0, -1, +1)

+

The first component of the returned vector will be extracted from the least significant bits of the input; the last component will be extracted from the most significant bits.

+
See also
GLM_GTC_packing
+
+float unpackSnorm1x8(uint8 p)
+
+vec4 unpackSnorm4x8(uint32 p)
+
+GLSL unpackSnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec4 glm::unpackSnorm3x10_1x2 (uint32 p)
+
+ +

First, unpacks a single 32-bit unsigned integer p into four 16-bit signed integers.

+

Then, each component is converted to a normalized floating-point value to generate the returned four-component vector.

+

The conversion for unpacked fixed-point value f to floating point is done as follows: unpackSnorm3x10_1x2(xyz): clamp(f / 511.0, -1, +1) unpackSnorm3x10_1x2(w): clamp(f / 511.0, -1, +1)

+

The first component of the returned vector will be extracted from the least significant bits of the input; the last component will be extracted from the most significant bits.

+
See also
GLM_GTC_packing
+
+uint32 packSnorm3x10_1x2(vec4 const & v)
+
+vec4 unpackUnorm3x10_1x2(uint32 const & p))
+
+uvec4 unpackI3x10_1x2(uint32 const & p)
+
+uvec4 unpackU3x10_1x2(uint32 const & p)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec4 glm::unpackSnorm4x16 (uint64 p)
+
+ +

First, unpacks a single 64-bit unsigned integer p into four 16-bit signed integers.

+

Then, each component is converted to a normalized floating-point value to generate the returned four-component vector.

+

The conversion for unpacked fixed-point value f to floating point is done as follows: unpackSnorm4x16: clamp(f / 32767.0, -1, +1)

+

The first component of the returned vector will be extracted from the least significant bits of the input; the last component will be extracted from the most significant bits.

+
See also
GLM_GTC_packing
+
+float unpackSnorm1x16(uint16 p)
+
+vec2 unpackSnorm2x16(uint32 p)
+
+GLSL unpackSnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uvec4 glm::unpackU3x10_1x2 (uint32 p)
+
+ +

Unpacks a single 32-bit unsigned integer p into three 10-bit and one 2-bit unsigned integers.

+

The first component of the returned vector will be extracted from the least significant bits of the input; the last component will be extracted from the most significant bits.

+
See also
GLM_GTC_packing
+
+uint32 packU3x10_1x2(uvec4 const & v)
+
+vec4 unpackSnorm3x10_1x2(uint32 const & p);
+
+uvec4 unpackI3x10_1x2(uint32 const & p);
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<floatType, P> glm::unpackUnorm (vecType< uintType, P > const & v)
+
+ +

Convert each unsigned integer components of a vector to normalized floating-point values.

+
See also
GLM_GTC_packing
+
+vecType<intType, P> packUnorm(vecType<floatType, P> const & v)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL float glm::unpackUnorm1x16 (uint16 p)
+
+ +

First, unpacks a single 16-bit unsigned integer p into a of 16-bit unsigned integers.

+

Then, the value is converted to a normalized floating-point value to generate the returned scalar.

+

The conversion for unpacked fixed-point value f to floating point is done as follows: unpackUnorm1x16: f / 65535.0

+
See also
GLM_GTC_packing
+
+vec2 unpackUnorm2x16(uint32 p)
+
+vec4 unpackUnorm4x16(uint64 p)
+
+GLSL unpackUnorm2x16 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec3 glm::unpackUnorm1x5_1x6_1x5 (uint16 p)
+
+ +

Convert each unsigned integer components of a vector to normalized floating-point values.

+
See also
GLM_GTC_packing
+
+uint16 packUnorm1x5_1x6_1x5(vec3 const & v)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL float glm::unpackUnorm1x8 (uint8 p)
+
+ +

Convert a single 8-bit integer to a normalized floating-point value.

+

The conversion for unpacked fixed-point value f to floating point is done as follows: unpackUnorm4x8: f / 255.0

+
See also
GLM_GTC_packing
+
+vec2 unpackUnorm2x8(uint16 p)
+
+vec4 unpackUnorm4x8(uint32 p)
+
+GLSL unpackUnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec3 glm::unpackUnorm2x3_1x2 (uint8 p)
+
+ +

Convert each unsigned integer components of a vector to normalized floating-point values.

+
See also
GLM_GTC_packing
+
+uint8 packUnorm2x3_1x2(vec3 const & v)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec2 glm::unpackUnorm2x4 (uint8 p)
+
+ +

Convert each unsigned integer components of a vector to normalized floating-point values.

+
See also
GLM_GTC_packing
+
+uint8 packUnorm2x4(vec2 const & v)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec2 glm::unpackUnorm2x8 (uint16 p)
+
+ +

First, unpacks a single 16-bit unsigned integer p into a pair of 8-bit unsigned integers.

+

Then, each component is converted to a normalized floating-point value to generate the returned two-component vector.

+

The conversion for unpacked fixed-point value f to floating point is done as follows: unpackUnorm4x8: f / 255.0

+

The first component of the returned vector will be extracted from the least significant bits of the input; the last component will be extracted from the most significant bits.

+
See also
GLM_GTC_packing
+
+float unpackUnorm1x8(uint8 v)
+
+vec4 unpackUnorm4x8(uint32 p)
+
+GLSL unpackUnorm4x8 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec4 glm::unpackUnorm3x10_1x2 (uint32 p)
+
+ +

First, unpacks a single 32-bit unsigned integer p into four 16-bit signed integers.

+

Then, each component is converted to a normalized floating-point value to generate the returned four-component vector.

+

The conversion for unpacked fixed-point value f to floating point is done as follows: unpackSnorm3x10_1x2(xyz): clamp(f / 1023.0, 0, +1) unpackSnorm3x10_1x2(w): clamp(f / 3.0, 0, +1)

+

The first component of the returned vector will be extracted from the least significant bits of the input; the last component will be extracted from the most significant bits.

+
See also
GLM_GTC_packing
+
+uint32 packSnorm3x10_1x2(vec4 const & v)
+
+vec4 unpackInorm3x10_1x2(uint32 const & p))
+
+uvec4 unpackI3x10_1x2(uint32 const & p)
+
+uvec4 unpackU3x10_1x2(uint32 const & p)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec4 glm::unpackUnorm3x5_1x1 (uint16 p)
+
+ +

Convert each unsigned integer components of a vector to normalized floating-point values.

+
See also
GLM_GTC_packing
+
+uint16 packUnorm3x5_1x1(vec4 const & v)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec4 glm::unpackUnorm4x16 (uint64 p)
+
+ +

First, unpacks a single 64-bit unsigned integer p into four 16-bit unsigned integers.

+

Then, each component is converted to a normalized floating-point value to generate the returned four-component vector.

+

The conversion for unpacked fixed-point value f to floating point is done as follows: unpackUnormx4x16: f / 65535.0

+

The first component of the returned vector will be extracted from the least significant bits of the input; the last component will be extracted from the most significant bits.

+
See also
GLM_GTC_packing
+
+float unpackUnorm1x16(uint16 p)
+
+vec2 unpackUnorm2x16(uint32 p)
+
+GLSL unpackUnorm2x16 man page
+
+GLSL 4.20.8 specification, section 8.4 Floating-Point Pack and Unpack Functions
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vec4 glm::unpackUnorm4x4 (uint16 p)
+
+ +

Convert each unsigned integer components of a vector to normalized floating-point values.

+
See also
GLM_GTC_packing
+
+uint16 packUnorm4x4(vec4 const & v)
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00172.html b/third_party/glm_test/doc/api/a00172.html new file mode 100644 index 0000000000000..892634ab3787d --- /dev/null +++ b/third_party/glm_test/doc/api/a00172.html @@ -0,0 +1,939 @@ + + + + + + +0.9.8: GLM_GTC_quaternion + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTC_quaternion
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL T angle (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > angleAxis (T const &angle, tvec3< T, P > const &axis)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > axis (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > conjugate (tquat< T, P > const &q)
 
template<typename T , precision P, template< typename, precision > class quatType>
GLM_FUNC_DECL T dot (quatType< T, P > const &x, quatType< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > equal (tquat< T, P > const &x, tquat< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > eulerAngles (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > greaterThan (tquat< T, P > const &x, tquat< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > greaterThanEqual (tquat< T, P > const &x, tquat< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > inverse (tquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > isinf (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > isnan (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL T length (tquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > lerp (tquat< T, P > const &x, tquat< T, P > const &y, T a)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > lessThan (tquat< T, P > const &x, tquat< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > lessThanEqual (tquat< T, P > const &x, tquat< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > mat3_cast (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > mat4_cast (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > mix (tquat< T, P > const &x, tquat< T, P > const &y, T a)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > normalize (tquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > notEqual (tquat< T, P > const &x, tquat< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL T pitch (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > quat_cast (tmat3x3< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > quat_cast (tmat4x4< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL T roll (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > rotate (tquat< T, P > const &q, T const &angle, tvec3< T, P > const &axis)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > slerp (tquat< T, P > const &x, tquat< T, P > const &y, T a)
 
template<typename T , precision P>
GLM_FUNC_DECL T yaw (tquat< T, P > const &x)
 
+

Detailed Description

+

Defines a templated quaternion type and several quaternion operations.

+

<glm/gtc/quaternion.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::angle (tquat< T, P > const & x)
+
+ +

Returns the quaternion rotation angle.

+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::angleAxis (T const & angle,
tvec3< T, P > const & axis 
)
+
+ +

Build a quaternion from an angle and a normalized axis.

+
Parameters
+ + + +
angleAngle expressed in radians.
axisAxis of the quaternion, must be normalized.
+
+
+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::axis (tquat< T, P > const & x)
+
+ +

Returns the q rotation axis.

+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::conjugate (tquat< T, P > const & q)
+
+ +

Returns the q conjugate.

+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::dot (quatType< T, P > const & x,
quatType< T, P > const & y 
)
+
+ +

Returns dot product of q1 and q2, i.e., q1[0] * q2[0] + q1[1] * q2[1] + ...

+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec4<bool, P> glm::equal (tquat< T, P > const & x,
tquat< T, P > const & y 
)
+
+ +

Returns the component-wise comparison of result x == y.

+
Template Parameters
+ + +
quatTypeFloating-point quaternion types.
+
+
+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::eulerAngles (tquat< T, P > const & x)
+
+ +

Returns euler angles, pitch as x, yaw as y, roll as z.

+

The result is expressed in radians if GLM_FORCE_RADIANS is defined or degrees otherwise.

+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec4<bool, P> glm::greaterThan (tquat< T, P > const & x,
tquat< T, P > const & y 
)
+
+ +

Returns the component-wise comparison of result x > y.

+
Template Parameters
+ + +
quatTypeFloating-point quaternion types.
+
+
+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec4<bool, P> glm::greaterThanEqual (tquat< T, P > const & x,
tquat< T, P > const & y 
)
+
+ +

Returns the component-wise comparison of result x >= y.

+
Template Parameters
+ + +
quatTypeFloating-point quaternion types.
+
+
+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::inverse (tquat< T, P > const & q)
+
+ +

Returns the q inverse.

+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec4<bool, P> glm::isinf (tquat< T, P > const & x)
+
+ +

Returns true if x holds a positive infinity or negative infinity representation in the underlying implementation's set of floating point representations.

+

Returns false otherwise, including for implementations with no infinity representations.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec4<bool, P> glm::isnan (tquat< T, P > const & x)
+
+ +

Returns true if x holds a NaN (not a number) representation in the underlying implementation's set of floating point representations.

+

Returns false otherwise, including for implementations with no NaN representations.

+

/!\ When using compiler fast math, this function may fail.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::length (tquat< T, P > const & q)
+
+ +

Returns the length of the quaternion.

+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::lerp (tquat< T, P > const & x,
tquat< T, P > const & y,
a 
)
+
+ +

Linear interpolation of two quaternions.

+

The interpolation is oriented.

+
Parameters
+ + + + +
xA quaternion
yA quaternion
aInterpolation factor. The interpolation is defined in the range [0, 1].
+
+
+
Template Parameters
+ + +
TValue type used to build the quaternion. Supported: half, float or double.
+
+
+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec4<bool, P> glm::lessThan (tquat< T, P > const & x,
tquat< T, P > const & y 
)
+
+ +

Returns the component-wise comparison result of x < y.

+
Template Parameters
+ + +
quatTypeFloating-point quaternion types.
+
+
+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec4<bool, P> glm::lessThanEqual (tquat< T, P > const & x,
tquat< T, P > const & y 
)
+
+ +

Returns the component-wise comparison of result x <= y.

+
Template Parameters
+ + +
quatTypeFloating-point quaternion types.
+
+
+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat3x3<T, P> glm::mat3_cast (tquat< T, P > const & x)
+
+ +

Converts a quaternion to a 3 * 3 matrix.

+
See also
GLM_GTC_quaternion
+ +

Referenced by glm::toMat3().

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::mat4_cast (tquat< T, P > const & x)
+
+ +

Converts a quaternion to a 4 * 4 matrix.

+
See also
GLM_GTC_quaternion
+ +

Referenced by glm::toMat4().

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::mix (tquat< T, P > const & x,
tquat< T, P > const & y,
a 
)
+
+ +

Spherical linear interpolation of two quaternions.

+

The interpolation is oriented and the rotation is performed at constant speed. For short path spherical linear interpolation, use the slerp function.

+
Parameters
+ + + + +
xA quaternion
yA quaternion
aInterpolation factor. The interpolation is defined beyond the range [0, 1].
+
+
+
Template Parameters
+ + +
TValue type used to build the quaternion. Supported: half, float or double.
+
+
+
See also
GLM_GTC_quaternion
+
+- slerp(tquat<T, P> const & x, tquat<T, P> const & y, T const & a)
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::normalize (tquat< T, P > const & q)
+
+ +

Returns the normalized quaternion.

+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec4<bool, P> glm::notEqual (tquat< T, P > const & x,
tquat< T, P > const & y 
)
+
+ +

Returns the component-wise comparison of result x != y.

+
Template Parameters
+ + +
quatTypeFloating-point quaternion types.
+
+
+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::pitch (tquat< T, P > const & x)
+
+ +

Returns pitch value of euler angles expressed in radians.

+
See also
GLM_GTX_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::quat_cast (tmat3x3< T, P > const & x)
+
+ +

Converts a 3 * 3 matrix to a quaternion.

+
See also
GLM_GTC_quaternion
+ +

Referenced by glm::toQuat().

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::quat_cast (tmat4x4< T, P > const & x)
+
+ +

Converts a 4 * 4 matrix to a quaternion.

+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::roll (tquat< T, P > const & x)
+
+ +

Returns roll value of euler angles expressed in radians.

+
See also
GLM_GTX_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::rotate (tquat< T, P > const & q,
T const & angle,
tvec3< T, P > const & axis 
)
+
+ +

Rotates a quaternion from a vector of 3 components axis and an angle.

+
Parameters
+ + + + +
qSource orientation
angleAngle expressed in radians.
axisAxis of the rotation
+
+
+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::slerp (tquat< T, P > const & x,
tquat< T, P > const & y,
a 
)
+
+ +

Spherical linear interpolation of two quaternions.

+

The interpolation always take the short path and the rotation is performed at constant speed.

+
Parameters
+ + + + +
xA quaternion
yA quaternion
aInterpolation factor. The interpolation is defined beyond the range [0, 1].
+
+
+
Template Parameters
+ + +
TValue type used to build the quaternion. Supported: half, float or double.
+
+
+
See also
GLM_GTC_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::yaw (tquat< T, P > const & x)
+
+ +

Returns yaw value of euler angles expressed in radians.

+
See also
GLM_GTX_quaternion
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00173.html b/third_party/glm_test/doc/api/a00173.html new file mode 100644 index 0000000000000..bedfcc05d9dbb --- /dev/null +++ b/third_party/glm_test/doc/api/a00173.html @@ -0,0 +1,303 @@ + + + + + + +0.9.8: GLM_GTC_random + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL tvec3< T, defaultp > ballRand (T Radius)
 
template<typename T >
GLM_FUNC_DECL tvec2< T, defaultp > circularRand (T Radius)
 
template<typename T >
GLM_FUNC_DECL tvec2< T, defaultp > diskRand (T Radius)
 
template<typename genType >
GLM_FUNC_DECL genType gaussRand (genType Mean, genType Deviation)
 
template<typename genTYpe >
GLM_FUNC_DECL genTYpe linearRand (genTYpe Min, genTYpe Max)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > linearRand (vecType< T, P > const &Min, vecType< T, P > const &Max)
 
template<typename T >
GLM_FUNC_DECL tvec3< T, defaultp > sphericalRand (T Radius)
 
+

Detailed Description

+

Generate random number from various distribution methods.

+

<glm/gtc/random.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec3<T, defaultp> glm::ballRand (Radius)
+
+ +

Generate a random 3D vector which coordinates are regulary distributed within the volume of a ball of a given radius.

+
Parameters
+ + +
Radius
+
+
+
See also
GLM_GTC_random
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec2<T, defaultp> glm::circularRand (Radius)
+
+ +

Generate a random 2D vector which coordinates are regulary distributed on a circle of a given radius.

+
Parameters
+ + +
Radius
+
+
+
See also
GLM_GTC_random
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec2<T, defaultp> glm::diskRand (Radius)
+
+ +

Generate a random 2D vector which coordinates are regulary distributed within the area of a disk of a given radius.

+
Parameters
+ + +
Radius
+
+
+
See also
GLM_GTC_random
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::gaussRand (genType Mean,
genType Deviation 
)
+
+ +

Generate random numbers in the interval [Min, Max], according a gaussian distribution.

+
Parameters
+ + + +
Mean
Deviation
+
+
+
See also
GLM_GTC_random
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genTYpe glm::linearRand (genTYpe Min,
genTYpe Max 
)
+
+ +

Generate random numbers in the interval [Min, Max], according a linear distribution.

+
Parameters
+ + + +
Min
Max
+
+
+
Template Parameters
+ + +
genTypeValue type. Currently supported: float or double scalars.
+
+
+
See also
GLM_GTC_random
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::linearRand (vecType< T, P > const & Min,
vecType< T, P > const & Max 
)
+
+ +

Generate random numbers in the interval [Min, Max], according a linear distribution.

+
Parameters
+ + + +
Min
Max
+
+
+
Template Parameters
+ + + +
TValue type. Currently supported: float or double.
vecTypeA vertor type: tvec1, tvec2, tvec3, tvec4 or compatible
+
+
+
See also
GLM_GTC_random
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec3<T, defaultp> glm::sphericalRand (Radius)
+
+ +

Generate a random 3D vector which coordinates are regulary distributed on a sphere of a given radius.

+
Parameters
+ + +
Radius
+
+
+
See also
GLM_GTC_random
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00174.html b/third_party/glm_test/doc/api/a00174.html new file mode 100644 index 0000000000000..ad195c03a18b3 --- /dev/null +++ b/third_party/glm_test/doc/api/a00174.html @@ -0,0 +1,406 @@ + + + + + + +0.9.8: GLM_GTC_reciprocal + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTC_reciprocal
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType acot (genType x)
 
template<typename genType >
GLM_FUNC_DECL genType acoth (genType x)
 
template<typename genType >
GLM_FUNC_DECL genType acsc (genType x)
 
template<typename genType >
GLM_FUNC_DECL genType acsch (genType x)
 
template<typename genType >
GLM_FUNC_DECL genType asec (genType x)
 
template<typename genType >
GLM_FUNC_DECL genType asech (genType x)
 
template<typename genType >
GLM_FUNC_DECL genType cot (genType angle)
 
template<typename genType >
GLM_FUNC_DECL genType coth (genType angle)
 
template<typename genType >
GLM_FUNC_DECL genType csc (genType angle)
 
template<typename genType >
GLM_FUNC_DECL genType csch (genType angle)
 
template<typename genType >
GLM_FUNC_DECL genType sec (genType angle)
 
template<typename genType >
GLM_FUNC_DECL genType sech (genType angle)
 
+

Detailed Description

+

Define secant, cosecant and cotangent functions.

+

<glm/gtc/reciprocal.hpp> need to be included to use these features.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::acot (genType x)
+
+ +

Inverse cotangent function.

+
Returns
Return an angle expressed in radians.
+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLM_GTC_reciprocal
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::acoth (genType x)
+
+ +

Inverse cotangent hyperbolic function.

+
Returns
Return an angle expressed in radians.
+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLM_GTC_reciprocal
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::acsc (genType x)
+
+ +

Inverse cosecant function.

+
Returns
Return an angle expressed in radians.
+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLM_GTC_reciprocal
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::acsch (genType x)
+
+ +

Inverse cosecant hyperbolic function.

+
Returns
Return an angle expressed in radians.
+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLM_GTC_reciprocal
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::asec (genType x)
+
+ +

Inverse secant function.

+
Returns
Return an angle expressed in radians.
+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLM_GTC_reciprocal
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::asech (genType x)
+
+ +

Inverse secant hyperbolic function.

+
Returns
Return an angle expressed in radians.
+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLM_GTC_reciprocal
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::cot (genType angle)
+
+ +

Cotangent function.

+

adjacent / opposite or 1 / tan(x)

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLM_GTC_reciprocal
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::coth (genType angle)
+
+ +

Cotangent hyperbolic function.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLM_GTC_reciprocal
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::csc (genType angle)
+
+ +

Cosecant function.

+

hypotenuse / opposite or 1 / sin(x)

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLM_GTC_reciprocal
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::csch (genType angle)
+
+ +

Cosecant hyperbolic function.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLM_GTC_reciprocal
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::sec (genType angle)
+
+ +

Secant function.

+

hypotenuse / adjacent or 1 / cos(x)

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLM_GTC_reciprocal
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::sech (genType angle)
+
+ +

Secant hyperbolic function.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLM_GTC_reciprocal
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00175.html b/third_party/glm_test/doc/api/a00175.html new file mode 100644 index 0000000000000..55e4c3c93cb53 --- /dev/null +++ b/third_party/glm_test/doc/api/a00175.html @@ -0,0 +1,603 @@ + + + + + + +0.9.8: GLM_GTC_round + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType ceilMultiple (genType Source, genType Multiple)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > ceilMultiple (vecType< T, P > const &Source, vecType< T, P > const &Multiple)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType ceilPowerOfTwo (genIUType Value)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > ceilPowerOfTwo (vecType< T, P > const &value)
 
template<typename genType >
GLM_FUNC_DECL genType floorMultiple (genType Source, genType Multiple)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > floorMultiple (vecType< T, P > const &Source, vecType< T, P > const &Multiple)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType floorPowerOfTwo (genIUType Value)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > floorPowerOfTwo (vecType< T, P > const &value)
 
template<typename genIUType >
GLM_FUNC_DECL bool isMultiple (genIUType Value, genIUType Multiple)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > isMultiple (vecType< T, P > const &Value, T Multiple)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > isMultiple (vecType< T, P > const &Value, vecType< T, P > const &Multiple)
 
template<typename genIUType >
GLM_FUNC_DECL bool isPowerOfTwo (genIUType Value)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > isPowerOfTwo (vecType< T, P > const &value)
 
template<typename genType >
GLM_FUNC_DECL genType roundMultiple (genType Source, genType Multiple)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > roundMultiple (vecType< T, P > const &Source, vecType< T, P > const &Multiple)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType roundPowerOfTwo (genIUType Value)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > roundPowerOfTwo (vecType< T, P > const &value)
 
+

Detailed Description

+

rounding value to specific boundings

+

<glm/gtc/round.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::ceilMultiple (genType Source,
genType Multiple 
)
+
+ +

Higher multiple number of Source.

+
Template Parameters
+ + +
genTypeFloating-point or integer scalar or vector types.
+
+
+
Parameters
+ + + +
Source
MultipleMust be a null or positive value
+
+
+
See also
GLM_GTC_round
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::ceilMultiple (vecType< T, P > const & Source,
vecType< T, P > const & Multiple 
)
+
+ +

Higher multiple number of Source.

+
Template Parameters
+ + +
genTypeFloating-point or integer scalar or vector types.
+
+
+
Parameters
+ + + +
Source
MultipleMust be a null or positive value
+
+
+
See also
GLM_GTC_round
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genIUType glm::ceilPowerOfTwo (genIUType Value)
+
+ +

Return the power of two number which value is just higher the input value, round up to a power of two.

+
See also
GLM_GTC_round
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::ceilPowerOfTwo (vecType< T, P > const & value)
+
+ +

Return the power of two number which value is just higher the input value, round up to a power of two.

+
See also
GLM_GTC_round
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::floorMultiple (genType Source,
genType Multiple 
)
+
+ +

Lower multiple number of Source.

+
Template Parameters
+ + +
genTypeFloating-point or integer scalar or vector types.
+
+
+
Parameters
+ + + +
Source
MultipleMust be a null or positive value
+
+
+
See also
GLM_GTC_round
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::floorMultiple (vecType< T, P > const & Source,
vecType< T, P > const & Multiple 
)
+
+ +

Lower multiple number of Source.

+
Template Parameters
+ + +
genTypeFloating-point or integer scalar or vector types.
+
+
+
Parameters
+ + + +
Source
MultipleMust be a null or positive value
+
+
+
See also
GLM_GTC_round
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genIUType glm::floorPowerOfTwo (genIUType Value)
+
+ +

Return the power of two number which value is just lower the input value, round down to a power of two.

+
See also
GLM_GTC_round
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::floorPowerOfTwo (vecType< T, P > const & value)
+
+ +

Return the power of two number which value is just lower the input value, round down to a power of two.

+
See also
GLM_GTC_round
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::isMultiple (genIUType Value,
genIUType Multiple 
)
+
+ +

Return true if the 'Value' is a multiple of 'Multiple'.

+
See also
GLM_GTC_round
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<bool, P> glm::isMultiple (vecType< T, P > const & Value,
Multiple 
)
+
+ +

Return true if the 'Value' is a multiple of 'Multiple'.

+
See also
GLM_GTC_round
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<bool, P> glm::isMultiple (vecType< T, P > const & Value,
vecType< T, P > const & Multiple 
)
+
+ +

Return true if the 'Value' is a multiple of 'Multiple'.

+
See also
GLM_GTC_round
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL bool glm::isPowerOfTwo (genIUType Value)
+
+ +

Return true if the value is a power of two number.

+
See also
GLM_GTC_round
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<bool, P> glm::isPowerOfTwo (vecType< T, P > const & value)
+
+ +

Return true if the value is a power of two number.

+
See also
GLM_GTC_round
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::roundMultiple (genType Source,
genType Multiple 
)
+
+ +

Lower multiple number of Source.

+
Template Parameters
+ + +
genTypeFloating-point or integer scalar or vector types.
+
+
+
Parameters
+ + + +
Source
MultipleMust be a null or positive value
+
+
+
See also
GLM_GTC_round
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::roundMultiple (vecType< T, P > const & Source,
vecType< T, P > const & Multiple 
)
+
+ +

Lower multiple number of Source.

+
Template Parameters
+ + +
genTypeFloating-point or integer scalar or vector types.
+
+
+
Parameters
+ + + +
Source
MultipleMust be a null or positive value
+
+
+
See also
GLM_GTC_round
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genIUType glm::roundPowerOfTwo (genIUType Value)
+
+ +

Return the power of two number which value is the closet to the input value.

+
See also
GLM_GTC_round
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::roundPowerOfTwo (vecType< T, P > const & value)
+
+ +

Return the power of two number which value is the closet to the input value.

+
See also
GLM_GTC_round
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00176.html b/third_party/glm_test/doc/api/a00176.html new file mode 100644 index 0000000000000..7b56fa87200cb --- /dev/null +++ b/third_party/glm_test/doc/api/a00176.html @@ -0,0 +1,688 @@ + + + + + + +0.9.8: GLM_GTC_type_aligned + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTC_type_aligned
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

+typedef aligned_highp_bvec1 aligned_bvec1
 
+typedef aligned_highp_bvec2 aligned_bvec2
 
+typedef aligned_highp_bvec3 aligned_bvec3
 
+typedef aligned_highp_bvec4 aligned_bvec4
 
+typedef aligned_highp_dvec1 aligned_dvec1
 
+typedef aligned_highp_dvec2 aligned_dvec2
 
+typedef aligned_highp_dvec3 aligned_dvec3
 
+typedef aligned_highp_dvec4 aligned_dvec4
 
typedef tvec2< bool, aligned_highp > aligned_highp_bvec2
 
+typedef tvec3< bool, aligned_highp > aligned_highp_bvec3
 
+typedef tvec4< bool, aligned_highp > aligned_highp_bvec4
 
typedef tvec2< double, aligned_highp > aligned_highp_dvec2
 
typedef tvec3< double, aligned_highp > aligned_highp_dvec3
 
+typedef tvec4< double, aligned_highp > aligned_highp_dvec4
 
typedef tvec2< int, aligned_highp > aligned_highp_ivec2
 
typedef tvec3< int, aligned_highp > aligned_highp_ivec3
 
+typedef tvec4< int, aligned_highp > aligned_highp_ivec4
 
typedef tvec2< uint, aligned_highp > aligned_highp_uvec2
 
typedef tvec3< uint, aligned_highp > aligned_highp_uvec3
 
+typedef tvec4< uint, aligned_highp > aligned_highp_uvec4
 
typedef tvec2< float, aligned_highp > aligned_highp_vec2
 
typedef tvec3< float, aligned_highp > aligned_highp_vec3
 
+typedef tvec4< float, aligned_highp > aligned_highp_vec4
 
+typedef aligned_highp_ivec1 aligned_ivec1
 
+typedef aligned_highp_ivec2 aligned_ivec2
 
+typedef aligned_highp_ivec3 aligned_ivec3
 
+typedef aligned_highp_ivec4 aligned_ivec4
 
typedef tvec2< bool, aligned_lowp > aligned_lowp_bvec2
 
+typedef tvec3< bool, aligned_lowp > aligned_lowp_bvec3
 
+typedef tvec4< bool, aligned_lowp > aligned_lowp_bvec4
 
typedef tvec2< double, aligned_lowp > aligned_lowp_dvec2
 
typedef tvec3< double, aligned_lowp > aligned_lowp_dvec3
 
+typedef tvec4< double, aligned_lowp > aligned_lowp_dvec4
 
typedef tvec2< int, aligned_lowp > aligned_lowp_ivec2
 
typedef tvec3< int, aligned_lowp > aligned_lowp_ivec3
 
+typedef tvec4< int, aligned_lowp > aligned_lowp_ivec4
 
typedef tvec2< uint, aligned_lowp > aligned_lowp_uvec2
 
typedef tvec3< uint, aligned_lowp > aligned_lowp_uvec3
 
+typedef tvec4< uint, aligned_lowp > aligned_lowp_uvec4
 
typedef tvec2< float, aligned_lowp > aligned_lowp_vec2
 
typedef tvec3< float, aligned_lowp > aligned_lowp_vec3
 
+typedef tvec4< float, aligned_lowp > aligned_lowp_vec4
 
typedef tvec2< bool, aligned_mediump > aligned_mediump_bvec2
 
+typedef tvec3< bool, aligned_mediump > aligned_mediump_bvec3
 
+typedef tvec4< bool, aligned_mediump > aligned_mediump_bvec4
 
typedef tvec2< double, aligned_mediump > aligned_mediump_dvec2
 
typedef tvec3< double, aligned_mediump > aligned_mediump_dvec3
 
+typedef tvec4< double, aligned_mediump > aligned_mediump_dvec4
 
typedef tvec2< int, aligned_mediump > aligned_mediump_ivec2
 
typedef tvec3< int, aligned_mediump > aligned_mediump_ivec3
 
+typedef tvec4< int, aligned_mediump > aligned_mediump_ivec4
 
typedef tvec2< uint, aligned_mediump > aligned_mediump_uvec2
 
typedef tvec3< uint, aligned_mediump > aligned_mediump_uvec3
 
+typedef tvec4< uint, aligned_mediump > aligned_mediump_uvec4
 
typedef tvec2< float, aligned_mediump > aligned_mediump_vec2
 
typedef tvec3< float, aligned_mediump > aligned_mediump_vec3
 
+typedef tvec4< float, aligned_mediump > aligned_mediump_vec4
 
+typedef aligned_highp_uvec1 aligned_uvec1
 
+typedef aligned_highp_uvec2 aligned_uvec2
 
+typedef aligned_highp_uvec3 aligned_uvec3
 
+typedef aligned_highp_uvec4 aligned_uvec4
 
+typedef aligned_highp_vec1 aligned_vec1
 
+typedef aligned_highp_vec2 aligned_vec2
 
+typedef aligned_highp_vec3 aligned_vec3
 
+typedef aligned_highp_vec4 aligned_vec4
 
+

Detailed Description

+

Aligned types.

+

<glm/gtc/type_aligned.hpp> need to be included to use these features.

+

Typedef Documentation

+ +
+
+ + + + +
typedef tvec2<bool, aligned_highp> aligned_highp_bvec2
+
+ +

2 components vector of high precision bool numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 121 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<double, aligned_highp> aligned_highp_dvec2
+
+ +

2 components vector of high double-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 85 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<double, aligned_highp> aligned_highp_dvec3
+
+ +

3 components vector of high double-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 147 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<int, aligned_highp> aligned_highp_ivec2
+
+ +

2 components vector of high precision signed integer numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 97 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<int, aligned_highp> aligned_highp_ivec3
+
+ +

3 components vector of high precision signed integer numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 159 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<uint, aligned_highp> aligned_highp_uvec2
+
+ +

2 components vector of high precision unsigned integer numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 109 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<uint, aligned_highp> aligned_highp_uvec3
+
+ +

3 components vector of high precision unsigned integer numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 171 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<float, aligned_highp> aligned_highp_vec2
+
+ +

2 components vector of high single-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 73 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<float, aligned_highp> aligned_highp_vec3
+
+ +

3 components vector of high single-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 135 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<bool, aligned_lowp> aligned_lowp_bvec2
+
+ +

2 components vector of low precision bool numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 129 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<double, aligned_lowp> aligned_lowp_dvec2
+
+ +

2 components vector of low double-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 93 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<double, aligned_lowp> aligned_lowp_dvec3
+
+ +

3 components vector of low double-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 155 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<int, aligned_lowp> aligned_lowp_ivec2
+
+ +

2 components vector of low precision signed integer numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 105 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<int, aligned_lowp> aligned_lowp_ivec3
+
+ +

3 components vector of low precision signed integer numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 167 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<uint, aligned_lowp> aligned_lowp_uvec2
+
+ +

2 components vector of low precision unsigned integer numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 117 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<uint, aligned_lowp> aligned_lowp_uvec3
+
+ +

3 components vector of low precision unsigned integer numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 179 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<float, aligned_lowp> aligned_lowp_vec2
+
+ +

2 components vector of low single-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 81 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<float, aligned_lowp> aligned_lowp_vec3
+
+ +

3 components vector of low single-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 143 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<bool, aligned_mediump> aligned_mediump_bvec2
+
+ +

2 components vector of medium precision bool numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 125 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<double, aligned_mediump> aligned_mediump_dvec2
+
+ +

2 components vector of medium double-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 89 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<double, aligned_mediump> aligned_mediump_dvec3
+
+ +

3 components vector of medium double-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 151 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<int, aligned_mediump> aligned_mediump_ivec2
+
+ +

2 components vector of medium precision signed integer numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 101 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<int, aligned_mediump> aligned_mediump_ivec3
+
+ +

3 components vector of medium precision signed integer numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 163 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<uint, aligned_mediump> aligned_mediump_uvec2
+
+ +

2 components vector of medium precision unsigned integer numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 113 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<uint, aligned_mediump> aligned_mediump_uvec3
+
+ +

3 components vector of medium precision unsigned integer numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 175 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<float, aligned_mediump> aligned_mediump_vec2
+
+ +

2 components vector of medium single-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 77 of file gtc/type_aligned.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<float, aligned_mediump> aligned_mediump_vec3
+
+ +

3 components vector of medium single-precision floating-point numbers.

+

There is no guarantee on the actual precision.

+ +

Definition at line 139 of file gtc/type_aligned.hpp.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00177.html b/third_party/glm_test/doc/api/a00177.html new file mode 100644 index 0000000000000..063f9ddfd7b35 --- /dev/null +++ b/third_party/glm_test/doc/api/a00177.html @@ -0,0 +1,3678 @@ + + + + + + +0.9.8: GLM_GTC_type_precision + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTC_type_precision
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef highp_float32_t f32
 
typedef f32mat2x2 f32mat2
 
typedef highp_f32mat2x2 f32mat2x2
 
typedef highp_f32mat2x3 f32mat2x3
 
typedef highp_f32mat2x4 f32mat2x4
 
typedef f32mat3x3 f32mat3
 
typedef highp_f32mat3x2 f32mat3x2
 
typedef highp_f32mat3x3 f32mat3x3
 
typedef highp_f32mat3x4 f32mat3x4
 
typedef f32mat4x4 f32mat4
 
typedef highp_f32mat4x2 f32mat4x2
 
typedef highp_f32mat4x3 f32mat4x3
 
typedef highp_f32mat4x4 f32mat4x4
 
typedef highp_f32quat f32quat
 
typedef highp_f32vec1 f32vec1
 
typedef highp_f32vec2 f32vec2
 
typedef highp_f32vec3 f32vec3
 
typedef highp_f32vec4 f32vec4
 
typedef highp_float64_t f64
 
typedef f64mat2x2 f64mat2
 
typedef highp_f64mat2x2 f64mat2x2
 
typedef highp_f64mat2x3 f64mat2x3
 
typedef highp_f64mat2x4 f64mat2x4
 
typedef f64mat3x3 f64mat3
 
typedef highp_f64mat3x2 f64mat3x2
 
typedef highp_f64mat3x3 f64mat3x3
 
typedef highp_f64mat3x4 f64mat3x4
 
typedef f64mat4x4 f64mat4
 
typedef highp_f64mat4x2 f64mat4x2
 
typedef highp_f64mat4x3 f64mat4x3
 
typedef highp_f64mat4x4 f64mat4x4
 
typedef highp_f64quat f64quat
 
typedef highp_f64vec1 f64vec1
 
typedef highp_f64vec2 f64vec2
 
typedef highp_f64vec3 f64vec3
 
typedef highp_f64vec4 f64vec4
 
typedef float float32
 
typedef highp_float32_t float32_t
 
typedef double float64
 
typedef highp_float64_t float64_t
 
typedef fmat2x2 fmat2
 
typedef highp_f32mat2x2 fmat2x2
 
typedef highp_f32mat2x3 fmat2x3
 
typedef highp_f32mat2x4 fmat2x4
 
typedef fmat3x3 fmat3
 
typedef highp_f32mat3x2 fmat3x2
 
typedef highp_f32mat3x3 fmat3x3
 
typedef highp_f32mat3x4 fmat3x4
 
typedef fmat4x4 fmat4
 
typedef highp_f32mat4x2 fmat4x2
 
typedef highp_f32mat4x3 fmat4x3
 
typedef highp_f32mat4x4 fmat4x4
 
typedef highp_f32vec1 fvec1
 
typedef highp_f32vec2 fvec2
 
typedef highp_f32vec3 fvec3
 
typedef highp_f32vec4 fvec4
 
typedef detail::int16 highp_i16
 
typedef detail::int32 highp_i32
 
typedef detail::int64 highp_i64
 
typedef detail::int8 highp_i8
 
typedef detail::int16 highp_int16
 
typedef detail::int16 highp_int16_t
 
typedef detail::int32 highp_int32
 
typedef detail::int32 highp_int32_t
 
typedef detail::int64 highp_int64
 
typedef detail::int64 highp_int64_t
 
typedef detail::int8 highp_int8
 
typedef detail::int8 highp_int8_t
 
typedef detail::uint16 highp_u16
 
typedef detail::uint32 highp_u32
 
typedef detail::uint64 highp_u64
 
typedef detail::uint8 highp_u8
 
typedef detail::uint16 highp_uint16
 
typedef detail::uint16 highp_uint16_t
 
typedef detail::uint32 highp_uint32
 
typedef detail::uint32 highp_uint32_t
 
typedef detail::uint64 highp_uint64
 
typedef detail::uint64 highp_uint64_t
 
typedef detail::uint8 highp_uint8
 
typedef detail::uint8 highp_uint8_t
 
typedef detail::int16 i16
 
typedef highp_i16vec1 i16vec1
 
typedef highp_i16vec2 i16vec2
 
typedef highp_i16vec3 i16vec3
 
typedef highp_i16vec4 i16vec4
 
typedef detail::int32 i32
 
typedef highp_i32vec1 i32vec1
 
typedef highp_i32vec2 i32vec2
 
typedef highp_i32vec3 i32vec3
 
typedef highp_i32vec4 i32vec4
 
typedef detail::int64 i64
 
typedef highp_i64vec1 i64vec1
 
typedef highp_i64vec2 i64vec2
 
typedef highp_i64vec3 i64vec3
 
typedef highp_i64vec4 i64vec4
 
typedef detail::int8 i8
 
typedef highp_i8vec1 i8vec1
 
typedef highp_i8vec2 i8vec2
 
typedef highp_i8vec3 i8vec3
 
typedef highp_i8vec4 i8vec4
 
typedef detail::int16 int16
 
typedef detail::int16 int16_t
 
typedef detail::int32 int32
 
typedef detail::int32 int32_t
 
typedef detail::int64 int64
 
typedef detail::int64 int64_t
 
typedef detail::int8 int8
 
typedef detail::int8 int8_t
 
typedef detail::int16 lowp_i16
 
typedef detail::int32 lowp_i32
 
typedef detail::int64 lowp_i64
 
typedef detail::int8 lowp_i8
 
typedef detail::int16 lowp_int16
 
typedef detail::int16 lowp_int16_t
 
typedef detail::int32 lowp_int32
 
typedef detail::int32 lowp_int32_t
 
typedef detail::int64 lowp_int64
 
typedef detail::int64 lowp_int64_t
 
typedef detail::int8 lowp_int8
 
typedef detail::int8 lowp_int8_t
 
typedef detail::uint16 lowp_u16
 
typedef detail::uint32 lowp_u32
 
typedef detail::uint64 lowp_u64
 
typedef detail::uint8 lowp_u8
 
typedef detail::uint16 lowp_uint16
 
typedef detail::uint16 lowp_uint16_t
 
typedef detail::uint32 lowp_uint32
 
typedef detail::uint32 lowp_uint32_t
 
typedef detail::uint64 lowp_uint64
 
typedef detail::uint64 lowp_uint64_t
 
typedef detail::uint8 lowp_uint8
 
typedef detail::uint8 lowp_uint8_t
 
typedef detail::int16 mediump_i16
 
typedef detail::int32 mediump_i32
 
typedef detail::int64 mediump_i64
 
typedef detail::int8 mediump_i8
 
typedef detail::int16 mediump_int16
 
typedef detail::int16 mediump_int16_t
 
typedef detail::int32 mediump_int32
 
typedef detail::int32 mediump_int32_t
 
typedef detail::int64 mediump_int64
 
typedef detail::int64 mediump_int64_t
 
typedef detail::int8 mediump_int8
 
typedef detail::int8 mediump_int8_t
 
typedef detail::uint16 mediump_u16
 
typedef detail::uint32 mediump_u32
 
typedef detail::uint64 mediump_u64
 
typedef detail::uint8 mediump_u8
 
typedef detail::uint16 mediump_uint16
 
typedef detail::uint16 mediump_uint16_t
 
typedef detail::uint32 mediump_uint32
 
typedef detail::uint32 mediump_uint32_t
 
typedef detail::uint64 mediump_uint64
 
typedef detail::uint64 mediump_uint64_t
 
typedef detail::uint8 mediump_uint8
 
typedef detail::uint8 mediump_uint8_t
 
typedef detail::uint16 u16
 
typedef highp_u16vec1 u16vec1
 
typedef highp_u16vec2 u16vec2
 
typedef highp_u16vec3 u16vec3
 
typedef highp_u16vec4 u16vec4
 
typedef detail::uint32 u32
 
typedef highp_u32vec1 u32vec1
 
typedef highp_u32vec2 u32vec2
 
typedef highp_u32vec3 u32vec3
 
typedef highp_u32vec4 u32vec4
 
typedef detail::uint64 u64
 
typedef highp_u64vec1 u64vec1
 
typedef highp_u64vec2 u64vec2
 
typedef highp_u64vec3 u64vec3
 
typedef highp_u64vec4 u64vec4
 
typedef detail::uint8 u8
 
typedef highp_u8vec1 u8vec1
 
typedef highp_u8vec2 u8vec2
 
typedef highp_u8vec3 u8vec3
 
typedef highp_u8vec4 u8vec4
 
typedef detail::uint16 uint16
 
typedef detail::uint16 uint16_t
 
typedef detail::uint32 uint32
 
typedef detail::uint32 uint32_t
 
typedef detail::uint64 uint64
 
typedef detail::uint64 uint64_t
 
typedef detail::uint8 uint8
 
typedef detail::uint8 uint8_t
 
+

Detailed Description

+

Defines specific C++-based precision types.

+

Precision types defines types based on GLSL's precision qualifiers. This extension defines types based on explicitly-sized C++ data types.

+

<glm/gtc/type_precision.hpp> need to be included to use these functionalities.

+

Typedef Documentation

+ +
+
+ + + + +
typedef float32 f32
+
+ +

Default 32 bit single-precision floating-point scalar.

+

32 bit single-precision floating-point scalar.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 1505 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2< f32, defaultp > f32mat2
+
+ +

Default single-precision floating-point 2x2 matrix.

+

Single-precision floating-point 1x1 matrix.

+
See also
GLM_GTC_type_precision
+
+GLM_GTC_type_precision Single-precision floating-point 2x2 matrix.
+
+GLM_GTC_type_precision
+ +

Definition at line 2449 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2< f32, defaultp > f32mat2x2
+
+ +

Default single-precision floating-point 2x2 matrix.

+

Single-precision floating-point 1x1 matrix.

+
See also
GLM_GTC_type_precision
+
+GLM_GTC_type_precision Single-precision floating-point 2x2 matrix.
+
+GLM_GTC_type_precision
+ +

Definition at line 2413 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x3< f32, defaultp > f32mat2x3
+
+ +

Default single-precision floating-point 2x3 matrix.

+

Single-precision floating-point 2x3 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2417 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x4< f32, defaultp > f32mat2x4
+
+ +

Default single-precision floating-point 2x4 matrix.

+

Single-precision floating-point 2x4 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2421 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3< f32, defaultp > f32mat3
+
+ +

Default single-precision floating-point 3x3 matrix.

+

Single-precision floating-point 3x3 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2453 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x2< f32, defaultp > f32mat3x2
+
+ +

Default single-precision floating-point 3x2 matrix.

+

Single-precision floating-point 3x2 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2425 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3< f32, defaultp > f32mat3x3
+
+ +

Default single-precision floating-point 3x3 matrix.

+

Single-precision floating-point 3x3 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2429 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x4< f32, defaultp > f32mat3x4
+
+ +

Default single-precision floating-point 3x4 matrix.

+

Single-precision floating-point 3x4 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2433 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4< f32, defaultp > f32mat4
+
+ +

Default single-precision floating-point 4x4 matrix.

+

Single-precision floating-point 4x4 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2457 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x2< f32, defaultp > f32mat4x2
+
+ +

Default single-precision floating-point 4x2 matrix.

+

Single-precision floating-point 4x2 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2437 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x3< f32, defaultp > f32mat4x3
+
+ +

Default single-precision floating-point 4x3 matrix.

+

Single-precision floating-point 4x3 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2441 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4< f32, defaultp > f32mat4x4
+
+ +

Default single-precision floating-point 4x4 matrix.

+

Single-precision floating-point 4x4 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2445 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tquat< f32, defaultp > f32quat
+
+ +

Default single-precision floating-point quaternion.

+

Single-precision floating-point quaternion.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2461 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec1< f32, defaultp > f32vec1
+
+ +

Default single-precision floating-point vector of 1 components.

+

Single-precision floating-point vector of 1 component.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2397 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2< f32, defaultp > f32vec2
+
+ +

Default single-precision floating-point vector of 2 components.

+

Single-precision floating-point vector of 2 components.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2401 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3< f32, defaultp > f32vec3
+
+ +

Default single-precision floating-point vector of 3 components.

+

Single-precision floating-point vector of 3 components.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2405 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4< f32, defaultp > f32vec4
+
+ +

Default single-precision floating-point vector of 4 components.

+

Single-precision floating-point vector of 4 components.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2409 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef float64 f64
+
+ +

Default 64 bit double-precision floating-point scalar.

+

64 bit double-precision floating-point scalar.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 1509 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2< f64, defaultp > f64mat2
+
+ +

Default double-precision floating-point 2x2 matrix.

+

Double-precision floating-point 1x1 matrix.

+
See also
GLM_GTC_type_precision
+
+GLM_GTC_type_precision Double-precision floating-point 2x2 matrix.
+
+GLM_GTC_type_precision
+ +

Definition at line 2555 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2< f64, defaultp > f64mat2x2
+
+ +

Default double-precision floating-point 2x2 matrix.

+

Double-precision floating-point 1x1 matrix.

+
See also
GLM_GTC_type_precision
+
+GLM_GTC_type_precision Double-precision floating-point 2x2 matrix.
+
+GLM_GTC_type_precision
+ +

Definition at line 2519 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x3< f64, defaultp > f64mat2x3
+
+ +

Default double-precision floating-point 2x3 matrix.

+

Double-precision floating-point 2x3 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2523 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x4< f64, defaultp > f64mat2x4
+
+ +

Default double-precision floating-point 2x4 matrix.

+

Double-precision floating-point 2x4 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2527 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3< f64, defaultp > f64mat3
+
+ +

Default double-precision floating-point 3x3 matrix.

+

Double-precision floating-point 3x3 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2559 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x2< f64, defaultp > f64mat3x2
+
+ +

Default double-precision floating-point 3x2 matrix.

+

Double-precision floating-point 3x2 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2531 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3< f64, defaultp > f64mat3x3
+
+ +

Default double-precision floating-point 3x3 matrix.

+

Double-precision floating-point 3x3 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2535 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x4< f64, defaultp > f64mat3x4
+
+ +

Default double-precision floating-point 3x4 matrix.

+

Double-precision floating-point 3x4 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2539 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4< f64, defaultp > f64mat4
+
+ +

Default double-precision floating-point 4x4 matrix.

+

Double-precision floating-point 4x4 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2563 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x2< f64, defaultp > f64mat4x2
+
+ +

Default double-precision floating-point 4x2 matrix.

+

Double-precision floating-point 4x2 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2543 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x3< f64, defaultp > f64mat4x3
+
+ +

Default double-precision floating-point 4x3 matrix.

+

Double-precision floating-point 4x3 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2547 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4< f64, defaultp > f64mat4x4
+
+ +

Default double-precision floating-point 4x4 matrix.

+

Double-precision floating-point 4x4 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2551 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tquat< f64, defaultp > f64quat
+
+ +

Default double-precision floating-point quaternion.

+

Double-precision floating-point quaternion.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2567 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec1< f64, defaultp > f64vec1
+
+ +

Default double-precision floating-point vector of 1 components.

+

Double-precision floating-point vector of 1 component.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2503 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2< f64, defaultp > f64vec2
+
+ +

Default double-precision floating-point vector of 2 components.

+

Double-precision floating-point vector of 2 components.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2507 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3< f64, defaultp > f64vec3
+
+ +

Default double-precision floating-point vector of 3 components.

+

Double-precision floating-point vector of 3 components.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2511 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4< f64, defaultp > f64vec4
+
+ +

Default double-precision floating-point vector of 4 components.

+

Double-precision floating-point vector of 4 components.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2515 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::float32 float32
+
+ +

Default 32 bit single-precision floating-point scalar.

+

32 bit single-precision floating-point scalar.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 55 of file type_float.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::float32 float32_t
+
+ +

Default 32 bit single-precision floating-point scalar.

+

32 bit single-precision floating-point scalar.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 1497 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::float64 float64
+
+ +

Default 64 bit double-precision floating-point scalar.

+

64 bit double-precision floating-point scalar.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 56 of file type_float.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::float64 float64_t
+
+ +

Default 64 bit double-precision floating-point scalar.

+

64 bit double-precision floating-point scalar.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 1501 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2< f32, defaultp > fmat2
+
+ +

Default single-precision floating-point 2x2 matrix.

+

Single-precision floating-point 1x1 matrix.

+
See also
GLM_GTC_type_precision
+
+GLM_GTC_type_precision Single-precision floating-point 2x2 matrix.
+
+GLM_GTC_type_precision
+ +

Definition at line 2379 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x2< f32, defaultp > fmat2x2
+
+ +

Default single-precision floating-point 2x2 matrix.

+

Single-precision floating-point 1x1 matrix.

+
See also
GLM_GTC_type_precision
+
+GLM_GTC_type_precision Single-precision floating-point 2x2 matrix.
+
+GLM_GTC_type_precision
+ +

Definition at line 2343 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x3< f32, defaultp > fmat2x3
+
+ +

Default single-precision floating-point 2x3 matrix.

+

Single-precision floating-point 2x3 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2347 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat2x4< f32, defaultp > fmat2x4
+
+ +

Default single-precision floating-point 2x4 matrix.

+

Single-precision floating-point 2x4 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2351 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3< f32, defaultp > fmat3
+
+ +

Default single-precision floating-point 3x3 matrix.

+

Single-precision floating-point 3x3 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2383 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x2< f32, defaultp > fmat3x2
+
+ +

Default single-precision floating-point 3x2 matrix.

+

Single-precision floating-point 3x2 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2355 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x3< f32, defaultp > fmat3x3
+
+ +

Default single-precision floating-point 3x3 matrix.

+

Single-precision floating-point 3x3 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2359 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat3x4< f32, defaultp > fmat3x4
+
+ +

Default single-precision floating-point 3x4 matrix.

+

Single-precision floating-point 3x4 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2363 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4< f32, defaultp > fmat4
+
+ +

Default single-precision floating-point 4x4 matrix.

+

Single-precision floating-point 4x4 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2387 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x2< f32, defaultp > fmat4x2
+
+ +

Default single-precision floating-point 4x2 matrix.

+

Single-precision floating-point 4x2 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2367 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x3< f32, defaultp > fmat4x3
+
+ +

Default single-precision floating-point 4x3 matrix.

+

Single-precision floating-point 4x3 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2371 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tmat4x4< f32, defaultp > fmat4x4
+
+ +

Default single-precision floating-point 4x4 matrix.

+

Single-precision floating-point 4x4 matrix.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2375 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec1< float, defaultp > fvec1
+
+ +

Default single-precision floating-point vector of 1 components.

+

Single-precision floating-point vector of 1 component.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2327 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2< float, defaultp > fvec2
+
+ +

Default single-precision floating-point vector of 2 components.

+

Single-precision floating-point vector of 2 components.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2331 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3< float, defaultp > fvec3
+
+ +

Default single-precision floating-point vector of 3 components.

+

Single-precision floating-point vector of 3 components.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2335 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4< float, defaultp > fvec4
+
+ +

Default single-precision floating-point vector of 4 components.

+

Single-precision floating-point vector of 4 components.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 2339 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int16 highp_i16
+
+ +

High precision 16 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 232 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int32 highp_i32
+
+ +

High precision 32 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 236 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int64 highp_i64
+
+ +

High precision 64 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 240 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int8 highp_i8
+
+ +

High precision 8 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 228 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int16 highp_int16
+
+ +

High precision 16 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 200 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int16 highp_int16_t
+
+ +

High precision 16 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 216 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int32 highp_int32
+
+ +

High precision 32 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 204 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int32 highp_int32_t
+
+ +

32 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 220 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int64 highp_int64
+
+ +

High precision 64 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 208 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int64 highp_int64_t
+
+ +

High precision 64 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 224 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int8 highp_int8
+
+ +

High precision 8 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 196 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int8 highp_int8_t
+
+ +

High precision 8 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 212 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint16 highp_u16
+
+ +

Medium precision 16 bit unsigned integer type.

+

High precision 16 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 841 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint32 highp_u32
+
+ +

Medium precision 32 bit unsigned integer type.

+

High precision 32 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 845 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint64 highp_u64
+
+ +

Medium precision 64 bit unsigned integer type.

+

High precision 64 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 849 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint8 highp_u8
+
+ +

Medium precision 8 bit unsigned integer type.

+

High precision 8 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 837 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint16 highp_uint16
+
+ +

Medium precision 16 bit unsigned integer type.

+

High precision 16 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 809 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint16 highp_uint16_t
+
+ +

Medium precision 16 bit unsigned integer type.

+

High precision 16 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 825 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint32 highp_uint32
+
+ +

Medium precision 32 bit unsigned integer type.

+

High precision 32 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 813 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint32 highp_uint32_t
+
+ +

Medium precision 32 bit unsigned integer type.

+

High precision 32 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 829 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint64 highp_uint64
+
+ +

Medium precision 64 bit unsigned integer type.

+

High precision 64 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 817 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint64 highp_uint64_t
+
+ +

Medium precision 64 bit unsigned integer type.

+

High precision 64 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 833 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint8 highp_uint8
+
+ +

Medium precision 8 bit unsigned integer type.

+

High precision 8 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 805 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint8 highp_uint8_t
+
+ +

Medium precision 8 bit unsigned integer type.

+

High precision 8 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 821 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int16 i16
+
+ +

16 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 289 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec1< i16, defaultp > i16vec1
+
+ +

Default precision 16 bit signed integer scalar type.

+

16 bit signed integer scalar type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 444 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2< i16, defaultp > i16vec2
+
+ +

Default precision 16 bit signed integer vector of 2 components type.

+

16 bit signed integer vector of 2 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 448 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3< i16, defaultp > i16vec3
+
+ +

Default precision 16 bit signed integer vector of 3 components type.

+

16 bit signed integer vector of 3 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 452 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4< i16, defaultp > i16vec4
+
+ +

Default precision 16 bit signed integer vector of 4 components type.

+

16 bit signed integer vector of 4 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 456 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int32 i32
+
+ +

32 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 293 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec1< i32, defaultp > i32vec1
+
+ +

Default precision 32 bit signed integer scalar type.

+

32 bit signed integer scalar type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 523 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2< i32, defaultp > i32vec2
+
+ +

Default precision 32 bit signed integer vector of 2 components type.

+

32 bit signed integer vector of 2 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 527 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3< i32, defaultp > i32vec3
+
+ +

Default precision 32 bit signed integer vector of 3 components type.

+

32 bit signed integer vector of 3 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 531 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4< i32, defaultp > i32vec4
+
+ +

Default precision 32 bit signed integer vector of 4 components type.

+

32 bit signed integer vector of 4 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 535 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int64 i64
+
+ +

64 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 297 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec1< i64, defaultp > i64vec1
+
+ +

Default precision 64 bit signed integer scalar type.

+

64 bit signed integer scalar type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 682 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2< i64, defaultp > i64vec2
+
+ +

Default precision 64 bit signed integer vector of 2 components type.

+

64 bit signed integer vector of 2 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 686 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3< i64, defaultp > i64vec3
+
+ +

Default precision 64 bit signed integer vector of 3 components type.

+

64 bit signed integer vector of 3 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 690 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4< i64, defaultp > i64vec4
+
+ +

Default precision 64 bit signed integer vector of 4 components type.

+

64 bit signed integer vector of 4 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 694 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int8 i8
+
+ +

8 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 285 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec1< i8, defaultp > i8vec1
+
+ +

Default precision 8 bit signed integer scalar type.

+

8 bit signed integer scalar type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 364 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2< i8, defaultp > i8vec2
+
+ +

Default precision 8 bit signed integer vector of 2 components type.

+

8 bit signed integer vector of 2 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 368 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3< i8, defaultp > i8vec3
+
+ +

Default precision 8 bit signed integer vector of 3 components type.

+

8 bit signed integer vector of 3 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 372 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4< i8, defaultp > i8vec4
+
+ +

Default precision 8 bit signed integer vector of 4 components type.

+

8 bit signed integer vector of 4 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 376 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int16 int16
+
+ +

16 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 207 of file type_int.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int16 int16_t
+
+ +

16 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 272 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int32 int32
+
+ +

32 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 208 of file type_int.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int32 int32_t
+
+ +

32 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 276 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int64 int64
+
+ +

64 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 209 of file type_int.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int64 int64_t
+
+ +

64 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 280 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int8 int8
+
+ +

8 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 206 of file type_int.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int8 int8_t
+
+ +

8 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 268 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int16 lowp_i16
+
+ +

Low precision 16 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 136 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int32 lowp_i32
+
+ +

Low precision 32 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 140 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int64 lowp_i64
+
+ +

Low precision 64 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 144 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int8 lowp_i8
+
+ +

Low precision 8 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 132 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int16 lowp_int16
+
+ +

Low precision 16 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 104 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int16 lowp_int16_t
+
+ +

Low precision 16 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 120 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int32 lowp_int32
+
+ +

Low precision 32 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 108 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int32 lowp_int32_t
+
+ +

Low precision 32 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 124 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int64 lowp_int64
+
+ +

Low precision 64 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 112 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int64 lowp_int64_t
+
+ +

Low precision 64 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 128 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int8 lowp_int8
+
+ +

Low precision 8 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 100 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int8 lowp_int8_t
+
+ +

Low precision 8 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 116 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint16 lowp_u16
+
+ +

Low precision 16 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 741 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint32 lowp_u32
+
+ +

Low precision 32 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 745 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint64 lowp_u64
+
+ +

Low precision 64 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 749 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint8 lowp_u8
+
+ +

Low precision 8 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 737 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint16 lowp_uint16
+
+ +

Low precision 16 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 707 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint16 lowp_uint16_t
+
+ +

Low precision 16 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 724 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint32 lowp_uint32
+
+ +

Low precision 32 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 711 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint32 lowp_uint32_t
+
+ +

Low precision 32 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 728 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint64 lowp_uint64
+
+ +

Low precision 64 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 715 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint64 lowp_uint64_t
+
+ +

Low precision 64 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 732 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint8 lowp_uint8
+
+ +

Low precision 8 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 703 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint8 lowp_uint8_t
+
+ +

Low precision 8 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 720 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int16 mediump_i16
+
+ +

Medium precision 16 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 184 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int32 mediump_i32
+
+ +

Medium precision 32 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 188 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int64 mediump_i64
+
+ +

Medium precision 64 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 192 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int8 mediump_i8
+
+ +

Medium precision 8 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 180 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int16 mediump_int16
+
+ +

Medium precision 16 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 152 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int16 mediump_int16_t
+
+ +

Medium precision 16 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 168 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int32 mediump_int32
+
+ +

Medium precision 32 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 156 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int32 mediump_int32_t
+
+ +

Medium precision 32 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 172 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int64 mediump_int64
+
+ +

Medium precision 64 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 160 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int64 mediump_int64_t
+
+ +

Medium precision 64 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 176 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int8 mediump_int8
+
+ +

Medium precision 8 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 148 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::int8 mediump_int8_t
+
+ +

Medium precision 8 bit signed integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 164 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint16 mediump_u16
+
+ +

Medium precision 16 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 791 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint32 mediump_u32
+
+ +

Medium precision 32 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 795 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint64 mediump_u64
+
+ +

Medium precision 64 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 799 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint8 mediump_u8
+
+ +

Medium precision 8 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 787 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint16 mediump_uint16
+
+ +

Medium precision 16 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 759 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint16 mediump_uint16_t
+
+ +

Medium precision 16 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 775 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint32 mediump_uint32
+
+ +

Medium precision 32 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 763 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint32 mediump_uint32_t
+
+ +

Medium precision 32 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 779 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint64 mediump_uint64
+
+ +

Medium precision 64 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 767 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint64 mediump_uint64_t
+
+ +

Medium precision 64 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 783 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint8 mediump_uint8
+
+ +

Medium precision 8 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 755 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint8 mediump_uint8_t
+
+ +

Medium precision 8 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 771 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint16 u16
+
+ +

16 bit unsigned integer type.

+

Default precision 16 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 898 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec1< u16, defaultp > u16vec1
+
+ +

Default precision 16 bit unsigned integer scalar type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 1053 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2< u16, defaultp > u16vec2
+
+ +

Default precision 16 bit unsigned integer vector of 2 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 1057 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3< u16, defaultp > u16vec3
+
+ +

Default precision 16 bit unsigned integer vector of 3 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 1061 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4< u16, defaultp > u16vec4
+
+ +

Default precision 16 bit unsigned integer vector of 4 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 1065 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint32 u32
+
+ +

32 bit unsigned integer type.

+

Default precision 32 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 902 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec1< u32, defaultp > u32vec1
+
+ +

Default precision 32 bit unsigned integer scalar type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 1132 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2< u32, defaultp > u32vec2
+
+ +

Default precision 32 bit unsigned integer vector of 2 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 1136 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3< u32, defaultp > u32vec3
+
+ +

Default precision 32 bit unsigned integer vector of 3 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 1140 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4< u32, defaultp > u32vec4
+
+ +

Default precision 32 bit unsigned integer vector of 4 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 1144 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint64 u64
+
+ +

64 bit unsigned integer type.

+

Default precision 64 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 906 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec1< u64, defaultp > u64vec1
+
+ +

Default precision 64 bit unsigned integer scalar type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 1291 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2< u64, defaultp > u64vec2
+
+ +

Default precision 64 bit unsigned integer vector of 2 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 1295 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3< u64, defaultp > u64vec3
+
+ +

Default precision 64 bit unsigned integer vector of 3 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 1299 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4< u64, defaultp > u64vec4
+
+ +

Default precision 64 bit unsigned integer vector of 4 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 1303 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint8 u8
+
+ +

8 bit unsigned integer type.

+

Default precision 8 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 894 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec1< u8, defaultp > u8vec1
+
+ +

Default precision 8 bit unsigned integer scalar type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 973 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2< u8, defaultp > u8vec2
+
+ +

Default precision 8 bit unsigned integer vector of 2 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 977 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3< u8, defaultp > u8vec3
+
+ +

Default precision 8 bit unsigned integer vector of 3 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 981 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4< u8, defaultp > u8vec4
+
+ +

Default precision 8 bit unsigned integer vector of 4 components type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 985 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint16 uint16
+
+ +

16 bit unsigned integer type.

+

Default precision 16 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 212 of file type_int.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint16 uint16_t
+
+ +

16 bit unsigned integer type.

+

Default precision 16 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 881 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint32 uint32
+
+ +

32 bit unsigned integer type.

+

Default precision 32 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 213 of file type_int.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint32 uint32_t
+
+ +

32 bit unsigned integer type.

+

Default precision 32 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 885 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint64 uint64
+
+ +

64 bit unsigned integer type.

+

Default precision 64 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 214 of file type_int.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint64 uint64_t
+
+ +

64 bit unsigned integer type.

+

Default precision 64 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 889 of file fwd.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint8 uint8
+
+ +

8 bit unsigned integer type.

+

Default precision 8 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 211 of file type_int.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint8 uint8_t
+
+ +

8 bit unsigned integer type.

+

Default precision 8 bit unsigned integer type.

+
See also
GLM_GTC_type_precision
+ +

Definition at line 877 of file fwd.hpp.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00178.html b/third_party/glm_test/doc/api/a00178.html new file mode 100644 index 0000000000000..709d475f23c60 --- /dev/null +++ b/third_party/glm_test/doc/api/a00178.html @@ -0,0 +1,445 @@ + + + + + + +0.9.8: GLM_GTC_type_ptr + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTC_type_ptr
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL tmat2x2< T, defaultp > make_mat2 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat2x2< T, defaultp > make_mat2x2 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat2x3< T, defaultp > make_mat2x3 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat2x4< T, defaultp > make_mat2x4 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat3x3< T, defaultp > make_mat3 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat3x2< T, defaultp > make_mat3x2 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat3x3< T, defaultp > make_mat3x3 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat3x4< T, defaultp > make_mat3x4 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > make_mat4 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat4x2< T, defaultp > make_mat4x2 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat4x3< T, defaultp > make_mat4x3 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > make_mat4x4 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tquat< T, defaultp > make_quat (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tvec2< T, defaultp > make_vec2 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tvec3< T, defaultp > make_vec3 (T const *const ptr)
 
template<typename T >
GLM_FUNC_DECL tvec4< T, defaultp > make_vec4 (T const *const ptr)
 
template<typename genType >
GLM_FUNC_DECL genType::value_type const * value_ptr (genType const &vec)
 
+

Detailed Description

+

Handles the interaction between pointers and vector, matrix types.

+

This extension defines an overloaded function, glm::value_ptr, which takes any of the core template types. It returns a pointer to the memory layout of the object. Matrix types store their values in column-major order.

+

This is useful for uploading data to matrices or copying data to buffer objects.

+

Example:

#include <glm/glm.hpp>
+ +
+
glm::vec3 aVector(3);
+
glm::mat4 someMatrix(1.0);
+
+
glUniform3fv(uniformLoc, 1, glm::value_ptr(aVector));
+
glUniformMatrix4fv(uniformMatrixLoc, 1, GL_FALSE, glm::value_ptr(someMatrix));
+

<glm/gtc/type_ptr.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat2x2<T, defaultp> glm::make_mat2 (T const *const ptr)
+
+ +

Build a matrix from a pointer.

+
See also
GLM_GTC_type_ptr
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat2x2<T, defaultp> glm::make_mat2x2 (T const *const ptr)
+
+ +

Build a matrix from a pointer.

+
See also
GLM_GTC_type_ptr
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat2x3<T, defaultp> glm::make_mat2x3 (T const *const ptr)
+
+ +

Build a matrix from a pointer.

+
See also
GLM_GTC_type_ptr
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat2x4<T, defaultp> glm::make_mat2x4 (T const *const ptr)
+
+ +

Build a matrix from a pointer.

+
See also
GLM_GTC_type_ptr
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat3x3<T, defaultp> glm::make_mat3 (T const *const ptr)
+
+ +

Build a matrix from a pointer.

+
See also
GLM_GTC_type_ptr
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat3x2<T, defaultp> glm::make_mat3x2 (T const *const ptr)
+
+ +

Build a matrix from a pointer.

+
See also
GLM_GTC_type_ptr
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat3x3<T, defaultp> glm::make_mat3x3 (T const *const ptr)
+
+ +

Build a matrix from a pointer.

+
See also
GLM_GTC_type_ptr
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat3x4<T, defaultp> glm::make_mat3x4 (T const *const ptr)
+
+ +

Build a matrix from a pointer.

+
See also
GLM_GTC_type_ptr
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::make_mat4 (T const *const ptr)
+
+ +

Build a matrix from a pointer.

+
See also
GLM_GTC_type_ptr
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x2<T, defaultp> glm::make_mat4x2 (T const *const ptr)
+
+ +

Build a matrix from a pointer.

+
See also
GLM_GTC_type_ptr
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x3<T, defaultp> glm::make_mat4x3 (T const *const ptr)
+
+ +

Build a matrix from a pointer.

+
See also
GLM_GTC_type_ptr
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::make_mat4x4 (T const *const ptr)
+
+ +

Build a matrix from a pointer.

+
See also
GLM_GTC_type_ptr
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tquat<T, defaultp> glm::make_quat (T const *const ptr)
+
+ +

Build a quaternion from a pointer.

+
See also
GLM_GTC_type_ptr
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec2<T, defaultp> glm::make_vec2 (T const *const ptr)
+
+ +

Build a vector from a pointer.

+
See also
GLM_GTC_type_ptr
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec3<T, defaultp> glm::make_vec3 (T const *const ptr)
+
+ +

Build a vector from a pointer.

+
See also
GLM_GTC_type_ptr
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec4<T, defaultp> glm::make_vec4 (T const *const ptr)
+
+ +

Build a vector from a pointer.

+
See also
GLM_GTC_type_ptr
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType::value_type const* glm::value_ptr (genType const & vec)
+
+ +

Return the constant address to the data of the input parameter.

+
See also
GLM_GTC_type_ptr
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00179.html b/third_party/glm_test/doc/api/a00179.html new file mode 100644 index 0000000000000..bdd31a4f1e7ea --- /dev/null +++ b/third_party/glm_test/doc/api/a00179.html @@ -0,0 +1,233 @@ + + + + + + +0.9.8: GLM_GTC_ulp + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL uint float_distance (T const &x, T const &y)
 
template<typename T , template< typename > class vecType>
GLM_FUNC_DECL vecType< uint > float_distance (vecType< T > const &x, vecType< T > const &y)
 
template<typename genType >
GLM_FUNC_DECL genType next_float (genType const &x)
 
template<typename genType >
GLM_FUNC_DECL genType next_float (genType const &x, uint const &Distance)
 
template<typename genType >
GLM_FUNC_DECL genType prev_float (genType const &x)
 
template<typename genType >
GLM_FUNC_DECL genType prev_float (genType const &x, uint const &Distance)
 
+

Detailed Description

+

Allow the measurement of the accuracy of a function against a reference implementation.

+

This extension works on floating-point data and provide results in ULP. <glm/gtc/ulp.hpp> need to be included to use these features.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL uint glm::float_distance (T const & x,
T const & y 
)
+
+ +

Return the distance in the number of ULP between 2 scalars.

+
See also
GLM_GTC_ulp
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<uint> glm::float_distance (vecType< T > const & x,
vecType< T > const & y 
)
+
+ +

Return the distance in the number of ULP between 2 vectors.

+
See also
GLM_GTC_ulp
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::next_float (genType const & x)
+
+ +

Return the next ULP value(s) after the input value(s).

+
See also
GLM_GTC_ulp
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::next_float (genType const & x,
uint const & Distance 
)
+
+ +

Return the value(s) ULP distance after the input value(s).

+
See also
GLM_GTC_ulp
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::prev_float (genType const & x)
+
+ +

Return the previous ULP value(s) before the input value(s).

+
See also
GLM_GTC_ulp
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::prev_float (genType const & x,
uint const & Distance 
)
+
+ +

Return the value(s) ULP distance before the input value(s).

+
See also
GLM_GTC_ulp
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00180.html b/third_party/glm_test/doc/api/a00180.html new file mode 100644 index 0000000000000..49d77834ab692 --- /dev/null +++ b/third_party/glm_test/doc/api/a00180.html @@ -0,0 +1,53 @@ + + + + + + +0.9.8: GLM_GTC_vec1 + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
+

Add vec1, ivec1, uvec1 and bvec1 types.

+

<glm/gtc/vec1.hpp> need to be included to use these functionalities.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00181.html b/third_party/glm_test/doc/api/a00181.html new file mode 100644 index 0000000000000..f4f6ea4900f7d --- /dev/null +++ b/third_party/glm_test/doc/api/a00181.html @@ -0,0 +1,1293 @@ + + + + + + +0.9.8: GLM_GTX_associated_min_max + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_associated_min_max
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , typename U >
GLM_FUNC_DECL U associatedMax (T x, U a, T y, U b)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL tvec2< U, P > associatedMax (vecType< T, P > const &x, vecType< U, P > const &a, vecType< T, P > const &y, vecType< U, P > const &b)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > associatedMax (T x, vecType< U, P > const &a, T y, vecType< U, P > const &b)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMax (vecType< T, P > const &x, U a, vecType< T, P > const &y, U b)
 
template<typename T , typename U >
GLM_FUNC_DECL U associatedMax (T x, U a, T y, U b, T z, U c)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMax (vecType< T, P > const &x, vecType< U, P > const &a, vecType< T, P > const &y, vecType< U, P > const &b, vecType< T, P > const &z, vecType< U, P > const &c)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > associatedMax (T x, vecType< U, P > const &a, T y, vecType< U, P > const &b, T z, vecType< U, P > const &c)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMax (vecType< T, P > const &x, U a, vecType< T, P > const &y, U b, vecType< T, P > const &z, U c)
 
template<typename T , typename U >
GLM_FUNC_DECL U associatedMax (T x, U a, T y, U b, T z, U c, T w, U d)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMax (vecType< T, P > const &x, vecType< U, P > const &a, vecType< T, P > const &y, vecType< U, P > const &b, vecType< T, P > const &z, vecType< U, P > const &c, vecType< T, P > const &w, vecType< U, P > const &d)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMax (T x, vecType< U, P > const &a, T y, vecType< U, P > const &b, T z, vecType< U, P > const &c, T w, vecType< U, P > const &d)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMax (vecType< T, P > const &x, U a, vecType< T, P > const &y, U b, vecType< T, P > const &z, U c, vecType< T, P > const &w, U d)
 
template<typename T , typename U , precision P>
GLM_FUNC_DECL U associatedMin (T x, U a, T y, U b)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL tvec2< U, P > associatedMin (vecType< T, P > const &x, vecType< U, P > const &a, vecType< T, P > const &y, vecType< U, P > const &b)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMin (T x, const vecType< U, P > &a, T y, const vecType< U, P > &b)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMin (vecType< T, P > const &x, U a, vecType< T, P > const &y, U b)
 
template<typename T , typename U >
GLM_FUNC_DECL U associatedMin (T x, U a, T y, U b, T z, U c)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMin (vecType< T, P > const &x, vecType< U, P > const &a, vecType< T, P > const &y, vecType< U, P > const &b, vecType< T, P > const &z, vecType< U, P > const &c)
 
template<typename T , typename U >
GLM_FUNC_DECL U associatedMin (T x, U a, T y, U b, T z, U c, T w, U d)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMin (vecType< T, P > const &x, vecType< U, P > const &a, vecType< T, P > const &y, vecType< U, P > const &b, vecType< T, P > const &z, vecType< U, P > const &c, vecType< T, P > const &w, vecType< U, P > const &d)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMin (T x, vecType< U, P > const &a, T y, vecType< U, P > const &b, T z, vecType< U, P > const &c, T w, vecType< U, P > const &d)
 
template<typename T , typename U , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< U, P > associatedMin (vecType< T, P > const &x, U a, vecType< T, P > const &y, U b, vecType< T, P > const &z, U c, vecType< T, P > const &w, U d)
 
+

Detailed Description

+

Min and max functions that return associated values not the compared onces.

+

<glm/gtx/associated_min_max.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL U glm::associatedMax (x,
a,
y,
b 
)
+
+ +

Maximum comparison between 2 variables and returns 2 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec2<U, P> glm::associatedMax (vecType< T, P > const & x,
vecType< U, P > const & a,
vecType< T, P > const & y,
vecType< U, P > const & b 
)
+
+ +

Maximum comparison between 2 variables and returns 2 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::associatedMax (x,
vecType< U, P > const & a,
y,
vecType< U, P > const & b 
)
+
+ +

Maximum comparison between 2 variables and returns 2 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<U, P> glm::associatedMax (vecType< T, P > const & x,
a,
vecType< T, P > const & y,
b 
)
+
+ +

Maximum comparison between 2 variables and returns 2 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL U glm::associatedMax (x,
a,
y,
b,
z,
c 
)
+
+ +

Maximum comparison between 3 variables and returns 3 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<U, P> glm::associatedMax (vecType< T, P > const & x,
vecType< U, P > const & a,
vecType< T, P > const & y,
vecType< U, P > const & b,
vecType< T, P > const & z,
vecType< U, P > const & c 
)
+
+ +

Maximum comparison between 3 variables and returns 3 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::associatedMax (x,
vecType< U, P > const & a,
y,
vecType< U, P > const & b,
z,
vecType< U, P > const & c 
)
+
+ +

Maximum comparison between 3 variables and returns 3 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<U, P> glm::associatedMax (vecType< T, P > const & x,
a,
vecType< T, P > const & y,
b,
vecType< T, P > const & z,
c 
)
+
+ +

Maximum comparison between 3 variables and returns 3 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL U glm::associatedMax (x,
a,
y,
b,
z,
c,
w,
d 
)
+
+ +

Maximum comparison between 4 variables and returns 4 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<U, P> glm::associatedMax (vecType< T, P > const & x,
vecType< U, P > const & a,
vecType< T, P > const & y,
vecType< U, P > const & b,
vecType< T, P > const & z,
vecType< U, P > const & c,
vecType< T, P > const & w,
vecType< U, P > const & d 
)
+
+ +

Maximum comparison between 4 variables and returns 4 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<U, P> glm::associatedMax (x,
vecType< U, P > const & a,
y,
vecType< U, P > const & b,
z,
vecType< U, P > const & c,
w,
vecType< U, P > const & d 
)
+
+ +

Maximum comparison between 4 variables and returns 4 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<U, P> glm::associatedMax (vecType< T, P > const & x,
a,
vecType< T, P > const & y,
b,
vecType< T, P > const & z,
c,
vecType< T, P > const & w,
d 
)
+
+ +

Maximum comparison between 4 variables and returns 4 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL U glm::associatedMin (x,
a,
y,
b 
)
+
+ +

Minimum comparison between 2 variables and returns 2 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec2<U, P> glm::associatedMin (vecType< T, P > const & x,
vecType< U, P > const & a,
vecType< T, P > const & y,
vecType< U, P > const & b 
)
+
+ +

Minimum comparison between 2 variables and returns 2 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<U, P> glm::associatedMin (x,
const vecType< U, P > & a,
y,
const vecType< U, P > & b 
)
+
+ +

Minimum comparison between 2 variables and returns 2 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<U, P> glm::associatedMin (vecType< T, P > const & x,
a,
vecType< T, P > const & y,
b 
)
+
+ +

Minimum comparison between 2 variables and returns 2 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL U glm::associatedMin (x,
a,
y,
b,
z,
c 
)
+
+ +

Minimum comparison between 3 variables and returns 3 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<U, P> glm::associatedMin (vecType< T, P > const & x,
vecType< U, P > const & a,
vecType< T, P > const & y,
vecType< U, P > const & b,
vecType< T, P > const & z,
vecType< U, P > const & c 
)
+
+ +

Minimum comparison between 3 variables and returns 3 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL U glm::associatedMin (x,
a,
y,
b,
z,
c,
w,
d 
)
+
+ +

Minimum comparison between 4 variables and returns 4 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<U, P> glm::associatedMin (vecType< T, P > const & x,
vecType< U, P > const & a,
vecType< T, P > const & y,
vecType< U, P > const & b,
vecType< T, P > const & z,
vecType< U, P > const & c,
vecType< T, P > const & w,
vecType< U, P > const & d 
)
+
+ +

Minimum comparison between 4 variables and returns 4 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<U, P> glm::associatedMin (x,
vecType< U, P > const & a,
y,
vecType< U, P > const & b,
z,
vecType< U, P > const & c,
w,
vecType< U, P > const & d 
)
+
+ +

Minimum comparison between 4 variables and returns 4 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<U, P> glm::associatedMin (vecType< T, P > const & x,
a,
vecType< T, P > const & y,
b,
vecType< T, P > const & z,
c,
vecType< T, P > const & w,
d 
)
+
+ +

Minimum comparison between 4 variables and returns 4 associated variable values.

+
See also
GLM_GTX_associated_min_max
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00182.html b/third_party/glm_test/doc/api/a00182.html new file mode 100644 index 0000000000000..7e0f4491a9c14 --- /dev/null +++ b/third_party/glm_test/doc/api/a00182.html @@ -0,0 +1,273 @@ + + + + + + +0.9.8: GLM_GTX_bit + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genIUType >
GLM_FUNC_DECL genIUType highestBitValue (genIUType Value)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > highestBitValue (vecType< T, P > const &value)
 
template<typename genIUType >
GLM_FUNC_DECL genIUType lowestBitValue (genIUType Value)
 
template<typename genIUType >
GLM_DEPRECATED GLM_FUNC_DECL genIUType powerOfTwoAbove (genIUType Value)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_DEPRECATED GLM_FUNC_DECL vecType< T, P > powerOfTwoAbove (vecType< T, P > const &value)
 
template<typename genIUType >
GLM_DEPRECATED GLM_FUNC_DECL genIUType powerOfTwoBelow (genIUType Value)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_DEPRECATED GLM_FUNC_DECL vecType< T, P > powerOfTwoBelow (vecType< T, P > const &value)
 
template<typename genIUType >
GLM_DEPRECATED GLM_FUNC_DECL genIUType powerOfTwoNearest (genIUType Value)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_DEPRECATED GLM_FUNC_DECL vecType< T, P > powerOfTwoNearest (vecType< T, P > const &value)
 
+

Detailed Description

+

Allow to perform bit operations on integer values.

+

<glm/gtx/bit.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genIUType glm::highestBitValue (genIUType Value)
+
+
See also
GLM_GTX_bit
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::highestBitValue (vecType< T, P > const & value)
+
+ +

Find the highest bit set to 1 in a integer variable and return its value.

+
See also
GLM_GTX_bit
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genIUType glm::lowestBitValue (genIUType Value)
+
+
See also
GLM_GTX_bit
+ +
+
+ +
+
+ + + + + + + + +
GLM_DEPRECATED GLM_FUNC_DECL genIUType glm::powerOfTwoAbove (genIUType Value)
+
+ +

Return the power of two number which value is just higher the input value.

+

Deprecated, use ceilPowerOfTwo from GTC_round instead

+
See also
GLM_GTC_round
+
+GLM_GTX_bit
+ +
+
+ +
+
+ + + + + + + + +
GLM_DEPRECATED GLM_FUNC_DECL vecType<T, P> glm::powerOfTwoAbove (vecType< T, P > const & value)
+
+ +

Return the power of two number which value is just higher the input value.

+

Deprecated, use ceilPowerOfTwo from GTC_round instead

+
See also
GLM_GTC_round
+
+GLM_GTX_bit
+ +
+
+ +
+
+ + + + + + + + +
GLM_DEPRECATED GLM_FUNC_DECL genIUType glm::powerOfTwoBelow (genIUType Value)
+
+ +

Return the power of two number which value is just lower the input value.

+

Deprecated, use floorPowerOfTwo from GTC_round instead

+
See also
GLM_GTC_round
+
+GLM_GTX_bit
+ +
+
+ +
+
+ + + + + + + + +
GLM_DEPRECATED GLM_FUNC_DECL vecType<T, P> glm::powerOfTwoBelow (vecType< T, P > const & value)
+
+ +

Return the power of two number which value is just lower the input value.

+

Deprecated, use floorPowerOfTwo from GTC_round instead

+
See also
GLM_GTC_round
+
+GLM_GTX_bit
+ +
+
+ +
+
+ + + + + + + + +
GLM_DEPRECATED GLM_FUNC_DECL genIUType glm::powerOfTwoNearest (genIUType Value)
+
+ +

Return the power of two number which value is the closet to the input value.

+

Deprecated, use roundPowerOfTwo from GTC_round instead

+
See also
GLM_GTC_round
+
+GLM_GTX_bit
+ +
+
+ +
+
+ + + + + + + + +
GLM_DEPRECATED GLM_FUNC_DECL vecType<T, P> glm::powerOfTwoNearest (vecType< T, P > const & value)
+
+ +

Return the power of two number which value is the closet to the input value.

+

Deprecated, use roundPowerOfTwo from GTC_round instead

+
See also
GLM_GTC_round
+
+GLM_GTX_bit
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00183.html b/third_party/glm_test/doc/api/a00183.html new file mode 100644 index 0000000000000..de98d657143dd --- /dev/null +++ b/third_party/glm_test/doc/api/a00183.html @@ -0,0 +1,103 @@ + + + + + + +0.9.8: GLM_GTX_closest_point + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_closest_point
+
+
+ + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > closestPointOnLine (tvec3< T, P > const &point, tvec3< T, P > const &a, tvec3< T, P > const &b)
 
+template<typename T , precision P>
GLM_FUNC_DECL tvec2< T, P > closestPointOnLine (tvec2< T, P > const &point, tvec2< T, P > const &a, tvec2< T, P > const &b)
 
+

Detailed Description

+

Find the point on a straight line which is the closet of a point.

+

<glm/gtx/closest_point.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::closestPointOnLine (tvec3< T, P > const & point,
tvec3< T, P > const & a,
tvec3< T, P > const & b 
)
+
+ +

Find the point on a straight line which is the closet of a point.

+
See also
GLM_GTX_closest_point
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00184.html b/third_party/glm_test/doc/api/a00184.html new file mode 100644 index 0000000000000..eccf295ce0209 --- /dev/null +++ b/third_party/glm_test/doc/api/a00184.html @@ -0,0 +1,213 @@ + + + + + + +0.9.8: GLM_GTX_color_space + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
+
+
+ + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > hsvColor (tvec3< T, P > const &rgbValue)
 
template<typename T , precision P>
GLM_FUNC_DECL T luminosity (tvec3< T, P > const &color)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > rgbColor (tvec3< T, P > const &hsvValue)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > saturation (T const s)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > saturation (T const s, tvec3< T, P > const &color)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< T, P > saturation (T const s, tvec4< T, P > const &color)
 
+

Detailed Description

+

Related to RGB to HSV conversions and operations.

+

<glm/gtx/color_space.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::hsvColor (tvec3< T, P > const & rgbValue)
+
+ +

Converts a color from RGB color space to its color in HSV color space.

+
See also
GLM_GTX_color_space
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::luminosity (tvec3< T, P > const & color)
+
+ +

Compute color luminosity associating ratios (0.33, 0.59, 0.11) to RGB canals.

+
See also
GLM_GTX_color_space
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::rgbColor (tvec3< T, P > const & hsvValue)
+
+ +

Converts a color from HSV color space to its color in RGB color space.

+
See also
GLM_GTX_color_space
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::saturation (T const s)
+
+ +

Build a saturation matrix.

+
See also
GLM_GTX_color_space
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::saturation (T const s,
tvec3< T, P > const & color 
)
+
+ +

Modify the saturation of a color.

+
See also
GLM_GTX_color_space
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec4<T, P> glm::saturation (T const s,
tvec4< T, P > const & color 
)
+
+ +

Modify the saturation of a color.

+
See also
GLM_GTX_color_space
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00185.html b/third_party/glm_test/doc/api/a00185.html new file mode 100644 index 0000000000000..663536c244b2a --- /dev/null +++ b/third_party/glm_test/doc/api/a00185.html @@ -0,0 +1,153 @@ + + + + + + +0.9.8: GLM_GTX_color_space_YCoCg + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_color_space_YCoCg
+
+
+ + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > rgb2YCoCg (tvec3< T, P > const &rgbColor)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > rgb2YCoCgR (tvec3< T, P > const &rgbColor)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > YCoCg2rgb (tvec3< T, P > const &YCoCgColor)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > YCoCgR2rgb (tvec3< T, P > const &YCoCgColor)
 
+

Detailed Description

+

RGB to YCoCg conversions and operations.

+

<glm/gtx/color_space_YCoCg.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::rgb2YCoCg (tvec3< T, P > const & rgbColor)
+
+ +

Convert a color from RGB color space to YCoCg color space.

+
See also
GLM_GTX_color_space_YCoCg
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::rgb2YCoCgR (tvec3< T, P > const & rgbColor)
+
+ +

Convert a color from RGB color space to YCoCgR color space.

+
See also
"YCoCg-R: A Color Space with RGB Reversibility and Low Dynamic Range"
+
+GLM_GTX_color_space_YCoCg
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::YCoCg2rgb (tvec3< T, P > const & YCoCgColor)
+
+ +

Convert a color from YCoCg color space to RGB color space.

+
See also
GLM_GTX_color_space_YCoCg
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::YCoCgR2rgb (tvec3< T, P > const & YCoCgColor)
+
+ +

Convert a color from YCoCgR color space to RGB color space.

+
See also
"YCoCg-R: A Color Space with RGB Reversibility and Low Dynamic Range"
+
+GLM_GTX_color_space_YCoCg
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00186.html b/third_party/glm_test/doc/api/a00186.html new file mode 100644 index 0000000000000..3ad0060cb6e4c --- /dev/null +++ b/third_party/glm_test/doc/api/a00186.html @@ -0,0 +1,117 @@ + + + + + + +0.9.8: GLM_GTX_common + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+ +
+ + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fmod (vecType< T, P > const &v)
 
template<typename genType >
GLM_FUNC_DECL genType::bool_type isdenormal (genType const &x)
 
+

Detailed Description

+

Provide functions to increase the compatibility with Cg and HLSL languages.

+

<glm/gtx/common.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::fmod (vecType< T, P > const & v)
+
+ +

Similar to 'mod' but with a different rounding and integer support.

+

Returns 'x - y * trunc(x/y)' instead of 'x - y * floor(x/y)'

+
See also
GLSL mod vs HLSL fmod
+
+GLSL mod man page
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType::bool_type glm::isdenormal (genType const & x)
+
+ +

Returns true if x is a denormalized number Numbers whose absolute value is too small to be represented in the normal format are represented in an alternate, denormalized format.

+

This format is less precise but can represent values closer to zero.

+
Template Parameters
+ + +
genTypeFloating-point scalar or vector types.
+
+
+
See also
GLSL isnan man page
+
+GLSL 4.20.8 specification, section 8.3 Common Functions
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00187.html b/third_party/glm_test/doc/api/a00187.html new file mode 100644 index 0000000000000..79fc4b6b9ae18 --- /dev/null +++ b/third_party/glm_test/doc/api/a00187.html @@ -0,0 +1,312 @@ + + + + + + +0.9.8: GLM_GTX_compatibility + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_compatibility
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

+typedef bool bool1
 
+typedef bool bool1x1
 
+typedef tvec2< bool, highp > bool2
 
+typedef tmat2x2< bool, highp > bool2x2
 
+typedef tmat2x3< bool, highp > bool2x3
 
+typedef tmat2x4< bool, highp > bool2x4
 
+typedef tvec3< bool, highp > bool3
 
+typedef tmat3x2< bool, highp > bool3x2
 
+typedef tmat3x3< bool, highp > bool3x3
 
+typedef tmat3x4< bool, highp > bool3x4
 
+typedef tvec4< bool, highp > bool4
 
+typedef tmat4x2< bool, highp > bool4x2
 
+typedef tmat4x3< bool, highp > bool4x3
 
+typedef tmat4x4< bool, highp > bool4x4
 
+typedef double double1
 
+typedef double double1x1
 
+typedef tvec2< double, highp > double2
 
+typedef tmat2x2< double, highp > double2x2
 
+typedef tmat2x3< double, highp > double2x3
 
+typedef tmat2x4< double, highp > double2x4
 
+typedef tvec3< double, highp > double3
 
+typedef tmat3x2< double, highp > double3x2
 
+typedef tmat3x3< double, highp > double3x3
 
+typedef tmat3x4< double, highp > double3x4
 
+typedef tvec4< double, highp > double4
 
+typedef tmat4x2< double, highp > double4x2
 
+typedef tmat4x3< double, highp > double4x3
 
+typedef tmat4x4< double, highp > double4x4
 
+typedef float float1
 
+typedef float float1x1
 
+typedef tvec2< float, highp > float2
 
+typedef tmat2x2< float, highp > float2x2
 
+typedef tmat2x3< float, highp > float2x3
 
+typedef tmat2x4< float, highp > float2x4
 
+typedef tvec3< float, highp > float3
 
+typedef tmat3x2< float, highp > float3x2
 
+typedef tmat3x3< float, highp > float3x3
 
+typedef tmat3x4< float, highp > float3x4
 
+typedef tvec4< float, highp > float4
 
+typedef tmat4x2< float, highp > float4x2
 
+typedef tmat4x3< float, highp > float4x3
 
+typedef tmat4x4< float, highp > float4x4
 
+typedef int int1
 
+typedef int int1x1
 
+typedef tvec2< int, highp > int2
 
+typedef tmat2x2< int, highp > int2x2
 
+typedef tmat2x3< int, highp > int2x3
 
+typedef tmat2x4< int, highp > int2x4
 
+typedef tvec3< int, highp > int3
 
+typedef tmat3x2< int, highp > int3x2
 
+typedef tmat3x3< int, highp > int3x3
 
+typedef tmat3x4< int, highp > int3x4
 
+typedef tvec4< int, highp > int4
 
+typedef tmat4x2< int, highp > int4x2
 
+typedef tmat4x3< int, highp > int4x3
 
+typedef tmat4x4< int, highp > int4x4
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

+template<typename T , precision P>
GLM_FUNC_QUALIFIER T atan2 (T x, T y)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec2< T, P > atan2 (const tvec2< T, P > &x, const tvec2< T, P > &y)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec3< T, P > atan2 (const tvec3< T, P > &x, const tvec3< T, P > &y)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec4< T, P > atan2 (const tvec4< T, P > &x, const tvec4< T, P > &y)
 
+template<typename genType >
GLM_FUNC_DECL bool isfinite (genType const &x)
 
+template<typename T , precision P>
GLM_FUNC_DECL tvec1< bool, P > isfinite (const tvec1< T, P > &x)
 
+template<typename T , precision P>
GLM_FUNC_DECL tvec2< bool, P > isfinite (const tvec2< T, P > &x)
 
+template<typename T , precision P>
GLM_FUNC_DECL tvec3< bool, P > isfinite (const tvec3< T, P > &x)
 
+template<typename T , precision P>
GLM_FUNC_DECL tvec4< bool, P > isfinite (const tvec4< T, P > &x)
 
+template<typename T >
GLM_FUNC_QUALIFIER T lerp (T x, T y, T a)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec2< T, P > lerp (const tvec2< T, P > &x, const tvec2< T, P > &y, T a)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec3< T, P > lerp (const tvec3< T, P > &x, const tvec3< T, P > &y, T a)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec4< T, P > lerp (const tvec4< T, P > &x, const tvec4< T, P > &y, T a)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec2< T, P > lerp (const tvec2< T, P > &x, const tvec2< T, P > &y, const tvec2< T, P > &a)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec3< T, P > lerp (const tvec3< T, P > &x, const tvec3< T, P > &y, const tvec3< T, P > &a)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec4< T, P > lerp (const tvec4< T, P > &x, const tvec4< T, P > &y, const tvec4< T, P > &a)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER T saturate (T x)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec2< T, P > saturate (const tvec2< T, P > &x)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec3< T, P > saturate (const tvec3< T, P > &x)
 
+template<typename T , precision P>
GLM_FUNC_QUALIFIER tvec4< T, P > saturate (const tvec4< T, P > &x)
 
+

Detailed Description

+

Provide functions to increase the compatibility with Cg and HLSL languages.

+

<glm/gtx/compatibility.hpp> need to be included to use these functionalities.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00188.html b/third_party/glm_test/doc/api/a00188.html new file mode 100644 index 0000000000000..b77876879d3e9 --- /dev/null +++ b/third_party/glm_test/doc/api/a00188.html @@ -0,0 +1,193 @@ + + + + + + +0.9.8: GLM_GTX_component_wise + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_component_wise
+
+
+ + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType::value_type compAdd (genType const &v)
 
template<typename genType >
GLM_FUNC_DECL genType::value_type compMax (genType const &v)
 
template<typename genType >
GLM_FUNC_DECL genType::value_type compMin (genType const &v)
 
template<typename genType >
GLM_FUNC_DECL genType::value_type compMul (genType const &v)
 
template<typename floatType , typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< floatType, P > compNormalize (vecType< T, P > const &v)
 
template<typename T , typename floatType , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > compScale (vecType< floatType, P > const &v)
 
+

Detailed Description

+

Operations between components of a type.

+

<glm/gtx/component_wise.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType::value_type glm::compAdd (genType const & v)
+
+ +

Add all vector components together.

+
See also
GLM_GTX_component_wise
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType::value_type glm::compMax (genType const & v)
+
+ +

Find the maximum value between single vector components.

+
See also
GLM_GTX_component_wise
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType::value_type glm::compMin (genType const & v)
+
+ +

Find the minimum value between single vector components.

+
See also
GLM_GTX_component_wise
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType::value_type glm::compMul (genType const & v)
+
+ +

Multiply all vector components together.

+
See also
GLM_GTX_component_wise
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<floatType, P> glm::compNormalize (vecType< T, P > const & v)
+
+ +

Convert an integer vector to a normalized float vector.

+

If the parameter value type is already a floating precision type, the value is passed through.

See also
GLM_GTX_component_wise
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::compScale (vecType< floatType, P > const & v)
+
+ +

Convert a normalized float vector to an integer vector.

+

If the parameter value type is already a floating precision type, the value is passed through.

See also
GLM_GTX_component_wise
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00189.html b/third_party/glm_test/doc/api/a00189.html new file mode 100644 index 0000000000000..e8f9405702487 --- /dev/null +++ b/third_party/glm_test/doc/api/a00189.html @@ -0,0 +1,464 @@ + + + + + + +0.9.8: GLM_GTX_dual_quaternion + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_dual_quaternion
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

typedef highp_ddualquat ddualquat
 
typedef highp_fdualquat dualquat
 
typedef highp_fdualquat fdualquat
 
typedef tdualquat< double, highp > highp_ddualquat
 
typedef tdualquat< float, highp > highp_dualquat
 
typedef tdualquat< float, highp > highp_fdualquat
 
typedef tdualquat< double, lowp > lowp_ddualquat
 
typedef tdualquat< float, lowp > lowp_dualquat
 
typedef tdualquat< float, lowp > lowp_fdualquat
 
typedef tdualquat< double, mediump > mediump_ddualquat
 
typedef tdualquat< float, mediump > mediump_dualquat
 
typedef tdualquat< float, mediump > mediump_fdualquat
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tdualquat< T, P > dualquat_cast (tmat2x4< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tdualquat< T, P > dualquat_cast (tmat3x4< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tdualquat< T, P > inverse (tdualquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL tdualquat< T, P > lerp (tdualquat< T, P > const &x, tdualquat< T, P > const &y, T const &a)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat2x4< T, P > mat2x4_cast (tdualquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x4< T, P > mat3x4_cast (tdualquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tdualquat< T, P > normalize (tdualquat< T, P > const &q)
 
+

Detailed Description

+

Defines a templated dual-quaternion type and several dual-quaternion operations.

+

<glm/gtx/dual_quaternion.hpp> need to be included to use these functionalities.

+

Typedef Documentation

+ +
+
+ + + + +
typedef highp_ddualquat ddualquat
+
+ +

Dual-quaternion of default double-precision floating-point numbers.

+
See also
GLM_GTX_dual_quaternion
+ +

Definition at line 252 of file dual_quaternion.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_fdualquat dualquat
+
+ +

Dual-quaternion of floating-point numbers.

+
See also
GLM_GTX_dual_quaternion
+ +

Definition at line 228 of file dual_quaternion.hpp.

+ +
+
+ +
+
+ + + + +
typedef highp_fdualquat fdualquat
+
+ +

Dual-quaternion of single-precision floating-point numbers.

+
See also
GLM_GTX_dual_quaternion
+ +

Definition at line 233 of file dual_quaternion.hpp.

+ +
+
+ +
+
+ + + + +
typedef tdualquat<double, highp> highp_ddualquat
+
+ +

Dual-quaternion of high double-precision floating-point numbers.

+
See also
GLM_GTX_dual_quaternion
+ +

Definition at line 221 of file dual_quaternion.hpp.

+ +
+
+ +
+
+ + + + +
typedef tdualquat<float, highp> highp_dualquat
+
+ +

Dual-quaternion of high single-precision floating-point numbers.

+
See also
GLM_GTX_dual_quaternion
+ +

Definition at line 189 of file dual_quaternion.hpp.

+ +
+
+ +
+
+ + + + +
typedef tdualquat<float, highp> highp_fdualquat
+
+ +

Dual-quaternion of high single-precision floating-point numbers.

+
See also
GLM_GTX_dual_quaternion
+ +

Definition at line 205 of file dual_quaternion.hpp.

+ +
+
+ +
+
+ + + + +
typedef tdualquat<double, lowp> lowp_ddualquat
+
+ +

Dual-quaternion of low double-precision floating-point numbers.

+
See also
GLM_GTX_dual_quaternion
+ +

Definition at line 211 of file dual_quaternion.hpp.

+ +
+
+ +
+
+ + + + +
typedef tdualquat<float, lowp> lowp_dualquat
+
+ +

Dual-quaternion of low single-precision floating-point numbers.

+
See also
GLM_GTX_dual_quaternion
+ +

Definition at line 179 of file dual_quaternion.hpp.

+ +
+
+ +
+
+ + + + +
typedef tdualquat<float, lowp> lowp_fdualquat
+
+ +

Dual-quaternion of low single-precision floating-point numbers.

+
See also
GLM_GTX_dual_quaternion
+ +

Definition at line 195 of file dual_quaternion.hpp.

+ +
+
+ +
+
+ + + + +
typedef tdualquat<double, mediump> mediump_ddualquat
+
+ +

Dual-quaternion of medium double-precision floating-point numbers.

+
See also
GLM_GTX_dual_quaternion
+ +

Definition at line 216 of file dual_quaternion.hpp.

+ +
+
+ +
+
+ + + + +
typedef tdualquat<float, mediump> mediump_dualquat
+
+ +

Dual-quaternion of medium single-precision floating-point numbers.

+
See also
GLM_GTX_dual_quaternion
+ +

Definition at line 184 of file dual_quaternion.hpp.

+ +
+
+ +
+
+ + + + +
typedef tdualquat<float, mediump> mediump_fdualquat
+
+ +

Dual-quaternion of medium single-precision floating-point numbers.

+
See also
GLM_GTX_dual_quaternion
+ +

Definition at line 200 of file dual_quaternion.hpp.

+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tdualquat<T, P> glm::dualquat_cast (tmat2x4< T, P > const & x)
+
+ +

Converts a 2 * 4 matrix (matrix which holds real and dual parts) to a quaternion.

+
See also
GLM_GTX_dual_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tdualquat<T, P> glm::dualquat_cast (tmat3x4< T, P > const & x)
+
+ +

Converts a 3 * 4 matrix (augmented matrix rotation + translation) to a quaternion.

+
See also
GLM_GTX_dual_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tdualquat<T, P> glm::inverse (tdualquat< T, P > const & q)
+
+ +

Returns the q inverse.

+
See also
GLM_GTX_dual_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tdualquat<T, P> glm::lerp (tdualquat< T, P > const & x,
tdualquat< T, P > const & y,
T const & a 
)
+
+ +

Returns the linear interpolation of two dual quaternion.

+
See also
gtc_dual_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat2x4<T, P> glm::mat2x4_cast (tdualquat< T, P > const & x)
+
+ +

Converts a quaternion to a 2 * 4 matrix.

+
See also
GLM_GTX_dual_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat3x4<T, P> glm::mat3x4_cast (tdualquat< T, P > const & x)
+
+ +

Converts a quaternion to a 3 * 4 matrix.

+
See also
GLM_GTX_dual_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tdualquat<T, P> glm::normalize (tdualquat< T, P > const & q)
+
+ +

Returns the normalized quaternion.

+
See also
GLM_GTX_dual_quaternion
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00190.html b/third_party/glm_test/doc/api/a00190.html new file mode 100644 index 0000000000000..9d3173fbb9904 --- /dev/null +++ b/third_party/glm_test/doc/api/a00190.html @@ -0,0 +1,565 @@ + + + + + + +0.9.8: GLM_GTX_euler_angles + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_euler_angles
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleX (T const &angleX)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleXY (T const &angleX, T const &angleY)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleXYZ (T const &t1, T const &t2, T const &t3)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleXZ (T const &angleX, T const &angleZ)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleY (T const &angleY)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleYX (T const &angleY, T const &angleX)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleYXZ (T const &yaw, T const &pitch, T const &roll)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleYZ (T const &angleY, T const &angleZ)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleZ (T const &angleZ)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleZX (T const &angle, T const &angleX)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > eulerAngleZY (T const &angleZ, T const &angleY)
 
template<typename T >
GLM_FUNC_DECL void extractEulerAngleXYZ (tmat4x4< T, defaultp > const &M, T &t1, T &t2, T &t3)
 
template<typename T >
GLM_FUNC_DECL tmat2x2< T, defaultp > orientate2 (T const &angle)
 
template<typename T >
GLM_FUNC_DECL tmat3x3< T, defaultp > orientate3 (T const &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > orientate3 (tvec3< T, P > const &angles)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > orientate4 (tvec3< T, P > const &angles)
 
template<typename T >
GLM_FUNC_DECL tmat4x4< T, defaultp > yawPitchRoll (T const &yaw, T const &pitch, T const &roll)
 
+

Detailed Description

+

Build matrices from Euler angles.

+

<glm/gtx/euler_angles.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::eulerAngleX (T const & angleX)
+
+ +

Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle X.

+
See also
GLM_GTX_euler_angles
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::eulerAngleXY (T const & angleX,
T const & angleY 
)
+
+ +

Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Y).

+
See also
GLM_GTX_euler_angles
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::eulerAngleXYZ (T const & t1,
T const & t2,
T const & t3 
)
+
+ +

Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Y * Z).

+
See also
GLM_GTX_euler_angles
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::eulerAngleXZ (T const & angleX,
T const & angleZ 
)
+
+ +

Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (X * Z).

+
See also
GLM_GTX_euler_angles
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::eulerAngleY (T const & angleY)
+
+ +

Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle Y.

+
See also
GLM_GTX_euler_angles
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::eulerAngleYX (T const & angleY,
T const & angleX 
)
+
+ +

Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X).

+
See also
GLM_GTX_euler_angles
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::eulerAngleYXZ (T const & yaw,
T const & pitch,
T const & roll 
)
+
+ +

Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z).

+
See also
GLM_GTX_euler_angles
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::eulerAngleYZ (T const & angleY,
T const & angleZ 
)
+
+ +

Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * Z).

+
See also
GLM_GTX_euler_angles
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::eulerAngleZ (T const & angleZ)
+
+ +

Creates a 3D 4 * 4 homogeneous rotation matrix from an euler angle Z.

+
See also
GLM_GTX_euler_angles
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::eulerAngleZX (T const & angle,
T const & angleX 
)
+
+ +

Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Z * X).

+
See also
GLM_GTX_euler_angles
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::eulerAngleZY (T const & angleZ,
T const & angleY 
)
+
+ +

Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Z * Y).

+
See also
GLM_GTX_euler_angles
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL void glm::extractEulerAngleXYZ (tmat4x4< T, defaultp > const & M,
T & t1,
T & t2,
T & t3 
)
+
+ +

Extracts the (X * Y * Z) Euler angles from the rotation matrix M.

+
See also
GLM_GTX_euler_angles
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat2x2<T, defaultp> glm::orientate2 (T const & angle)
+
+ +

Creates a 2D 2 * 2 rotation matrix from an euler angle.

+
See also
GLM_GTX_euler_angles
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat3x3<T, defaultp> glm::orientate3 (T const & angle)
+
+ +

Creates a 2D 4 * 4 homogeneous rotation matrix from an euler angle.

+
See also
GLM_GTX_euler_angles
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat3x3<T, P> glm::orientate3 (tvec3< T, P > const & angles)
+
+ +

Creates a 3D 3 * 3 rotation matrix from euler angles (Y * X * Z).

+
See also
GLM_GTX_euler_angles
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::orientate4 (tvec3< T, P > const & angles)
+
+ +

Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z).

+
See also
GLM_GTX_euler_angles
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, defaultp> glm::yawPitchRoll (T const & yaw,
T const & pitch,
T const & roll 
)
+
+ +

Creates a 3D 4 * 4 homogeneous rotation matrix from euler angles (Y * X * Z).

+
See also
GLM_GTX_euler_angles
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00191.html b/third_party/glm_test/doc/api/a00191.html new file mode 100644 index 0000000000000..2a9ed2401e52e --- /dev/null +++ b/third_party/glm_test/doc/api/a00191.html @@ -0,0 +1,99 @@ + + + + + + +0.9.8: GLM_GTX_extend + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+ +
+ + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType extend (genType const &Origin, genType const &Source, typename genType::value_type const Length)
 
+

Detailed Description

+

Extend a position from a source to a position at a defined length.

+

<glm/gtx/extend.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::extend (genType const & Origin,
genType const & Source,
typename genType::value_type const Length 
)
+
+ +

Extends of Length the Origin position using the (Source - Origin) direction.

+
See also
GLM_GTX_extend
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00192.html b/third_party/glm_test/doc/api/a00192.html new file mode 100644 index 0000000000000..6bc56c3b7cb15 --- /dev/null +++ b/third_party/glm_test/doc/api/a00192.html @@ -0,0 +1,553 @@ + + + + + + +0.9.8: GLM_GTX_extented_min_max + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_extented_min_max
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL T max (T const &x, T const &y, T const &z)
 
template<typename T , template< typename > class C>
GLM_FUNC_DECL C< T > max (C< T > const &x, typename C< T >::T const &y, typename C< T >::T const &z)
 
template<typename T , template< typename > class C>
GLM_FUNC_DECL C< T > max (C< T > const &x, C< T > const &y, C< T > const &z)
 
template<typename T >
GLM_FUNC_DECL T max (T const &x, T const &y, T const &z, T const &w)
 
template<typename T , template< typename > class C>
GLM_FUNC_DECL C< T > max (C< T > const &x, typename C< T >::T const &y, typename C< T >::T const &z, typename C< T >::T const &w)
 
template<typename T , template< typename > class C>
GLM_FUNC_DECL C< T > max (C< T > const &x, C< T > const &y, C< T > const &z, C< T > const &w)
 
template<typename T >
GLM_FUNC_DECL T min (T const &x, T const &y, T const &z)
 
template<typename T , template< typename > class C>
GLM_FUNC_DECL C< T > min (C< T > const &x, typename C< T >::T const &y, typename C< T >::T const &z)
 
template<typename T , template< typename > class C>
GLM_FUNC_DECL C< T > min (C< T > const &x, C< T > const &y, C< T > const &z)
 
template<typename T >
GLM_FUNC_DECL T min (T const &x, T const &y, T const &z, T const &w)
 
template<typename T , template< typename > class C>
GLM_FUNC_DECL C< T > min (C< T > const &x, typename C< T >::T const &y, typename C< T >::T const &z, typename C< T >::T const &w)
 
template<typename T , template< typename > class C>
GLM_FUNC_DECL C< T > min (C< T > const &x, C< T > const &y, C< T > const &z, C< T > const &w)
 
+

Detailed Description

+

Min and max functions for 3 to 4 parameters.

+

<glm/gtx/extented_min_max.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::max (T const & x,
T const & y,
T const & z 
)
+
+ +

Return the maximum component-wise values of 3 inputs.

+
See also
GLM_GTX_extented_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL C<T> glm::max (C< T > const & x,
typename C< T >::T const & y,
typename C< T >::T const & z 
)
+
+ +

Return the maximum component-wise values of 3 inputs.

+
See also
GLM_GTX_extented_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL C<T> glm::max (C< T > const & x,
C< T > const & y,
C< T > const & z 
)
+
+ +

Return the maximum component-wise values of 3 inputs.

+
See also
GLM_GTX_extented_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::max (T const & x,
T const & y,
T const & z,
T const & w 
)
+
+ +

Return the maximum component-wise values of 4 inputs.

+
See also
GLM_GTX_extented_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL C<T> glm::max (C< T > const & x,
typename C< T >::T const & y,
typename C< T >::T const & z,
typename C< T >::T const & w 
)
+
+ +

Return the maximum component-wise values of 4 inputs.

+
See also
GLM_GTX_extented_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL C<T> glm::max (C< T > const & x,
C< T > const & y,
C< T > const & z,
C< T > const & w 
)
+
+ +

Return the maximum component-wise values of 4 inputs.

+
See also
GLM_GTX_extented_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::min (T const & x,
T const & y,
T const & z 
)
+
+ +

Return the minimum component-wise values of 3 inputs.

+
See also
GLM_GTX_extented_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL C<T> glm::min (C< T > const & x,
typename C< T >::T const & y,
typename C< T >::T const & z 
)
+
+ +

Return the minimum component-wise values of 3 inputs.

+
See also
GLM_GTX_extented_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL C<T> glm::min (C< T > const & x,
C< T > const & y,
C< T > const & z 
)
+
+ +

Return the minimum component-wise values of 3 inputs.

+
See also
GLM_GTX_extented_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::min (T const & x,
T const & y,
T const & z,
T const & w 
)
+
+ +

Return the minimum component-wise values of 4 inputs.

+
See also
GLM_GTX_extented_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL C<T> glm::min (C< T > const & x,
typename C< T >::T const & y,
typename C< T >::T const & z,
typename C< T >::T const & w 
)
+
+ +

Return the minimum component-wise values of 4 inputs.

+
See also
GLM_GTX_extented_min_max
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL C<T> glm::min (C< T > const & x,
C< T > const & y,
C< T > const & z,
C< T > const & w 
)
+
+ +

Return the minimum component-wise values of 4 inputs.

+
See also
GLM_GTX_extented_min_max
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00193.html b/third_party/glm_test/doc/api/a00193.html new file mode 100644 index 0000000000000..617c63a3d67cd --- /dev/null +++ b/third_party/glm_test/doc/api/a00193.html @@ -0,0 +1,355 @@ + + + + + + +0.9.8: GLM_GTX_fast_exponential + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_fast_exponential
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL T fastExp (T x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fastExp (vecType< T, P > const &x)
 
template<typename T >
GLM_FUNC_DECL T fastExp2 (T x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fastExp2 (vecType< T, P > const &x)
 
template<typename T >
GLM_FUNC_DECL T fastLog (T x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fastLog (vecType< T, P > const &x)
 
template<typename T >
GLM_FUNC_DECL T fastLog2 (T x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fastLog2 (vecType< T, P > const &x)
 
template<typename genType >
GLM_FUNC_DECL genType fastPow (genType x, genType y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fastPow (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename genTypeT , typename genTypeU >
GLM_FUNC_DECL genTypeT fastPow (genTypeT x, genTypeU y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fastPow (vecType< T, P > const &x)
 
+

Detailed Description

+

Fast but less accurate implementations of exponential based functions.

+

<glm/gtx/fast_exponential.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::fastExp (x)
+
+ +

Faster than the common exp function but less accurate.

+
See also
GLM_GTX_fast_exponential
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::fastExp (vecType< T, P > const & x)
+
+ +

Faster than the common exp function but less accurate.

+
See also
GLM_GTX_fast_exponential
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::fastExp2 (x)
+
+ +

Faster than the common exp2 function but less accurate.

+
See also
GLM_GTX_fast_exponential
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::fastExp2 (vecType< T, P > const & x)
+
+ +

Faster than the common exp2 function but less accurate.

+
See also
GLM_GTX_fast_exponential
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::fastLog (x)
+
+ +

Faster than the common log function but less accurate.

+
See also
GLM_GTX_fast_exponential
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::fastLog (vecType< T, P > const & x)
+
+ +

Faster than the common exp2 function but less accurate.

+
See also
GLM_GTX_fast_exponential
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::fastLog2 (x)
+
+ +

Faster than the common log2 function but less accurate.

+
See also
GLM_GTX_fast_exponential
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::fastLog2 (vecType< T, P > const & x)
+
+ +

Faster than the common log2 function but less accurate.

+
See also
GLM_GTX_fast_exponential
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::fastPow (genType x,
genType y 
)
+
+ +

Faster than the common pow function but less accurate.

+
See also
GLM_GTX_fast_exponential
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::fastPow (vecType< T, P > const & x,
vecType< T, P > const & y 
)
+
+ +

Faster than the common pow function but less accurate.

+
See also
GLM_GTX_fast_exponential
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genTypeT glm::fastPow (genTypeT x,
genTypeU y 
)
+
+ +

Faster than the common pow function but less accurate.

+
See also
GLM_GTX_fast_exponential
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::fastPow (vecType< T, P > const & x)
+
+ +

Faster than the common pow function but less accurate.

+
See also
GLM_GTX_fast_exponential
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00194.html b/third_party/glm_test/doc/api/a00194.html new file mode 100644 index 0000000000000..3669ba6bc1fba --- /dev/null +++ b/third_party/glm_test/doc/api/a00194.html @@ -0,0 +1,282 @@ + + + + + + +0.9.8: GLM_GTX_fast_square_root + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_fast_square_root
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType fastDistance (genType x, genType y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T fastDistance (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename genType >
GLM_FUNC_DECL genType fastInverseSqrt (genType x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fastInverseSqrt (vecType< T, P > const &x)
 
template<typename genType >
GLM_FUNC_DECL genType fastLength (genType x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T fastLength (vecType< T, P > const &x)
 
template<typename genType >
GLM_FUNC_DECL genType fastNormalize (genType const &x)
 
template<typename genType >
GLM_FUNC_DECL genType fastSqrt (genType x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > fastSqrt (vecType< T, P > const &x)
 
+

Detailed Description

+

Fast but less accurate implementations of square root based functions.

+
    +
  • Sqrt optimisation based on Newton's method, www.gamedev.net/community/forums/topic.asp?topic id=139956
  • +
+

<glm/gtx/fast_square_root.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::fastDistance (genType x,
genType y 
)
+
+ +

Faster than the common distance function but less accurate.

+
See also
GLM_GTX_fast_square_root extension.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::fastDistance (vecType< T, P > const & x,
vecType< T, P > const & y 
)
+
+ +

Faster than the common distance function but less accurate.

+
See also
GLM_GTX_fast_square_root extension.
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::fastInverseSqrt (genType x)
+
+ +

Faster than the common inversesqrt function but less accurate.

+
See also
GLM_GTX_fast_square_root extension.
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::fastInverseSqrt (vecType< T, P > const & x)
+
+ +

Faster than the common inversesqrt function but less accurate.

+
See also
GLM_GTX_fast_square_root extension.
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::fastLength (genType x)
+
+ +

Faster than the common length function but less accurate.

+
See also
GLM_GTX_fast_square_root extension.
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::fastLength (vecType< T, P > const & x)
+
+ +

Faster than the common length function but less accurate.

+
See also
GLM_GTX_fast_square_root extension.
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::fastNormalize (genType const & x)
+
+ +

Faster than the common normalize function but less accurate.

+
See also
GLM_GTX_fast_square_root extension.
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::fastSqrt (genType x)
+
+ +

Faster than the common sqrt function but less accurate.

+
See also
GLM_GTX_fast_square_root extension.
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::fastSqrt (vecType< T, P > const & x)
+
+ +

Faster than the common sqrt function but less accurate.

+
See also
GLM_GTX_fast_square_root extension.
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00195.html b/third_party/glm_test/doc/api/a00195.html new file mode 100644 index 0000000000000..d880966509e13 --- /dev/null +++ b/third_party/glm_test/doc/api/a00195.html @@ -0,0 +1,246 @@ + + + + + + +0.9.8: GLM_GTX_fast_trigonometry + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_fast_trigonometry
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
GLM_FUNC_DECL T fastAcos (T angle)
 
template<typename T >
GLM_FUNC_DECL T fastAsin (T angle)
 
template<typename T >
GLM_FUNC_DECL T fastAtan (T y, T x)
 
template<typename T >
GLM_FUNC_DECL T fastAtan (T angle)
 
template<typename T >
GLM_FUNC_DECL T fastCos (T angle)
 
template<typename T >
GLM_FUNC_DECL T fastSin (T angle)
 
template<typename T >
GLM_FUNC_DECL T fastTan (T angle)
 
template<typename T >
GLM_FUNC_DECL T wrapAngle (T angle)
 
+

Detailed Description

+

Fast but less accurate implementations of trigonometric functions.

+

<glm/gtx/fast_trigonometry.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::fastAcos (angle)
+
+ +

Faster than the common acos function but less accurate.

+

Defined between -2pi and 2pi. From GLM_GTX_fast_trigonometry extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::fastAsin (angle)
+
+ +

Faster than the common asin function but less accurate.

+

Defined between -2pi and 2pi. From GLM_GTX_fast_trigonometry extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::fastAtan (y,
x 
)
+
+ +

Faster than the common atan function but less accurate.

+

Defined between -2pi and 2pi. From GLM_GTX_fast_trigonometry extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::fastAtan (angle)
+
+ +

Faster than the common atan function but less accurate.

+

Defined between -2pi and 2pi. From GLM_GTX_fast_trigonometry extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::fastCos (angle)
+
+ +

Faster than the common cos function but less accurate.

+

From GLM_GTX_fast_trigonometry extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::fastSin (angle)
+
+ +

Faster than the common sin function but less accurate.

+

From GLM_GTX_fast_trigonometry extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::fastTan (angle)
+
+ +

Faster than the common tan function but less accurate.

+

Defined between -2pi and 2pi. From GLM_GTX_fast_trigonometry extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::wrapAngle (angle)
+
+ +

Wrap an angle to [0 2pi[ From GLM_GTX_fast_trigonometry extension.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00196.html b/third_party/glm_test/doc/api/a00196.html new file mode 100644 index 0000000000000..59d74b2c82155 --- /dev/null +++ b/third_party/glm_test/doc/api/a00196.html @@ -0,0 +1,143 @@ + + + + + + +0.9.8: GLM_GTX_gradient_paint + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_gradient_paint
+
+
+ + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL T linearGradient (tvec2< T, P > const &Point0, tvec2< T, P > const &Point1, tvec2< T, P > const &Position)
 
template<typename T , precision P>
GLM_FUNC_DECL T radialGradient (tvec2< T, P > const &Center, T const &Radius, tvec2< T, P > const &Focal, tvec2< T, P > const &Position)
 
+

Detailed Description

+

Functions that return the color of procedural gradient for specific coordinates.

+

<glm/gtx/gradient_paint.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::linearGradient (tvec2< T, P > const & Point0,
tvec2< T, P > const & Point1,
tvec2< T, P > const & Position 
)
+
+ +

Return a color from a linear gradient.

+
See also
- GLM_GTX_gradient_paint
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::radialGradient (tvec2< T, P > const & Center,
T const & Radius,
tvec2< T, P > const & Focal,
tvec2< T, P > const & Position 
)
+
+ +

Return a color from a radial gradient.

+
See also
- GLM_GTX_gradient_paint
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00197.html b/third_party/glm_test/doc/api/a00197.html new file mode 100644 index 0000000000000..4d38d3cf13138 --- /dev/null +++ b/third_party/glm_test/doc/api/a00197.html @@ -0,0 +1,137 @@ + + + + + + +0.9.8: GLM_GTX_handed_coordinate_space + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_handed_coordinate_space
+
+
+ + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL bool leftHanded (tvec3< T, P > const &tangent, tvec3< T, P > const &binormal, tvec3< T, P > const &normal)
 
template<typename T , precision P>
GLM_FUNC_DECL bool rightHanded (tvec3< T, P > const &tangent, tvec3< T, P > const &binormal, tvec3< T, P > const &normal)
 
+

Detailed Description

+

To know if a set of three basis vectors defines a right or left-handed coordinate system.

+

<glm/gtx/handed_coordinate_system.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::leftHanded (tvec3< T, P > const & tangent,
tvec3< T, P > const & binormal,
tvec3< T, P > const & normal 
)
+
+ +

Return if a trihedron left handed or not.

+

From GLM_GTX_handed_coordinate_space extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::rightHanded (tvec3< T, P > const & tangent,
tvec3< T, P > const & binormal,
tvec3< T, P > const & normal 
)
+
+ +

Return if a trihedron right handed or not.

+

From GLM_GTX_handed_coordinate_space extension.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00198.html b/third_party/glm_test/doc/api/a00198.html new file mode 100644 index 0000000000000..1e42b2dc12199 --- /dev/null +++ b/third_party/glm_test/doc/api/a00198.html @@ -0,0 +1,53 @@ + + + + + + +0.9.8: GLM_GTX_hash + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+ +
+

Add std::hash support for glm types.

+

<glm/gtx/hash.hpp> need to be included to use these functionalities.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00199.html b/third_party/glm_test/doc/api/a00199.html new file mode 100644 index 0000000000000..ce404c439f90d --- /dev/null +++ b/third_party/glm_test/doc/api/a00199.html @@ -0,0 +1,314 @@ + + + + + + +0.9.8: GLM_GTX_integer + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+ +
+ + + + +

+Typedefs

typedef signed int sint
 
+ + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType factorial (genType const &x)
 
GLM_FUNC_DECL unsigned int floor_log2 (unsigned int x)
 
GLM_FUNC_DECL int mod (int x, int y)
 
GLM_FUNC_DECL uint mod (uint x, uint y)
 
GLM_FUNC_DECL uint nlz (uint x)
 
GLM_FUNC_DECL int pow (int x, int y)
 
GLM_FUNC_DECL uint pow (uint x, uint y)
 
GLM_FUNC_DECL int sqrt (int x)
 
GLM_FUNC_DECL uint sqrt (uint x)
 
+

Detailed Description

+

Add support for integer for core functions.

+

<glm/gtx/integer.hpp> need to be included to use these functionalities.

+

Typedef Documentation

+ +
+
+ + + + +
typedef signed int sint
+
+ +

32bit signed integer.

+

From GLM_GTX_integer extension.

+ +

Definition at line 51 of file gtx/integer.hpp.

+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::factorial (genType const & x)
+
+ +

Return the factorial value of a number (!12 max, integer only) From GLM_GTX_integer extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL unsigned int glm::floor_log2 (unsigned int x)
+
+ +

Returns the floor log2 of x.

+

From GLM_GTX_integer extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL int glm::mod (int x,
int y 
)
+
+ +

Modulus.

+

Returns x - y * floor(x / y) for each component in x using the floating point value y. From GLM_GTX_integer extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL uint glm::mod (uint x,
uint y 
)
+
+ +

Modulus.

+

Returns x - y * floor(x / y) for each component in x using the floating point value y. From GLM_GTX_integer extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint glm::nlz (uint x)
+
+ +

Returns the number of leading zeros.

+

From GLM_GTX_integer extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL int glm::pow (int x,
int y 
)
+
+ +

Returns x raised to the y power.

+

From GLM_GTX_integer extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL uint glm::pow (uint x,
uint y 
)
+
+ +

Returns x raised to the y power.

+

From GLM_GTX_integer extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL int glm::sqrt (int x)
+
+ +

Returns the positive square root of x.

+

From GLM_GTX_integer extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL uint glm::sqrt (uint x)
+
+ +

Returns the positive square root of x.

+

From GLM_GTX_integer extension.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00200.html b/third_party/glm_test/doc/api/a00200.html new file mode 100644 index 0000000000000..4458837c62156 --- /dev/null +++ b/third_party/glm_test/doc/api/a00200.html @@ -0,0 +1,397 @@ + + + + + + +0.9.8: GLM_GTX_intersect + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
+
+
+ + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL bool intersectLineSphere (genType const &point0, genType const &point1, genType const &sphereCenter, typename genType::value_type sphereRadius, genType &intersectionPosition1, genType &intersectionNormal1, genType &intersectionPosition2=genType(), genType &intersectionNormal2=genType())
 
template<typename genType >
GLM_FUNC_DECL bool intersectLineTriangle (genType const &orig, genType const &dir, genType const &vert0, genType const &vert1, genType const &vert2, genType &position)
 
template<typename genType >
GLM_FUNC_DECL bool intersectRayPlane (genType const &orig, genType const &dir, genType const &planeOrig, genType const &planeNormal, typename genType::value_type &intersectionDistance)
 
template<typename genType >
GLM_FUNC_DECL bool intersectRaySphere (genType const &rayStarting, genType const &rayNormalizedDirection, genType const &sphereCenter, typename genType::value_type const sphereRadiusSquered, typename genType::value_type &intersectionDistance)
 
template<typename genType >
GLM_FUNC_DECL bool intersectRaySphere (genType const &rayStarting, genType const &rayNormalizedDirection, genType const &sphereCenter, const typename genType::value_type sphereRadius, genType &intersectionPosition, genType &intersectionNormal)
 
template<typename genType >
GLM_FUNC_DECL bool intersectRayTriangle (genType const &orig, genType const &dir, genType const &vert0, genType const &vert1, genType const &vert2, genType &baryPosition)
 
+

Detailed Description

+

Add intersection functions.

+

<glm/gtx/intersect.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::intersectLineSphere (genType const & point0,
genType const & point1,
genType const & sphereCenter,
typename genType::value_type sphereRadius,
genType & intersectionPosition1,
genType & intersectionNormal1,
genType & intersectionPosition2 = genType(),
genType & intersectionNormal2 = genType() 
)
+
+ +

Compute the intersection of a line and a sphere.

+

From GLM_GTX_intersect extension

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::intersectLineTriangle (genType const & orig,
genType const & dir,
genType const & vert0,
genType const & vert1,
genType const & vert2,
genType & position 
)
+
+ +

Compute the intersection of a line and a triangle.

+

From GLM_GTX_intersect extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::intersectRayPlane (genType const & orig,
genType const & dir,
genType const & planeOrig,
genType const & planeNormal,
typename genType::value_type & intersectionDistance 
)
+
+ +

Compute the intersection of a ray and a plane.

+

Ray direction and plane normal must be unit length. From GLM_GTX_intersect extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::intersectRaySphere (genType const & rayStarting,
genType const & rayNormalizedDirection,
genType const & sphereCenter,
typename genType::value_type const sphereRadiusSquered,
typename genType::value_type & intersectionDistance 
)
+
+ +

Compute the intersection distance of a ray and a sphere.

+

The ray direction vector is unit length. From GLM_GTX_intersect extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::intersectRaySphere (genType const & rayStarting,
genType const & rayNormalizedDirection,
genType const & sphereCenter,
const typename genType::value_type sphereRadius,
genType & intersectionPosition,
genType & intersectionNormal 
)
+
+ +

Compute the intersection of a ray and a sphere.

+

From GLM_GTX_intersect extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::intersectRayTriangle (genType const & orig,
genType const & dir,
genType const & vert0,
genType const & vert1,
genType const & vert2,
genType & baryPosition 
)
+
+ +

Compute the intersection of a ray and a triangle.

+

From GLM_GTX_intersect extension.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00201.html b/third_party/glm_test/doc/api/a00201.html new file mode 100644 index 0000000000000..bb9ca395d74cb --- /dev/null +++ b/third_party/glm_test/doc/api/a00201.html @@ -0,0 +1,55 @@ + + + + + + +0.9.8: GLM_GTX_io + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+ +
+

Detailed Description

+

std::[w]ostream support for glm types

+

std::[w]ostream support for glm types + precision/width/etc. manipulators based on howard hinnant's std::chrono io proposal [http://home.roadrunner.com/~hinnant/bloomington/chrono_io.html]

+

<glm/gtx/io.hpp> needs to be included to use these functionalities.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00202.html b/third_party/glm_test/doc/api/a00202.html new file mode 100644 index 0000000000000..f4066fded1e99 --- /dev/null +++ b/third_party/glm_test/doc/api/a00202.html @@ -0,0 +1,126 @@ + + + + + + +0.9.8: GLM_GTX_log_base + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ + +
+
+ + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType log (genType const &x, genType const &base)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< T, P > sign (vecType< T, P > const &x, vecType< T, P > const &base)
 
+

Detailed Description

+

Logarithm for any base.

+

base can be a vector or a scalar.

+

<glm/gtx/log_base.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::log (genType const & x,
genType const & base 
)
+
+ +

Logarithm for any base.

+

From GLM_GTX_log_base.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<T, P> glm::sign (vecType< T, P > const & x,
vecType< T, P > const & base 
)
+
+ +

Logarithm for any base.

+

From GLM_GTX_log_base.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00203.html b/third_party/glm_test/doc/api/a00203.html new file mode 100644 index 0000000000000..b45c14570188f --- /dev/null +++ b/third_party/glm_test/doc/api/a00203.html @@ -0,0 +1,105 @@ + + + + + + +0.9.8: GLM_GTX_matrix_cross_product + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_matrix_cross_product
+
+
+ + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > matrixCross3 (tvec3< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > matrixCross4 (tvec3< T, P > const &x)
 
+

Detailed Description

+

Build cross product matrices.

+

<glm/gtx/matrix_cross_product.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat3x3<T, P> glm::matrixCross3 (tvec3< T, P > const & x)
+
+ +

Build a cross product matrix.

+

From GLM_GTX_matrix_cross_product extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::matrixCross4 (tvec3< T, P > const & x)
+
+ +

Build a cross product matrix.

+

From GLM_GTX_matrix_cross_product extension.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00204.html b/third_party/glm_test/doc/api/a00204.html new file mode 100644 index 0000000000000..1407f9afd3c99 --- /dev/null +++ b/third_party/glm_test/doc/api/a00204.html @@ -0,0 +1,117 @@ + + + + + + +0.9.8: GLM_GTX_matrix_decompose + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_matrix_decompose
+
+
+ + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL bool decompose (tmat4x4< T, P > const &modelMatrix, tvec3< T, P > &scale, tquat< T, P > &orientation, tvec3< T, P > &translation, tvec3< T, P > &skew, tvec4< T, P > &perspective)
 
+

Detailed Description

+

Decomposes a model matrix to translations, rotation and scale components.

+

<glm/gtx/matrix_decompose.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::decompose (tmat4x4< T, P > const & modelMatrix,
tvec3< T, P > & scale,
tquat< T, P > & orientation,
tvec3< T, P > & translation,
tvec3< T, P > & skew,
tvec4< T, P > & perspective 
)
+
+ +

Decomposes a model matrix to translations, rotation and scale components.

+
See also
GLM_GTX_matrix_decompose
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00205.html b/third_party/glm_test/doc/api/a00205.html new file mode 100644 index 0000000000000..78ba95e7370be --- /dev/null +++ b/third_party/glm_test/doc/api/a00205.html @@ -0,0 +1,191 @@ + + + + + + +0.9.8: GLM_GTX_matrix_interpolation + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_matrix_interpolation
+
+
+ + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL void axisAngle (tmat4x4< T, P > const &mat, tvec3< T, P > &axis, T &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > axisAngleMatrix (tvec3< T, P > const &axis, T const angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > extractMatrixRotation (tmat4x4< T, P > const &mat)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > interpolate (tmat4x4< T, P > const &m1, tmat4x4< T, P > const &m2, T const delta)
 
+

Detailed Description

+

Allows to directly interpolate two exiciting matrices.

+

<glm/gtx/matrix_interpolation.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL void glm::axisAngle (tmat4x4< T, P > const & mat,
tvec3< T, P > & axis,
T & angle 
)
+
+ +

Get the axis and angle of the rotation from a matrix.

+

From GLM_GTX_matrix_interpolation extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::axisAngleMatrix (tvec3< T, P > const & axis,
T const angle 
)
+
+ +

Build a matrix from axis and angle.

+

From GLM_GTX_matrix_interpolation extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::extractMatrixRotation (tmat4x4< T, P > const & mat)
+
+ +

Extracts the rotation part of a matrix.

+

From GLM_GTX_matrix_interpolation extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::interpolate (tmat4x4< T, P > const & m1,
tmat4x4< T, P > const & m2,
T const delta 
)
+
+ +

Build a interpolation of 4 * 4 matrixes.

+

From GLM_GTX_matrix_interpolation extension. Warning! works only with rotation and/or translation matrixes, scale will generate unexpected results.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00206.html b/third_party/glm_test/doc/api/a00206.html new file mode 100644 index 0000000000000..a801a7cac95ea --- /dev/null +++ b/third_party/glm_test/doc/api/a00206.html @@ -0,0 +1,421 @@ + + + + + + +0.9.8: GLM_GTX_matrix_major_storage + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_matrix_major_storage
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tmat2x2< T, P > colMajor2 (tvec2< T, P > const &v1, tvec2< T, P > const &v2)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat2x2< T, P > colMajor2 (tmat2x2< T, P > const &m)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > colMajor3 (tvec3< T, P > const &v1, tvec3< T, P > const &v2, tvec3< T, P > const &v3)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > colMajor3 (tmat3x3< T, P > const &m)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > colMajor4 (tvec4< T, P > const &v1, tvec4< T, P > const &v2, tvec4< T, P > const &v3, tvec4< T, P > const &v4)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > colMajor4 (tmat4x4< T, P > const &m)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat2x2< T, P > rowMajor2 (tvec2< T, P > const &v1, tvec2< T, P > const &v2)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat2x2< T, P > rowMajor2 (tmat2x2< T, P > const &m)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > rowMajor3 (tvec3< T, P > const &v1, tvec3< T, P > const &v2, tvec3< T, P > const &v3)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > rowMajor3 (tmat3x3< T, P > const &m)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > rowMajor4 (tvec4< T, P > const &v1, tvec4< T, P > const &v2, tvec4< T, P > const &v3, tvec4< T, P > const &v4)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > rowMajor4 (tmat4x4< T, P > const &m)
 
+

Detailed Description

+

Build matrices with specific matrix order, row or column.

+

<glm/gtx/matrix_major_storage.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat2x2<T, P> glm::colMajor2 (tvec2< T, P > const & v1,
tvec2< T, P > const & v2 
)
+
+ +

Build a column major matrix from column vectors.

+

From GLM_GTX_matrix_major_storage extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat2x2<T, P> glm::colMajor2 (tmat2x2< T, P > const & m)
+
+ +

Build a column major matrix from other matrix.

+

From GLM_GTX_matrix_major_storage extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat3x3<T, P> glm::colMajor3 (tvec3< T, P > const & v1,
tvec3< T, P > const & v2,
tvec3< T, P > const & v3 
)
+
+ +

Build a column major matrix from column vectors.

+

From GLM_GTX_matrix_major_storage extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat3x3<T, P> glm::colMajor3 (tmat3x3< T, P > const & m)
+
+ +

Build a column major matrix from other matrix.

+

From GLM_GTX_matrix_major_storage extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::colMajor4 (tvec4< T, P > const & v1,
tvec4< T, P > const & v2,
tvec4< T, P > const & v3,
tvec4< T, P > const & v4 
)
+
+ +

Build a column major matrix from column vectors.

+

From GLM_GTX_matrix_major_storage extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::colMajor4 (tmat4x4< T, P > const & m)
+
+ +

Build a column major matrix from other matrix.

+

From GLM_GTX_matrix_major_storage extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat2x2<T, P> glm::rowMajor2 (tvec2< T, P > const & v1,
tvec2< T, P > const & v2 
)
+
+ +

Build a row major matrix from row vectors.

+

From GLM_GTX_matrix_major_storage extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat2x2<T, P> glm::rowMajor2 (tmat2x2< T, P > const & m)
+
+ +

Build a row major matrix from other matrix.

+

From GLM_GTX_matrix_major_storage extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat3x3<T, P> glm::rowMajor3 (tvec3< T, P > const & v1,
tvec3< T, P > const & v2,
tvec3< T, P > const & v3 
)
+
+ +

Build a row major matrix from row vectors.

+

From GLM_GTX_matrix_major_storage extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat3x3<T, P> glm::rowMajor3 (tmat3x3< T, P > const & m)
+
+ +

Build a row major matrix from other matrix.

+

From GLM_GTX_matrix_major_storage extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::rowMajor4 (tvec4< T, P > const & v1,
tvec4< T, P > const & v2,
tvec4< T, P > const & v3,
tvec4< T, P > const & v4 
)
+
+ +

Build a row major matrix from row vectors.

+

From GLM_GTX_matrix_major_storage extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::rowMajor4 (tmat4x4< T, P > const & m)
+
+ +

Build a row major matrix from other matrix.

+

From GLM_GTX_matrix_major_storage extension.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00207.html b/third_party/glm_test/doc/api/a00207.html new file mode 100644 index 0000000000000..3c41c6e1a9302 --- /dev/null +++ b/third_party/glm_test/doc/api/a00207.html @@ -0,0 +1,259 @@ + + + + + + +0.9.8: GLM_GTX_matrix_operation + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_matrix_operation
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tmat2x2< T, P > diagonal2x2 (tvec2< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat2x3< T, P > diagonal2x3 (tvec2< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat2x4< T, P > diagonal2x4 (tvec2< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x2< T, P > diagonal3x2 (tvec2< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > diagonal3x3 (tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x4< T, P > diagonal3x4 (tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x2< T, P > diagonal4x2 (tvec2< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x3< T, P > diagonal4x3 (tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > diagonal4x4 (tvec4< T, P > const &v)
 
+

Detailed Description

+

Build diagonal matrices from vectors.

+

<glm/gtx/matrix_operation.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat2x2<T, P> glm::diagonal2x2 (tvec2< T, P > const & v)
+
+ +

Build a diagonal matrix.

+

From GLM_GTX_matrix_operation extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat2x3<T, P> glm::diagonal2x3 (tvec2< T, P > const & v)
+
+ +

Build a diagonal matrix.

+

From GLM_GTX_matrix_operation extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat2x4<T, P> glm::diagonal2x4 (tvec2< T, P > const & v)
+
+ +

Build a diagonal matrix.

+

From GLM_GTX_matrix_operation extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat3x2<T, P> glm::diagonal3x2 (tvec2< T, P > const & v)
+
+ +

Build a diagonal matrix.

+

From GLM_GTX_matrix_operation extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat3x3<T, P> glm::diagonal3x3 (tvec3< T, P > const & v)
+
+ +

Build a diagonal matrix.

+

From GLM_GTX_matrix_operation extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat3x4<T, P> glm::diagonal3x4 (tvec3< T, P > const & v)
+
+ +

Build a diagonal matrix.

+

From GLM_GTX_matrix_operation extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x2<T, P> glm::diagonal4x2 (tvec2< T, P > const & v)
+
+ +

Build a diagonal matrix.

+

From GLM_GTX_matrix_operation extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x3<T, P> glm::diagonal4x3 (tvec3< T, P > const & v)
+
+ +

Build a diagonal matrix.

+

From GLM_GTX_matrix_operation extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::diagonal4x4 (tvec4< T, P > const & v)
+
+ +

Build a diagonal matrix.

+

From GLM_GTX_matrix_operation extension.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00208.html b/third_party/glm_test/doc/api/a00208.html new file mode 100644 index 0000000000000..09008f704655e --- /dev/null +++ b/third_party/glm_test/doc/api/a00208.html @@ -0,0 +1,317 @@ + + + + + + +0.9.8: GLM_GTX_matrix_query + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_matrix_query
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class matType>
GLM_FUNC_DECL bool isIdentity (matType< T, P > const &m, T const &epsilon)
 
template<typename T , precision P>
GLM_FUNC_DECL bool isNormalized (tmat2x2< T, P > const &m, T const &epsilon)
 
template<typename T , precision P>
GLM_FUNC_DECL bool isNormalized (tmat3x3< T, P > const &m, T const &epsilon)
 
template<typename T , precision P>
GLM_FUNC_DECL bool isNormalized (tmat4x4< T, P > const &m, T const &epsilon)
 
template<typename T , precision P>
GLM_FUNC_DECL bool isNull (tmat2x2< T, P > const &m, T const &epsilon)
 
template<typename T , precision P>
GLM_FUNC_DECL bool isNull (tmat3x3< T, P > const &m, T const &epsilon)
 
template<typename T , precision P>
GLM_FUNC_DECL bool isNull (tmat4x4< T, P > const &m, T const &epsilon)
 
template<typename T , precision P, template< typename, precision > class matType>
GLM_FUNC_DECL bool isOrthogonal (matType< T, P > const &m, T const &epsilon)
 
+

Detailed Description

+

Query to evaluate matrix properties.

+

<glm/gtx/matrix_query.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::isIdentity (matType< T, P > const & m,
T const & epsilon 
)
+
+ +

Return whether a matrix is an identity matrix.

+

From GLM_GTX_matrix_query extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::isNormalized (tmat2x2< T, P > const & m,
T const & epsilon 
)
+
+ +

Return whether a matrix is a normalized matrix.

+

From GLM_GTX_matrix_query extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::isNormalized (tmat3x3< T, P > const & m,
T const & epsilon 
)
+
+ +

Return whether a matrix is a normalized matrix.

+

From GLM_GTX_matrix_query extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::isNormalized (tmat4x4< T, P > const & m,
T const & epsilon 
)
+
+ +

Return whether a matrix is a normalized matrix.

+

From GLM_GTX_matrix_query extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::isNull (tmat2x2< T, P > const & m,
T const & epsilon 
)
+
+ +

Return whether a matrix a null matrix.

+

From GLM_GTX_matrix_query extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::isNull (tmat3x3< T, P > const & m,
T const & epsilon 
)
+
+ +

Return whether a matrix a null matrix.

+

From GLM_GTX_matrix_query extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::isNull (tmat4x4< T, P > const & m,
T const & epsilon 
)
+
+ +

Return whether a matrix is a null matrix.

+

From GLM_GTX_matrix_query extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::isOrthogonal (matType< T, P > const & m,
T const & epsilon 
)
+
+ +

Return whether a matrix is an orthonormalized matrix.

+

From GLM_GTX_matrix_query extension.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00209.html b/third_party/glm_test/doc/api/a00209.html new file mode 100644 index 0000000000000..1b7033ec1a055 --- /dev/null +++ b/third_party/glm_test/doc/api/a00209.html @@ -0,0 +1,251 @@ + + + + + + +0.9.8: GLM_GTX_matrix_transform_2d + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_matrix_transform_2d
+
+
+ + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_QUALIFIER tmat3x3< T, P > rotate (tmat3x3< T, P > const &m, T angle)
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER tmat3x3< T, P > scale (tmat3x3< T, P > const &m, tvec2< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER tmat3x3< T, P > shearX (tmat3x3< T, P > const &m, T y)
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER tmat3x3< T, P > shearY (tmat3x3< T, P > const &m, T x)
 
template<typename T , precision P>
GLM_FUNC_QUALIFIER tmat3x3< T, P > translate (tmat3x3< T, P > const &m, tvec2< T, P > const &v)
 
+

Detailed Description

+

Defines functions that generate common 2d transformation matrices.

+

<glm/gtx/matrix_transform_2d.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_QUALIFIER tmat3x3<T, P> glm::rotate (tmat3x3< T, P > const & m,
angle 
)
+
+ +

Builds a rotation 3 * 3 matrix created from an angle.

+
Parameters
+ + + +
mInput matrix multiplied by this translation matrix.
angleRotation angle expressed in radians if GLM_FORCE_RADIANS is defined or degrees otherwise.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_QUALIFIER tmat3x3<T, P> glm::scale (tmat3x3< T, P > const & m,
tvec2< T, P > const & v 
)
+
+ +

Builds a scale 3 * 3 matrix created from a vector of 2 components.

+
Parameters
+ + + +
mInput matrix multiplied by this translation matrix.
vCoordinates of a scale vector.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_QUALIFIER tmat3x3<T, P> glm::shearX (tmat3x3< T, P > const & m,
y 
)
+
+ +

Builds an horizontal (parallel to the x axis) shear 3 * 3 matrix.

+
Parameters
+ + + +
mInput matrix multiplied by this translation matrix.
yShear factor.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_QUALIFIER tmat3x3<T, P> glm::shearY (tmat3x3< T, P > const & m,
x 
)
+
+ +

Builds a vertical (parallel to the y axis) shear 3 * 3 matrix.

+
Parameters
+ + + +
mInput matrix multiplied by this translation matrix.
xShear factor.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_QUALIFIER tmat3x3<T, P> glm::translate (tmat3x3< T, P > const & m,
tvec2< T, P > const & v 
)
+
+ +

Builds a translation 3 * 3 matrix created from a vector of 2 components.

+
Parameters
+ + + +
mInput matrix multiplied by this translation matrix.
vCoordinates of a translation vector.
+
+
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00210.html b/third_party/glm_test/doc/api/a00210.html new file mode 100644 index 0000000000000..2a4fdabc16faa --- /dev/null +++ b/third_party/glm_test/doc/api/a00210.html @@ -0,0 +1,64 @@ + + + + + + +0.9.8: GLM_GTX_mixed_producte + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_mixed_producte
+
+
+ + + + + +

+Functions

+template<typename T , precision P>
GLM_FUNC_DECL T mixedProduct (tvec3< T, P > const &v1, tvec3< T, P > const &v2, tvec3< T, P > const &v3)
 
+

Detailed Description

+

Mixed product of 3 vectors.

+

<glm/gtx/mixed_product.hpp> need to be included to use these functionalities.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00211.html b/third_party/glm_test/doc/api/a00211.html new file mode 100644 index 0000000000000..d1dd03e3a7498 --- /dev/null +++ b/third_party/glm_test/doc/api/a00211.html @@ -0,0 +1,293 @@ + + + + + + +0.9.8: GLM_GTX_norm + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T distance2 (vecType< T, P > const &p0, vecType< T, P > const &p1)
 
template<typename T , precision P>
GLM_FUNC_DECL T l1Norm (tvec3< T, P > const &x, tvec3< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL T l1Norm (tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL T l2Norm (tvec3< T, P > const &x, tvec3< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL T l2Norm (tvec3< T, P > const &x)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T length2 (vecType< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL T lxNorm (tvec3< T, P > const &x, tvec3< T, P > const &y, unsigned int Depth)
 
template<typename T , precision P>
GLM_FUNC_DECL T lxNorm (tvec3< T, P > const &x, unsigned int Depth)
 
+

Detailed Description

+

Various ways to compute vector norms.

+

<glm/gtx/norm.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::distance2 (vecType< T, P > const & p0,
vecType< T, P > const & p1 
)
+
+ +

Returns the squared distance between p0 and p1, i.e., length2(p0 - p1).

+

From GLM_GTX_norm extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::l1Norm (tvec3< T, P > const & x,
tvec3< T, P > const & y 
)
+
+ +

Returns the L1 norm between x and y.

+

From GLM_GTX_norm extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::l1Norm (tvec3< T, P > const & v)
+
+ +

Returns the L1 norm of v.

+

From GLM_GTX_norm extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::l2Norm (tvec3< T, P > const & x,
tvec3< T, P > const & y 
)
+
+ +

Returns the L2 norm between x and y.

+

From GLM_GTX_norm extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::l2Norm (tvec3< T, P > const & x)
+
+ +

Returns the L2 norm of v.

+

From GLM_GTX_norm extension.

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::length2 (vecType< T, P > const & x)
+
+ +

Returns the squared length of x.

+

From GLM_GTX_norm extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::lxNorm (tvec3< T, P > const & x,
tvec3< T, P > const & y,
unsigned int Depth 
)
+
+ +

Returns the L norm between x and y.

+

From GLM_GTX_norm extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::lxNorm (tvec3< T, P > const & x,
unsigned int Depth 
)
+
+ +

Returns the L norm of v.

+

From GLM_GTX_norm extension.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00212.html b/third_party/glm_test/doc/api/a00212.html new file mode 100644 index 0000000000000..c2912ed36949b --- /dev/null +++ b/third_party/glm_test/doc/api/a00212.html @@ -0,0 +1,99 @@ + + + + + + +0.9.8: GLM_GTX_normal + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+ +
+ + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > triangleNormal (tvec3< T, P > const &p1, tvec3< T, P > const &p2, tvec3< T, P > const &p3)
 
+

Detailed Description

+

Compute the normal of a triangle.

+

<glm/gtx/normal.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::triangleNormal (tvec3< T, P > const & p1,
tvec3< T, P > const & p2,
tvec3< T, P > const & p3 
)
+
+ +

Computes triangle normal from triangle points.

+

From GLM_GTX_normal extension.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00213.html b/third_party/glm_test/doc/api/a00213.html new file mode 100644 index 0000000000000..b0252fc543a1a --- /dev/null +++ b/third_party/glm_test/doc/api/a00213.html @@ -0,0 +1,127 @@ + + + + + + +0.9.8: GLM_GTX_normalize_dot + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_normalize_dot
+
+
+ + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T fastNormalizeDot (vecType< T, P > const &x, vecType< T, P > const &y)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL T normalizeDot (vecType< T, P > const &x, vecType< T, P > const &y)
 
+

Detailed Description

+

Dot product of vectors that need to be normalize with a single square root.

+

<glm/gtx/normalized_dot.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::fastNormalizeDot (vecType< T, P > const & x,
vecType< T, P > const & y 
)
+
+ +

Normalize parameters and returns the dot product of x and y.

+

Faster that dot(fastNormalize(x), fastNormalize(y)).

+
See also
GLM_GTX_normalize_dot extension.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::normalizeDot (vecType< T, P > const & x,
vecType< T, P > const & y 
)
+
+ +

Normalize parameters and returns the dot product of x and y.

+

It's faster that dot(normalize(x), normalize(y)).

+
See also
GLM_GTX_normalize_dot extension.
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00214.html b/third_party/glm_test/doc/api/a00214.html new file mode 100644 index 0000000000000..4daafefcc9225 --- /dev/null +++ b/third_party/glm_test/doc/api/a00214.html @@ -0,0 +1,90 @@ + + + + + + +0.9.8: GLM_GTX_number_precision + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_number_precision
+
+
+ + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

+typedef f32 f32mat1
 
+typedef f32 f32mat1x1
 
+typedef f32 f32vec1
 
+typedef f64 f64mat1
 
+typedef f64 f64mat1x1
 
+typedef f64 f64vec1
 
+typedef u16 u16vec1
 
+typedef u32 u32vec1
 
+typedef u64 u64vec1
 
+typedef u8 u8vec1
 
+

Detailed Description

+

Defined size types.

+

<glm/gtx/number_precision.hpp> need to be included to use these functionalities.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00215.html b/third_party/glm_test/doc/api/a00215.html new file mode 100644 index 0000000000000..bb2c446cbef71 --- /dev/null +++ b/third_party/glm_test/doc/api/a00215.html @@ -0,0 +1,127 @@ + + + + + + +0.9.8: GLM_GTX_optimum_pow + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
+
+
+ + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType pow2 (genType const &x)
 
template<typename genType >
GLM_FUNC_DECL genType pow3 (genType const &x)
 
template<typename genType >
GLM_FUNC_DECL genType pow4 (genType const &x)
 
+

Detailed Description

+

Integer exponentiation of power functions.

+

<glm/gtx/optimum_pow.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::gtx::pow2 (genType const & x)
+
+ +

Returns x raised to the power of 2.

+
See also
GLM_GTX_optimum_pow
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::gtx::pow3 (genType const & x)
+
+ +

Returns x raised to the power of 3.

+
See also
GLM_GTX_optimum_pow
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::gtx::pow4 (genType const & x)
+
+ +

Returns x raised to the power of 4.

+
See also
GLM_GTX_optimum_pow
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00216.html b/third_party/glm_test/doc/api/a00216.html new file mode 100644 index 0000000000000..2d6e7dfe61de9 --- /dev/null +++ b/third_party/glm_test/doc/api/a00216.html @@ -0,0 +1,115 @@ + + + + + + +0.9.8: GLM_GTX_orthonormalize + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_orthonormalize
+
+
+ + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > orthonormalize (tmat3x3< T, P > const &m)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > orthonormalize (tvec3< T, P > const &x, tvec3< T, P > const &y)
 
+

Detailed Description

+

Orthonormalize matrices.

+

<glm/gtx/orthonormalize.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat3x3<T, P> glm::orthonormalize (tmat3x3< T, P > const & m)
+
+ +

Returns the orthonormalized matrix of m.

+
See also
GLM_GTX_orthonormalize
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::orthonormalize (tvec3< T, P > const & x,
tvec3< T, P > const & y 
)
+
+ +

Orthonormalizes x according y.

+
See also
GLM_GTX_orthonormalize
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00217.html b/third_party/glm_test/doc/api/a00217.html new file mode 100644 index 0000000000000..74639657c8d71 --- /dev/null +++ b/third_party/glm_test/doc/api/a00217.html @@ -0,0 +1,93 @@ + + + + + + +0.9.8: GLM_GTX_perpendicular + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_perpendicular
+
+
+ + + + + +

+Functions

template<typename vecType >
GLM_FUNC_DECL vecType perp (vecType const &x, vecType const &Normal)
 
+

Detailed Description

+

Perpendicular of a vector from other one.

+

<glm/gtx/perpendicular.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType glm::perp (vecType const & x,
vecType const & Normal 
)
+
+ +

Projects x a perpendicular axis of Normal.

+

From GLM_GTX_perpendicular extension.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00218.html b/third_party/glm_test/doc/api/a00218.html new file mode 100644 index 0000000000000..e333b1edb8a8f --- /dev/null +++ b/third_party/glm_test/doc/api/a00218.html @@ -0,0 +1,105 @@ + + + + + + +0.9.8: GLM_GTX_polar_coordinates + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_polar_coordinates
+
+
+ + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > euclidean (tvec2< T, P > const &polar)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > polar (tvec3< T, P > const &euclidean)
 
+

Detailed Description

+

Conversion from Euclidean space to polar space and revert.

+

<glm/gtx/polar_coordinates.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::euclidean (tvec2< T, P > const & polar)
+
+ +

Convert Polar to Euclidean coordinates.

+
See also
GLM_GTX_polar_coordinates
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::polar (tvec3< T, P > const & euclidean)
+
+ +

Convert Euclidean to Polar coordinates, x is the xz distance, y, the latitude and z the longitude.

+
See also
GLM_GTX_polar_coordinates
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00219.html b/third_party/glm_test/doc/api/a00219.html new file mode 100644 index 0000000000000..60960408dae44 --- /dev/null +++ b/third_party/glm_test/doc/api/a00219.html @@ -0,0 +1,93 @@ + + + + + + +0.9.8: GLM_GTX_projection + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
+
+
+ + + + + +

+Functions

template<typename vecType >
GLM_FUNC_DECL vecType proj (vecType const &x, vecType const &Normal)
 
+

Detailed Description

+

Projection of a vector to other one.

+

<glm/gtx/projection.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType glm::proj (vecType const & x,
vecType const & Normal 
)
+
+ +

Projects x on Normal.

+
See also
GLM_GTX_projection
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00220.html b/third_party/glm_test/doc/api/a00220.html new file mode 100644 index 0000000000000..4c01172a47e16 --- /dev/null +++ b/third_party/glm_test/doc/api/a00220.html @@ -0,0 +1,613 @@ + + + + + + +0.9.8: GLM_GTX_quaternion + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > cross (tquat< T, P > const &q, tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > cross (tvec3< T, P > const &v, tquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > exp (tquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL T extractRealComponent (tquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > fastMix (tquat< T, P > const &x, tquat< T, P > const &y, T const &a)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > intermediate (tquat< T, P > const &prev, tquat< T, P > const &curr, tquat< T, P > const &next)
 
template<typename T , precision P>
GLM_FUNC_DECL T length2 (tquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > log (tquat< T, P > const &q)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > pow (tquat< T, P > const &x, T const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > rotate (tquat< T, P > const &q, tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< T, P > rotate (tquat< T, P > const &q, tvec4< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > rotation (tvec3< T, P > const &orig, tvec3< T, P > const &dest)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > shortMix (tquat< T, P > const &x, tquat< T, P > const &y, T const &a)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > squad (tquat< T, P > const &q1, tquat< T, P > const &q2, tquat< T, P > const &s1, tquat< T, P > const &s2, T const &h)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > toMat3 (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > toMat4 (tquat< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > toQuat (tmat3x3< T, P > const &x)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > toQuat (tmat4x4< T, P > const &x)
 
+

Detailed Description

+

Extented quaternion types and functions.

+

<glm/gtx/quaternion.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::cross (tquat< T, P > const & q,
tvec3< T, P > const & v 
)
+
+ +

Compute a cross product between a quaternion and a vector.

+
See also
GLM_GTX_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::cross (tvec3< T, P > const & v,
tquat< T, P > const & q 
)
+
+ +

Compute a cross product between a vector and a quaternion.

+
See also
GLM_GTX_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::exp (tquat< T, P > const & q)
+
+ +

Returns a exp of a quaternion.

+
See also
GLM_GTX_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::extractRealComponent (tquat< T, P > const & q)
+
+ +

Extract the real component of a quaternion.

+
See also
GLM_GTX_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::fastMix (tquat< T, P > const & x,
tquat< T, P > const & y,
T const & a 
)
+
+ +

Quaternion normalized linear interpolation.

+
See also
GLM_GTX_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::intermediate (tquat< T, P > const & prev,
tquat< T, P > const & curr,
tquat< T, P > const & next 
)
+
+ +

Returns an intermediate control point for squad interpolation.

+
See also
GLM_GTX_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL T glm::length2 (tquat< T, P > const & q)
+
+ +

Returns the squared length of x.

+
See also
GLM_GTX_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::log (tquat< T, P > const & q)
+
+ +

Returns a log of a quaternion.

+
See also
GLM_GTX_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::pow (tquat< T, P > const & x,
T const & y 
)
+
+ +

Returns x raised to the y power.

+
See also
GLM_GTX_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::rotate (tquat< T, P > const & q,
tvec3< T, P > const & v 
)
+
+ +

Returns quarternion square root.

+
See also
GLM_GTX_quaternion Rotates a 3 components vector by a quaternion.
+
+GLM_GTX_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec4<T, P> glm::rotate (tquat< T, P > const & q,
tvec4< T, P > const & v 
)
+
+ +

Rotates a 4 components vector by a quaternion.

+
See also
GLM_GTX_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::rotation (tvec3< T, P > const & orig,
tvec3< T, P > const & dest 
)
+
+ +

Compute the rotation between two vectors.

+

param orig vector, needs to be normalized param dest vector, needs to be normalized

+
See also
GLM_GTX_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::shortMix (tquat< T, P > const & x,
tquat< T, P > const & y,
T const & a 
)
+
+ +

Quaternion interpolation using the rotation short path.

+
See also
GLM_GTX_quaternion
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::squad (tquat< T, P > const & q1,
tquat< T, P > const & q2,
tquat< T, P > const & s1,
tquat< T, P > const & s2,
T const & h 
)
+
+ +

Compute a point on a path according squad equation.

+

q1 and q2 are control points; s1 and s2 are intermediate control points.

+
See also
GLM_GTX_quaternion
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat3x3<T, P> glm::toMat3 (tquat< T, P > const & x)
+
+ +

Converts a quaternion to a 3 * 3 matrix.

+
See also
GLM_GTX_quaternion
+ +

Definition at line 124 of file gtx/quaternion.hpp.

+ +

References glm::mat3_cast().

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::toMat4 (tquat< T, P > const & x)
+
+ +

Converts a quaternion to a 4 * 4 matrix.

+
See also
GLM_GTX_quaternion
+ +

Definition at line 131 of file gtx/quaternion.hpp.

+ +

References glm::mat4_cast().

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::toQuat (tmat3x3< T, P > const & x)
+
+ +

Converts a 3 * 3 matrix to a quaternion.

+
See also
GLM_GTX_quaternion
+ +

Definition at line 138 of file gtx/quaternion.hpp.

+ +

References glm::quat_cast().

+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::toQuat (tmat4x4< T, P > const & x)
+
+ +

Converts a 4 * 4 matrix to a quaternion.

+
See also
GLM_GTX_quaternion
+ +

Definition at line 145 of file gtx/quaternion.hpp.

+ +

References glm::quat_cast().

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00221.html b/third_party/glm_test/doc/api/a00221.html new file mode 100644 index 0000000000000..6234d05de837b --- /dev/null +++ b/third_party/glm_test/doc/api/a00221.html @@ -0,0 +1,55 @@ + + + + + + +0.9.8: GLM_GTX_range + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+ +
+

Detailed Description

+

Defines begin and end for vectors and matrices.

+

Useful for range-based for loop. The range is defined over the elements, not over columns or rows (e.g. mat4 has 16 elements).

+

<glm/gtx/range.hpp> need to be included to use these functionalities.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00222.html b/third_party/glm_test/doc/api/a00222.html new file mode 100644 index 0000000000000..91a45a6d1dab3 --- /dev/null +++ b/third_party/glm_test/doc/api/a00222.html @@ -0,0 +1,137 @@ + + + + + + +0.9.8: GLM_GTX_raw_data + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ + +
+
+ + + + + + + + + + +

+Typedefs

typedef detail::uint8 byte
 
typedef detail::uint32 dword
 
typedef detail::uint64 qword
 
typedef detail::uint16 word
 
+

Detailed Description

+

Projection of a vector to other one.

+

<glm/gtx/raw_data.hpp> need to be included to use these functionalities.

+

Typedef Documentation

+ +
+
+ + + + +
typedef detail::uint8 byte
+
+ +

Type for byte numbers.

+

From GLM_GTX_raw_data extension.

+ +

Definition at line 30 of file raw_data.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint32 dword
+
+ +

Type for dword numbers.

+

From GLM_GTX_raw_data extension.

+ +

Definition at line 38 of file raw_data.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint64 qword
+
+ +

Type for qword numbers.

+

From GLM_GTX_raw_data extension.

+ +

Definition at line 42 of file raw_data.hpp.

+ +
+
+ +
+
+ + + + +
typedef detail::uint16 word
+
+ +

Type for word numbers.

+

From GLM_GTX_raw_data extension.

+ +

Definition at line 34 of file raw_data.hpp.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00223.html b/third_party/glm_test/doc/api/a00223.html new file mode 100644 index 0000000000000..df53e17ea24fd --- /dev/null +++ b/third_party/glm_test/doc/api/a00223.html @@ -0,0 +1,165 @@ + + + + + + +0.9.8: GLM_GTX_rotate_normalized_axis + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_rotate_normalized_axis
+
+
+ + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > rotateNormalizedAxis (tmat4x4< T, P > const &m, T const &angle, tvec3< T, P > const &axis)
 
template<typename T , precision P>
GLM_FUNC_DECL tquat< T, P > rotateNormalizedAxis (tquat< T, P > const &q, T const &angle, tvec3< T, P > const &axis)
 
+

Detailed Description

+

Quaternions and matrices rotations around normalized axis.

+

<glm/gtx/rotate_normalized_axis.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::rotateNormalizedAxis (tmat4x4< T, P > const & m,
T const & angle,
tvec3< T, P > const & axis 
)
+
+ +

Builds a rotation 4 * 4 matrix created from a normalized axis and an angle.

+
Parameters
+ + + + +
mInput matrix multiplied by this rotation matrix.
angleRotation angle expressed in radians if GLM_FORCE_RADIANS is define or degrees otherwise.
axisRotation axis, must be normalized.
+
+
+
Template Parameters
+ + +
TValue type used to build the matrix. Currently supported: half (not recommanded), float or double.
+
+
+
See also
GLM_GTX_rotate_normalized_axis
+
+- rotate(T angle, T x, T y, T z)
+
+- rotate(tmat4x4<T, P> const & m, T angle, T x, T y, T z)
+
+- rotate(T angle, tvec3<T, P> const & v)
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tquat<T, P> glm::rotateNormalizedAxis (tquat< T, P > const & q,
T const & angle,
tvec3< T, P > const & axis 
)
+
+ +

Rotates a quaternion from a vector of 3 components normalized axis and an angle.

+
Parameters
+ + + + +
qSource orientation
angleAngle expressed in radians if GLM_FORCE_RADIANS is define or degrees otherwise.
axisNormalized axis of the rotation, must be normalized.
+
+
+
See also
GLM_GTX_rotate_normalized_axis
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00224.html b/third_party/glm_test/doc/api/a00224.html new file mode 100644 index 0000000000000..7c902ccd01cb2 --- /dev/null +++ b/third_party/glm_test/doc/api/a00224.html @@ -0,0 +1,439 @@ + + + + + + +0.9.8: GLM_GTX_rotate_vector + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_rotate_vector
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > orientation (tvec3< T, P > const &Normal, tvec3< T, P > const &Up)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec2< T, P > rotate (tvec2< T, P > const &v, T const &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > rotate (tvec3< T, P > const &v, T const &angle, tvec3< T, P > const &normal)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< T, P > rotate (tvec4< T, P > const &v, T const &angle, tvec3< T, P > const &normal)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > rotateX (tvec3< T, P > const &v, T const &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< T, P > rotateX (tvec4< T, P > const &v, T const &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > rotateY (tvec3< T, P > const &v, T const &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< T, P > rotateY (tvec4< T, P > const &v, T const &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > rotateZ (tvec3< T, P > const &v, T const &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec4< T, P > rotateZ (tvec4< T, P > const &v, T const &angle)
 
template<typename T , precision P>
GLM_FUNC_DECL tvec3< T, P > slerp (tvec3< T, P > const &x, tvec3< T, P > const &y, T const &a)
 
+

Detailed Description

+

Function to directly rotate a vector.

+

<glm/gtx/rotate_vector.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::orientation (tvec3< T, P > const & Normal,
tvec3< T, P > const & Up 
)
+
+ +

Build a rotation matrix from a normal and a up vector.

+

From GLM_GTX_rotate_vector extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec2<T, P> glm::rotate (tvec2< T, P > const & v,
T const & angle 
)
+
+ +

Rotate a two dimensional vector.

+

From GLM_GTX_rotate_vector extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::rotate (tvec3< T, P > const & v,
T const & angle,
tvec3< T, P > const & normal 
)
+
+ +

Rotate a three dimensional vector around an axis.

+

From GLM_GTX_rotate_vector extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec4<T, P> glm::rotate (tvec4< T, P > const & v,
T const & angle,
tvec3< T, P > const & normal 
)
+
+ +

Rotate a four dimensional vector around an axis.

+

From GLM_GTX_rotate_vector extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::rotateX (tvec3< T, P > const & v,
T const & angle 
)
+
+ +

Rotate a three dimensional vector around the X axis.

+

From GLM_GTX_rotate_vector extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec4<T, P> glm::rotateX (tvec4< T, P > const & v,
T const & angle 
)
+
+ +

Rotate a four dimentionnals vector around the X axis.

+

From GLM_GTX_rotate_vector extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::rotateY (tvec3< T, P > const & v,
T const & angle 
)
+
+ +

Rotate a three dimensional vector around the Y axis.

+

From GLM_GTX_rotate_vector extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec4<T, P> glm::rotateY (tvec4< T, P > const & v,
T const & angle 
)
+
+ +

Rotate a four dimensional vector around the X axis.

+

From GLM_GTX_rotate_vector extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::rotateZ (tvec3< T, P > const & v,
T const & angle 
)
+
+ +

Rotate a three dimensional vector around the Z axis.

+

From GLM_GTX_rotate_vector extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec4<T, P> glm::rotateZ (tvec4< T, P > const & v,
T const & angle 
)
+
+ +

Rotate a four dimensional vector around the X axis.

+

From GLM_GTX_rotate_vector extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tvec3<T, P> glm::slerp (tvec3< T, P > const & x,
tvec3< T, P > const & y,
T const & a 
)
+
+ +

Returns Spherical interpolation between two vectors.

+
Parameters
+ + + + +
xA first vector
yA second vector
aInterpolation factor. The interpolation is defined beyond the range [0, 1].
+
+
+
See also
GLM_GTX_rotate_vector
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00225.html b/third_party/glm_test/doc/api/a00225.html new file mode 100644 index 0000000000000..13dc0e1f25908 --- /dev/null +++ b/third_party/glm_test/doc/api/a00225.html @@ -0,0 +1,53 @@ + + + + + + +0.9.8: GLM_GTX_scalar_relational + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+
+
GLM_GTX_scalar_relational
+
+
+

Extend a position from a source to a position at a defined length.

+

<glm/gtx/scalar_relational.hpp> need to be included to use these functionalities.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00226.html b/third_party/glm_test/doc/api/a00226.html new file mode 100644 index 0000000000000..ca6548e95c44c --- /dev/null +++ b/third_party/glm_test/doc/api/a00226.html @@ -0,0 +1,53 @@ + + + + + + +0.9.8: GLM_GTX_simd_mat4 + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+
+
+
+
+

SIMD implementation of mat4 type.

+

<glm/gtx/simd_mat4.hpp> need to be included to use these functionalities.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00227.html b/third_party/glm_test/doc/api/a00227.html new file mode 100644 index 0000000000000..0b3eb180da7b0 --- /dev/null +++ b/third_party/glm_test/doc/api/a00227.html @@ -0,0 +1,53 @@ + + + + + + +0.9.8: GLM_GTX_simd_quat + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+
+
+
+
+

SIMD implementation of quat type.

+

<glm/gtx/simd_quat.hpp> need to be included to use these functionalities.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00228.html b/third_party/glm_test/doc/api/a00228.html new file mode 100644 index 0000000000000..f46f99c91e100 --- /dev/null +++ b/third_party/glm_test/doc/api/a00228.html @@ -0,0 +1,53 @@ + + + + + + +0.9.8: GLM_GTX_simd_vec4 + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+
+
+
+
+

SIMD implementation of vec4 type.

+

<glm/gtx/simd_vec4.hpp> need to be included to use these functionalities.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00229.html b/third_party/glm_test/doc/api/a00229.html new file mode 100644 index 0000000000000..e8f3dad0678f5 --- /dev/null +++ b/third_party/glm_test/doc/api/a00229.html @@ -0,0 +1,211 @@ + + + + + + +0.9.8: GLM_GTX_spline + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+ +
+ + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType catmullRom (genType const &v1, genType const &v2, genType const &v3, genType const &v4, typename genType::value_type const &s)
 
template<typename genType >
GLM_FUNC_DECL genType cubic (genType const &v1, genType const &v2, genType const &v3, genType const &v4, typename genType::value_type const &s)
 
template<typename genType >
GLM_FUNC_DECL genType hermite (genType const &v1, genType const &t1, genType const &v2, genType const &t2, typename genType::value_type const &s)
 
+

Detailed Description

+

Spline functions.

+

<glm/gtx/spline.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::catmullRom (genType const & v1,
genType const & v2,
genType const & v3,
genType const & v4,
typename genType::value_type const & s 
)
+
+ +

Return a point from a catmull rom curve.

+
See also
GLM_GTX_spline extension.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::cubic (genType const & v1,
genType const & v2,
genType const & v3,
genType const & v4,
typename genType::value_type const & s 
)
+
+ +

Return a point from a cubic curve.

+
See also
GLM_GTX_spline extension.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL genType glm::hermite (genType const & v1,
genType const & t1,
genType const & v2,
genType const & t2,
typename genType::value_type const & s 
)
+
+ +

Return a point from a hermite curve.

+
See also
GLM_GTX_spline extension.
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00230.html b/third_party/glm_test/doc/api/a00230.html new file mode 100644 index 0000000000000..801e74a6e8864 --- /dev/null +++ b/third_party/glm_test/doc/api/a00230.html @@ -0,0 +1,213 @@ + + + + + + +0.9.8: GLM_GTX_std_based_type + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_std_based_type
+
+
+ + + + + + + + + + + + + + + + + + +

+Typedefs

typedef tvec1< std::size_t, defaultp > size1
 
typedef tvec1< std::size_t, defaultp > size1_t
 
typedef tvec2< std::size_t, defaultp > size2
 
typedef tvec2< std::size_t, defaultp > size2_t
 
typedef tvec3< std::size_t, defaultp > size3
 
typedef tvec3< std::size_t, defaultp > size3_t
 
typedef tvec4< std::size_t, defaultp > size4
 
typedef tvec4< std::size_t, defaultp > size4_t
 
+

Detailed Description

+

Adds vector types based on STL value types.

+

<glm/gtx/std_based_type.hpp> need to be included to use these functionalities.

+

Typedef Documentation

+ +
+
+ + + + +
typedef tvec1<std::size_t, defaultp> size1
+
+ +

Vector type based of one std::size_t component.

+
See also
GLM_GTX_std_based_type
+ +

Definition at line 30 of file std_based_type.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec1<std::size_t, defaultp> size1_t
+
+ +

Vector type based of one std::size_t component.

+
See also
GLM_GTX_std_based_type
+ +

Definition at line 46 of file std_based_type.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<std::size_t, defaultp> size2
+
+ +

Vector type based of two std::size_t components.

+
See also
GLM_GTX_std_based_type
+ +

Definition at line 34 of file std_based_type.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec2<std::size_t, defaultp> size2_t
+
+ +

Vector type based of two std::size_t components.

+
See also
GLM_GTX_std_based_type
+ +

Definition at line 50 of file std_based_type.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<std::size_t, defaultp> size3
+
+ +

Vector type based of three std::size_t components.

+
See also
GLM_GTX_std_based_type
+ +

Definition at line 38 of file std_based_type.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec3<std::size_t, defaultp> size3_t
+
+ +

Vector type based of three std::size_t components.

+
See also
GLM_GTX_std_based_type
+ +

Definition at line 54 of file std_based_type.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4<std::size_t, defaultp> size4
+
+ +

Vector type based of four std::size_t components.

+
See also
GLM_GTX_std_based_type
+ +

Definition at line 42 of file std_based_type.hpp.

+ +
+
+ +
+
+ + + + +
typedef tvec4<std::size_t, defaultp> size4_t
+
+ +

Vector type based of four std::size_t components.

+
See also
GLM_GTX_std_based_type
+ +

Definition at line 58 of file std_based_type.hpp.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00231.html b/third_party/glm_test/doc/api/a00231.html new file mode 100644 index 0000000000000..b2442da08de6a --- /dev/null +++ b/third_party/glm_test/doc/api/a00231.html @@ -0,0 +1,83 @@ + + + + + + +0.9.8: GLM_GTX_string_cast + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
+
+
+ + + + + +

+Functions

template<template< typename, precision > class matType, typename T , precision P>
GLM_FUNC_DECL std::string to_string (matType< T, P > const &x)
 
+

Detailed Description

+

Setup strings for GLM type values.

+

<glm/gtx/string_cast.hpp> need to be included to use these functionalities. This extension is not supported with CUDA

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL std::string glm::to_string (matType< T, P > const & x)
+
+ +

Create a string from a GLM vector or matrix typed variable.

+
See also
GLM_GTX_string_cast extension.
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00232.html b/third_party/glm_test/doc/api/a00232.html new file mode 100644 index 0000000000000..22ebf667f3d56 --- /dev/null +++ b/third_party/glm_test/doc/api/a00232.html @@ -0,0 +1,143 @@ + + + + + + +0.9.8: GLM_GTX_transform + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
+
+
+ + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > rotate (T angle, tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > scale (tvec3< T, P > const &v)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > translate (tvec3< T, P > const &v)
 
+

Detailed Description

+

Add transformation matrices.

+

<glm/gtx/transform.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::rotate (angle,
tvec3< T, P > const & v 
)
+
+ +

Builds a rotation 4 * 4 matrix created from an axis of 3 scalars and an angle expressed in radians.

+
See also
GLM_GTC_matrix_transform
+
+GLM_GTX_transform
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::scale (tvec3< T, P > const & v)
+
+ +

Transforms a matrix with a scale 4 * 4 matrix created from a vector of 3 components.

+
See also
GLM_GTC_matrix_transform
+
+GLM_GTX_transform
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::translate (tvec3< T, P > const & v)
+
+ +

Transforms a matrix with a translation 4 * 4 matrix created from 3 scalars.

+
See also
GLM_GTC_matrix_transform
+
+GLM_GTX_transform
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00233.html b/third_party/glm_test/doc/api/a00233.html new file mode 100644 index 0000000000000..bedfa6da2f019 --- /dev/null +++ b/third_party/glm_test/doc/api/a00233.html @@ -0,0 +1,372 @@ + + + + + + +0.9.8: GLM_GTX_transform2 + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > proj2D (const tmat3x3< T, P > &m, const tvec3< T, P > &normal)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > proj3D (const tmat4x4< T, P > &m, const tvec3< T, P > &normal)
 
template<typename valType , precision P>
GLM_FUNC_DECL tmat4x4< valType, P > scaleBias (valType scale, valType bias)
 
template<typename valType , precision P>
GLM_FUNC_DECL tmat4x4< valType, P > scaleBias (tmat4x4< valType, P > const &m, valType scale, valType bias)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > shearX2D (tmat3x3< T, P > const &m, T y)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > shearX3D (const tmat4x4< T, P > &m, T y, T z)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat3x3< T, P > shearY2D (tmat3x3< T, P > const &m, T x)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > shearY3D (const tmat4x4< T, P > &m, T x, T z)
 
template<typename T , precision P>
GLM_FUNC_DECL tmat4x4< T, P > shearZ3D (const tmat4x4< T, P > &m, T x, T y)
 
+

Detailed Description

+

Add extra transformation matrices.

+

<glm/gtx/transform2.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat3x3<T, P> glm::proj2D (const tmat3x3< T, P > & m,
const tvec3< T, P > & normal 
)
+
+ +

Build planar projection matrix along normal axis.

+

From GLM_GTX_transform2 extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::proj3D (const tmat4x4< T, P > & m,
const tvec3< T, P > & normal 
)
+
+ +

Build planar projection matrix along normal axis.

+

From GLM_GTX_transform2 extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<valType, P> glm::scaleBias (valType scale,
valType bias 
)
+
+ +

Build a scale bias matrix.

+

From GLM_GTX_transform2 extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<valType, P> glm::scaleBias (tmat4x4< valType, P > const & m,
valType scale,
valType bias 
)
+
+ +

Build a scale bias matrix.

+

From GLM_GTX_transform2 extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat3x3<T, P> glm::shearX2D (tmat3x3< T, P > const & m,
y 
)
+
+ +

Transforms a matrix with a shearing on X axis.

+

From GLM_GTX_transform2 extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::shearX3D (const tmat4x4< T, P > & m,
y,
z 
)
+
+ +

Transforms a matrix with a shearing on X axis From GLM_GTX_transform2 extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat3x3<T, P> glm::shearY2D (tmat3x3< T, P > const & m,
x 
)
+
+ +

Transforms a matrix with a shearing on Y axis.

+

From GLM_GTX_transform2 extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::shearY3D (const tmat4x4< T, P > & m,
x,
z 
)
+
+ +

Transforms a matrix with a shearing on Y axis.

+

From GLM_GTX_transform2 extension.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL tmat4x4<T, P> glm::shearZ3D (const tmat4x4< T, P > & m,
x,
y 
)
+
+ +

Transforms a matrix with a shearing on Z axis.

+

From GLM_GTX_transform2 extension.

+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00234.html b/third_party/glm_test/doc/api/a00234.html new file mode 100644 index 0000000000000..a3f70306fafbc --- /dev/null +++ b/third_party/glm_test/doc/api/a00234.html @@ -0,0 +1,7811 @@ + + + + + + +0.9.8: GLM_GTX_type_aligned + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_type_aligned
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

 GLM_ALIGNED_TYPEDEF (lowp_int8, aligned_lowp_int8, 1)
 
 GLM_ALIGNED_TYPEDEF (lowp_int16, aligned_lowp_int16, 2)
 
 GLM_ALIGNED_TYPEDEF (lowp_int32, aligned_lowp_int32, 4)
 
 GLM_ALIGNED_TYPEDEF (lowp_int64, aligned_lowp_int64, 8)
 
 GLM_ALIGNED_TYPEDEF (lowp_int8_t, aligned_lowp_int8_t, 1)
 
 GLM_ALIGNED_TYPEDEF (lowp_int16_t, aligned_lowp_int16_t, 2)
 
 GLM_ALIGNED_TYPEDEF (lowp_int32_t, aligned_lowp_int32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (lowp_int64_t, aligned_lowp_int64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (lowp_i8, aligned_lowp_i8, 1)
 
 GLM_ALIGNED_TYPEDEF (lowp_i16, aligned_lowp_i16, 2)
 
 GLM_ALIGNED_TYPEDEF (lowp_i32, aligned_lowp_i32, 4)
 
 GLM_ALIGNED_TYPEDEF (lowp_i64, aligned_lowp_i64, 8)
 
 GLM_ALIGNED_TYPEDEF (mediump_int8, aligned_mediump_int8, 1)
 
 GLM_ALIGNED_TYPEDEF (mediump_int16, aligned_mediump_int16, 2)
 
 GLM_ALIGNED_TYPEDEF (mediump_int32, aligned_mediump_int32, 4)
 
 GLM_ALIGNED_TYPEDEF (mediump_int64, aligned_mediump_int64, 8)
 
 GLM_ALIGNED_TYPEDEF (mediump_int8_t, aligned_mediump_int8_t, 1)
 
 GLM_ALIGNED_TYPEDEF (mediump_int16_t, aligned_mediump_int16_t, 2)
 
 GLM_ALIGNED_TYPEDEF (mediump_int32_t, aligned_mediump_int32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (mediump_int64_t, aligned_mediump_int64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (mediump_i8, aligned_mediump_i8, 1)
 
 GLM_ALIGNED_TYPEDEF (mediump_i16, aligned_mediump_i16, 2)
 
 GLM_ALIGNED_TYPEDEF (mediump_i32, aligned_mediump_i32, 4)
 
 GLM_ALIGNED_TYPEDEF (mediump_i64, aligned_mediump_i64, 8)
 
 GLM_ALIGNED_TYPEDEF (highp_int8, aligned_highp_int8, 1)
 
 GLM_ALIGNED_TYPEDEF (highp_int16, aligned_highp_int16, 2)
 
 GLM_ALIGNED_TYPEDEF (highp_int32, aligned_highp_int32, 4)
 
 GLM_ALIGNED_TYPEDEF (highp_int64, aligned_highp_int64, 8)
 
 GLM_ALIGNED_TYPEDEF (highp_int8_t, aligned_highp_int8_t, 1)
 
 GLM_ALIGNED_TYPEDEF (highp_int16_t, aligned_highp_int16_t, 2)
 
 GLM_ALIGNED_TYPEDEF (highp_int32_t, aligned_highp_int32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (highp_int64_t, aligned_highp_int64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (highp_i8, aligned_highp_i8, 1)
 
 GLM_ALIGNED_TYPEDEF (highp_i16, aligned_highp_i16, 2)
 
 GLM_ALIGNED_TYPEDEF (highp_i32, aligned_highp_i32, 4)
 
 GLM_ALIGNED_TYPEDEF (highp_i64, aligned_highp_i64, 8)
 
 GLM_ALIGNED_TYPEDEF (int8, aligned_int8, 1)
 
 GLM_ALIGNED_TYPEDEF (int16, aligned_int16, 2)
 
 GLM_ALIGNED_TYPEDEF (int32, aligned_int32, 4)
 
 GLM_ALIGNED_TYPEDEF (int64, aligned_int64, 8)
 
 GLM_ALIGNED_TYPEDEF (int8_t, aligned_int8_t, 1)
 
 GLM_ALIGNED_TYPEDEF (int16_t, aligned_int16_t, 2)
 
 GLM_ALIGNED_TYPEDEF (int32_t, aligned_int32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (int64_t, aligned_int64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (i8, aligned_i8, 1)
 
 GLM_ALIGNED_TYPEDEF (i16, aligned_i16, 2)
 
 GLM_ALIGNED_TYPEDEF (i32, aligned_i32, 4)
 
 GLM_ALIGNED_TYPEDEF (i64, aligned_i64, 8)
 
 GLM_ALIGNED_TYPEDEF (ivec1, aligned_ivec1, 4)
 
 GLM_ALIGNED_TYPEDEF (ivec2, aligned_ivec2, 8)
 
 GLM_ALIGNED_TYPEDEF (ivec3, aligned_ivec3, 16)
 
 GLM_ALIGNED_TYPEDEF (ivec4, aligned_ivec4, 16)
 
 GLM_ALIGNED_TYPEDEF (i8vec1, aligned_i8vec1, 1)
 
 GLM_ALIGNED_TYPEDEF (i8vec2, aligned_i8vec2, 2)
 
 GLM_ALIGNED_TYPEDEF (i8vec3, aligned_i8vec3, 4)
 
 GLM_ALIGNED_TYPEDEF (i8vec4, aligned_i8vec4, 4)
 
 GLM_ALIGNED_TYPEDEF (i16vec1, aligned_i16vec1, 2)
 
 GLM_ALIGNED_TYPEDEF (i16vec2, aligned_i16vec2, 4)
 
 GLM_ALIGNED_TYPEDEF (i16vec3, aligned_i16vec3, 8)
 
 GLM_ALIGNED_TYPEDEF (i16vec4, aligned_i16vec4, 8)
 
 GLM_ALIGNED_TYPEDEF (i32vec1, aligned_i32vec1, 4)
 
 GLM_ALIGNED_TYPEDEF (i32vec2, aligned_i32vec2, 8)
 
 GLM_ALIGNED_TYPEDEF (i32vec3, aligned_i32vec3, 16)
 
 GLM_ALIGNED_TYPEDEF (i32vec4, aligned_i32vec4, 16)
 
 GLM_ALIGNED_TYPEDEF (i64vec1, aligned_i64vec1, 8)
 
 GLM_ALIGNED_TYPEDEF (i64vec2, aligned_i64vec2, 16)
 
 GLM_ALIGNED_TYPEDEF (i64vec3, aligned_i64vec3, 32)
 
 GLM_ALIGNED_TYPEDEF (i64vec4, aligned_i64vec4, 32)
 
 GLM_ALIGNED_TYPEDEF (lowp_uint8, aligned_lowp_uint8, 1)
 
 GLM_ALIGNED_TYPEDEF (lowp_uint16, aligned_lowp_uint16, 2)
 
 GLM_ALIGNED_TYPEDEF (lowp_uint32, aligned_lowp_uint32, 4)
 
 GLM_ALIGNED_TYPEDEF (lowp_uint64, aligned_lowp_uint64, 8)
 
 GLM_ALIGNED_TYPEDEF (lowp_uint8_t, aligned_lowp_uint8_t, 1)
 
 GLM_ALIGNED_TYPEDEF (lowp_uint16_t, aligned_lowp_uint16_t, 2)
 
 GLM_ALIGNED_TYPEDEF (lowp_uint32_t, aligned_lowp_uint32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (lowp_uint64_t, aligned_lowp_uint64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (lowp_u8, aligned_lowp_u8, 1)
 
 GLM_ALIGNED_TYPEDEF (lowp_u16, aligned_lowp_u16, 2)
 
 GLM_ALIGNED_TYPEDEF (lowp_u32, aligned_lowp_u32, 4)
 
 GLM_ALIGNED_TYPEDEF (lowp_u64, aligned_lowp_u64, 8)
 
 GLM_ALIGNED_TYPEDEF (mediump_uint8, aligned_mediump_uint8, 1)
 
 GLM_ALIGNED_TYPEDEF (mediump_uint16, aligned_mediump_uint16, 2)
 
 GLM_ALIGNED_TYPEDEF (mediump_uint32, aligned_mediump_uint32, 4)
 
 GLM_ALIGNED_TYPEDEF (mediump_uint64, aligned_mediump_uint64, 8)
 
 GLM_ALIGNED_TYPEDEF (mediump_uint8_t, aligned_mediump_uint8_t, 1)
 
 GLM_ALIGNED_TYPEDEF (mediump_uint16_t, aligned_mediump_uint16_t, 2)
 
 GLM_ALIGNED_TYPEDEF (mediump_uint32_t, aligned_mediump_uint32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (mediump_uint64_t, aligned_mediump_uint64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (mediump_u8, aligned_mediump_u8, 1)
 
 GLM_ALIGNED_TYPEDEF (mediump_u16, aligned_mediump_u16, 2)
 
 GLM_ALIGNED_TYPEDEF (mediump_u32, aligned_mediump_u32, 4)
 
 GLM_ALIGNED_TYPEDEF (mediump_u64, aligned_mediump_u64, 8)
 
 GLM_ALIGNED_TYPEDEF (highp_uint8, aligned_highp_uint8, 1)
 
 GLM_ALIGNED_TYPEDEF (highp_uint16, aligned_highp_uint16, 2)
 
 GLM_ALIGNED_TYPEDEF (highp_uint32, aligned_highp_uint32, 4)
 
 GLM_ALIGNED_TYPEDEF (highp_uint64, aligned_highp_uint64, 8)
 
 GLM_ALIGNED_TYPEDEF (highp_uint8_t, aligned_highp_uint8_t, 1)
 
 GLM_ALIGNED_TYPEDEF (highp_uint16_t, aligned_highp_uint16_t, 2)
 
 GLM_ALIGNED_TYPEDEF (highp_uint32_t, aligned_highp_uint32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (highp_uint64_t, aligned_highp_uint64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (highp_u8, aligned_highp_u8, 1)
 
 GLM_ALIGNED_TYPEDEF (highp_u16, aligned_highp_u16, 2)
 
 GLM_ALIGNED_TYPEDEF (highp_u32, aligned_highp_u32, 4)
 
 GLM_ALIGNED_TYPEDEF (highp_u64, aligned_highp_u64, 8)
 
 GLM_ALIGNED_TYPEDEF (uint8, aligned_uint8, 1)
 
 GLM_ALIGNED_TYPEDEF (uint16, aligned_uint16, 2)
 
 GLM_ALIGNED_TYPEDEF (uint32, aligned_uint32, 4)
 
 GLM_ALIGNED_TYPEDEF (uint64, aligned_uint64, 8)
 
 GLM_ALIGNED_TYPEDEF (uint8_t, aligned_uint8_t, 1)
 
 GLM_ALIGNED_TYPEDEF (uint16_t, aligned_uint16_t, 2)
 
 GLM_ALIGNED_TYPEDEF (uint32_t, aligned_uint32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (uint64_t, aligned_uint64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (u8, aligned_u8, 1)
 
 GLM_ALIGNED_TYPEDEF (u16, aligned_u16, 2)
 
 GLM_ALIGNED_TYPEDEF (u32, aligned_u32, 4)
 
 GLM_ALIGNED_TYPEDEF (u64, aligned_u64, 8)
 
 GLM_ALIGNED_TYPEDEF (uvec1, aligned_uvec1, 4)
 
 GLM_ALIGNED_TYPEDEF (uvec2, aligned_uvec2, 8)
 
 GLM_ALIGNED_TYPEDEF (uvec3, aligned_uvec3, 16)
 
 GLM_ALIGNED_TYPEDEF (uvec4, aligned_uvec4, 16)
 
 GLM_ALIGNED_TYPEDEF (u8vec1, aligned_u8vec1, 1)
 
 GLM_ALIGNED_TYPEDEF (u8vec2, aligned_u8vec2, 2)
 
 GLM_ALIGNED_TYPEDEF (u8vec3, aligned_u8vec3, 4)
 
 GLM_ALIGNED_TYPEDEF (u8vec4, aligned_u8vec4, 4)
 
 GLM_ALIGNED_TYPEDEF (u16vec1, aligned_u16vec1, 2)
 
 GLM_ALIGNED_TYPEDEF (u16vec2, aligned_u16vec2, 4)
 
 GLM_ALIGNED_TYPEDEF (u16vec3, aligned_u16vec3, 8)
 
 GLM_ALIGNED_TYPEDEF (u16vec4, aligned_u16vec4, 8)
 
 GLM_ALIGNED_TYPEDEF (u32vec1, aligned_u32vec1, 4)
 
 GLM_ALIGNED_TYPEDEF (u32vec2, aligned_u32vec2, 8)
 
 GLM_ALIGNED_TYPEDEF (u32vec3, aligned_u32vec3, 16)
 
 GLM_ALIGNED_TYPEDEF (u32vec4, aligned_u32vec4, 16)
 
 GLM_ALIGNED_TYPEDEF (u64vec1, aligned_u64vec1, 8)
 
 GLM_ALIGNED_TYPEDEF (u64vec2, aligned_u64vec2, 16)
 
 GLM_ALIGNED_TYPEDEF (u64vec3, aligned_u64vec3, 32)
 
 GLM_ALIGNED_TYPEDEF (u64vec4, aligned_u64vec4, 32)
 
 GLM_ALIGNED_TYPEDEF (float32, aligned_float32, 4)
 
 GLM_ALIGNED_TYPEDEF (float64, aligned_float64, 8)
 
 GLM_ALIGNED_TYPEDEF (float32_t, aligned_float32_t, 4)
 
 GLM_ALIGNED_TYPEDEF (float64_t, aligned_float64_t, 8)
 
 GLM_ALIGNED_TYPEDEF (float32, aligned_f32, 4)
 
 GLM_ALIGNED_TYPEDEF (float64, aligned_f64, 8)
 
 GLM_ALIGNED_TYPEDEF (vec1, aligned_vec1, 4)
 
 GLM_ALIGNED_TYPEDEF (vec2, aligned_vec2, 8)
 
 GLM_ALIGNED_TYPEDEF (vec3, aligned_vec3, 16)
 
 GLM_ALIGNED_TYPEDEF (vec4, aligned_vec4, 16)
 
 GLM_ALIGNED_TYPEDEF (fvec1, aligned_fvec1, 4)
 
 GLM_ALIGNED_TYPEDEF (fvec2, aligned_fvec2, 8)
 
 GLM_ALIGNED_TYPEDEF (fvec3, aligned_fvec3, 16)
 
 GLM_ALIGNED_TYPEDEF (fvec4, aligned_fvec4, 16)
 
 GLM_ALIGNED_TYPEDEF (f32vec1, aligned_f32vec1, 4)
 
 GLM_ALIGNED_TYPEDEF (f32vec2, aligned_f32vec2, 8)
 
 GLM_ALIGNED_TYPEDEF (f32vec3, aligned_f32vec3, 16)
 
 GLM_ALIGNED_TYPEDEF (f32vec4, aligned_f32vec4, 16)
 
 GLM_ALIGNED_TYPEDEF (dvec1, aligned_dvec1, 8)
 
 GLM_ALIGNED_TYPEDEF (dvec2, aligned_dvec2, 16)
 
 GLM_ALIGNED_TYPEDEF (dvec3, aligned_dvec3, 32)
 
 GLM_ALIGNED_TYPEDEF (dvec4, aligned_dvec4, 32)
 
 GLM_ALIGNED_TYPEDEF (f64vec1, aligned_f64vec1, 8)
 
 GLM_ALIGNED_TYPEDEF (f64vec2, aligned_f64vec2, 16)
 
 GLM_ALIGNED_TYPEDEF (f64vec3, aligned_f64vec3, 32)
 
 GLM_ALIGNED_TYPEDEF (f64vec4, aligned_f64vec4, 32)
 
 GLM_ALIGNED_TYPEDEF (mat2, aligned_mat2, 16)
 
 GLM_ALIGNED_TYPEDEF (mat3, aligned_mat3, 16)
 
 GLM_ALIGNED_TYPEDEF (mat4, aligned_mat4, 16)
 
 GLM_ALIGNED_TYPEDEF (mat2x2, aligned_mat2x2, 16)
 
 GLM_ALIGNED_TYPEDEF (mat3x3, aligned_mat3x3, 16)
 
 GLM_ALIGNED_TYPEDEF (mat4x4, aligned_mat4x4, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat2x2, aligned_fmat2, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat3x3, aligned_fmat3, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat4x4, aligned_fmat4, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat2x2, aligned_fmat2x2, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat2x3, aligned_fmat2x3, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat2x4, aligned_fmat2x4, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat3x2, aligned_fmat3x2, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat3x3, aligned_fmat3x3, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat3x4, aligned_fmat3x4, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat4x2, aligned_fmat4x2, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat4x3, aligned_fmat4x3, 16)
 
 GLM_ALIGNED_TYPEDEF (fmat4x4, aligned_fmat4x4, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat2x2, aligned_f32mat2, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat3x3, aligned_f32mat3, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat4x4, aligned_f32mat4, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat2x2, aligned_f32mat2x2, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat2x3, aligned_f32mat2x3, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat2x4, aligned_f32mat2x4, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat3x2, aligned_f32mat3x2, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat3x3, aligned_f32mat3x3, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat3x4, aligned_f32mat3x4, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat4x2, aligned_f32mat4x2, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat4x3, aligned_f32mat4x3, 16)
 
 GLM_ALIGNED_TYPEDEF (f32mat4x4, aligned_f32mat4x4, 16)
 
 GLM_ALIGNED_TYPEDEF (f64mat2x2, aligned_f64mat2, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat3x3, aligned_f64mat3, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat4x4, aligned_f64mat4, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat2x2, aligned_f64mat2x2, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat2x3, aligned_f64mat2x3, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat2x4, aligned_f64mat2x4, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat3x2, aligned_f64mat3x2, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat3x3, aligned_f64mat3x3, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat3x4, aligned_f64mat3x4, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat4x2, aligned_f64mat4x2, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat4x3, aligned_f64mat4x3, 32)
 
 GLM_ALIGNED_TYPEDEF (f64mat4x4, aligned_f64mat4x4, 32)
 
 GLM_ALIGNED_TYPEDEF (quat, aligned_quat, 16)
 
 GLM_ALIGNED_TYPEDEF (fquat, aligned_fquat, 16)
 
 GLM_ALIGNED_TYPEDEF (dquat, aligned_dquat, 32)
 
 GLM_ALIGNED_TYPEDEF (f32quat, aligned_f32quat, 16)
 
 GLM_ALIGNED_TYPEDEF (f64quat, aligned_f64quat, 32)
 
+

Detailed Description

+

Defines aligned types.

+

Precision types defines aligned types.

+

<glm/gtx/type_aligned.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_int8 ,
aligned_lowp_int8 ,
 
)
+
+ +

Low precision 8 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_int16 ,
aligned_lowp_int16 ,
 
)
+
+ +

Low precision 16 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_int32 ,
aligned_lowp_int32 ,
 
)
+
+ +

Low precision 32 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_int64 ,
aligned_lowp_int64 ,
 
)
+
+ +

Low precision 64 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_int8_t ,
aligned_lowp_int8_t ,
 
)
+
+ +

Low precision 8 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_int16_t ,
aligned_lowp_int16_t ,
 
)
+
+ +

Low precision 16 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_int32_t ,
aligned_lowp_int32_t ,
 
)
+
+ +

Low precision 32 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_int64_t ,
aligned_lowp_int64_t ,
 
)
+
+ +

Low precision 64 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_i8 ,
aligned_lowp_i8 ,
 
)
+
+ +

Low precision 8 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_i16 ,
aligned_lowp_i16 ,
 
)
+
+ +

Low precision 16 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_i32 ,
aligned_lowp_i32 ,
 
)
+
+ +

Low precision 32 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_i64 ,
aligned_lowp_i64 ,
 
)
+
+ +

Low precision 64 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_int8 ,
aligned_mediump_int8 ,
 
)
+
+ +

Medium precision 8 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_int16 ,
aligned_mediump_int16 ,
 
)
+
+ +

Medium precision 16 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_int32 ,
aligned_mediump_int32 ,
 
)
+
+ +

Medium precision 32 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_int64 ,
aligned_mediump_int64 ,
 
)
+
+ +

Medium precision 64 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_int8_t ,
aligned_mediump_int8_t ,
 
)
+
+ +

Medium precision 8 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_int16_t ,
aligned_mediump_int16_t ,
 
)
+
+ +

Medium precision 16 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_int32_t ,
aligned_mediump_int32_t ,
 
)
+
+ +

Medium precision 32 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_int64_t ,
aligned_mediump_int64_t ,
 
)
+
+ +

Medium precision 64 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_i8 ,
aligned_mediump_i8 ,
 
)
+
+ +

Medium precision 8 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_i16 ,
aligned_mediump_i16 ,
 
)
+
+ +

Medium precision 16 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_i32 ,
aligned_mediump_i32 ,
 
)
+
+ +

Medium precision 32 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_i64 ,
aligned_mediump_i64 ,
 
)
+
+ +

Medium precision 64 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_int8 ,
aligned_highp_int8 ,
 
)
+
+ +

High precision 8 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_int16 ,
aligned_highp_int16 ,
 
)
+
+ +

High precision 16 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_int32 ,
aligned_highp_int32 ,
 
)
+
+ +

High precision 32 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_int64 ,
aligned_highp_int64 ,
 
)
+
+ +

High precision 64 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_int8_t ,
aligned_highp_int8_t ,
 
)
+
+ +

High precision 8 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_int16_t ,
aligned_highp_int16_t ,
 
)
+
+ +

High precision 16 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_int32_t ,
aligned_highp_int32_t ,
 
)
+
+ +

High precision 32 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_int64_t ,
aligned_highp_int64_t ,
 
)
+
+ +

High precision 64 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_i8 ,
aligned_highp_i8 ,
 
)
+
+ +

High precision 8 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_i16 ,
aligned_highp_i16 ,
 
)
+
+ +

High precision 16 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_i32 ,
aligned_highp_i32 ,
 
)
+
+ +

High precision 32 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_i64 ,
aligned_highp_i64 ,
 
)
+
+ +

High precision 64 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (int8 ,
aligned_int8 ,
 
)
+
+ +

Default precision 8 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (int16 ,
aligned_int16 ,
 
)
+
+ +

Default precision 16 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (int32 ,
aligned_int32 ,
 
)
+
+ +

Default precision 32 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (int64 ,
aligned_int64 ,
 
)
+
+ +

Default precision 64 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (int8_t ,
aligned_int8_t ,
 
)
+
+ +

Default precision 8 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (int16_t ,
aligned_int16_t ,
 
)
+
+ +

Default precision 16 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (int32_t ,
aligned_int32_t ,
 
)
+
+ +

Default precision 32 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (int64_t ,
aligned_int64_t ,
 
)
+
+ +

Default precision 64 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i8 ,
aligned_i8 ,
 
)
+
+ +

Default precision 8 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i16 ,
aligned_i16 ,
 
)
+
+ +

Default precision 16 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i32 ,
aligned_i32 ,
 
)
+
+ +

Default precision 32 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i64 ,
aligned_i64 ,
 
)
+
+ +

Default precision 64 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (ivec1 ,
aligned_ivec1 ,
 
)
+
+ +

Default precision 32 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (ivec2 ,
aligned_ivec2 ,
 
)
+
+ +

Default precision 32 bit signed integer aligned vector of 2 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (ivec3 ,
aligned_ivec3 ,
16  
)
+
+ +

Default precision 32 bit signed integer aligned vector of 3 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (ivec4 ,
aligned_ivec4 ,
16  
)
+
+ +

Default precision 32 bit signed integer aligned vector of 4 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i8vec1 ,
aligned_i8vec1 ,
 
)
+
+ +

Default precision 8 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i8vec2 ,
aligned_i8vec2 ,
 
)
+
+ +

Default precision 8 bit signed integer aligned vector of 2 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i8vec3 ,
aligned_i8vec3 ,
 
)
+
+ +

Default precision 8 bit signed integer aligned vector of 3 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i8vec4 ,
aligned_i8vec4 ,
 
)
+
+ +

Default precision 8 bit signed integer aligned vector of 4 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i16vec1 ,
aligned_i16vec1 ,
 
)
+
+ +

Default precision 16 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i16vec2 ,
aligned_i16vec2 ,
 
)
+
+ +

Default precision 16 bit signed integer aligned vector of 2 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i16vec3 ,
aligned_i16vec3 ,
 
)
+
+ +

Default precision 16 bit signed integer aligned vector of 3 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i16vec4 ,
aligned_i16vec4 ,
 
)
+
+ +

Default precision 16 bit signed integer aligned vector of 4 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i32vec1 ,
aligned_i32vec1 ,
 
)
+
+ +

Default precision 32 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i32vec2 ,
aligned_i32vec2 ,
 
)
+
+ +

Default precision 32 bit signed integer aligned vector of 2 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i32vec3 ,
aligned_i32vec3 ,
16  
)
+
+ +

Default precision 32 bit signed integer aligned vector of 3 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i32vec4 ,
aligned_i32vec4 ,
16  
)
+
+ +

Default precision 32 bit signed integer aligned vector of 4 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i64vec1 ,
aligned_i64vec1 ,
 
)
+
+ +

Default precision 64 bit signed integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i64vec2 ,
aligned_i64vec2 ,
16  
)
+
+ +

Default precision 64 bit signed integer aligned vector of 2 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i64vec3 ,
aligned_i64vec3 ,
32  
)
+
+ +

Default precision 64 bit signed integer aligned vector of 3 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (i64vec4 ,
aligned_i64vec4 ,
32  
)
+
+ +

Default precision 64 bit signed integer aligned vector of 4 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_uint8 ,
aligned_lowp_uint8 ,
 
)
+
+ +

Low precision 8 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_uint16 ,
aligned_lowp_uint16 ,
 
)
+
+ +

Low precision 16 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_uint32 ,
aligned_lowp_uint32 ,
 
)
+
+ +

Low precision 32 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_uint64 ,
aligned_lowp_uint64 ,
 
)
+
+ +

Low precision 64 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_uint8_t ,
aligned_lowp_uint8_t ,
 
)
+
+ +

Low precision 8 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_uint16_t ,
aligned_lowp_uint16_t ,
 
)
+
+ +

Low precision 16 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_uint32_t ,
aligned_lowp_uint32_t ,
 
)
+
+ +

Low precision 32 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_uint64_t ,
aligned_lowp_uint64_t ,
 
)
+
+ +

Low precision 64 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_u8 ,
aligned_lowp_u8 ,
 
)
+
+ +

Low precision 8 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_u16 ,
aligned_lowp_u16 ,
 
)
+
+ +

Low precision 16 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_u32 ,
aligned_lowp_u32 ,
 
)
+
+ +

Low precision 32 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (lowp_u64 ,
aligned_lowp_u64 ,
 
)
+
+ +

Low precision 64 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_uint8 ,
aligned_mediump_uint8 ,
 
)
+
+ +

Medium precision 8 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_uint16 ,
aligned_mediump_uint16 ,
 
)
+
+ +

Medium precision 16 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_uint32 ,
aligned_mediump_uint32 ,
 
)
+
+ +

Medium precision 32 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_uint64 ,
aligned_mediump_uint64 ,
 
)
+
+ +

Medium precision 64 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_uint8_t ,
aligned_mediump_uint8_t ,
 
)
+
+ +

Medium precision 8 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_uint16_t ,
aligned_mediump_uint16_t ,
 
)
+
+ +

Medium precision 16 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_uint32_t ,
aligned_mediump_uint32_t ,
 
)
+
+ +

Medium precision 32 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_uint64_t ,
aligned_mediump_uint64_t ,
 
)
+
+ +

Medium precision 64 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_u8 ,
aligned_mediump_u8 ,
 
)
+
+ +

Medium precision 8 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_u16 ,
aligned_mediump_u16 ,
 
)
+
+ +

Medium precision 16 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_u32 ,
aligned_mediump_u32 ,
 
)
+
+ +

Medium precision 32 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mediump_u64 ,
aligned_mediump_u64 ,
 
)
+
+ +

Medium precision 64 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_uint8 ,
aligned_highp_uint8 ,
 
)
+
+ +

High precision 8 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_uint16 ,
aligned_highp_uint16 ,
 
)
+
+ +

High precision 16 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_uint32 ,
aligned_highp_uint32 ,
 
)
+
+ +

High precision 32 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_uint64 ,
aligned_highp_uint64 ,
 
)
+
+ +

High precision 64 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_uint8_t ,
aligned_highp_uint8_t ,
 
)
+
+ +

High precision 8 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_uint16_t ,
aligned_highp_uint16_t ,
 
)
+
+ +

High precision 16 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_uint32_t ,
aligned_highp_uint32_t ,
 
)
+
+ +

High precision 32 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_uint64_t ,
aligned_highp_uint64_t ,
 
)
+
+ +

High precision 64 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_u8 ,
aligned_highp_u8 ,
 
)
+
+ +

High precision 8 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_u16 ,
aligned_highp_u16 ,
 
)
+
+ +

High precision 16 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_u32 ,
aligned_highp_u32 ,
 
)
+
+ +

High precision 32 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (highp_u64 ,
aligned_highp_u64 ,
 
)
+
+ +

High precision 64 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (uint8 ,
aligned_uint8 ,
 
)
+
+ +

Default precision 8 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (uint16 ,
aligned_uint16 ,
 
)
+
+ +

Default precision 16 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (uint32 ,
aligned_uint32 ,
 
)
+
+ +

Default precision 32 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (uint64 ,
aligned_uint64 ,
 
)
+
+ +

Default precision 64 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (uint8_t ,
aligned_uint8_t ,
 
)
+
+ +

Default precision 8 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (uint16_t ,
aligned_uint16_t ,
 
)
+
+ +

Default precision 16 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (uint32_t ,
aligned_uint32_t ,
 
)
+
+ +

Default precision 32 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (uint64_t ,
aligned_uint64_t ,
 
)
+
+ +

Default precision 64 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u8 ,
aligned_u8 ,
 
)
+
+ +

Default precision 8 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u16 ,
aligned_u16 ,
 
)
+
+ +

Default precision 16 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u32 ,
aligned_u32 ,
 
)
+
+ +

Default precision 32 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u64 ,
aligned_u64 ,
 
)
+
+ +

Default precision 64 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (uvec1 ,
aligned_uvec1 ,
 
)
+
+ +

Default precision 32 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (uvec2 ,
aligned_uvec2 ,
 
)
+
+ +

Default precision 32 bit unsigned integer aligned vector of 2 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (uvec3 ,
aligned_uvec3 ,
16  
)
+
+ +

Default precision 32 bit unsigned integer aligned vector of 3 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (uvec4 ,
aligned_uvec4 ,
16  
)
+
+ +

Default precision 32 bit unsigned integer aligned vector of 4 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u8vec1 ,
aligned_u8vec1 ,
 
)
+
+ +

Default precision 8 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u8vec2 ,
aligned_u8vec2 ,
 
)
+
+ +

Default precision 8 bit unsigned integer aligned vector of 2 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u8vec3 ,
aligned_u8vec3 ,
 
)
+
+ +

Default precision 8 bit unsigned integer aligned vector of 3 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u8vec4 ,
aligned_u8vec4 ,
 
)
+
+ +

Default precision 8 bit unsigned integer aligned vector of 4 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u16vec1 ,
aligned_u16vec1 ,
 
)
+
+ +

Default precision 16 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u16vec2 ,
aligned_u16vec2 ,
 
)
+
+ +

Default precision 16 bit unsigned integer aligned vector of 2 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u16vec3 ,
aligned_u16vec3 ,
 
)
+
+ +

Default precision 16 bit unsigned integer aligned vector of 3 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u16vec4 ,
aligned_u16vec4 ,
 
)
+
+ +

Default precision 16 bit unsigned integer aligned vector of 4 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u32vec1 ,
aligned_u32vec1 ,
 
)
+
+ +

Default precision 32 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u32vec2 ,
aligned_u32vec2 ,
 
)
+
+ +

Default precision 32 bit unsigned integer aligned vector of 2 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u32vec3 ,
aligned_u32vec3 ,
16  
)
+
+ +

Default precision 32 bit unsigned integer aligned vector of 3 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u32vec4 ,
aligned_u32vec4 ,
16  
)
+
+ +

Default precision 32 bit unsigned integer aligned vector of 4 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u64vec1 ,
aligned_u64vec1 ,
 
)
+
+ +

Default precision 64 bit unsigned integer aligned scalar type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u64vec2 ,
aligned_u64vec2 ,
16  
)
+
+ +

Default precision 64 bit unsigned integer aligned vector of 2 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u64vec3 ,
aligned_u64vec3 ,
32  
)
+
+ +

Default precision 64 bit unsigned integer aligned vector of 3 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (u64vec4 ,
aligned_u64vec4 ,
32  
)
+
+ +

Default precision 64 bit unsigned integer aligned vector of 4 components type.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (float32 ,
aligned_float32 ,
 
)
+
+ +

32 bit single-precision floating-point aligned scalar.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (float64 ,
aligned_float64 ,
 
)
+
+ +

64 bit double-precision floating-point aligned scalar.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (float32_t ,
aligned_float32_t ,
 
)
+
+ +

32 bit single-precision floating-point aligned scalar.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (float64_t ,
aligned_float64_t ,
 
)
+
+ +

64 bit double-precision floating-point aligned scalar.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (float32 ,
aligned_f32 ,
 
)
+
+ +

32 bit single-precision floating-point aligned scalar.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (float64 ,
aligned_f64 ,
 
)
+
+ +

64 bit double-precision floating-point aligned scalar.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (vec1 ,
aligned_vec1 ,
 
)
+
+ +

Single-precision floating-point aligned vector of 1 component.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (vec2 ,
aligned_vec2 ,
 
)
+
+ +

Single-precision floating-point aligned vector of 2 components.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (vec3 ,
aligned_vec3 ,
16  
)
+
+ +

Single-precision floating-point aligned vector of 3 components.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (vec4 ,
aligned_vec4 ,
16  
)
+
+ +

Single-precision floating-point aligned vector of 4 components.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (fvec1 ,
aligned_fvec1 ,
 
)
+
+ +

Single-precision floating-point aligned vector of 1 component.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (fvec2 ,
aligned_fvec2 ,
 
)
+
+ +

Single-precision floating-point aligned vector of 2 components.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (fvec3 ,
aligned_fvec3 ,
16  
)
+
+ +

Single-precision floating-point aligned vector of 3 components.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (fvec4 ,
aligned_fvec4 ,
16  
)
+
+ +

Single-precision floating-point aligned vector of 4 components.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f32vec1 ,
aligned_f32vec1 ,
 
)
+
+ +

Single-precision floating-point aligned vector of 1 component.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f32vec2 ,
aligned_f32vec2 ,
 
)
+
+ +

Single-precision floating-point aligned vector of 2 components.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f32vec3 ,
aligned_f32vec3 ,
16  
)
+
+ +

Single-precision floating-point aligned vector of 3 components.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f32vec4 ,
aligned_f32vec4 ,
16  
)
+
+ +

Single-precision floating-point aligned vector of 4 components.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (dvec1 ,
aligned_dvec1 ,
 
)
+
+ +

Double-precision floating-point aligned vector of 1 component.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (dvec2 ,
aligned_dvec2 ,
16  
)
+
+ +

Double-precision floating-point aligned vector of 2 components.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (dvec3 ,
aligned_dvec3 ,
32  
)
+
+ +

Double-precision floating-point aligned vector of 3 components.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (dvec4 ,
aligned_dvec4 ,
32  
)
+
+ +

Double-precision floating-point aligned vector of 4 components.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f64vec1 ,
aligned_f64vec1 ,
 
)
+
+ +

Double-precision floating-point aligned vector of 1 component.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f64vec2 ,
aligned_f64vec2 ,
16  
)
+
+ +

Double-precision floating-point aligned vector of 2 components.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f64vec3 ,
aligned_f64vec3 ,
32  
)
+
+ +

Double-precision floating-point aligned vector of 3 components.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f64vec4 ,
aligned_f64vec4 ,
32  
)
+
+ +

Double-precision floating-point aligned vector of 4 components.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mat2 ,
aligned_mat2 ,
16  
)
+
+ +

Single-precision floating-point aligned 1x1 matrix.

+
See also
GLM_GTX_type_aligned Single-precision floating-point aligned 2x2 matrix.
+
+GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mat3 ,
aligned_mat3 ,
16  
)
+
+ +

Single-precision floating-point aligned 3x3 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mat4 ,
aligned_mat4 ,
16  
)
+
+ +

Single-precision floating-point aligned 4x4 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mat2x2 ,
aligned_mat2x2 ,
16  
)
+
+ +

Single-precision floating-point aligned 1x1 matrix.

+
See also
GLM_GTX_type_aligned Single-precision floating-point aligned 2x2 matrix.
+
+GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mat3x3 ,
aligned_mat3x3 ,
16  
)
+
+ +

Single-precision floating-point aligned 3x3 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (mat4x4 ,
aligned_mat4x4 ,
16  
)
+
+ +

Single-precision floating-point aligned 4x4 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (fmat2x2 ,
aligned_fmat2 ,
16  
)
+
+ +

Single-precision floating-point aligned 1x1 matrix.

+
See also
GLM_GTX_type_aligned Single-precision floating-point aligned 2x2 matrix.
+
+GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (fmat3x3 ,
aligned_fmat3 ,
16  
)
+
+ +

Single-precision floating-point aligned 3x3 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (fmat4x4 ,
aligned_fmat4 ,
16  
)
+
+ +

Single-precision floating-point aligned 4x4 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (fmat2x2 ,
aligned_fmat2x2 ,
16  
)
+
+ +

Single-precision floating-point aligned 1x1 matrix.

+
See also
GLM_GTX_type_aligned Single-precision floating-point aligned 2x2 matrix.
+
+GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (fmat2x3 ,
aligned_fmat2x3 ,
16  
)
+
+ +

Single-precision floating-point aligned 2x3 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (fmat2x4 ,
aligned_fmat2x4 ,
16  
)
+
+ +

Single-precision floating-point aligned 2x4 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (fmat3x2 ,
aligned_fmat3x2 ,
16  
)
+
+ +

Single-precision floating-point aligned 3x2 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (fmat3x3 ,
aligned_fmat3x3 ,
16  
)
+
+ +

Single-precision floating-point aligned 3x3 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (fmat3x4 ,
aligned_fmat3x4 ,
16  
)
+
+ +

Single-precision floating-point aligned 3x4 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (fmat4x2 ,
aligned_fmat4x2 ,
16  
)
+
+ +

Single-precision floating-point aligned 4x2 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (fmat4x3 ,
aligned_fmat4x3 ,
16  
)
+
+ +

Single-precision floating-point aligned 4x3 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (fmat4x4 ,
aligned_fmat4x4 ,
16  
)
+
+ +

Single-precision floating-point aligned 4x4 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f32mat2x2 ,
aligned_f32mat2 ,
16  
)
+
+ +

Single-precision floating-point aligned 1x1 matrix.

+
See also
GLM_GTX_type_aligned Single-precision floating-point aligned 2x2 matrix.
+
+GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f32mat3x3 ,
aligned_f32mat3 ,
16  
)
+
+ +

Single-precision floating-point aligned 3x3 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f32mat4x4 ,
aligned_f32mat4 ,
16  
)
+
+ +

Single-precision floating-point aligned 4x4 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f32mat2x2 ,
aligned_f32mat2x2 ,
16  
)
+
+ +

Single-precision floating-point aligned 1x1 matrix.

+
See also
GLM_GTX_type_aligned Single-precision floating-point aligned 2x2 matrix.
+
+GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f32mat2x3 ,
aligned_f32mat2x3 ,
16  
)
+
+ +

Single-precision floating-point aligned 2x3 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f32mat2x4 ,
aligned_f32mat2x4 ,
16  
)
+
+ +

Single-precision floating-point aligned 2x4 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f32mat3x2 ,
aligned_f32mat3x2 ,
16  
)
+
+ +

Single-precision floating-point aligned 3x2 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f32mat3x3 ,
aligned_f32mat3x3 ,
16  
)
+
+ +

Single-precision floating-point aligned 3x3 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f32mat3x4 ,
aligned_f32mat3x4 ,
16  
)
+
+ +

Single-precision floating-point aligned 3x4 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f32mat4x2 ,
aligned_f32mat4x2 ,
16  
)
+
+ +

Single-precision floating-point aligned 4x2 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f32mat4x3 ,
aligned_f32mat4x3 ,
16  
)
+
+ +

Single-precision floating-point aligned 4x3 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f32mat4x4 ,
aligned_f32mat4x4 ,
16  
)
+
+ +

Single-precision floating-point aligned 4x4 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f64mat2x2 ,
aligned_f64mat2 ,
32  
)
+
+ +

Double-precision floating-point aligned 1x1 matrix.

+
See also
GLM_GTX_type_aligned Double-precision floating-point aligned 2x2 matrix.
+
+GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f64mat3x3 ,
aligned_f64mat3 ,
32  
)
+
+ +

Double-precision floating-point aligned 3x3 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f64mat4x4 ,
aligned_f64mat4 ,
32  
)
+
+ +

Double-precision floating-point aligned 4x4 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f64mat2x2 ,
aligned_f64mat2x2 ,
32  
)
+
+ +

Double-precision floating-point aligned 1x1 matrix.

+
See also
GLM_GTX_type_aligned Double-precision floating-point aligned 2x2 matrix.
+
+GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f64mat2x3 ,
aligned_f64mat2x3 ,
32  
)
+
+ +

Double-precision floating-point aligned 2x3 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f64mat2x4 ,
aligned_f64mat2x4 ,
32  
)
+
+ +

Double-precision floating-point aligned 2x4 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f64mat3x2 ,
aligned_f64mat3x2 ,
32  
)
+
+ +

Double-precision floating-point aligned 3x2 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f64mat3x3 ,
aligned_f64mat3x3 ,
32  
)
+
+ +

Double-precision floating-point aligned 3x3 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f64mat3x4 ,
aligned_f64mat3x4 ,
32  
)
+
+ +

Double-precision floating-point aligned 3x4 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f64mat4x2 ,
aligned_f64mat4x2 ,
32  
)
+
+ +

Double-precision floating-point aligned 4x2 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f64mat4x3 ,
aligned_f64mat4x3 ,
32  
)
+
+ +

Double-precision floating-point aligned 4x3 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f64mat4x4 ,
aligned_f64mat4x4 ,
32  
)
+
+ +

Double-precision floating-point aligned 4x4 matrix.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (quat ,
aligned_quat ,
16  
)
+
+ +

Single-precision floating-point aligned quaternion.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (fquat ,
aligned_fquat ,
16  
)
+
+ +

Single-precision floating-point aligned quaternion.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (dquat ,
aligned_dquat ,
32  
)
+
+ +

Double-precision floating-point aligned quaternion.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f32quat ,
aligned_f32quat ,
16  
)
+
+ +

Single-precision floating-point aligned quaternion.

+
See also
GLM_GTX_type_aligned
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
glm::GLM_ALIGNED_TYPEDEF (f64quat ,
aligned_f64quat ,
32  
)
+
+ +

Double-precision floating-point aligned quaternion.

+
See also
GLM_GTX_type_aligned
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00235.html b/third_party/glm_test/doc/api/a00235.html new file mode 100644 index 0000000000000..01b2ce63bf8f8 --- /dev/null +++ b/third_party/glm_test/doc/api/a00235.html @@ -0,0 +1,54 @@ + + + + + + +0.9.8: GLM_GTX_type_trait + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+
+
+
+
+

Detailed Description

+

Defines traits for each type.

+

<glm/gtx/type_trait.hpp> need to be included to use these functionalities.

+
+ + + + diff --git a/third_party/glm_test/doc/api/a00236.html b/third_party/glm_test/doc/api/a00236.html new file mode 100644 index 0000000000000..c2dbaa06ff9ac --- /dev/null +++ b/third_party/glm_test/doc/api/a00236.html @@ -0,0 +1,163 @@ + + + + + + +0.9.8: GLM_GTX_vector_angle + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_vector_angle
+
+
+ + + + + + + + + + + +

+Functions

template<typename vecType >
GLM_FUNC_DECL vecType::value_type angle (vecType const &x, vecType const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL T orientedAngle (tvec2< T, P > const &x, tvec2< T, P > const &y)
 
template<typename T , precision P>
GLM_FUNC_DECL T orientedAngle (tvec3< T, P > const &x, tvec3< T, P > const &y, tvec3< T, P > const &ref)
 
+

Detailed Description

+

Compute angle between vectors.

+

<glm/gtx/vector_angle.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType::value_type glm::angle (vecType const & x,
vecType const & y 
)
+
+ +

Returns the absolute angle between two vectors.

+

Parameters need to be normalized.

See also
GLM_GTX_vector_angle extension.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::orientedAngle (tvec2< T, P > const & x,
tvec2< T, P > const & y 
)
+
+ +

Returns the oriented angle between two 2d vectors.

+

Parameters need to be normalized.

See also
GLM_GTX_vector_angle extension.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL T glm::orientedAngle (tvec3< T, P > const & x,
tvec3< T, P > const & y,
tvec3< T, P > const & ref 
)
+
+ +

Returns the oriented angle between two 3d vectors based from a reference axis.

+

Parameters need to be normalized.

See also
GLM_GTX_vector_angle extension.
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00237.html b/third_party/glm_test/doc/api/a00237.html new file mode 100644 index 0000000000000..7c817970090c3 --- /dev/null +++ b/third_party/glm_test/doc/api/a00237.html @@ -0,0 +1,271 @@ + + + + + + +0.9.8: GLM_GTX_vector_query + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+ +
+
GLM_GTX_vector_query
+
+
+ + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL bool areCollinear (vecType< T, P > const &v0, vecType< T, P > const &v1, T const &epsilon)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL bool areOrthogonal (vecType< T, P > const &v0, vecType< T, P > const &v1, T const &epsilon)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL bool areOrthonormal (vecType< T, P > const &v0, vecType< T, P > const &v1, T const &epsilon)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL vecType< bool, P > isCompNull (vecType< T, P > const &v, T const &epsilon)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL bool isNormalized (vecType< T, P > const &v, T const &epsilon)
 
template<typename T , precision P, template< typename, precision > class vecType>
GLM_FUNC_DECL bool isNull (vecType< T, P > const &v, T const &epsilon)
 
+

Detailed Description

+

Query informations of vector types.

+

<glm/gtx/vector_query.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::areCollinear (vecType< T, P > const & v0,
vecType< T, P > const & v1,
T const & epsilon 
)
+
+ +

Check whether two vectors are collinears.

+
See also
GLM_GTX_vector_query extensions.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::areOrthogonal (vecType< T, P > const & v0,
vecType< T, P > const & v1,
T const & epsilon 
)
+
+ +

Check whether two vectors are orthogonals.

+
See also
GLM_GTX_vector_query extensions.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::areOrthonormal (vecType< T, P > const & v0,
vecType< T, P > const & v1,
T const & epsilon 
)
+
+ +

Check whether two vectors are orthonormal.

+
See also
GLM_GTX_vector_query extensions.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL vecType<bool, P> glm::isCompNull (vecType< T, P > const & v,
T const & epsilon 
)
+
+ +

Check whether a each component of a vector is null.

+
See also
GLM_GTX_vector_query extensions.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::isNormalized (vecType< T, P > const & v,
T const & epsilon 
)
+
+ +

Check whether a vector is normalized.

+
See also
GLM_GTX_vector_query extensions.
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
GLM_FUNC_DECL bool glm::isNull (vecType< T, P > const & v,
T const & epsilon 
)
+
+ +

Check whether a vector is null.

+
See also
GLM_GTX_vector_query extensions.
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/a00238.html b/third_party/glm_test/doc/api/a00238.html new file mode 100644 index 0000000000000..17269bdfa99c0 --- /dev/null +++ b/third_party/glm_test/doc/api/a00238.html @@ -0,0 +1,149 @@ + + + + + + +0.9.8: GLM_GTX_wrap + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+ +
+ + + + + + + + + + + + + + +

+Functions

template<typename genType >
GLM_FUNC_DECL genType clamp (genType const &Texcoord)
 
template<typename genType >
GLM_FUNC_DECL genType mirrorClamp (genType const &Texcoord)
 
template<typename genType >
GLM_FUNC_DECL genType mirrorRepeat (genType const &Texcoord)
 
template<typename genType >
GLM_FUNC_DECL genType repeat (genType const &Texcoord)
 
+

Detailed Description

+

Wrapping mode of texture coordinates.

+

<glm/gtx/wrap.hpp> need to be included to use these functionalities.

+

Function Documentation

+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::clamp (genType const & Texcoord)
+
+ +

Simulate GL_CLAMP OpenGL wrap mode.

+
See also
GLM_GTX_wrap extension.
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::mirrorClamp (genType const & Texcoord)
+
+ +

Simulate GL_MIRRORED_REPEAT OpenGL wrap mode.

+
See also
GLM_GTX_wrap extension.
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::mirrorRepeat (genType const & Texcoord)
+
+ +

Simulate GL_MIRROR_REPEAT OpenGL wrap mode.

+
See also
GLM_GTX_wrap extension.
+ +
+
+ +
+
+ + + + + + + + +
GLM_FUNC_DECL genType glm::repeat (genType const & Texcoord)
+
+ +

Simulate GL_REPEAT OpenGL wrap mode.

+
See also
GLM_GTX_wrap extension.
+ +
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/arrowdown.png b/third_party/glm_test/doc/api/arrowdown.png new file mode 100644 index 0000000000000..0b63f6d38c4b9 Binary files /dev/null and b/third_party/glm_test/doc/api/arrowdown.png differ diff --git a/third_party/glm_test/doc/api/arrowright.png b/third_party/glm_test/doc/api/arrowright.png new file mode 100644 index 0000000000000..c6ee22f937a07 Binary files /dev/null and b/third_party/glm_test/doc/api/arrowright.png differ diff --git a/third_party/glm_test/doc/api/bc_s.png b/third_party/glm_test/doc/api/bc_s.png new file mode 100644 index 0000000000000..224b29aa9847d Binary files /dev/null and b/third_party/glm_test/doc/api/bc_s.png differ diff --git a/third_party/glm_test/doc/api/bdwn.png b/third_party/glm_test/doc/api/bdwn.png new file mode 100644 index 0000000000000..940a0b950443a Binary files /dev/null and b/third_party/glm_test/doc/api/bdwn.png differ diff --git a/third_party/glm_test/doc/api/closed.png b/third_party/glm_test/doc/api/closed.png new file mode 100644 index 0000000000000..98cc2c909da37 Binary files /dev/null and b/third_party/glm_test/doc/api/closed.png differ diff --git a/third_party/glm_test/doc/api/dir_1f76e953200861345293ade84ac7fb6c.html b/third_party/glm_test/doc/api/dir_1f76e953200861345293ade84ac7fb6c.html new file mode 100644 index 0000000000000..cafca19b81036 --- /dev/null +++ b/third_party/glm_test/doc/api/dir_1f76e953200861345293ade84ac7fb6c.html @@ -0,0 +1,61 @@ + + + + + + +0.9.8: G-Truc Directory Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + +
+
+
+
G-Truc Directory Reference
+
+
+ + + + +

+Directories

directory  glm
 
+
+ + + + diff --git a/third_party/glm_test/doc/api/dir_275089585c7fc1b5fd5d7d42c69cb1da.html b/third_party/glm_test/doc/api/dir_275089585c7fc1b5fd5d7d42c69cb1da.html new file mode 100644 index 0000000000000..ad32824ddbe39 --- /dev/null +++ b/third_party/glm_test/doc/api/dir_275089585c7fc1b5fd5d7d42c69cb1da.html @@ -0,0 +1,61 @@ + + + + + + +0.9.8: D: Directory Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + +
+
+
+
D: Directory Reference
+
+
+ + + + +

+Directories

directory  Source
 
+
+ + + + diff --git a/third_party/glm_test/doc/api/dir_577c788b67d63fb3b3b5752bd495d0f2.html b/third_party/glm_test/doc/api/dir_577c788b67d63fb3b3b5752bd495d0f2.html new file mode 100644 index 0000000000000..37790c350bec1 --- /dev/null +++ b/third_party/glm_test/doc/api/dir_577c788b67d63fb3b3b5752bd495d0f2.html @@ -0,0 +1,63 @@ + + + + + + +0.9.8: doc Directory Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + +
+
+
+
doc Directory Reference
+
+
+ + + + + + +

+Files

file  man.doxy [code]
 
file  pages.doxy [code]
 
+
+ + + + diff --git a/third_party/glm_test/doc/api/dir_5ce58d942b2d0776e17a9a58abc01e04.html b/third_party/glm_test/doc/api/dir_5ce58d942b2d0776e17a9a58abc01e04.html new file mode 100644 index 0000000000000..7307a6366aad9 --- /dev/null +++ b/third_party/glm_test/doc/api/dir_5ce58d942b2d0776e17a9a58abc01e04.html @@ -0,0 +1,114 @@ + + + + + + +0.9.8: glm Directory Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + +
+
+
+
glm Directory Reference
+
+
+ + + + + + + + +

+Directories

directory  detail
 
directory  gtc
 
directory  gtx
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  common.hpp [code]
 
file  exponential.hpp [code]
 
file  ext.hpp [code]
 
file  fwd.hpp [code]
 
file  geometric.hpp [code]
 
file  glm.hpp [code]
 
file  integer.hpp [code]
 
file  mat2x2.hpp [code]
 
file  mat2x3.hpp [code]
 
file  mat2x4.hpp [code]
 
file  mat3x2.hpp [code]
 
file  mat3x3.hpp [code]
 
file  mat3x4.hpp [code]
 
file  mat4x2.hpp [code]
 
file  mat4x3.hpp [code]
 
file  mat4x4.hpp [code]
 
file  matrix.hpp [code]
 
file  packing.hpp [code]
 
file  trigonometric.hpp [code]
 
file  vec2.hpp [code]
 
file  vec3.hpp [code]
 
file  vec4.hpp [code]
 
file  vector_relational.hpp [code]
 
+
+ + + + diff --git a/third_party/glm_test/doc/api/dir_7b98f88bffbed4b390b5f8f520d9c08e.html b/third_party/glm_test/doc/api/dir_7b98f88bffbed4b390b5f8f520d9c08e.html new file mode 100644 index 0000000000000..9c22074025084 --- /dev/null +++ b/third_party/glm_test/doc/api/dir_7b98f88bffbed4b390b5f8f520d9c08e.html @@ -0,0 +1,61 @@ + + + + + + +0.9.8: Source Directory Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + +
+
+
+
Source Directory Reference
+
+
+ + + + +

+Directories

directory  G-Truc
 
+
+ + + + diff --git a/third_party/glm_test/doc/api/dir_8d176b5b7dd0ae42ea6876078f2bde49.html b/third_party/glm_test/doc/api/dir_8d176b5b7dd0ae42ea6876078f2bde49.html new file mode 100644 index 0000000000000..e15de30325d51 --- /dev/null +++ b/third_party/glm_test/doc/api/dir_8d176b5b7dd0ae42ea6876078f2bde49.html @@ -0,0 +1,177 @@ + + + + + + +0.9.8: gtx Directory Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + +
+
+
+
gtx Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  associated_min_max.hpp [code]
 
file  bit.hpp [code]
 
file  closest_point.hpp [code]
 
file  gtx/color_space.hpp [code]
 
file  color_space_YCoCg.hpp [code]
 
file  gtx/common.hpp [code]
 
file  compatibility.hpp [code]
 
file  component_wise.hpp [code]
 
file  dual_quaternion.hpp [code]
 
file  euler_angles.hpp [code]
 
file  extend.hpp [code]
 
file  extended_min_max.hpp [code]
 
file  fast_exponential.hpp [code]
 
file  fast_square_root.hpp [code]
 
file  fast_trigonometry.hpp [code]
 
file  gradient_paint.hpp [code]
 
file  handed_coordinate_space.hpp [code]
 
file  hash.hpp [code]
 
file  gtx/integer.hpp [code]
 
file  intersect.hpp [code]
 
file  io.hpp [code]
 
file  log_base.hpp [code]
 
file  matrix_cross_product.hpp [code]
 
file  matrix_decompose.hpp [code]
 
file  matrix_interpolation.hpp [code]
 
file  matrix_major_storage.hpp [code]
 
file  matrix_operation.hpp [code]
 
file  matrix_query.hpp [code]
 
file  matrix_transform_2d.hpp [code]
 
file  mixed_product.hpp [code]
 
file  norm.hpp [code]
 
file  normal.hpp [code]
 
file  normalize_dot.hpp [code]
 
file  number_precision.hpp [code]
 
file  optimum_pow.hpp [code]
 
file  orthonormalize.hpp [code]
 
file  perpendicular.hpp [code]
 
file  polar_coordinates.hpp [code]
 
file  projection.hpp [code]
 
file  gtx/quaternion.hpp [code]
 
file  range.hpp [code]
 
file  raw_data.hpp [code]
 
file  rotate_normalized_axis.hpp [code]
 
file  rotate_vector.hpp [code]
 
file  scalar_multiplication.hpp [code]
 
file  scalar_relational.hpp [code]
 
file  simd_mat4.hpp [code]
 
file  simd_quat.hpp [code]
 
file  simd_vec4.hpp [code]
 
file  spline.hpp [code]
 
file  std_based_type.hpp [code]
 
file  string_cast.hpp [code]
 
file  transform.hpp [code]
 
file  transform2.hpp [code]
 
file  gtx/type_aligned.hpp [code]
 
file  type_trait.hpp [code]
 
file  vector_angle.hpp [code]
 
file  vector_query.hpp [code]
 
file  wrap.hpp [code]
 
+
+ + + + diff --git a/third_party/glm_test/doc/api/dir_9440d7c11b99dcd7e5d369c7cf9802fe.html b/third_party/glm_test/doc/api/dir_9440d7c11b99dcd7e5d369c7cf9802fe.html new file mode 100644 index 0000000000000..eed7fb2e065d9 --- /dev/null +++ b/third_party/glm_test/doc/api/dir_9440d7c11b99dcd7e5d369c7cf9802fe.html @@ -0,0 +1,101 @@ + + + + + + +0.9.8: gtc Directory Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + +
+
+
+
gtc Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  bitfield.hpp [code]
 
file  gtc/color_space.hpp [code]
 
file  constants.hpp [code]
 
file  epsilon.hpp [code]
 
file  functions.hpp [code]
 
file  gtc/integer.hpp [code]
 
file  matrix_access.hpp [code]
 
file  matrix_integer.hpp [code]
 
file  matrix_inverse.hpp [code]
 
file  matrix_transform.hpp [code]
 
file  noise.hpp [code]
 
file  gtc/packing.hpp [code]
 
file  gtc/quaternion.hpp [code]
 
file  random.hpp [code]
 
file  reciprocal.hpp [code]
 
file  round.hpp [code]
 
file  gtc/type_aligned.hpp [code]
 
file  type_precision.hpp [code]
 
file  type_ptr.hpp [code]
 
file  ulp.hpp [code]
 
file  vec1.hpp [code]
 
+
+ + + + diff --git a/third_party/glm_test/doc/api/dir_e29b03b892e0e25920d021a614d4db9b.html b/third_party/glm_test/doc/api/dir_e29b03b892e0e25920d021a614d4db9b.html new file mode 100644 index 0000000000000..fe5a4d0556e3e --- /dev/null +++ b/third_party/glm_test/doc/api/dir_e29b03b892e0e25920d021a614d4db9b.html @@ -0,0 +1,63 @@ + + + + + + +0.9.8: glm Directory Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + +
+
+
+
glm Directory Reference
+
+
+ + + + + + +

+Directories

directory  doc
 
directory  glm
 
+
+ + + + diff --git a/third_party/glm_test/doc/api/dir_e529a619cfdec1fa4c331fb042fd332f.html b/third_party/glm_test/doc/api/dir_e529a619cfdec1fa4c331fb042fd332f.html new file mode 100644 index 0000000000000..b853ea1bd7333 --- /dev/null +++ b/third_party/glm_test/doc/api/dir_e529a619cfdec1fa4c331fb042fd332f.html @@ -0,0 +1,129 @@ + + + + + + +0.9.8: detail Directory Reference + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + +
+
+
+
detail Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  _features.hpp [code]
 
file  _fixes.hpp [code]
 
file  _noise.hpp [code]
 
file  _swizzle.hpp [code]
 
file  _swizzle_func.hpp [code]
 
file  _vectorize.hpp [code]
 
file  func_common.hpp [code]
 
file  func_exponential.hpp [code]
 
file  func_geometric.hpp [code]
 
file  func_integer.hpp [code]
 
file  func_matrix.hpp [code]
 
file  func_packing.hpp [code]
 
file  func_trigonometric.hpp [code]
 
file  func_vector_relational.hpp [code]
 
file  precision.hpp [code]
 
file  setup.hpp [code]
 
file  type_float.hpp [code]
 
file  type_gentype.hpp [code]
 
file  type_half.hpp [code]
 
file  type_int.hpp [code]
 
file  type_mat.hpp [code]
 
file  type_mat2x2.hpp [code]
 
file  type_mat2x3.hpp [code]
 
file  type_mat2x4.hpp [code]
 
file  type_mat3x2.hpp [code]
 
file  type_mat3x3.hpp [code]
 
file  type_mat3x4.hpp [code]
 
file  type_mat4x2.hpp [code]
 
file  type_mat4x3.hpp [code]
 
file  type_mat4x4.hpp [code]
 
file  type_vec.hpp [code]
 
file  type_vec1.hpp [code]
 
file  type_vec2.hpp [code]
 
file  type_vec3.hpp [code]
 
file  type_vec4.hpp [code]
 
+
+ + + + diff --git a/third_party/glm_test/doc/api/doc.png b/third_party/glm_test/doc/api/doc.png new file mode 100644 index 0000000000000..17edabff95f7b Binary files /dev/null and b/third_party/glm_test/doc/api/doc.png differ diff --git a/third_party/glm_test/doc/api/doxygen.css b/third_party/glm_test/doc/api/doxygen.css new file mode 100644 index 0000000000000..f0f4a4f2b5548 --- /dev/null +++ b/third_party/glm_test/doc/api/doxygen.css @@ -0,0 +1,865 @@ +/* The standard CSS for doxygen */ + +body, table, div, p, dl +{ + font-family: Lucida Grande, Calibri, Verdana; + font-size: 14px; +} + +body +{ + margin:0px; + padding:0px; + background-color:#bf6000; + background-repeat:no-repeat; + background-position:center center; + background-attachment:fixed; +/* + background-image: -moz-linear-gradient(center top, #FFFFFF 0%, #FFF8F0 5%, #FFEEDD 95%, #FFDDBB); + background-image: -webkit-gradient(linear,center top,center bottom,from(#FFFFFF), color-stop(0.05,#FFF8F0), color-stop(0.05,#FFF8F0), color-stop(0.95,#FFEEDD), to(#FFDDBB)); +*/ + min-height:1200px; + overflow:auto; +} + +p +{ + background-color:#FFFFFF; +} + +/* @group Heading Levels */ + +h1 +{ + color:#FF8000; + font-family: Lucida Grande, Cambria, Georgia; + font-size: 24px; + font-weight: bold; +} + +h2 +{ + color:#FF8000; + font-family: Lucida Grande, Cambria, Georgia; + font-size: 18px; + font-weight: bold; +} + +h3 { + font-family: Lucida Grande, Cambria, Georgia; + font-size: 14px; + font-weight: bold; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd, p.starttd { + margin-top: 2px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #FFF8F0; + border: 0px solid #FF8000; + text-align: center; + margin: 2px; + padding: 2px; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #000000; + font-weight: normal; + /*text-decoration: none;*/ +} + +.contents a:visited { + color: #606060; +} + +.contents{ + background-color: #FFFFFF; + margin:0px; + margin-left:auto; + margin-right:auto; + padding-top:8px; + padding-bottom:8px; + padding-left:32px; + padding-right:32px; + width:936px; +} + +div.textblock{ + background-color: #FFFFFF; + padding-top: 4px; + padding-bottom: 4px; + padding-left: 32px; + padding-right: 32px; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9CAFD4; + color: #ffffff; + border: 0px double #869DCA; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code { + color: #4665A2; +} + +a.codeRef { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +.fragment { + font-family: monospace, consolas, "courier new"; + font-size: 12px; +} + +pre.fragment { + border: 0px solid #FF8000; + background-color: #FFF8F0; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + line-height: 125%; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +td.indexkey { + font-weight: bold; + border: 0px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 4px 10px; +} + +td.indexvalue { + border: 0px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #FFF8F0; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + margin-left:auto; + margin-right:auto; + width:1000px; + + text-align: right; + padding-right: 12px; + color: #FFEEDD; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 10px; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 0px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 0px solid #FF8000; +} + +hr.footer { + height: 1px; + margin-left:auto; + margin-right:auto; + width:1000px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + font-family: monospace, consolas, "courier new"; + font-size: 12px; + background-color: #FFFCF8; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #000000; +} + +.memItemLeft, .memItemRight, .memTemplParams { + border-top: 4px solid #FFFFFF; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memTemplParams { + color: #404040; + white-space: nowrap; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + color: #000000; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #000000; + border: 0px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.memitem { + padding: 8px; + margin-bottom: 10px; +} + +.memname { + font-family: monospace, consolas, "courier new"; + font-weight: bold; + font-size: 12px; + white-space: nowrap; + margin-left: 6px; +} + +.memproto { + border-top: 0px solid #FF8000; + border-left: 0px solid #FF8000; + border-right: 0px solid #FF8000; + padding: 6px 0px 6px 0px; + color: #000000; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 8px; + border-top-left-radius: 8px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 8px; + -moz-border-radius-topleft: 8px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 8px; + -webkit-border-top-left-radius: 8px; + background-repeat:repeat-x; + background-color: #FFFFFF; + background-image: -moz-linear-gradient(center top, #FFF8F0 0%, #FFFFFF 60%, #FFFFFF 95%, #FFFFFF); + background-image: -webkit-gradient(linear,center top,center bottom,from(#FFF8F0), color-stop(0.2,#FFFFFF), color-stop(0.60,#FFFFFF), color-stop(0.95,#FFFFFF), to(#FFFFFF)); +} + +.memdoc { + /*font-family: Lucida Grande, Calibri, Verdana;*/ + border-bottom: 0px solid #FF8000; + border-left: 0px solid #FF8000; + border-right: 0px solid #FF8000; + padding: 2px 5px; + background-color: #FFFFFF; + border-top-width: 0; + /* opera specific markup */ + border-bottom-left-radius: 8px; + border-bottom-right-radius: 8px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 8px; + -moz-border-radius-bottomright: 8px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + background-image: -moz-linear-gradient(center top, #FFFFFF 0%, #FFFFFF 60%, #FFF8F0 90%, #FFEEDD); + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 8px; + -webkit-border-bottom-right-radius: 8px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + background-image: -webkit-gradient(linear,center top,center bottom,from(#FFFFFF), color-stop(0.6,#FFFFFF), color-stop(0.60,#FFFFFF), color-stop(0.90,#FFF8F0), to(#FFEEDD)); +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #FF8000; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} + +.params, .retval, .exception, .tparams { + border-spacing: 6px 2px; +} + +.params .paramname, .retval .paramname { + color: #FF8000; + font-family: monospace, consolas, "courier new"; + font-weight: bold; + font-size: 12px; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + vertical-align: top; +} + + + + +/* @end */ + +/* @group Directory (tree) */ + +/* for the tree view */ + +.ftvtree { + /*font-family: Lucida Grande, Calibri, Verdana;*/ + margin: 0px; +} + +/* these are for tree view when used as main index */ + +.directory { + font-weight: bold; + margin: 5px; +} + +.directory h3 { + margin: 0px; + margin-top: 1em; +} + +/* +The following two styles can be used to replace the root node title +with an image of your choice. Simply uncomment the next two styles, +specify the name of your image and be sure to set 'height' to the +proper pixel height of your image. +*/ + +/* +.directory h3.swap { + height: 61px; + background-repeat: no-repeat; + background-image: url("yourimage.gif"); +} +.directory h3.swap span { + display: none; +} +*/ + +.directory > h3 { + margin-top: 0; +} + +.directory p { + margin: 0px; + white-space: nowrap; +} + +.directory div { + display: none; + margin: 0px; +} + +.directory img { + vertical-align: -30%; +} + +/* these are for tree view when not used as main index */ + +.directory-alt { + font-size: 100%; + font-weight: bold; +} + +.directory-alt h3 { + margin: 0px; + margin-top: 1em; +} + +.directory-alt > h3 { + margin-top: 0; +} + +.directory-alt p { + margin: 0px; + white-space: nowrap; +} + +.directory-alt div { + display: none; + margin: 0px; +} + +.directory-alt img { + vertical-align: -30%; +} + +/* @end */ + +div.dynheader { + margin-top: 8px; +} + +address { + font-style: normal; + color: #804000; +} + +table.doxtable { + border-collapse:collapse; +} + +table.doxtable td, table.doxtable th { + border: 0px solid #000000; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #000000; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; +} + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + /*background-image: url('tab_b.png');*/ + z-index: 101; + overflow: hidden; +} + +.navpath ul +{ + background-color: #FFEEDD; + height:30px; + line-height:30px; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + /*background-image:url('bc_s.png');*/ + background-repeat:no-repeat; + background-position:right; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; +} + +.navpath li.navelem a:hover +{ + color:#FF8000; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#FFEEDD; +} + +div.summary +{ + float: right; + font-size: 12px; + padding-right: 5px; + width: 160px; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + padding-left: 5px; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-color:#FFEEDD; + background-image: -moz-linear-gradient(center top, #FFEEDD 0%, #FFEEDD 5%, #FFEEDD 80%, #FFFFFF); + background-image: -webkit-gradient(linear,center top,center bottom,from(#FFEEDD), color-stop(0.05,#FFEEDD), color-stop(0.05,#FFEEDD), color-stop(0.80,#FFEEDD), to(#FFFFFF)); + + padding:0px; + margin:0px; + margin-left:auto; + margin-right:auto; + width:1000px; + border-bottom: 0px solid #FFC080; +} + +div.headertitle +{ + margin: 0px; + padding: 5px; + padding-bottom:10px; + padding-top:10px; +} + +div.title +{ + font-family: Lucida Grande, Cambria, Georgia; + font-size: 24px; + color: #FF7F00; +} + +dl +{ + padding: 0 0 0 10px; +} + +dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug +{ + border-color: #FF7F00; + border-left:4px solid; + padding: 0 0 0 6px; +} + +dl.note +{ + border-color: #FFDDBB; +} + +dl.warning, dl.attention +{ + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + border-color: #00D000; +} + +dl.deprecated +{ + border-color: #505050; +} + +dl.todo +{ + border-color: #00C0E0; +} + +dl.test +{ + border-color: #3030E0; +} + +dl.bug +{ + border-color: #C08050; +} + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + /*font-family: Lucida Grande, Cambria, Georgia;*/ + font-size: 24px; + margin: 0px; + padding: 0px; +} + +#projectbrief +{ + /*font-family: Lucida Grande, Cambria, Georgia;*/ + font-size: 18px; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + /*font-family: Lucida Grande, Cambria, Georgia;*/ + font-size: 14px; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 0px solid #FF8000; + background-color:#FFFFFF; +} + +#top +{ + margin-left:auto; + margin-right:auto; + width:1000px; +} diff --git a/third_party/glm_test/doc/api/doxygen.png b/third_party/glm_test/doc/api/doxygen.png new file mode 100644 index 0000000000000..3ff17d807fd8a Binary files /dev/null and b/third_party/glm_test/doc/api/doxygen.png differ diff --git a/third_party/glm_test/doc/api/dynsections.js b/third_party/glm_test/doc/api/dynsections.js new file mode 100644 index 0000000000000..1e6bf07f9fb05 --- /dev/null +++ b/third_party/glm_test/doc/api/dynsections.js @@ -0,0 +1,104 @@ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} + +function toggleLevel(level) +{ + $('table.directory tr').each(function() { + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + + +0.9.8: File List + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + + +
+
+
+
File List
+
+
+
Here is a list of all documented files with brief descriptions:
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 _features.hppGLM Core
 _fixes.hppGLM Core
 _noise.hppGLM Core
 _swizzle.hppGLM Core
 _swizzle_func.hppGLM Core
 _vectorize.hppGLM Core
 associated_min_max.hppGLM_GTX_associated_min_max
 bit.hppGLM_GTX_bit
 bitfield.hppGLM_GTC_bitfield
 closest_point.hppGLM_GTX_closest_point
 gtc/color_space.hppGLM_GTC_color_space
 gtx/color_space.hppGLM_GTX_color_space
 color_space_YCoCg.hppGLM_GTX_color_space_YCoCg
 common.hppGLM Core
 gtx/common.hppGLM_GTX_common
 compatibility.hppGLM_GTX_compatibility
 component_wise.hppGLM_GTX_component_wise
 constants.hppGLM_GTC_constants
 dual_quaternion.hppGLM_GTX_dual_quaternion
 epsilon.hppGLM_GTC_epsilon
 euler_angles.hppGLM_GTX_euler_angles
 exponential.hppGLM Core
 ext.hppGLM Core (Dependence)
 extend.hppGLM_GTX_extend
 extended_min_max.hppgtx_extended_min_max
 fast_exponential.hppGLM_GTX_fast_exponential
 fast_square_root.hppGLM_GTX_fast_square_root
 fast_trigonometry.hppGLM_GTX_fast_trigonometry
 func_common.hppGLM Core
 func_exponential.hppGLM Core
 func_geometric.hppGLM Core
 func_integer.hppGLM Core
 func_matrix.hppGLM Core
 func_packing.hppGLM Core
 func_trigonometric.hppGLM Core
 func_vector_relational.hppGLM Core
 functions.hppGLM_GTC_functions
 fwd.hppGLM Core
 geometric.hppGLM Core
 glm.hppGLM Core
 gradient_paint.hppGLM_GTX_gradient_paint
 handed_coordinate_space.hppGLM_GTX_handed_coordinate_space
 hash.hppGLM_GTX_hash
 gtc/integer.hppGLM_GTC_integer
 gtx/integer.hppGLM_GTX_integer
 integer.hppGLM Core
 intersect.hppGLM_GTX_intersect
 io.hppGLM_GTX_io
 log_base.hppGLM_GTX_log_base
 man.doxy
 mat2x2.hppGLM Core
 mat2x3.hppGLM Core
 mat2x4.hppGLM Core
 mat3x2.hppGLM Core
 mat3x3.hppGLM Core
 mat3x4.hppGLM Core
 mat4x2.hppGLM Core
 mat4x3.hpp
 mat4x4.hppGLM Core
 matrix.hppGLM Core
 matrix_access.hppGLM_GTC_matrix_access
 matrix_cross_product.hppGLM_GTX_matrix_cross_product
 matrix_decompose.hppGLM_GTX_matrix_decompose
 matrix_integer.hppGLM_GTC_matrix_integer
 matrix_interpolation.hppGLM_GTX_matrix_interpolation
 matrix_inverse.hppGLM_GTC_matrix_inverse
 matrix_major_storage.hppGLM_GTX_matrix_major_storage
 matrix_operation.hppGLM_GTX_matrix_operation
 matrix_query.hppGLM_GTX_matrix_query
 matrix_transform.hppGLM_GTC_matrix_transform
 matrix_transform_2d.hppGLM_GTX_matrix_transform_2d
 mixed_product.hppGLM_GTX_mixed_producte
 noise.hppGLM_GTC_noise
 norm.hppGLM_GTX_norm
 normal.hppGLM_GTX_normal
 normalize_dot.hppGLM_GTX_normalize_dot
 number_precision.hppGLM_GTX_number_precision
 optimum_pow.hppGLM_GTX_optimum_pow
 orthonormalize.hppGLM_GTX_orthonormalize
 gtc/packing.hppGLM_GTC_packing
 packing.hppGLM Core
 pages.doxy
 perpendicular.hppGLM_GTX_perpendicular
 polar_coordinates.hppGLM_GTX_polar_coordinates
 precision.hppGLM Core
 projection.hppGLM_GTX_projection
 gtc/quaternion.hppGLM_GTC_quaternion
 gtx/quaternion.hppGLM_GTX_quaternion
 random.hppGLM_GTC_random
 range.hppGLM_GTX_range
 raw_data.hppGLM_GTX_raw_data
 reciprocal.hppGLM_GTC_reciprocal
 rotate_normalized_axis.hppGLM_GTX_rotate_normalized_axis
 rotate_vector.hppGLM_GTX_rotate_vector
 round.hppGLM_GTC_round
 scalar_multiplication.hppGTX Extensions (Experimental)
 scalar_relational.hppGLM_GTX_scalar_relational
 setup.hppGLM Core
 simd_mat4.hppGLM_GTX_simd_mat4
 simd_quat.hppGLM_GTX_simd_quat
 simd_vec4.hppGLM_GTX_simd_vec4
 spline.hppGLM_GTX_spline
 std_based_type.hppGLM_GTX_std_based_type
 string_cast.hppGLM_GTX_string_cast
 transform.hppGLM_GTX_transform
 transform2.hppGLM_GTX_transform2
 trigonometric.hppGLM Core
 gtc/type_aligned.hppGLM_GTC_type_aligned
 gtx/type_aligned.hppGLM_GTX_type_aligned
 type_float.hppGLM Core
 type_gentype.hppGLM Core
 type_half.hppGLM Core
 type_int.hppGLM Core
 type_mat.hppGLM Core
 type_mat2x2.hppGLM Core
 type_mat2x3.hppGLM Core
 type_mat2x4.hppGLM Core
 type_mat3x2.hppGLM Core
 type_mat3x3.hppGLM Core
 type_mat3x4.hppGLM Core
 type_mat4x2.hppGLM Core
 type_mat4x3.hppGLM Core
 type_mat4x4.hppGLM Core
 type_precision.hppGLM_GTC_type_precision
 type_ptr.hppGLM_GTC_type_ptr
 type_trait.hppGLM_GTX_type_trait
 type_vec.hppGLM Core
 type_vec1.hppGLM Core
 type_vec2.hppGLM Core
 type_vec3.hppGLM Core
 type_vec4.hppGLM Core
 ulp.hppGLM_GTC_ulp
 vec1.hppGLM_GTC_vec1
 vec2.hppGLM Core
 vec3.hppGLM Core
 vec4.hppGLM Core
 vector_angle.hppGLM_GTX_vector_angle
 vector_query.hppGLM_GTX_vector_query
 vector_relational.hppGLM Core
 wrap.hppGLM_GTX_wrap
+
+
+ + + + diff --git a/third_party/glm_test/doc/api/folderclosed.png b/third_party/glm_test/doc/api/folderclosed.png new file mode 100644 index 0000000000000..bb8ab35edce8e Binary files /dev/null and b/third_party/glm_test/doc/api/folderclosed.png differ diff --git a/third_party/glm_test/doc/api/folderopen.png b/third_party/glm_test/doc/api/folderopen.png new file mode 100644 index 0000000000000..d6c7f676a3b3e Binary files /dev/null and b/third_party/glm_test/doc/api/folderopen.png differ diff --git a/third_party/glm_test/doc/api/index.html b/third_party/glm_test/doc/api/index.html new file mode 100644 index 0000000000000..fb15d754bad17 --- /dev/null +++ b/third_party/glm_test/doc/api/index.html @@ -0,0 +1,68 @@ + + + + + + +0.9.8: OpenGL Mathematics + + + + + + +
+
+ + + + + + + +
+
0.9.8 +
+
+
+ + + +
+
+
+
OpenGL Mathematics
+
+
+

OpenGL Mathematics (GLM) is a header only C++ mathematics library for graphics software based on the OpenGL Shading Language (GLSL) specification.

+

GLM provides classes and functions designed and implemented with the same naming conventions and functionalities than GLSL so that when a programmer knows GLSL, he knows GLM as well which makes it really easy to use.

+

This project isn't limited to GLSL features. An extension system, based on the GLSL extension conventions, provides extended capabilities: matrix transformations, quaternions, half-based types, random numbers, noise, etc...

+

This library works perfectly with OpenGL but it also ensures interoperability with other third party libraries and SDK. It is a good candidate for software rendering (raytracing / rasterisation), image processing, physic simulations and any development context that requires a simple and convenient mathematics library.

+

GLM is written in C++98 but can take advantage of C++11 when supported by the compiler. It is a platform independent library with no dependence and it officially supports the following compilers:

+
Note
The Doxygen-generated documentation will often state that a type or function is defined in a namespace that is a child of the glm namespace. Please ignore this; All publicly available types and functions can be accessed as a direct children of the glm namespace.
+

The source code is licensed under the Happy Bunny License (Modified MIT) and MIT license.

+

These pages are the API reference only. For more information about how to use GLM, please have a look at the manual.

+

Thanks for contributing to the project by submitting tickets for bug reports and feature requests. Any feedback is welcome at glm@g.nosp@m.-tru.nosp@m.c.net.

+
+ + + + diff --git a/third_party/glm_test/doc/api/jquery.js b/third_party/glm_test/doc/api/jquery.js new file mode 100644 index 0000000000000..1f4d0b47cec6c --- /dev/null +++ b/third_party/glm_test/doc/api/jquery.js @@ -0,0 +1,68 @@ +/*! + * jQuery JavaScript Library v1.7.1 + * http://jquery.com/ + * + * Copyright 2011, John Resig + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * Copyright 2011, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * + * Date: Mon Nov 21 21:11:03 2011 -0500 + */ +(function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b40){return}bC.fireWith(av,[bF]);if(bF.fn.trigger){bF(av).trigger("ready").off("ready")}}},bindReady:function(){if(bC){return}bC=bF.Callbacks("once memory");if(av.readyState==="complete"){return setTimeout(bF.ready,1)}if(av.addEventListener){av.addEventListener("DOMContentLoaded",e,false);bb.addEventListener("load",bF.ready,false)}else{if(av.attachEvent){av.attachEvent("onreadystatechange",e);bb.attachEvent("onload",bF.ready);var b0=false;try{b0=bb.frameElement==null}catch(b1){}if(av.documentElement.doScroll&&b0){bw()}}}},isFunction:function(b0){return bF.type(b0)==="function"},isArray:Array.isArray||function(b0){return bF.type(b0)==="array"},isWindow:function(b0){return b0&&typeof b0==="object"&&"setInterval" in b0},isNumeric:function(b0){return !isNaN(parseFloat(b0))&&isFinite(b0)},type:function(b0){return b0==null?String(b0):bx[bL.call(b0)]||"object"},isPlainObject:function(b2){if(!b2||bF.type(b2)!=="object"||b2.nodeType||bF.isWindow(b2)){return false}try{if(b2.constructor&&!bG.call(b2,"constructor")&&!bG.call(b2.constructor.prototype,"isPrototypeOf")){return false}}catch(b1){return false}var b0;for(b0 in b2){}return b0===L||bG.call(b2,b0)},isEmptyObject:function(b1){for(var b0 in b1){return false}return true},error:function(b0){throw new Error(b0)},parseJSON:function(b0){if(typeof b0!=="string"||!b0){return null}b0=bF.trim(b0);if(bb.JSON&&bb.JSON.parse){return bb.JSON.parse(b0)}if(bN.test(b0.replace(bW,"@").replace(bP,"]").replace(bJ,""))){return(new Function("return "+b0))()}bF.error("Invalid JSON: "+b0)},parseXML:function(b2){var b0,b1;try{if(bb.DOMParser){b1=new DOMParser();b0=b1.parseFromString(b2,"text/xml")}else{b0=new ActiveXObject("Microsoft.XMLDOM");b0.async="false";b0.loadXML(b2)}}catch(b3){b0=L}if(!b0||!b0.documentElement||b0.getElementsByTagName("parsererror").length){bF.error("Invalid XML: "+b2)}return b0},noop:function(){},globalEval:function(b0){if(b0&&bM.test(b0)){(bb.execScript||function(b1){bb["eval"].call(bb,b1)})(b0)}},camelCase:function(b0){return b0.replace(bZ,"ms-").replace(bB,bT)},nodeName:function(b1,b0){return b1.nodeName&&b1.nodeName.toUpperCase()===b0.toUpperCase()},each:function(b3,b6,b2){var b1,b4=0,b5=b3.length,b0=b5===L||bF.isFunction(b3);if(b2){if(b0){for(b1 in b3){if(b6.apply(b3[b1],b2)===false){break}}}else{for(;b40&&b0[0]&&b0[b1-1])||b1===0||bF.isArray(b0));if(b3){for(;b21?aJ.call(arguments,0):bG;if(!(--bw)){bC.resolveWith(bC,bx)}}}function bz(bF){return function(bG){bB[bF]=arguments.length>1?aJ.call(arguments,0):bG;bC.notifyWith(bE,bB)}}if(e>1){for(;bv
a";bI=bv.getElementsByTagName("*");bF=bv.getElementsByTagName("a")[0];if(!bI||!bI.length||!bF){return{}}bG=av.createElement("select");bx=bG.appendChild(av.createElement("option"));bE=bv.getElementsByTagName("input")[0];bJ={leadingWhitespace:(bv.firstChild.nodeType===3),tbody:!bv.getElementsByTagName("tbody").length,htmlSerialize:!!bv.getElementsByTagName("link").length,style:/top/.test(bF.getAttribute("style")),hrefNormalized:(bF.getAttribute("href")==="/a"),opacity:/^0.55/.test(bF.style.opacity),cssFloat:!!bF.style.cssFloat,checkOn:(bE.value==="on"),optSelected:bx.selected,getSetAttribute:bv.className!=="t",enctype:!!av.createElement("form").enctype,html5Clone:av.createElement("nav").cloneNode(true).outerHTML!=="<:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};bE.checked=true;bJ.noCloneChecked=bE.cloneNode(true).checked;bG.disabled=true;bJ.optDisabled=!bx.disabled;try{delete bv.test}catch(bC){bJ.deleteExpando=false}if(!bv.addEventListener&&bv.attachEvent&&bv.fireEvent){bv.attachEvent("onclick",function(){bJ.noCloneEvent=false});bv.cloneNode(true).fireEvent("onclick")}bE=av.createElement("input");bE.value="t";bE.setAttribute("type","radio");bJ.radioValue=bE.value==="t";bE.setAttribute("checked","checked");bv.appendChild(bE);bD=av.createDocumentFragment();bD.appendChild(bv.lastChild);bJ.checkClone=bD.cloneNode(true).cloneNode(true).lastChild.checked;bJ.appendChecked=bE.checked;bD.removeChild(bE);bD.appendChild(bv);bv.innerHTML="";if(bb.getComputedStyle){bA=av.createElement("div");bA.style.width="0";bA.style.marginRight="0";bv.style.width="2px";bv.appendChild(bA);bJ.reliableMarginRight=(parseInt((bb.getComputedStyle(bA,null)||{marginRight:0}).marginRight,10)||0)===0}if(bv.attachEvent){for(by in {submit:1,change:1,focusin:1}){bB="on"+by;bw=(bB in bv);if(!bw){bv.setAttribute(bB,"return;");bw=(typeof bv[bB]==="function")}bJ[by+"Bubbles"]=bw}}bD.removeChild(bv);bD=bG=bx=bA=bv=bE=null;b(function(){var bM,bU,bV,bT,bN,bO,bL,bS,bR,e,bP,bQ=av.getElementsByTagName("body")[0];if(!bQ){return}bL=1;bS="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;";bR="visibility:hidden;border:0;";e="style='"+bS+"border:5px solid #000;padding:0;'";bP="
";bM=av.createElement("div");bM.style.cssText=bR+"width:0;height:0;position:static;top:0;margin-top:"+bL+"px";bQ.insertBefore(bM,bQ.firstChild);bv=av.createElement("div");bM.appendChild(bv);bv.innerHTML="
t
";bz=bv.getElementsByTagName("td");bw=(bz[0].offsetHeight===0);bz[0].style.display="";bz[1].style.display="none";bJ.reliableHiddenOffsets=bw&&(bz[0].offsetHeight===0);bv.innerHTML="";bv.style.width=bv.style.paddingLeft="1px";b.boxModel=bJ.boxModel=bv.offsetWidth===2;if(typeof bv.style.zoom!=="undefined"){bv.style.display="inline";bv.style.zoom=1;bJ.inlineBlockNeedsLayout=(bv.offsetWidth===2);bv.style.display="";bv.innerHTML="
";bJ.shrinkWrapBlocks=(bv.offsetWidth!==2)}bv.style.cssText=bS+bR;bv.innerHTML=bP;bU=bv.firstChild;bV=bU.firstChild;bN=bU.nextSibling.firstChild.firstChild;bO={doesNotAddBorder:(bV.offsetTop!==5),doesAddBorderForTableAndCells:(bN.offsetTop===5)};bV.style.position="fixed";bV.style.top="20px";bO.fixedPosition=(bV.offsetTop===20||bV.offsetTop===15);bV.style.position=bV.style.top="";bU.style.overflow="hidden";bU.style.position="relative";bO.subtractsBorderForOverflowNotVisible=(bV.offsetTop===-5);bO.doesNotIncludeMarginInBodyOffset=(bQ.offsetTop!==bL);bQ.removeChild(bM);bv=bM=null;b.extend(bJ,bO)});return bJ})();var aS=/^(?:\{.*\}|\[.*\])$/,aA=/([A-Z])/g;b.extend({cache:{},uuid:0,expando:"jQuery"+(b.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?b.cache[e[b.expando]]:e[b.expando];return !!e&&!S(e)},data:function(bx,bv,bz,by){if(!b.acceptData(bx)){return}var bG,bA,bD,bE=b.expando,bC=typeof bv==="string",bF=bx.nodeType,e=bF?b.cache:bx,bw=bF?bx[bE]:bx[bE]&&bE,bB=bv==="events";if((!bw||!e[bw]||(!bB&&!by&&!e[bw].data))&&bC&&bz===L){return}if(!bw){if(bF){bx[bE]=bw=++b.uuid}else{bw=bE}}if(!e[bw]){e[bw]={};if(!bF){e[bw].toJSON=b.noop}}if(typeof bv==="object"||typeof bv==="function"){if(by){e[bw]=b.extend(e[bw],bv)}else{e[bw].data=b.extend(e[bw].data,bv)}}bG=bA=e[bw];if(!by){if(!bA.data){bA.data={}}bA=bA.data}if(bz!==L){bA[b.camelCase(bv)]=bz}if(bB&&!bA[bv]){return bG.events}if(bC){bD=bA[bv];if(bD==null){bD=bA[b.camelCase(bv)]}}else{bD=bA}return bD},removeData:function(bx,bv,by){if(!b.acceptData(bx)){return}var bB,bA,bz,bC=b.expando,bD=bx.nodeType,e=bD?b.cache:bx,bw=bD?bx[bC]:bC;if(!e[bw]){return}if(bv){bB=by?e[bw]:e[bw].data;if(bB){if(!b.isArray(bv)){if(bv in bB){bv=[bv]}else{bv=b.camelCase(bv);if(bv in bB){bv=[bv]}else{bv=bv.split(" ")}}}for(bA=0,bz=bv.length;bA-1){return true}}return false},val:function(bx){var e,bv,by,bw=this[0];if(!arguments.length){if(bw){e=b.valHooks[bw.nodeName.toLowerCase()]||b.valHooks[bw.type];if(e&&"get" in e&&(bv=e.get(bw,"value"))!==L){return bv}bv=bw.value;return typeof bv==="string"?bv.replace(aU,""):bv==null?"":bv}return}by=b.isFunction(bx);return this.each(function(bA){var bz=b(this),bB;if(this.nodeType!==1){return}if(by){bB=bx.call(this,bA,bz.val())}else{bB=bx}if(bB==null){bB=""}else{if(typeof bB==="number"){bB+=""}else{if(b.isArray(bB)){bB=b.map(bB,function(bC){return bC==null?"":bC+""})}}}e=b.valHooks[this.nodeName.toLowerCase()]||b.valHooks[this.type];if(!e||!("set" in e)||e.set(this,bB,"value")===L){this.value=bB}})}});b.extend({valHooks:{option:{get:function(e){var bv=e.attributes.value;return !bv||bv.specified?e.value:e.text}},select:{get:function(e){var bA,bv,bz,bx,by=e.selectedIndex,bB=[],bC=e.options,bw=e.type==="select-one";if(by<0){return null}bv=bw?by:0;bz=bw?by+1:bC.length;for(;bv=0});if(!e.length){bv.selectedIndex=-1}return e}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(bA,bx,bB,bz){var bw,e,by,bv=bA.nodeType;if(!bA||bv===3||bv===8||bv===2){return}if(bz&&bx in b.attrFn){return b(bA)[bx](bB)}if(typeof bA.getAttribute==="undefined"){return b.prop(bA,bx,bB)}by=bv!==1||!b.isXMLDoc(bA);if(by){bx=bx.toLowerCase();e=b.attrHooks[bx]||(ao.test(bx)?aY:be)}if(bB!==L){if(bB===null){b.removeAttr(bA,bx);return}else{if(e&&"set" in e&&by&&(bw=e.set(bA,bB,bx))!==L){return bw}else{bA.setAttribute(bx,""+bB);return bB}}}else{if(e&&"get" in e&&by&&(bw=e.get(bA,bx))!==null){return bw}else{bw=bA.getAttribute(bx);return bw===null?L:bw}}},removeAttr:function(bx,bz){var by,bA,bv,e,bw=0;if(bz&&bx.nodeType===1){bA=bz.toLowerCase().split(af);e=bA.length;for(;bw=0)}}})});var bd=/^(?:textarea|input|select)$/i,n=/^([^\.]*)?(?:\.(.+))?$/,J=/\bhover(\.\S+)?\b/,aO=/^key/,bf=/^(?:mouse|contextmenu)|click/,T=/^(?:focusinfocus|focusoutblur)$/,U=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,Y=function(e){var bv=U.exec(e);if(bv){bv[1]=(bv[1]||"").toLowerCase();bv[3]=bv[3]&&new RegExp("(?:^|\\s)"+bv[3]+"(?:\\s|$)")}return bv},j=function(bw,e){var bv=bw.attributes||{};return((!e[1]||bw.nodeName.toLowerCase()===e[1])&&(!e[2]||(bv.id||{}).value===e[2])&&(!e[3]||e[3].test((bv["class"]||{}).value)))},bt=function(e){return b.event.special.hover?e:e.replace(J,"mouseenter$1 mouseleave$1")};b.event={add:function(bx,bC,bJ,bA,by){var bD,bB,bK,bI,bH,bF,e,bG,bv,bz,bw,bE;if(bx.nodeType===3||bx.nodeType===8||!bC||!bJ||!(bD=b._data(bx))){return}if(bJ.handler){bv=bJ;bJ=bv.handler}if(!bJ.guid){bJ.guid=b.guid++}bK=bD.events;if(!bK){bD.events=bK={}}bB=bD.handle;if(!bB){bD.handle=bB=function(bL){return typeof b!=="undefined"&&(!bL||b.event.triggered!==bL.type)?b.event.dispatch.apply(bB.elem,arguments):L};bB.elem=bx}bC=b.trim(bt(bC)).split(" ");for(bI=0;bI=0){bG=bG.slice(0,-1);bw=true}if(bG.indexOf(".")>=0){bx=bG.split(".");bG=bx.shift();bx.sort()}if((!bA||b.event.customEvent[bG])&&!b.event.global[bG]){return}bv=typeof bv==="object"?bv[b.expando]?bv:new b.Event(bG,bv):new b.Event(bG);bv.type=bG;bv.isTrigger=true;bv.exclusive=bw;bv.namespace=bx.join(".");bv.namespace_re=bv.namespace?new RegExp("(^|\\.)"+bx.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;by=bG.indexOf(":")<0?"on"+bG:"";if(!bA){e=b.cache;for(bC in e){if(e[bC].events&&e[bC].events[bG]){b.event.trigger(bv,bD,e[bC].handle.elem,true)}}return}bv.result=L;if(!bv.target){bv.target=bA}bD=bD!=null?b.makeArray(bD):[];bD.unshift(bv);bF=b.event.special[bG]||{};if(bF.trigger&&bF.trigger.apply(bA,bD)===false){return}bB=[[bA,bF.bindType||bG]];if(!bJ&&!bF.noBubble&&!b.isWindow(bA)){bI=bF.delegateType||bG;bH=T.test(bI+bG)?bA:bA.parentNode;bz=null;for(;bH;bH=bH.parentNode){bB.push([bH,bI]);bz=bH}if(bz&&bz===bA.ownerDocument){bB.push([bz.defaultView||bz.parentWindow||bb,bI])}}for(bC=0;bCbA){bH.push({elem:this,matches:bz.slice(bA)})}for(bC=0;bC0?this.on(e,null,bx,bw):this.trigger(e)};if(b.attrFn){b.attrFn[e]=true}if(aO.test(e)){b.event.fixHooks[e]=b.event.keyHooks}if(bf.test(e)){b.event.fixHooks[e]=b.event.mouseHooks}}); +/*! + * Sizzle CSS Selector Engine + * Copyright 2011, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * More information: http://sizzlejs.com/ + */ +(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1},lt:function(bS,bR,e){return bRe[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML="";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="

";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="
";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT0){for(bB=bA;bB=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},ac=a(av);ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div
","
"]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1>");try{for(var bw=0,bv=this.length;bw1&&bw0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]===""&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length;if(bA>0){if(bv!=="border"){for(;bx)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("
").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"":"")+"");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b})}})(window);/*! + * jQuery UI 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI + */ +(function(a,d){a.ui=a.ui||{};if(a.ui.version){return}a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(e,f){return typeof e==="number"?this.each(function(){var g=this;setTimeout(function(){a(g).focus();if(f){f.call(g)}},e)}):this._focus.apply(this,arguments)},scrollParent:function(){var e;if((a.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){e=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test(a.curCSS(this,"position",1))&&(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}else{e=this.parents().filter(function(){return(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(this.css("position"))||!e.length?a(document):e},zIndex:function(h){if(h!==d){return this.css("zIndex",h)}if(this.length){var f=a(this[0]),e,g;while(f.length&&f[0]!==document){e=f.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){g=parseInt(f.css("zIndex"),10);if(!isNaN(g)&&g!==0){return g}}f=f.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});a.each(["Width","Height"],function(g,e){var f=e==="Width"?["Left","Right"]:["Top","Bottom"],h=e.toLowerCase(),k={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};function j(m,l,i,n){a.each(f,function(){l-=parseFloat(a.curCSS(m,"padding"+this,true))||0;if(i){l-=parseFloat(a.curCSS(m,"border"+this+"Width",true))||0}if(n){l-=parseFloat(a.curCSS(m,"margin"+this,true))||0}});return l}a.fn["inner"+e]=function(i){if(i===d){return k["inner"+e].call(this)}return this.each(function(){a(this).css(h,j(this,i)+"px")})};a.fn["outer"+e]=function(i,l){if(typeof i!=="number"){return k["outer"+e].call(this,i)}return this.each(function(){a(this).css(h,j(this,i,true,l)+"px")})}});function c(g,e){var j=g.nodeName.toLowerCase();if("area"===j){var i=g.parentNode,h=i.name,f;if(!g.href||!h||i.nodeName.toLowerCase()!=="map"){return false}f=a("img[usemap=#"+h+"]")[0];return !!f&&b(f)}return(/input|select|textarea|button|object/.test(j)?!g.disabled:"a"==j?g.href||e:e)&&b(g)}function b(e){return !a(e).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}a.extend(a.expr[":"],{data:function(g,f,e){return !!a.data(g,e[3])},focusable:function(e){return c(e,!isNaN(a.attr(e,"tabindex")))},tabbable:function(g){var e=a.attr(g,"tabindex"),f=isNaN(e);return(f||e>=0)&&c(g,!f)}});a(function(){var e=document.body,f=e.appendChild(f=document.createElement("div"));f.offsetHeight;a.extend(f.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});a.support.minHeight=f.offsetHeight===100;a.support.selectstart="onselectstart" in f;e.removeChild(f).style.display="none"});a.extend(a.ui,{plugin:{add:function(f,g,j){var h=a.ui[f].prototype;for(var e in j){h.plugins[e]=h.plugins[e]||[];h.plugins[e].push([g,j[e]])}},call:function(e,g,f){var j=e.plugins[g];if(!j||!e.element[0].parentNode){return}for(var h=0;h0){return true}h[e]=1;g=(h[e]>0);h[e]=0;return g},isOverAxis:function(f,e,g){return(f>e)&&(f<(e+g))},isOver:function(j,f,i,h,e,g){return a.ui.isOverAxis(j,i,e)&&a.ui.isOverAxis(f,h,g)}})})(jQuery);/*! + * jQuery UI Widget 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Widget + */ +(function(b,d){if(b.cleanData){var c=b.cleanData;b.cleanData=function(f){for(var g=0,h;(h=f[g])!=null;g++){try{b(h).triggerHandler("remove")}catch(j){}}c(f)}}else{var a=b.fn.remove;b.fn.remove=function(e,f){return this.each(function(){if(!f){if(!e||b.filter(e,[this]).length){b("*",this).add([this]).each(function(){try{b(this).triggerHandler("remove")}catch(g){}})}}return a.call(b(this),e,f)})}}b.widget=function(f,h,e){var g=f.split(".")[0],j;f=f.split(".")[1];j=g+"-"+f;if(!e){e=h;h=b.Widget}b.expr[":"][j]=function(k){return !!b.data(k,f)};b[g]=b[g]||{};b[g][f]=function(k,l){if(arguments.length){this._createWidget(k,l)}};var i=new h();i.options=b.extend(true,{},i.options);b[g][f].prototype=b.extend(true,i,{namespace:g,widgetName:f,widgetEventPrefix:b[g][f].prototype.widgetEventPrefix||f,widgetBaseClass:j},e);b.widget.bridge(f,b[g][f])};b.widget.bridge=function(f,e){b.fn[f]=function(i){var g=typeof i==="string",h=Array.prototype.slice.call(arguments,1),j=this;i=!g&&h.length?b.extend.apply(null,[true,i].concat(h)):i;if(g&&i.charAt(0)==="_"){return j}if(g){this.each(function(){var k=b.data(this,f),l=k&&b.isFunction(k[i])?k[i].apply(k,h):k;if(l!==k&&l!==d){j=l;return false}})}else{this.each(function(){var k=b.data(this,f);if(k){k.option(i||{})._init()}else{b.data(this,f,new e(i,this))}})}return j}};b.Widget=function(e,f){if(arguments.length){this._createWidget(e,f)}};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(f,g){b.data(g,this.widgetName,this);this.element=b(g);this.options=b.extend(true,{},this.options,this._getCreateOptions(),f);var e=this;this.element.bind("remove."+this.widgetName,function(){e.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(f,g){var e=f;if(arguments.length===0){return b.extend({},this.options)}if(typeof f==="string"){if(g===d){return this.options[f]}e={};e[f]=g}this._setOptions(e);return this},_setOptions:function(f){var e=this;b.each(f,function(g,h){e._setOption(g,h)});return this},_setOption:function(e,f){this.options[e]=f;if(e==="disabled"){this.widget()[f?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",f)}return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(e,f,g){var j,i,h=this.options[e];g=g||{};f=b.Event(f);f.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase();f.target=this.element[0];i=f.originalEvent;if(i){for(j in i){if(!(j in f)){f[j]=i[j]}}}this.element.trigger(f,g);return !(b.isFunction(h)&&h.call(this.element[0],f,g)===false||f.isDefaultPrevented())}}})(jQuery);/*! + * jQuery UI Mouse 1.8.18 + * + * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * http://docs.jquery.com/UI/Mouse + * + * Depends: + * jquery.ui.widget.js + */ +(function(b,c){var a=false;b(document).mouseup(function(d){a=false});b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var d=this;this.element.bind("mousedown."+this.widgetName,function(e){return d._mouseDown(e)}).bind("click."+this.widgetName,function(e){if(true===b.data(e.target,d.widgetName+".preventClickEvent")){b.removeData(e.target,d.widgetName+".preventClickEvent");e.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(f){if(a){return}(this._mouseStarted&&this._mouseUp(f));this._mouseDownEvent=f;var e=this,g=(f.which==1),d=(typeof this.options.cancel=="string"&&f.target.nodeName?b(f.target).closest(this.options.cancel).length:false);if(!g||d||!this._mouseCapture(f)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(f)&&this._mouseDelayMet(f)){this._mouseStarted=(this._mouseStart(f)!==false);if(!this._mouseStarted){f.preventDefault();return true}}if(true===b.data(f.target,this.widgetName+".preventClickEvent")){b.removeData(f.target,this.widgetName+".preventClickEvent")}this._mouseMoveDelegate=function(h){return e._mouseMove(h)};this._mouseUpDelegate=function(h){return e._mouseUp(h)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);f.preventDefault();a=true;return true},_mouseMove:function(d){if(b.browser.msie&&!(document.documentMode>=9)&&!d.button){return this._mouseUp(d)}if(this._mouseStarted){this._mouseDrag(d);return d.preventDefault()}if(this._mouseDistanceMet(d)&&this._mouseDelayMet(d)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,d)!==false);(this._mouseStarted?this._mouseDrag(d):this._mouseUp(d))}return !this._mouseStarted},_mouseUp:function(d){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;if(d.target==this._mouseDownEvent.target){b.data(d.target,this.widgetName+".preventClickEvent",true)}this._mouseStop(d)}return false},_mouseDistanceMet:function(d){return(Math.max(Math.abs(this._mouseDownEvent.pageX-d.pageX),Math.abs(this._mouseDownEvent.pageY-d.pageY))>=this.options.distance)},_mouseDelayMet:function(d){return this.mouseDelayMet},_mouseStart:function(d){},_mouseDrag:function(d){},_mouseStop:function(d){},_mouseCapture:function(d){return true}})})(jQuery);(function(c,d){c.widget("ui.resizable",c.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1000},_create:function(){var f=this,k=this.options;this.element.addClass("ui-resizable");c.extend(this,{_aspectRatio:!!(k.aspectRatio),aspectRatio:k.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:k.helper||k.ghost||k.animate?k.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){this.element.wrap(c('
').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=k.handles||(!c(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all"){this.handles="n,e,s,w,se,sw,ne,nw"}var l=this.handles.split(",");this.handles={};for(var g=0;g
');if(/sw|se|ne|nw/.test(j)){h.css({zIndex:++k.zIndex})}if("se"==j){h.addClass("ui-icon ui-icon-gripsmall-diagonal-se")}this.handles[j]=".ui-resizable-"+j;this.element.append(h)}}this._renderAxis=function(q){q=q||this.element;for(var n in this.handles){if(this.handles[n].constructor==String){this.handles[n]=c(this.handles[n],this.element).show()}if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var o=c(this.handles[n],this.element),p=0;p=/sw|ne|nw|se|n|s/.test(n)?o.outerHeight():o.outerWidth();var m=["padding",/ne|nw|n/.test(n)?"Top":/se|sw|s/.test(n)?"Bottom":/^e$/.test(n)?"Right":"Left"].join("");q.css(m,p);this._proportionallyResize()}if(!c(this.handles[n]).length){continue}}};this._renderAxis(this.element);this._handles=c(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){if(!f.resizing){if(this.className){var i=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)}f.axis=i&&i[1]?i[1]:"se"}});if(k.autoHide){this._handles.hide();c(this.element).addClass("ui-resizable-autohide").hover(function(){if(k.disabled){return}c(this).removeClass("ui-resizable-autohide");f._handles.show()},function(){if(k.disabled){return}if(!f.resizing){c(this).addClass("ui-resizable-autohide");f._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var e=function(g){c(g).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){e(this.element);var f=this.element;f.after(this.originalElement.css({position:f.css("position"),width:f.outerWidth(),height:f.outerHeight(),top:f.css("top"),left:f.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);e(this.originalElement);return this},_mouseCapture:function(f){var g=false;for(var e in this.handles){if(c(this.handles[e])[0]==f.target){g=true}}return !this.options.disabled&&g},_mouseStart:function(g){var j=this.options,f=this.element.position(),e=this.element;this.resizing=true;this.documentScroll={top:c(document).scrollTop(),left:c(document).scrollLeft()};if(e.is(".ui-draggable")||(/absolute/).test(e.css("position"))){e.css({position:"absolute",top:f.top,left:f.left})}this._renderProxy();var k=b(this.helper.css("left")),h=b(this.helper.css("top"));if(j.containment){k+=c(j.containment).scrollLeft()||0;h+=c(j.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:k,top:h};this.size=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalSize=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalPosition={left:k,top:h};this.sizeDiff={width:e.outerWidth()-e.width(),height:e.outerHeight()-e.height()};this.originalMousePosition={left:g.pageX,top:g.pageY};this.aspectRatio=(typeof j.aspectRatio=="number")?j.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);var i=c(".ui-resizable-"+this.axis).css("cursor");c("body").css("cursor",i=="auto"?this.axis+"-resize":i);e.addClass("ui-resizable-resizing");this._propagate("start",g);return true},_mouseDrag:function(e){var h=this.helper,g=this.options,m={},q=this,j=this.originalMousePosition,n=this.axis;var r=(e.pageX-j.left)||0,p=(e.pageY-j.top)||0;var i=this._change[n];if(!i){return false}var l=i.apply(this,[e,r,p]),k=c.browser.msie&&c.browser.version<7,f=this.sizeDiff;this._updateVirtualBoundaries(e.shiftKey);if(this._aspectRatio||e.shiftKey){l=this._updateRatio(l,e)}l=this._respectSize(l,e);this._propagate("resize",e);h.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});if(!this._helper&&this._proportionallyResizeElements.length){this._proportionallyResize()}this._updateCache(l);this._trigger("resize",e,this.ui());return false},_mouseStop:function(h){this.resizing=false;var i=this.options,m=this;if(this._helper){var g=this._proportionallyResizeElements,e=g.length&&(/textarea/i).test(g[0].nodeName),f=e&&c.ui.hasScroll(g[0],"left")?0:m.sizeDiff.height,k=e?0:m.sizeDiff.width;var n={width:(m.helper.width()-k),height:(m.helper.height()-f)},j=(parseInt(m.element.css("left"),10)+(m.position.left-m.originalPosition.left))||null,l=(parseInt(m.element.css("top"),10)+(m.position.top-m.originalPosition.top))||null;if(!i.animate){this.element.css(c.extend(n,{top:l,left:j}))}m.helper.height(m.size.height);m.helper.width(m.size.width);if(this._helper&&!i.animate){this._proportionallyResize()}}c("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",h);if(this._helper){this.helper.remove()}return false},_updateVirtualBoundaries:function(g){var j=this.options,i,h,f,k,e;e={minWidth:a(j.minWidth)?j.minWidth:0,maxWidth:a(j.maxWidth)?j.maxWidth:Infinity,minHeight:a(j.minHeight)?j.minHeight:0,maxHeight:a(j.maxHeight)?j.maxHeight:Infinity};if(this._aspectRatio||g){i=e.minHeight*this.aspectRatio;f=e.minWidth/this.aspectRatio;h=e.maxHeight*this.aspectRatio;k=e.maxWidth/this.aspectRatio;if(i>e.minWidth){e.minWidth=i}if(f>e.minHeight){e.minHeight=f}if(hl.width),s=a(l.height)&&i.minHeight&&(i.minHeight>l.height);if(h){l.width=i.minWidth}if(s){l.height=i.minHeight}if(t){l.width=i.maxWidth}if(m){l.height=i.maxHeight}var f=this.originalPosition.left+this.originalSize.width,p=this.position.top+this.size.height;var k=/sw|nw|w/.test(q),e=/nw|ne|n/.test(q);if(h&&k){l.left=f-i.minWidth}if(t&&k){l.left=f-i.maxWidth}if(s&&e){l.top=p-i.minHeight}if(m&&e){l.top=p-i.maxHeight}var n=!l.width&&!l.height;if(n&&!l.left&&l.top){l.top=null}else{if(n&&!l.top&&l.left){l.left=null}}return l},_proportionallyResize:function(){var k=this.options;if(!this._proportionallyResizeElements.length){return}var g=this.helper||this.element;for(var f=0;f');var e=c.browser.msie&&c.browser.version<7,g=(e?1:0),h=(e?2:-1);this.helper.addClass(this._helper).css({width:this.element.outerWidth()+h,height:this.element.outerHeight()+h,position:"absolute",left:this.elementOffset.left-g+"px",top:this.elementOffset.top-g+"px",zIndex:++i.zIndex});this.helper.appendTo("body").disableSelection()}else{this.helper=this.element}},_change:{e:function(g,f,e){return{width:this.originalSize.width+f}},w:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{left:i.left+f,width:g.width-f}},n:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{top:i.top+e,height:g.height-e}},s:function(g,f,e){return{height:this.originalSize.height+e}},se:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},sw:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[g,f,e]))},ne:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},nw:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[g,f,e]))}},_propagate:function(f,e){c.ui.plugin.call(this,f,[e,this.ui()]);(f!="resize"&&this._trigger(f,e,this.ui()))},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});c.extend(c.ui.resizable,{version:"1.8.18"});c.ui.plugin.add("resizable","alsoResize",{start:function(f,g){var e=c(this).data("resizable"),i=e.options;var h=function(j){c(j).each(function(){var k=c(this);k.data("resizable-alsoresize",{width:parseInt(k.width(),10),height:parseInt(k.height(),10),left:parseInt(k.css("left"),10),top:parseInt(k.css("top"),10)})})};if(typeof(i.alsoResize)=="object"&&!i.alsoResize.parentNode){if(i.alsoResize.length){i.alsoResize=i.alsoResize[0];h(i.alsoResize)}else{c.each(i.alsoResize,function(j){h(j)})}}else{h(i.alsoResize)}},resize:function(g,i){var f=c(this).data("resizable"),j=f.options,h=f.originalSize,l=f.originalPosition;var k={height:(f.size.height-h.height)||0,width:(f.size.width-h.width)||0,top:(f.position.top-l.top)||0,left:(f.position.left-l.left)||0},e=function(m,n){c(m).each(function(){var q=c(this),r=c(this).data("resizable-alsoresize"),p={},o=n&&n.length?n:q.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];c.each(o,function(s,u){var t=(r[u]||0)+(k[u]||0);if(t&&t>=0){p[u]=t||null}});q.css(p)})};if(typeof(j.alsoResize)=="object"&&!j.alsoResize.nodeType){c.each(j.alsoResize,function(m,n){e(m,n)})}else{e(j.alsoResize)}},stop:function(e,f){c(this).removeData("resizable-alsoresize")}});c.ui.plugin.add("resizable","animate",{stop:function(i,n){var p=c(this).data("resizable"),j=p.options;var h=p._proportionallyResizeElements,e=h.length&&(/textarea/i).test(h[0].nodeName),f=e&&c.ui.hasScroll(h[0],"left")?0:p.sizeDiff.height,l=e?0:p.sizeDiff.width;var g={width:(p.size.width-l),height:(p.size.height-f)},k=(parseInt(p.element.css("left"),10)+(p.position.left-p.originalPosition.left))||null,m=(parseInt(p.element.css("top"),10)+(p.position.top-p.originalPosition.top))||null;p.element.animate(c.extend(g,m&&k?{top:m,left:k}:{}),{duration:j.animateDuration,easing:j.animateEasing,step:function(){var o={width:parseInt(p.element.css("width"),10),height:parseInt(p.element.css("height"),10),top:parseInt(p.element.css("top"),10),left:parseInt(p.element.css("left"),10)};if(h&&h.length){c(h[0]).css({width:o.width,height:o.height})}p._updateCache(o);p._propagate("resize",i)}})}});c.ui.plugin.add("resizable","containment",{start:function(f,r){var t=c(this).data("resizable"),j=t.options,l=t.element;var g=j.containment,k=(g instanceof c)?g.get(0):(/parent/.test(g))?l.parent().get(0):g;if(!k){return}t.containerElement=c(k);if(/document/.test(g)||g==document){t.containerOffset={left:0,top:0};t.containerPosition={left:0,top:0};t.parentData={element:c(document),left:0,top:0,width:c(document).width(),height:c(document).height()||document.body.parentNode.scrollHeight}}else{var n=c(k),i=[];c(["Top","Right","Left","Bottom"]).each(function(p,o){i[p]=b(n.css("padding"+o))});t.containerOffset=n.offset();t.containerPosition=n.position();t.containerSize={height:(n.innerHeight()-i[3]),width:(n.innerWidth()-i[1])};var q=t.containerOffset,e=t.containerSize.height,m=t.containerSize.width,h=(c.ui.hasScroll(k,"left")?k.scrollWidth:m),s=(c.ui.hasScroll(k)?k.scrollHeight:e);t.parentData={element:k,left:q.left,top:q.top,width:h,height:s}}},resize:function(g,q){var t=c(this).data("resizable"),i=t.options,f=t.containerSize,p=t.containerOffset,m=t.size,n=t.position,r=t._aspectRatio||g.shiftKey,e={top:0,left:0},h=t.containerElement;if(h[0]!=document&&(/static/).test(h.css("position"))){e=p}if(n.left<(t._helper?p.left:0)){t.size.width=t.size.width+(t._helper?(t.position.left-p.left):(t.position.left-e.left));if(r){t.size.height=t.size.width/i.aspectRatio}t.position.left=i.helper?p.left:0}if(n.top<(t._helper?p.top:0)){t.size.height=t.size.height+(t._helper?(t.position.top-p.top):t.position.top);if(r){t.size.width=t.size.height*i.aspectRatio}t.position.top=t._helper?p.top:0}t.offset.left=t.parentData.left+t.position.left;t.offset.top=t.parentData.top+t.position.top;var l=Math.abs((t._helper?t.offset.left-e.left:(t.offset.left-e.left))+t.sizeDiff.width),s=Math.abs((t._helper?t.offset.top-e.top:(t.offset.top-p.top))+t.sizeDiff.height);var k=t.containerElement.get(0)==t.element.parent().get(0),j=/relative|absolute/.test(t.containerElement.css("position"));if(k&&j){l-=t.parentData.left}if(l+t.size.width>=t.parentData.width){t.size.width=t.parentData.width-l;if(r){t.size.height=t.size.width/t.aspectRatio}}if(s+t.size.height>=t.parentData.height){t.size.height=t.parentData.height-s;if(r){t.size.width=t.size.height*t.aspectRatio}}},stop:function(f,n){var q=c(this).data("resizable"),g=q.options,l=q.position,m=q.containerOffset,e=q.containerPosition,i=q.containerElement;var j=c(q.helper),r=j.offset(),p=j.outerWidth()-q.sizeDiff.width,k=j.outerHeight()-q.sizeDiff.height;if(q._helper&&!g.animate&&(/relative/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}if(q._helper&&!g.animate&&(/static/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}}});c.ui.plugin.add("resizable","ghost",{start:function(g,h){var e=c(this).data("resizable"),i=e.options,f=e.size;e.ghost=e.originalElement.clone();e.ghost.css({opacity:0.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof i.ghost=="string"?i.ghost:"");e.ghost.appendTo(e.helper)},resize:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost){e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})}},stop:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost&&e.helper){e.helper.get(0).removeChild(e.ghost.get(0))}}});c.ui.plugin.add("resizable","grid",{resize:function(e,m){var p=c(this).data("resizable"),h=p.options,k=p.size,i=p.originalSize,j=p.originalPosition,n=p.axis,l=h._aspectRatio||e.shiftKey;h.grid=typeof h.grid=="number"?[h.grid,h.grid]:h.grid;var g=Math.round((k.width-i.width)/(h.grid[0]||1))*(h.grid[0]||1),f=Math.round((k.height-i.height)/(h.grid[1]||1))*(h.grid[1]||1);if(/^(se|s|e)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f}else{if(/^(ne)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f}else{if(/^(sw)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.left=j.left-g}else{p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f;p.position.left=j.left-g}}}}});var b=function(e){return parseInt(e,10)||0};var a=function(e){return !isNaN(parseInt(e,10))}})(jQuery);/*! + * jQuery hashchange event - v1.3 - 7/21/2010 + * http://benalman.com/projects/jquery-hashchange-plugin/ + * + * Copyright (c) 2010 "Cowboy" Ben Alman + * Dual licensed under the MIT and GPL licenses. + * http://benalman.com/about/license/ + */ +(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$('