Added NewDocs patch

This commit is contained in:
Christophe Riccio
2011-02-07 12:31:35 +00:00
parent 71eaa832ec
commit c4c558098f
4 changed files with 1168 additions and 717 deletions

View File

@@ -1,114 +1,500 @@
/**
\defgroup gtc GLM Core Extensions
/*!
\defgroup gtx GLM Experimental Extensions
\brief Functions and types that GLSL does not provide, but are useful to have.
Core extensions differ from \ref gtx "experimental extensions" in that core extensions
are fairly stable. The API for experimental extensions is expected to change
significantly between versions.
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.
You can bring all of the extensions, core or experimental, in by
including <glm/ext.hpp> Otherwise, you will have to include each extension
by including a specific file.
**/
/**
\defgroup gtc_half_float Half Float Core Extension
\ingroup gtc
/*!
\defgroup gtx_associated_min_max Associated Min/Max Experimental Extension
\ingroup gtx
\brief Defines the half-float type, along with various typedefs for vectors and matrices.
\brief Min and max functions that return associated values not the compared onces.
You must include <glm/glc/half_float.hpp> to get this functionality.
You must include the file <glm/glx/associated_min_max.hpp> to get this functionality.
**/
/**
\defgroup gtc_matrix_access Matrix Access Core Extension
\ingroup gtc
/*!
\defgroup gtx_bit Bitwise Operations Experimental Extension
\ingroup gtx
\brief Defines functions that allow you to access rows or columns of a matrix easily.
\brief Allow to perform bit operations on integer values
You must include <glm/glc/matrix_access.hpp> to get this functionality.
You must include the file <glm/glx/bit.hpp> to get this functionality.
**/
/**
\defgroup gtc_matrix_integer Integer Matrix Core Extension
\ingroup gtc
/*!
\defgroup gtx_closest_point Find Closest Point Experimental Extension
\ingroup gtx
\brief Defines a number of matrices with integer types.
You must include <glm/glc/matrix_integer.hpp> to get this functionality.
\brief Find the point on a straight line which is the closet of a point.
You must include the file <glm/glx/closest_point.hpp> to get this functionality.
**/
/**
\defgroup gtc_matrix_inverse Matrix Inverse Core Extension
\ingroup gtc
/*!
\defgroup gtx_color_cast Color Conversion Experimental Extension
\ingroup gtx
\brief Defines additional matrix inverting functions.
You must include <glm/glc/matrix_inverse.hpp> to get this functionality.
\brief Conversion between two color types.
You must include the file <glm/glx/color_cast.hpp> to get this functionality.
**/
/**
\defgroup gtc_matrix_transform Matrix Transform Core Extension
\ingroup gtc
/*!
\defgroup gtx_color_space RGB to HSV Conversion Experimental Extension
\ingroup gtx
\brief 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.
You must include <glm/glc/matrix_transform.hpp> to get this functionality.
\brief Related to RGB to HSV conversions and operations.
You must include the file <glm/glx/color_space.hpp> to get this functionality.
**/
/**
\defgroup gtc_quaternion Quaternion Core Extension
\ingroup gtc
/*!
\defgroup gtx_color_space_YCoCg RGB to YCoCg Conversion Experimental Extension
\ingroup gtx
\brief Defines a templated quaternion type and several quaternion operations.
You must include <glm/glc/quaternion.hpp> to get this functionality.
\brief RGB to YCoCg conversions and operations
You must include the file <glm/glx/color_space_YCoCg.hpp> to get this functionality.
**/
/**
\defgroup gtc_type_precision Type Precision Core Extension
\ingroup gtc
/*!
\defgroup gtx_compatibility Cg and HLSL Compatibility Experimental Extension
\ingroup gtx
\brief Defines specific C++-based precision types.
\ref core_precision defines types based on GLSL's precision qualifiers. This
extension defines types based on explicitly-sized C++ data types.
You must include the file <glm/glc/type_precision.hpp> to get this functionality.
\brief Provide functions to increase the compatibility with Cg and HLSL languages
You must include the file <glm/glx/compatibility.hpp> to get this functionality.
**/
/**
\defgroup gtc_type_ptr Pointer Access Core Extension
\ingroup gtc
/*!
\defgroup gtx_component_wise Component Wise Experimental Extension
\ingroup gtx
\brief Used to get a pointer to the memory layout of a basic type.
This extension defines an overloaded function, glm::value_ptr, which
takes any of the \ref core_template "core template types". It returns
a pointer to the memory layout of the object. Matrix types store their values
in row-major order.
This is useful for uploading data to matrices or copying data to buffer objects.
Example:
\code
#include <glm/glm.hpp>
#include <glm/glc/type_ptr.hpp>
glm::vec3 aVector(3);
glm::mat4 someMatrix(1.0);
\brief Operations between components of a type
glUniform3fv(uniformLoc, 1, glm::value_ptr(aVector));
glUniformMatrix4fv(uniformMatrixLoc, 1, GL_FALSE, glm::value_ptr(someMatrix));
\endcode
You must include the file <glm/glc/type_ptr.hpp> to get this functionality.
You must include the file <glm/glx/component_wise.hpp> to get this functionality.
**/
/*!
\defgroup gtx_epsilon Epsilon Comparison Experimental Extension
\ingroup gtx
\brief Comparison functions for a user defined epsilon values.
You must include the file <glm/glx/epsilon.hpp> to get this functionality.
**/
/*!
\defgroup gtx_euler_angles Matrix From Euler Angles Experimental Extension
\ingroup gtx
\brief Build matrices from Euler angles.
You must include the file <glm/glx/euler_angles.hpp> to get this functionality.
**/
/*!
\defgroup gtx_extend Position Extending Experimental Extension
\ingroup gtx
\brief Extend a position from a source to a position at a defined length.
You must include the file <glm/glx/extend.hpp> to get this functionality.
**/
/*!
\defgroup gtx_extented_min_max Extended Min Max Experimental Extension
\ingroup gtx
\brief Min and max functions for 3 to 4 parameters.
You must include the file <glm/glx/extented_min_max.hpp> to get this functionality.
**/
/*!
\defgroup gtx_fast_exponential Fast Exponentiation Experimental Extension
\ingroup gtx
\brief Fast but less accurate implementations of exponential based functions.
You must include the file <glm/glx/fast_exponential.hpp> to get this functionality.
**/
/*!
\defgroup gtx_fast_square_root Fast Square Root Experimental Extension
\ingroup gtx
\brief Fast but less accurate implementations of square root based functions.
You must include the file <glm/glx/fast_square_root.hpp> to get this functionality.
**/
/*!
\defgroup gtx_fast_trigonometry Fast Trig Experimental Extension
\ingroup gtx
\brief Fast but less accurate implementations of trigonometric functions.
You must include the file <glm/glx/fast_trigonometry.hpp> to get this functionality.
**/
/*!
\defgroup gtx_handed_coordinate_space Space Handedness Experimental Extension
\ingroup gtx
\brief To know if a set of three basis vectors defines a right or left-handed coordinate system.
You must include the file <glm/glx/handed_coordinate_system.hpp> to get this functionality.
**/
/*!
\defgroup gtx_inertia Intertial Matrix Experimental Extension
\ingroup gtx
\brief Create inertia matrices
You must include the file <glm/glx/inertia.hpp> to get this functionality.
**/
/*!
\defgroup gtx_int_10_10_10_2 Packed Integer Experimental Extension
\ingroup gtx
\brief Add support for integer for core functions
You must include the file <glm/glx/int_10_10_10_2.hpp> to get this functionality.
**/
/*!
\defgroup gtx_integer Integer Function Experimental Extension
\ingroup gtx
\brief Add support for integer for core functions
You must include the file <glm/glx/integer.hpp> to get this functionality.
**/
/*!
\defgroup gtx_intersect Intersection Test Experimental Extension
\ingroup gtx
\brief Add intersection functions
You must include the file <glm/glx/intersect.hpp> to get this functionality.
**/
/*!
\defgroup gtx_log_base Log With Base Experimental Extension
\ingroup gtx
\brief Logarithm for any base. base can be a vector or a scalar.
You must include the file <glm/glx/log_base.hpp> to get this functionality.
**/
/*!
\defgroup gtx_matrix_cross_product Cross Product Matrices Experimental Extension
\ingroup gtx
\brief Build cross product matrices
You must include the file <glm/glx/matrix_cross_product.hpp> to get this functionality.
**/
/*!
\defgroup gtx_matrix_major_storage Build Matrix Experimental Extension
\ingroup gtx
\brief Build matrices with specific matrix order, row or column
You must include the file <glm/glx/matrix_major_storage.hpp> to get this functionality.
**/
/*!
\defgroup gtx_matrix_operation Diagonal Matrix Experimental Extension
\ingroup gtx
\brief Build diagonal matrices from vectors.
You must include the file <glm/glx/matrix_operation.hpp> to get this functionality.
**/
/*!
\defgroup gtx_matrix_query Query Matrix Properties Experimental Extension
\ingroup gtx
\brief Query to evaluate matrix properties
You must include the file <glm/glx/matrix_query.hpp> to get this functionality.
**/
/*!
\defgroup gtx_mixed_product Mixed Product Experimental Extension
\ingroup gtx
\brief Mixed product of 3 vectors.
You must include the file <glm/glx/mixed_product.hpp> to get this functionality.
**/
/*!
\defgroup gtx_multiple Multiples Experimental Extension
\ingroup gtx
\brief Find the closest number of a number multiple of other number.
You must include the file <glm/glx/multiple.hpp> to get this functionality.
**/
/*!
\defgroup gtx_norm Vector Norm Experimental Extension
\ingroup gtx
\brief Various way to compute vector norms.
You must include the file <glm/glx/norm.hpp> to get this functionality.
**/
/*!
\defgroup gtx_normal Compute Normal Experimental Extension
\ingroup gtx
\brief Compute the normal of a triangle.
You must include the file <glm/glx/normal.hpp> to get this functionality.
**/
/*!
\defgroup gtx_normalize_dot Normalize Dot Product Experimental Extension
\ingroup gtx
\brief Dot product of vectors that need to be normalize with a single square root.
You must include the file <glm/glx/normalized_dot.hpp> to get this functionality.
**/
/*!
\defgroup gtx_number_precision Number Precision Experimental Extension
\ingroup gtx
\brief Defined size types.
You must include the file <glm/glx/number_precision.hpp> to get this functionality.
**/
/*!
\defgroup gtx_ocl_type OpenCL Types Experimental Extension
\ingroup gtx
\brief OpenCL types.
You must include the file <glm/glx/ocl_type.hpp> to get this functionality.
**/
/*!
\defgroup gtx_optimum_pow Optimum Pow Experimental Extension
\ingroup gtx
\brief Integer exponentiation of power functions.
You must include the file <glm/glx/optimum_pow.hpp> to get this functionality.
**/
/*!
\defgroup gtx_orthonormalize Orthonormalize Experimental Extension
\ingroup gtx
\brief Orthonormalize matrices.
You must include the file <glm/glx/orthonormalize.hpp> to get this functionality.
**/
/*!
\defgroup gtx_perpendicular Perpendicular Experimental Extension
\ingroup gtx
\brief Perpendicular of a vector from other one
You must include the file <glm/glx/perpendicular.hpp> to get this functionality.
**/
/*!
\defgroup gtx_polar_coordinates Polar Coordinates Experimental Extension
\ingroup gtx
\brief Conversion from Euclidean space to polar space and revert.
You must include the file <glm/glx/polar_coordinates.hpp> to get this functionality.
**/
/*!
\defgroup gtx_projection Projection Experimental Extension
\ingroup gtx
\brief Projection of a vector to other one
You must include the file <glm/glx/projection.hpp> to get this functionality.
**/
/*!
\defgroup gtx_quaternion Quaternion Experimental Extension
\ingroup gtx
\brief Quaternion types and functions
You must include the file <glm/glx/quaternion.hpp> to get this functionality.
**/
/*!
\defgroup gtx_random Random Experimental Extension
\ingroup gtx
\brief Generate random number from various distribution methods
You must include the file <glm/glx/random.hpp> to get this functionality.
**/
/*!
\defgroup gtx_raw_data Raw Data Experimental Extension
\ingroup gtx
\brief Projection of a vector to other one
You must include the file <glm/glx/raw_data.hpp> to get this functionality.
**/
/*!
\defgroup gtx_reciprocal Reciprocal Experimental Extension
\ingroup gtx
\brief Define secant, cosecant and cotangent functions.
You must include the file <glm/glx/reciprocal.hpp> to get this functionality.
**/
/*!
\defgroup gtx_rotate_vector Rotate Vector Experimental Extension
\ingroup gtx
\brief Function to directly rotate a vector
You must include the file <glm/glx/rotate_vector.hpp> to get this functionality.
**/
/*!
\defgroup gtx_simd_mat4 SIMD Mat4 Experimental Extension
\ingroup gtx
\brief SIMD implementation of mat4 type.
You must include the file <glm/glx/simd_mat4.hpp> to get this functionality.
**/
/*!
\defgroup gtx_simd_vec4 SIMD Vec4 Experimental Extension
\ingroup gtx
\brief SIMD implementation of vec4 type.
You must include the file <glm/glx/simd_vec4.hpp> to get this functionality.
**/
/*!
\defgroup gtx_spline Spline Experimental Extension
\ingroup gtx
\brief Spline functions
You must include the file <glm/glx/spline.hpp> to get this functionality.
**/
/*!
\defgroup gtx_string_cast String Cast Experimental Extension
\ingroup gtx
\brief Setup strings for GLM type values
You must include the file <glm/glx/transform.hpp> to get this functionality.
**/
/*!
\defgroup gtx_transform Transformation Matrices Experimental Extension
\ingroup gtx
\brief Add transformation matrices
You must include the file <glm/glx/transform2.hpp> to get this functionality.
**/
/*!
\defgroup gtx_transform2 Extra Transform Matrices Experimental Extension
\ingroup gtx
\brief Add extra transformation matrices
You must include the file <glm/glx/unsigned_int.hpp> to get this functionality.
**/
/*!
\defgroup gtx_unsigned_int Unsigned Int Experimental Extension
\ingroup gtx
\brief Add support for unsigned integer for core functions
You must include the file <glm/glx/unsigned_int.hpp> to get this functionality.
**/
/*!
\defgroup gtx_vector_access Vector Access Experimental Extension
\ingroup gtx
\brief Function to set values to vectors
You must include the file <glm/glx/vector_access.hpp> to get this functionality.
**/
/*!
\defgroup gtx_vector_angle Vector Angle Experimental Extension
\ingroup gtx
\brief Compute angle between vectors
You must include the file <glm/glx/vector_angle.hpp> to get this functionality.
**/
/*!
\defgroup gtx_vector_query Vector Query Experimental Extension
\ingroup gtx
\brief Query informations of vector types
You must include the file <glm/glx/vector_query.hpp> to get this functionality.
**/
/*!
\defgroup gtx_verbose_operator Verbose Operator Experimental Extension
\ingroup gtx
\brief Use words to replace operators
You must include the file <glm/glx/verbose_operator.hpp> to get this functionality.
**/
/*!
\defgroup gtx_wrap Wrap Experimental Extension
\ingroup gtx
\brief Wrapping mode using my texture samping.
You must include the file <glm/glx/wrap.hpp> to get this functionality.
**/