#include <sse_vector_4i32.h>
The class and the default constructor are always defined. The functions of this class are only defined when C4D_HAS_SSE2_CAPABILITY is set. Instances of this class must be aligned to 16 bytes. The layout in the memory is as follows: address + 0 + 1 + 2 + 3 R0 R1 R2 R3
Public Member Functions | |
| MAXON_ATTRIBUTE_FORCE_INLINE | Vector4i32 () |
| MAXON_ATTRIBUTE_FORCE_INLINE | Vector4i32 (Int32 i) |
| MAXON_ATTRIBUTE_FORCE_INLINE | Vector4i32 (Int32 i0, Int32 i1, Int32 i2, Int32 i3) |
| MAXON_ATTRIBUTE_FORCE_INLINE void | LoadUnaligned (const Int32 *p) |
| MAXON_ATTRIBUTE_FORCE_INLINE void | LoadAligned (const Int32 *p) |
| MAXON_ATTRIBUTE_FORCE_INLINE void | StoreUnaligned (Int32 *p) const |
| MAXON_ATTRIBUTE_FORCE_INLINE void | StoreAligned (Int32 *p) const |
Protected Attributes | |
| union { | |
| Int32 v [4] | |
| Int32 x | |
| Int32 y | |
| Int32 z | |
| Int32 w | |
| }; | |
Friends | |
| Vector4f32 | CastToVector4f32 (const Vector4i32 &a) |
| Vector4f32 | ConvertToVector4f32 (const Vector4i32 &a) |
| Vector4i32 | CastToVector4i32 (const Vector4f32 &a) |
| Vector4i32 | ConvertToVector4i32 (const Vector4f32 &a) |
Constructs the object. It does not set a default value.
|
explicit |
Constructs the object and sets all values to i.
| [in] | i | The value that is assigned to all vector elements. |
|
explicit |
Constructs the object and sets all values to i0...i3.
| [in] | i0 | The value that is assigned to vector element 0. |
| [in] | i1 | The value that is assigned to vector element 1. |
| [in] | i2 | The value that is assigned to vector element 2. |
| [in] | i3 | The value that is assigned to vector element 3. |
| MAXON_ATTRIBUTE_FORCE_INLINE void LoadUnaligned | ( | const Int32 * | p | ) |
Loads a vector from an address in the memory.
| [in] | p | The address where the vector is loaded from. |
| MAXON_ATTRIBUTE_FORCE_INLINE void LoadAligned | ( | const Int32 * | p | ) |
Loads a vector from an address in the memory.
| [in] | p | The address where the vector is loaded from, must be 16-byte aligned. |
| MAXON_ATTRIBUTE_FORCE_INLINE void StoreUnaligned | ( | Int32 * | p | ) | const |
Stores the contents of this vector to an address in the memory.
| [in] | p | The address where the vector is to be stored. |
| MAXON_ATTRIBUTE_FORCE_INLINE void StoreAligned | ( | Int32 * | p | ) | const |
Stores the contents of this vector to an address in the memory.
| [in] | p | The address where the vector is to be stored. It must be 16-byte aligned. |
|
friend |
Casts a Vector4i32 to a Vector4f32 vector.
|
friend |
Converts a Vector4i32 to a Vector4f32 vector.
|
friend |
Casts a Vector4f32 to a Vector4i32 vector.
|
friend |
Converts a Vector4f32 to a Vector4i32 vector.
| Int32 v[4] |
| Int32 x |
| Int32 y |
| Int32 z |
| Int32 w |
| union { ... } |
The internal SSE vector.