1 /// @ref gtx_wrap
2 /// @file glm/gtx/wrap.hpp
3 ///
4 /// @see core (dependence)
5 ///
6 /// @defgroup gtx_wrap GLM_GTX_wrap
7 /// @ingroup gtx
8 ///
9 /// @brief Wrapping mode of texture coordinates.
10 ///
11 /// <glm/gtx/wrap.hpp> need to be included to use these functionalities.
12 
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 {
25 	/// @addtogroup gtx_wrap
26 	/// @{
27 
28 	/// Simulate GL_CLAMP OpenGL wrap mode
29 	/// @see gtx_wrap extension.
30 	template <typename genType>
31 	GLM_FUNC_DECL genType clamp(genType const& Texcoord);
32 
33 	/// Simulate GL_REPEAT OpenGL wrap mode
34 	/// @see gtx_wrap extension.
35 	template <typename genType>
36 	GLM_FUNC_DECL genType repeat(genType const& Texcoord);
37 
38 	/// Simulate GL_MIRRORED_REPEAT OpenGL wrap mode
39 	/// @see gtx_wrap extension.
40 	template <typename genType>
41 	GLM_FUNC_DECL genType mirrorClamp(genType const& Texcoord);
42 
43 	/// Simulate GL_MIRROR_REPEAT OpenGL wrap mode
44 	/// @see gtx_wrap extension.
45 	template <typename genType>
46 	GLM_FUNC_DECL genType mirrorRepeat(genType const& Texcoord);
47 
48 	/// @}
49 }// namespace glm
50 
51 #include "wrap.inl"
52