From 11f683566cb9d5a2b543ef548f6f7e2657d700c4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Wed, 30 Jan 2019 23:35:24 +0100 Subject: [PATCH] doc: list all 3rd party math API integrations. --- doc/changelog.dox | 2 ++ doc/types.dox | 30 ++++++++++++++++++++++++++---- 2 files changed, 28 insertions(+), 4 deletions(-) diff --git a/doc/changelog.dox b/doc/changelog.dox index 966356a7b..b487ac05d 100644 --- a/doc/changelog.dox +++ b/doc/changelog.dox @@ -191,6 +191,8 @@ See also: @subsection changelog-latest-docs Documentation - Fixed various broken links (see [mosra/magnum#291](https://github.com/mosra/magnum/issues/291)) +- A dedicated @ref types-thirdparty-integration section listing all + provided integrations with 3rd party math APIs @subsection changelog-latest-deprecated Deprecated APIs diff --git a/doc/types.dox b/doc/types.dox index ea2702a6d..cecdff0e1 100644 --- a/doc/types.dox +++ b/doc/types.dox @@ -24,14 +24,15 @@ */ namespace Magnum { -/** @page types Type system -@brief Type aliases, naming and compatibility with OpenGL and GLSL types. +/** @page types Math type system +@brief Type aliases, naming and compatibility with OpenGL, Vulkan and GLSL types. @tableofcontents @m_footernavigation +@m_keyword{Type system,,} -The root @ref Magnum namespace defines a few aliases for essential types. See -its documentation for more information about usage with CMake. +The root @ref Magnum namespace defines a few aliases for essential math types. +See its documentation for more information about usage. @section types-builtin Builtin types @@ -205,5 +206,26 @@ explicit: Example: @snippet MagnumMath.cpp types-literals-init + +@section types-thirdparty-integration Integration with types from 3rd party APIs + +To simplify the workflow when interacting with 3rd party APIs, all Magnum math +types can be made explicitly convertible to and from types coming from external +libraries. Currently, various Magnum libraries provide these conversion, see +documentation of each `Integration.h` header for details: + +- Math-related Vulkan structures --- @ref Magnum/Vk/Integration.h, part of + the @ref Vk library +- All GLM types --- @ref Magnum/GlmIntegration/Integration.h, + @ref Magnum/GlmIntegration/GtcIntegration.h and + @ref Magnum/GlmIntegration/GtxIntegration.h, part of the + @ref GlmIntegration library +- Bullet Physics math types --- @ref Magnum/BulletIntegration/Integration.h, + part of the @ref BulletIntegration library +- Oculus VR SDK math types -- @ref Magnum/OvrIntegration/Integration.h, part + of the @ref OvrIntegration library +- ImGui math types --- @ref Magnum/ImGuiIntegration/Integration.h, part of + the @ref ImGuiIntegration library + */ }