Om
1.0.0
A universal framework for multimedia simulation
|
A class that represents a set of 3D rays stored in a SIMD-compatible format. More...
#include <omSIMDRay3D.h>
Public Member Functions | |
SIMDRay3D (const VectorND< T, 3 > &newOrigin, const VectorND< T, 3 > &newDirection) | |
Create a SIMD ray with N copies of the specified ray for a SIMD width of N. More... | |
SIMDRay3D (const Ray3D< T > &ray) | |
Create a SIMD ray with N copies of the specified ray for a SIMD width of N. More... | |
SIMDRay3D (const Ray3D< T > &ray1, const Ray3D< T > &ray2, const Ray3D< T > &ray3, const Ray3D< T > &ray4) | |
Create a SIMD ray with the 4 rays it contains equal to the specified rays. More... | |
Static Public Member Functions | |
static Size | getAlignment () |
Return the alignment required for objects of this type. More... | |
static Size | getWidth () |
Get the width of this vector (number of 3D vectors it has). More... | |
Public Attributes | |
SIMDVector3D< T, 4 > | origin |
A SIMD 3D vector indicating the origin of the ray(s). More... | |
SIMDVector3D< T, 4 > | direction |
A SIMD 3D vector indicating the direction of the ray(s). More... | |
A class that represents a set of 3D rays stored in a SIMD-compatible format.
This class is used to store and operate on a set of 3D rays in a SIMD fashion. The rays are stored in a structure-of-arrays format that accelerates SIMD operations. Each ray is specified by an origin point and a direction vector.
|
inline |
Create a SIMD ray with N copies of the specified ray for a SIMD width of N.
|
inline |
Create a SIMD ray with N copies of the specified ray for a SIMD width of N.
|
inline |
Create a SIMD ray with the 4 rays it contains equal to the specified rays.
|
inlinestatic |
Return the alignment required for objects of this type.
For most SIMD types this value will be 16 bytes. If there is no alignment required, 0 is returned.
|
inlinestatic |
Get the width of this vector (number of 3D vectors it has).
SIMDVector3D<T,4> om::math::SIMDRay3D< T, 4 >::origin |
A SIMD 3D vector indicating the origin of the ray(s).
SIMDVector3D<T,4> om::math::SIMDRay3D< T, 4 >::direction |
A SIMD 3D vector indicating the direction of the ray(s).