38 #       if GLM_HAS_ANONYMOUS_UNION 
   48         template <
typename T, precision P = defaultp>
 
   54                 typedef tvec1<T, P> type;
 
   55                 typedef tvec1<bool, P> bool_type;
 
   61 #               if GLM_HAS_ANONYMOUS_UNION 
   91 #               ifdef GLM_FORCE_SIZE_FUNC 
   92                         typedef size_t size_type;
 
   94                         GLM_FUNC_DECL GLM_CONSTEXPR size_type size() 
const;
 
   96                         GLM_FUNC_DECL T & operator[](size_type i);
 
   97                         GLM_FUNC_DECL T 
const & operator[](size_type i) 
const;
 
   99                         typedef length_t length_type;
 
  101                         GLM_FUNC_DECL GLM_CONSTEXPR length_type 
length() 
const;
 
  103                         GLM_FUNC_DECL T & operator[](length_type i);
 
  104                         GLM_FUNC_DECL T 
const & operator[](length_type i) 
const;
 
  105 #               endif//GLM_FORCE_SIZE_FUNC 
  110                 GLM_FUNC_DECL tvec1();
 
  111                 template <precision Q>
 
  112                 GLM_FUNC_DECL tvec1(tvec1<T, Q> 
const & v);
 
  117                 GLM_FUNC_DECL 
explicit tvec1(ctor);
 
  118                 GLM_FUNC_DECL 
explicit tvec1(T 
const & s);
 
  124                 template <
typename U, precision Q>
 
  125                 GLM_FUNC_DECL 
explicit tvec1(tvec2<U, Q> 
const & v);
 
  127                 template <
typename U, precision Q>
 
  128                 GLM_FUNC_DECL 
explicit tvec1(tvec3<U, Q> 
const & v);
 
  130                 template <
typename U, precision Q>
 
  131                 GLM_FUNC_DECL 
explicit tvec1(tvec4<U, Q> 
const & v);
 
  133 #               ifdef GLM_FORCE_EXPLICIT_CTOR 
  134                         template <
typename U, precision Q>
 
  136                         GLM_FUNC_DECL 
explicit tvec1(tvec1<U, Q> 
const & v);
 
  138                         template <
typename U, precision Q>
 
  140                         GLM_FUNC_DECL tvec1(tvec1<U, Q> 
const & v);
 
  146 #               if(GLM_HAS_ANONYMOUS_UNION && defined(GLM_SWIZZLE)) 
  148                         GLM_FUNC_DECL tvec1(detail::_swizzle<1, T, P, tvec1<T, P>, E0, -1,-2,-3> 
const & that)
 
  152 #               endif//(GLM_HAS_ANONYMOUS_UNION && defined(GLM_SWIZZLE)) 
  157                 template <
typename U> 
 
  158                 GLM_FUNC_DECL tvec1<T, P> & operator=(tvec1<U, P> 
const & v);
 
  159                 template <
typename U> 
 
  160                 GLM_FUNC_DECL tvec1<T, P> & operator+=(U 
const & s);
 
  161                 template <
typename U> 
 
  162                 GLM_FUNC_DECL tvec1<T, P> & operator+=(tvec1<U, P> 
const & v);
 
  163                 template <
typename U> 
 
  164                 GLM_FUNC_DECL tvec1<T, P> & operator-=(U 
const & s);
 
  165                 template <
typename U> 
 
  166                 GLM_FUNC_DECL tvec1<T, P> & operator-=(tvec1<U, P> 
const & v);
 
  167                 template <
typename U> 
 
  168                 GLM_FUNC_DECL tvec1<T, P> & operator*=(U 
const & s);
 
  169                 template <
typename U> 
 
  170                 GLM_FUNC_DECL tvec1<T, P> & operator*=(tvec1<U, P> 
const & v);
 
  171                 template <
typename U> 
 
  172                 GLM_FUNC_DECL tvec1<T, P> & operator/=(U 
const & s);
 
  173                 template <
typename U> 
 
  174                 GLM_FUNC_DECL tvec1<T, P> & operator/=(tvec1<U, P> 
const & v);
 
  179                 GLM_FUNC_DECL tvec1<T, P> & operator++();
 
  180                 GLM_FUNC_DECL tvec1<T, P> & operator--();
 
  181                 GLM_FUNC_DECL tvec1<T, P> operator++(
int);
 
  182                 GLM_FUNC_DECL tvec1<T, P> operator--(
int);
 
  187                 template <
typename U> 
 
  188                 GLM_FUNC_DECL tvec1<T, P> & operator%=(U 
const & s);
 
  189                 template <
typename U> 
 
  190                 GLM_FUNC_DECL tvec1<T, P> & operator%=(tvec1<U, P> 
const & v);
 
  191                 template <
typename U> 
 
  192                 GLM_FUNC_DECL tvec1<T, P> & operator&=(U 
const & s);
 
  193                 template <
typename U> 
 
  194                 GLM_FUNC_DECL tvec1<T, P> & operator&=(tvec1<U, P> 
const & v);
 
  195                 template <
typename U> 
 
  196                 GLM_FUNC_DECL tvec1<T, P> & operator|=(U 
const & s);
 
  197                 template <
typename U> 
 
  198                 GLM_FUNC_DECL tvec1<T, P> & operator|=(tvec1<U, P> 
const & v);
 
  199                 template <
typename U> 
 
  200                 GLM_FUNC_DECL tvec1<T, P> & operator^=(U 
const & s);
 
  201                 template <
typename U> 
 
  202                 GLM_FUNC_DECL tvec1<T, P> & operator^=(tvec1<U, P> 
const & v);
 
  203                 template <
typename U> 
 
  204                 GLM_FUNC_DECL tvec1<T, P> & operator<<=(U 
const & s);
 
  205                 template <
typename U> 
 
  206                 GLM_FUNC_DECL tvec1<T, P> & operator<<=(tvec1<U, P> 
const & v);
 
  207                 template <
typename U> 
 
  208                 GLM_FUNC_DECL tvec1<T, P> & operator>>=(U 
const & s);
 
  209                 template <
typename U> 
 
  210                 GLM_FUNC_DECL tvec1<T, P> & operator>>=(tvec1<U, P> 
const & v);
 
  214         template <
typename T, precision P>
 
  215         GLM_FUNC_DECL tvec1<T, P> operator+(tvec1<T, P> 
const & v, T 
const & s);
 
  217         template <
typename T, precision P>
 
  218         GLM_FUNC_DECL tvec1<T, P> operator+(T 
const & s, tvec1<T, P> 
const & v);
 
  220         template <
typename T, precision P>
 
  221         GLM_FUNC_DECL tvec1<T, P> operator+(tvec1<T, P> 
const & v1, tvec1<T, P> 
const & v2);
 
  223         template <
typename T, precision P>
 
  224         GLM_FUNC_DECL tvec1<T, P> operator-(tvec1<T, P> 
const & v, T 
const & s);
 
  226         template <
typename T, precision P>
 
  227         GLM_FUNC_DECL tvec1<T, P> operator-(T 
const & s, tvec1<T, P> 
const & v);
 
  229         template <
typename T, precision P>
 
  230         GLM_FUNC_DECL tvec1<T, P> operator-     (tvec1<T, P> 
const & v1, tvec1<T, P> 
const & v2);
 
  232         template <
typename T, precision P>
 
  233         GLM_FUNC_DECL tvec1<T, P> operator*(tvec1<T, P> 
const & v, T 
const & s);
 
  235         template <
typename T, precision P>
 
  236         GLM_FUNC_DECL tvec1<T, P> operator*(T 
const & s, tvec1<T, P> 
const & v);
 
  238         template <
typename T, precision P>
 
  239         GLM_FUNC_DECL tvec1<T, P> operator*(tvec1<T, P> 
const & v1, tvec1<T, P> 
const & v2);
 
  241         template <
typename T, precision P>
 
  242         GLM_FUNC_DECL tvec1<T, P> operator/(tvec1<T, P> 
const & v, T 
const & s);
 
  244         template <
typename T, precision P>
 
  245         GLM_FUNC_DECL tvec1<T, P> operator/(T 
const & s, tvec1<T, P> 
const & v);
 
  247         template <
typename T, precision P>
 
  248         GLM_FUNC_DECL tvec1<T, P> operator/(tvec1<T, P> 
const & v1, tvec1<T, P> 
const & v2);
 
  250         template <
typename T, precision P>
 
  251         GLM_FUNC_DECL tvec1<T, P> operator-(tvec1<T, P> 
const & v);
 
  253         template <
typename T, precision P>
 
  254         GLM_FUNC_DECL 
bool operator==(tvec1<T, P> 
const & v1, tvec1<T, P> 
const & v2);
 
  256         template <
typename T, precision P>
 
  257         GLM_FUNC_DECL 
bool operator!=(tvec1<T, P> 
const & v1, tvec1<T, P> 
const & v2);
 
  259         template <
typename T, precision P>
 
  260         GLM_FUNC_DECL tvec1<T, P> operator%(tvec1<T, P> 
const & v, T 
const & s);
 
  262         template <
typename T, precision P>
 
  263         GLM_FUNC_DECL tvec1<T, P> operator%(T 
const & s, tvec1<T, P> 
const & v);
 
  265         template <
typename T, precision P>
 
  266         GLM_FUNC_DECL tvec1<T, P> operator%(tvec1<T, P> 
const & v1, tvec1<T, P> 
const & v2);
 
  268         template <
typename T, precision P>
 
  269         GLM_FUNC_DECL tvec1<T, P> operator&(tvec1<T, P> 
const & v, T 
const & s);
 
  271         template <
typename T, precision P>
 
  272         GLM_FUNC_DECL tvec1<T, P> operator&(T 
const & s, tvec1<T, P> 
const & v);
 
  274         template <
typename T, precision P>
 
  275         GLM_FUNC_DECL tvec1<T, P> operator&(tvec1<T, P> 
const & v1, tvec1<T, P> 
const & v2);
 
  277         template <
typename T, precision P>
 
  278         GLM_FUNC_DECL tvec1<T, P> operator|(tvec1<T, P> 
const & v, T 
const & s);
 
  280         template <
typename T, precision P>
 
  281         GLM_FUNC_DECL tvec1<T, P> operator|(T 
const & s, tvec1<T, P> 
const & v);
 
  283         template <
typename T, precision P>
 
  284         GLM_FUNC_DECL tvec1<T, P> operator|(tvec1<T, P> 
const & v1, tvec1<T, P> 
const & v2);
 
  286         template <
typename T, precision P>
 
  287         GLM_FUNC_DECL tvec1<T, P> operator^(tvec1<T, P> 
const & v, T 
const & s);
 
  289         template <
typename T, precision P>
 
  290         GLM_FUNC_DECL tvec1<T, P> operator^(T 
const & s, tvec1<T, P> 
const & v);
 
  292         template <
typename T, precision P>
 
  293         GLM_FUNC_DECL tvec1<T, P> operator^(tvec1<T, P> 
const & v1, tvec1<T, P> 
const & v2);
 
  295         template <
typename T, precision P>
 
  296         GLM_FUNC_DECL tvec1<T, P> operator<<(tvec1<T, P> 
const & v, T 
const & s);
 
  298         template <
typename T, precision P>
 
  299         GLM_FUNC_DECL tvec1<T, P> operator<<(T const & s, tvec1<T, P> 
const & v);
 
  301         template <
typename T, precision P>
 
  302         GLM_FUNC_DECL tvec1<T, P> operator<<(tvec1<T, P> 
const & v1, tvec1<T, P> 
const & v2);
 
  304         template <
typename T, precision P>
 
  305         GLM_FUNC_DECL tvec1<T, P> operator>>(tvec1<T, P> 
const & v, T 
const & s);
 
  307         template <
typename T, precision P>
 
  308         GLM_FUNC_DECL tvec1<T, P> operator>>(T 
const & s, tvec1<T, P> 
const & v);
 
  310         template <
typename T, precision P>
 
  311         GLM_FUNC_DECL tvec1<T, P> operator>>(tvec1<T, P> 
const & v1, tvec1<T, P> 
const & v2);
 
  313         template <
typename T, precision P> 
 
  314         GLM_FUNC_DECL tvec1<T, P> operator~(tvec1<T, P> 
const & v);
 
  317 #ifndef GLM_EXTERNAL_TEMPLATE 
  318 #include "type_vec1.inl" 
  319 #endif//GLM_EXTERNAL_TEMPLATE 
OpenGL Mathematics (glm.g-truc.net) 
GLM_FUNC_DECL T length(vecType< T, P > const &x)
Returns the length of x, i.e., sqrt(x * x). 
OpenGL Mathematics (glm.g-truc.net) 
OpenGL Mathematics (glm.g-truc.net)