1 /// @ref gtx_string_cast 2 /// @file glm/gtx/string_cast.hpp 3 /// 4 /// @see core (dependence) 5 /// @see gtc_half_float (dependence) 6 /// @see gtx_integer (dependence) 7 /// @see gtx_quaternion (dependence) 8 /// 9 /// @defgroup gtx_string_cast GLM_GTX_string_cast 10 /// @ingroup gtx 11 /// 12 /// @brief Setup strings for GLM type values 13 /// 14 /// <glm/gtx/string_cast.hpp> need to be included to use these functionalities. 15 /// This extension is not supported with CUDA 16 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 { 36 /// @addtogroup gtx_string_cast 37 /// @{ 38 39 /// Create a string from a GLM vector or matrix typed variable. 40 /// @see gtx_string_cast extension. 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 44 /// @} 45 }//namespace glm 46 47 #include "string_cast.inl" 48