Om  1.0.0
A universal framework for multimedia simulation
Public Member Functions | Public Attributes | List of all members
om::math::SIMDTriangle3D< T, 4 > Class Template Reference

A specialization for the SIMDTriangle3D class that has a SIMD width of 4. More...

#include <omSIMDTriangle3D.h>

Public Member Functions

 SIMDTriangle3D (const VectorND< T, 3 > &newV0, const VectorND< T, 3 > &newV1, const VectorND< T, 3 > &newV2)
 Create a SIMD triangle with N copies of the specified triangle for a SIMD width of N. More...
 
 SIMDTriangle3D (const SIMDVector3D< T, 4 > &newV0, const SIMDVector3D< T, 4 > &newV1, const SIMDVector3D< T, 4 > &newV2)
 Create a SIMD ray with the 4 rays it contains equal to the specified rays. More...
 

Public Attributes

SIMDVector3D< T, 4 > v0
 The first vertex of the SIMD triangle. More...
 
SIMDVector3D< T, 4 > v1
 The second vertex of the SIMD triangle. More...
 
SIMDVector3D< T, 4 > v2
 The second vertex of the SIMD triangle. More...
 

Detailed Description

template<typename T>
class om::math::SIMDTriangle3D< T, 4 >

A specialization for the SIMDTriangle3D class that has a SIMD width of 4.

This class is used to store and operate on a set of 4 3D triangles in a SIMD fashion. The triangles are stored in a structure-of-arrays format that accelerates SIMD operations. Each triangle is specified by 3 vertex coordinates that indicate the vertices of the triangle.

Constructor & Destructor Documentation

template<typename T >
om::math::SIMDTriangle3D< T, 4 >::SIMDTriangle3D ( const VectorND< T, 3 > &  newV0,
const VectorND< T, 3 > &  newV1,
const VectorND< T, 3 > &  newV2 
)
inline

Create a SIMD triangle with N copies of the specified triangle for a SIMD width of N.

template<typename T >
om::math::SIMDTriangle3D< T, 4 >::SIMDTriangle3D ( const SIMDVector3D< T, 4 > &  newV0,
const SIMDVector3D< T, 4 > &  newV1,
const SIMDVector3D< T, 4 > &  newV2 
)
inline

Create a SIMD ray with the 4 rays it contains equal to the specified rays.

Member Data Documentation

template<typename T >
SIMDVector3D<T,4> om::math::SIMDTriangle3D< T, 4 >::v0

The first vertex of the SIMD triangle.

template<typename T >
SIMDVector3D<T,4> om::math::SIMDTriangle3D< T, 4 >::v1

The second vertex of the SIMD triangle.

template<typename T >
SIMDVector3D<T,4> om::math::SIMDTriangle3D< T, 4 >::v2

The second vertex of the SIMD triangle.


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