ReactOS  0.4.14-dev-991-g696cdc6
I64vec2 Class Reference

#include <dvec.h>

Inheritance diagram for I64vec2:
Collaboration diagram for I64vec2:

Public Member Functions

 I64vec2 ()
 
 I64vec2 (__m128i mm)
 
 I64vec2 (__m64 q1, __m64 q0)
 
I64vec2operator= (const M128 &a)
 
I64vec2operator&= (const M128 &a)
 
I64vec2operator|= (const M128 &a)
 
I64vec2operator^= (const M128 &a)
 
I64vec2operator+= (const I64vec2 &a)
 
I64vec2operator -= (const I64vec2 &a)
 
I64vec2 operator<< (const I64vec2 &a)
 
I64vec2 operator<< (int count)
 
I64vec2operator<<= (const I64vec2 &a)
 
I64vec2operator<<= (int count)
 
I64vec2 operator>> (const I64vec2 &a)
 
I64vec2 operator>> (int count)
 
I64vec2operator>>= (const I64vec2 &a)
 
I64vec2operator>>= (int count)
 
const __int64operator[] (int i) const
 
__int64operator[] (int i)
 
- Public Member Functions inherited from M128
 M128 ()
 
 M128 (__m128i mm)
 
 operator __m128i () const
 
M128operator&= (const M128 &a)
 
M128operator|= (const M128 &a)
 
M128operator^= (const M128 &a)
 

Additional Inherited Members

- Protected Attributes inherited from M128
__m128i vec
 

Detailed Description

Definition at line 93 of file dvec.h.

Constructor & Destructor Documentation

◆ I64vec2() [1/3]

I64vec2::I64vec2 ( )
inline

Definition at line 96 of file dvec.h.

96 { }

Referenced by operator -=(), operator&=(), operator+=(), operator<<=(), operator=(), operator>>=(), operator^=(), and operator|=().

◆ I64vec2() [2/3]

I64vec2::I64vec2 ( __m128i  mm)
inline

Definition at line 97 of file dvec.h.

97 : M128(mm) { }
M128()
Definition: dvec.h:64

◆ I64vec2() [3/3]

I64vec2::I64vec2 ( __m64  q1,
__m64  q0 
)
inline

Definition at line 99 of file dvec.h.

100  {
101  _MM_2QW(0,vec) = *(__int64*)&q0;
102  _MM_2QW(1,vec) = *(__int64*)&q1;
103  }
#define _MM_2QW(element, vector)
Definition: dvec.h:50
__m128i vec
Definition: dvec.h:61
#define __int64
Definition: basetyps.h:16

Member Function Documentation

◆ operator -=()

I64vec2& I64vec2::operator -= ( const I64vec2 a)
inline

Definition at line 112 of file dvec.h.

112 { return *this = (I64vec2) _mm_sub_epi64(vec,a); }
I64vec2()
Definition: dvec.h:96
__m128i vec
Definition: dvec.h:61
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ operator&=()

I64vec2& I64vec2::operator&= ( const M128 a)
inline

Definition at line 107 of file dvec.h.

107 { return *this = (I64vec2) _mm_and_si128(vec,a); }
I64vec2()
Definition: dvec.h:96
__m128i vec
Definition: dvec.h:61
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ operator+=()

I64vec2& I64vec2::operator+= ( const I64vec2 a)
inline

Definition at line 111 of file dvec.h.

111 { return *this = (I64vec2) _mm_add_epi64(vec,a); }
I64vec2()
Definition: dvec.h:96
__m128i vec
Definition: dvec.h:61
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ operator<<() [1/2]

Definition at line 114 of file dvec.h.

114 { return _mm_sll_epi64(vec,a); }
__m128i vec
Definition: dvec.h:61
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ operator<<() [2/2]

I64vec2 I64vec2::operator<< ( int  count)
inline

Definition at line 115 of file dvec.h.

115 { return _mm_slli_epi64(vec,count); }
GLuint GLuint GLsizei count
Definition: gl.h:1545
__m128i vec
Definition: dvec.h:61

◆ operator<<=() [1/2]

I64vec2& I64vec2::operator<<= ( const I64vec2 a)
inline

Definition at line 116 of file dvec.h.

116 { return *this = (I64vec2) _mm_sll_epi64(vec,a); }
I64vec2()
Definition: dvec.h:96
__m128i vec
Definition: dvec.h:61
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ operator<<=() [2/2]

I64vec2& I64vec2::operator<<= ( int  count)
inline

Definition at line 117 of file dvec.h.

117 { return *this = (I64vec2) _mm_slli_epi64(vec,count); }
GLuint GLuint GLsizei count
Definition: gl.h:1545
I64vec2()
Definition: dvec.h:96
__m128i vec
Definition: dvec.h:61

◆ operator=()

I64vec2& I64vec2::operator= ( const M128 a)
inline

Definition at line 105 of file dvec.h.

105 { return *this = (I64vec2) a; }
I64vec2()
Definition: dvec.h:96
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ operator>>() [1/2]

Definition at line 118 of file dvec.h.

118 { return _mm_srl_epi64(vec,a); }
__m128i vec
Definition: dvec.h:61
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ operator>>() [2/2]

I64vec2 I64vec2::operator>> ( int  count)
inline

Definition at line 119 of file dvec.h.

119 { return _mm_srli_epi64(vec,count); }
GLuint GLuint GLsizei count
Definition: gl.h:1545
__m128i vec
Definition: dvec.h:61

◆ operator>>=() [1/2]

I64vec2& I64vec2::operator>>= ( const I64vec2 a)
inline

Definition at line 120 of file dvec.h.

120 { return *this = (I64vec2) _mm_srl_epi64(vec,a); }
I64vec2()
Definition: dvec.h:96
__m128i vec
Definition: dvec.h:61
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ operator>>=() [2/2]

I64vec2& I64vec2::operator>>= ( int  count)
inline

Definition at line 121 of file dvec.h.

121 { return *this = (I64vec2) _mm_srli_epi64(vec,count); }
GLuint GLuint GLsizei count
Definition: gl.h:1545
I64vec2()
Definition: dvec.h:96
__m128i vec
Definition: dvec.h:61

◆ operator[]() [1/2]

const __int64& I64vec2::operator[] ( int  i) const
inline

Definition at line 123 of file dvec.h.

124  {
125  assert(static_cast<unsigned int>(i) < 2);
126  return _MM_2QW(i,vec);
127  }
#define _MM_2QW(element, vector)
Definition: dvec.h:50
#define assert(x)
Definition: debug.h:53
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
__m128i vec
Definition: dvec.h:61

◆ operator[]() [2/2]

__int64& I64vec2::operator[] ( int  i)
inline

Definition at line 129 of file dvec.h.

130  {
131  assert(static_cast<unsigned int>(i) < 2);
132  return _MM_2QW(i,vec);
133  }
#define _MM_2QW(element, vector)
Definition: dvec.h:50
#define assert(x)
Definition: debug.h:53
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
Definition: glfuncs.h:248
__m128i vec
Definition: dvec.h:61

◆ operator^=()

I64vec2& I64vec2::operator^= ( const M128 a)
inline

Definition at line 109 of file dvec.h.

109 { return *this = (I64vec2) _mm_xor_si128(vec,a); }
I64vec2()
Definition: dvec.h:96
__m128i vec
Definition: dvec.h:61
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

◆ operator|=()

I64vec2& I64vec2::operator|= ( const M128 a)
inline

Definition at line 108 of file dvec.h.

108 { return *this = (I64vec2) _mm_or_si128(vec,a); }
I64vec2()
Definition: dvec.h:96
__m128i vec
Definition: dvec.h:61
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204

The documentation for this class was generated from the following file: