CMS 3D CMS Logo

List of all members | Public Member Functions | Public Attributes
mathSSE::Vec4< T > Union Template Reference

#include <SSEVec.h>

Public Member Functions

T __attribute__ ((aligned(16))) arr[4]
 
template<int N>
Vec4 get1 () const
 
void set (float f1, float f2, float f3, float f4=0)
 
void set1 (float f1)
 
 Vec4 ()
 
 Vec4 (float f1, float f2, float f3, float f4=0)
 
 Vec4 (float f1)
 
Vec2< Txy () const
 
Vec2< Tzw () const
 

Public Attributes

OldVec< To
 

Detailed Description

template<typename T>
union mathSSE::Vec4< T >

Definition at line 115 of file SSEVec.h.

Constructor & Destructor Documentation

◆ Vec4() [1/3]

template<typename T>
mathSSE::Vec4< T >::Vec4 ( )
inline

Definition at line 165 of file SSEVec.h.

Referenced by mathSSE::Vec4< align::Scalar >::get1().

165  {
166  arr[0] = 0;
167  arr[1] = 0;
168  arr[2] = 0;
169  arr[3] = 0;
170  }

◆ Vec4() [2/3]

template<typename T>
mathSSE::Vec4< T >::Vec4 ( float  f1,
float  f2,
float  f3,
float  f4 = 0 
)
inline

Definition at line 171 of file SSEVec.h.

171  {
172  arr[0] = f1;
173  arr[1] = f2;
174  arr[2] = f3;
175  arr[3] = f4;
176  }

◆ Vec4() [3/3]

template<typename T>
mathSSE::Vec4< T >::Vec4 ( float  f1)
inlineexplicit

Definition at line 177 of file SSEVec.h.

177 { set1(f1); }
void set1(float f1)
Definition: SSEVec.h:184

Member Function Documentation

◆ __attribute__()

template<typename T>
T mathSSE::Vec4< T >::__attribute__ ( (aligned(16))  )

◆ get1()

template<typename T>
template<int N>
Vec4 mathSSE::Vec4< T >::get1 ( ) const
inline

Definition at line 191 of file SSEVec.h.

191  {
192  return Vec4(arr[N], arr[N], arr[N], arr[N]);
193  }
#define N
Definition: blowfish.cc:9

◆ set()

template<typename T>
void mathSSE::Vec4< T >::set ( float  f1,
float  f2,
float  f3,
float  f4 = 0 
)
inline

Definition at line 178 of file SSEVec.h.

178  {
179  arr[0] = f1;
180  arr[1] = f2;
181  arr[2] = f3;
182  arr[3] = f4;
183  }

◆ set1()

template<typename T>
void mathSSE::Vec4< T >::set1 ( float  f1)
inline

Definition at line 184 of file SSEVec.h.

Referenced by mathSSE::Vec4< double >::Vec4(), and mathSSE::Vec4< align::Scalar >::Vec4().

184  {
185  arr[0] = f1;
186  arr[1] = f1;
187  arr[2] = f1;
188  arr[3] = f1;
189  }

◆ xy()

template<typename T>
Vec2<T> mathSSE::Vec4< T >::xy ( ) const
inline

Definition at line 200 of file SSEVec.h.

Referenced by geometryXMLparser.Alignable::covariance().

200 { return Vec2<T>(arr[0], arr[1]); }

◆ zw()

template<typename T>
Vec2<T> mathSSE::Vec4< T >::zw ( ) const
inline

Definition at line 201 of file SSEVec.h.

201 { return Vec2<T>(arr[2], arr[3]); }

Member Data Documentation

◆ o

template<typename T>
OldVec<T> mathSSE::Vec4< T >::o

Definition at line 204 of file SSEVec.h.