| 
						
						
						
					 | 
					 | 
					@ -1,14 +1,32 @@ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					///////////////////////////////////////////////////////////////////////////////////////////////////
 | 
					 | 
					 | 
					 | 
					///////////////////////////////////////////////////////////////////////////////////
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// OpenGL Mathematics Copyright (c) 2005 - 2011 G-Truc Creation (www.g-truc.net)
 | 
					 | 
					 | 
					 | 
					/// OpenGL Mathematics (glm.g-truc.net)
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					///////////////////////////////////////////////////////////////////////////////////////////////////
 | 
					 | 
					 | 
					 | 
					///
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// Created : 2005-12-27
 | 
					 | 
					 | 
					 | 
					/// Copyright (c) 2005 - 2011 G-Truc Creation (www.g-truc.net)
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// Updated : 2010-11-12
 | 
					 | 
					 | 
					 | 
					/// Permission is hereby granted, free of charge, to any person obtaining a copy
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// Licence : This source is under MIT License
 | 
					 | 
					 | 
					 | 
					/// of this software and associated documentation files (the "Software"), to deal
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// File    : glm/gtc/matrix_access.hpp
 | 
					 | 
					 | 
					 | 
					/// in the Software without restriction, including without limitation the rights
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					///////////////////////////////////////////////////////////////////////////////////////////////////
 | 
					 | 
					 | 
					 | 
					/// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// Dependency:
 | 
					 | 
					 | 
					 | 
					/// copies of the Software, and to permit persons to whom the Software is
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					// - GLM core
 | 
					 | 
					 | 
					 | 
					/// 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.
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					///
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					/// @ref gtc_matrix_access
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					/// @file glm/gtc/matrix_access.hpp
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					/// @date 2005-12-27 / 2011-05-16
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					/// @author Christophe Riccio
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					///
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					/// @see core (dependence)
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					 | 
					///////////////////////////////////////////////////////////////////////////////////
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#ifndef glm_gtc_matrix_access | 
					 | 
					 | 
					 | 
					#ifndef glm_gtc_matrix_access | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					#define glm_gtc_matrix_access | 
					 | 
					 | 
					 | 
					#define glm_gtc_matrix_access | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -24,33 +42,33 @@ namespace glm{ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					namespace gtc{ | 
					 | 
					 | 
					 | 
					namespace gtc{ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					namespace matrix_access ///< GLM_GTC_matrix_access extension: Set a column or a row of a matrix
 | 
					 | 
					 | 
					 | 
					namespace matrix_access ///< GLM_GTC_matrix_access extension: Set a column or a row of a matrix
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					{ | 
					 | 
					 | 
					 | 
					{ | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						/// \addtogroup gtc_matrix_access
 | 
					 | 
					 | 
					 | 
						/// @addtogroup gtc_matrix_access
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						/// @{
 | 
					 | 
					 | 
					 | 
						/// @{
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						//! Get a specific row of a matrix.
 | 
					 | 
					 | 
					 | 
						/// Get a specific row of a matrix.
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						//! From GLM_GTC_matrix_access extension.
 | 
					 | 
					 | 
					 | 
						/// @see - gtc_matrix_access
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						template <typename genType> 
 | 
					 | 
					 | 
					 | 
						template <typename genType> 
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						typename genType::row_type row( | 
					 | 
					 | 
					 | 
						typename genType::row_type row( | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							genType const & m, 
 | 
					 | 
					 | 
					 | 
							genType const & m, 
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							int index); | 
					 | 
					 | 
					 | 
							int index); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						//! Set a specific row to a matrix.
 | 
					 | 
					 | 
					 | 
						/// Set a specific row to a matrix.
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						//! From GLM_GTC_matrix_access extension.
 | 
					 | 
					 | 
					 | 
						/// @see - gtc_matrix_access
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					    template <typename genType> 
 | 
					 | 
					 | 
					 | 
					    template <typename genType> 
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						genType row( | 
					 | 
					 | 
					 | 
						genType row( | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							genType const & m, 
 | 
					 | 
					 | 
					 | 
							genType const & m, 
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							int index, 
 | 
					 | 
					 | 
					 | 
							int index, 
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							typename genType::row_type const & x); | 
					 | 
					 | 
					 | 
							typename genType::row_type const & x); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						//! Get a specific column of a matrix.
 | 
					 | 
					 | 
					 | 
						/// Get a specific column of a matrix.
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						//! From GLM_GTC_matrix_access extension.
 | 
					 | 
					 | 
					 | 
						/// @see - gtc_matrix_access
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						template <typename genType> 
 | 
					 | 
					 | 
					 | 
						template <typename genType> 
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						typename genType::col_type column( | 
					 | 
					 | 
					 | 
						typename genType::col_type column( | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							genType const & m, 
 | 
					 | 
					 | 
					 | 
							genType const & m, 
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							int index); | 
					 | 
					 | 
					 | 
							int index); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						 //! Set a specific column to a matrix.
 | 
					 | 
					 | 
					 | 
						 /// Set a specific column to a matrix.
 | 
				
			
			
				
				
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						 //! From GLM_GTC_matrix_access extension.
 | 
					 | 
					 | 
					 | 
						 /// @see - gtc_matrix_access
 | 
				
			
			
				
				
			
		
	
		
		
	
		
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						template <typename genType> 
 | 
					 | 
					 | 
					 | 
						template <typename genType> 
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						genType column( | 
					 | 
					 | 
					 | 
						genType column( | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							genType const & m, 
 | 
					 | 
					 | 
					 | 
							genType const & m, 
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
						
						
							
								
							
						
					 | 
					 | 
					@ -58,7 +76,6 @@ namespace matrix_access ///< GLM_GTC_matrix_access extension: Set a column or a | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
							typename genType::col_type const & x); | 
					 | 
					 | 
					 | 
							typename genType::col_type const & x); | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
						/// @}
 | 
					 | 
					 | 
					 | 
						/// @}
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					
 | 
					 | 
					 | 
					 | 
					 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					}//namespace matrix_access
 | 
					 | 
					 | 
					 | 
					}//namespace matrix_access
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					}//namespace gtc
 | 
					 | 
					 | 
					 | 
					}//namespace gtc
 | 
				
			
			
		
	
		
		
			
				
					
					 | 
					 | 
					 | 
					}//namespace glm
 | 
					 | 
					 | 
					 | 
					}//namespace glm
 | 
				
			
			
		
	
	
		
		
			
				
					| 
						
							
								
							
						
						
						
					 | 
					 | 
					
  |