Classes | Functions
parallel_math.h File Reference
#include <stdio.h>
#include "parallel_common.h"
#include <math.h>
Include dependency graph for parallel_math.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  vec3< T >
struct  vec3< double >
struct  vec3< float >
struct  vec4< T >
struct  vec4< double >
struct  vec4< float >

Functions

dxHost dxDevice void add_assign_volatile (volatile float3 &a, float3 &b, volatile float3 &c)
dxHost dxDevice void add_assign_volatile (volatile double3 &a, double3 &b, volatile double3 &c)
dxHost dxDevice void add_assign_volatile (volatile float4 &a, float4 &b, volatile float4 &c)
dxHost dxDevice void add_assign_volatile (volatile double4 &a, double4 &b, volatile double4 &c)
dxHost dxDevice void assign_volatile (volatile float3 &a, float3 &b)
dxHost dxDevice void assign_volatile (volatile double3 &a, double3 &b)
dxDevice dxHost float clamp (float f, float a, float b)
dxDevice dxHost double clamp (double f, double a, double b)
dxDevice dxHost float3 clamp (float3 v, float a, float b)
dxDevice dxHost float3 clamp (float3 v, float3 a, float3 b)
dxDevice dxHost float4 clamp (float4 v, float a, float b)
dxDevice dxHost float4 clamp (float4 v, float4 a, float4 b)
dxHost dxDevice float3 cross (float3 a, float3 b)
dxHost dxDevice float dot (const float3 &a, const float3 &b)
dxHost dxDevice double dot (const double3 &a, const double3 &b)
dxHost dxDevice float dot (const float3 &a, const float4 &b)
dxHost dxDevice double dot (const double3 &a, const double4 &b)
dxHost dxDevice float dot (const float4 &a, const float4 &b)
dxHost dxDevice double dot (const double4 &a, const double4 &b)
template<typename T >
dxHost dxDevicedot (typename vec4< T >::Type a, typename vec4< T >::Type b)
dxHost dxDevice float3 floor (const float3 v)
dxHost dxDevice float4 floor (const float4 v)
float fmaxf (float a, float b)
static __inline__ dxHost
dxDevice float3 
fmaxf (float3 a, float3 b)
static __inline__ dxHost
dxDevice float4 
fmaxf (float4 a, float4 b)
float fminf (float a, float b)
static __inline__ dxHost
dxDevice float3 
fminf (float3 a, float3 b)
static __inline__ dxHost
dxDevice float4 
fminf (float4 a, float4 b)
dxHost dxDevice float length (float3 v)
dxHost dxDevice float length (float4 r)
dxHost dxDevice double3 make_double3 (double s)
dxHost dxDevice double3 make_double3 (double4 a)
dxHost dxDevice double3 make_double3 (int3 a)
dxHost dxDevice double4 make_double4 (double s)
dxHost dxDevice double4 make_double4 (double3 a)
dxHost dxDevice double4 make_double4 (double3 a, double w)
dxHost dxDevice double4 make_double4 (const double &a, const double &b, const double &c)
dxHost dxDevice double4 make_double4 (int4 a)
dxHost dxDevice double4 make_fdouble4 (double s)
dxHost dxDevice float3 make_float3 (float s)
dxHost dxDevice float3 make_float3 (float4 a)
dxHost dxDevice float3 make_float3 (int3 a)
dxHost dxDevice float4 make_float4 (float s)
dxHost dxDevice float4 make_float4 (float3 a)
dxHost dxDevice float4 make_float4 (float3 a, float w)
dxHost dxDevice float4 make_float4 (const float &a, const float &b, const float &c)
dxHost dxDevice float4 make_float4 (int4 a)
dxHost dxDevice vec3< float >::Type make_vec3 (float a, float b, float c)
dxHost dxDevice vec3< double >
::Type 
make_vec3 (double a, double b, double c)
dxHost dxDevice vec3< float >::Type make_vec3 (float4 a)
dxHost dxDevice vec3< double >
::Type 
make_vec3 (double4 a)
dxHost dxDevice vec3< float >::Type make_vec3 (float a)
dxHost dxDevice vec3< double >
::Type 
make_vec3 (double a)
dxHost dxDevice vec4< float >::Type make_vec4 (const float &a, const float &b, const float &c)
dxHost dxDevice vec4< double >
::Type 
make_vec4 (const double &a, const double &b, const double &c)
dxHost dxDevice vec4< float >::Type make_vec4 (float a, float b, float c, float d)
dxHost dxDevice vec4< double >
::Type 
make_vec4 (double a, double b, double c, double d)
dxHost dxDevice vec4< float >::Type make_vec4 (float3 a)
dxHost dxDevice vec4< double >
::Type 
make_vec4 (double3 a)
dxHost dxDevice vec4< float >::Type make_vec4 (float a)
dxHost dxDevice vec4< double >
::Type 
make_vec4 (double a)
dxHost dxDevice void make_zero (float3 &a)
dxHost dxDevice void make_zero (double3 &a)
dxHost dxDevice void make_zero (float4 &a)
dxHost dxDevice void make_zero (double4 &a)
int max (int a, int b)
int min (int a, int b)
dxHost dxDevice float3 normalize (float3 v)
dxHost dxDevice float4 normalize (float4 v)
dxHost dxDevice int2 operator* (int2 a, int2 b)
dxHost dxDevice int2 operator* (int2 a, int s)
dxHost dxDevice int2 operator* (int s, int2 a)
dxHost dxDevice float3 operator* (float3 a, float3 b)
dxHost dxDevice float3 operator* (float3 a, float s)
dxHost dxDevice float3 operator* (float s, float3 a)
template<typename T >
dxHost dxDevice vec4< T >::Type operator* (typename vec4< T >::Type a, T s)
dxHost dxDevice float4 operator* (float s, float4 a)
dxHost dxDevice void operator*= (int2 &a, int s)
dxHost dxDevice void operator*= (float3 &a, float s)
dxHost dxDevice void operator*= (double3 &a, double s)
dxHost dxDevice void operator*= (float4 &a, float s)
dxHost dxDevice void operator*= (double4 &a, double s)
dxHost dxDevice int2 operator+ (int2 a, int2 b)
dxHost dxDevice float3 operator+ (float3 a, float3 b)
dxHost dxDevice double3 operator+ (double3 a, double3 b)
dxHost dxDevice float3 operator+ (float3 a, float b)
dxHost dxDevice double3 operator+ (double3 a, double b)
dxHost dxDevice float4 operator+ (float4 a, float4 b)
dxHost dxDevice double4 operator+ (double4 a, double4 b)
dxHost dxDevice void operator+= (int2 &a, int2 b)
dxHost dxDevice void operator+= (float3 &a, float3 b)
dxHost dxDevice void operator+= (double3 &a, double3 b)
dxHost dxDevice void operator+= (float4 &a, float4 b)
dxHost dxDevice void operator+= (double4 &a, double4 b)
dxHost dxDevice int2 operator- (int2 &a)
dxHost dxDevice int2 operator- (int2 a, int2 b)
dxHost dxDevice float3 operator- (float3 &a)
dxHost dxDevice float3 operator- (float3 a, float3 b)
dxHost dxDevice float3 operator- (float3 a, float b)
dxHost dxDevice float4 operator- (float4 &a)
dxHost dxDevice float4 operator- (float4 a, float4 b)
dxHost dxDevice void operator-= (int2 &a, int2 b)
dxHost dxDevice void operator-= (float3 &a, float3 b)
dxHost dxDevice void operator-= (float4 &a, float4 b)
dxHost dxDevice float3 operator/ (float3 a, float3 b)
dxHost dxDevice float3 operator/ (float3 a, float s)
dxHost dxDevice float3 operator/ (float s, float3 a)
dxHost dxDevice float4 operator/ (float4 a, float4 b)
dxHost dxDevice float4 operator/ (float4 a, float s)
dxHost dxDevice float4 operator/ (float s, float4 a)
dxHost dxDevice void operator/= (float3 &a, float s)
dxHost dxDevice void operator/= (float4 &a, float s)
template<typename T >
dxDevicereadAndReplace (T *buffer, const T &element)

Function Documentation

dxHost dxDevice void add_assign_volatile ( volatile float3 a,
float3 b,
volatile float3 c 
) [inline]

Definition at line 23 of file parallel_math.h.

dxHost dxDevice void add_assign_volatile ( volatile double3 a,
double3 b,
volatile double3 c 
) [inline]

Definition at line 28 of file parallel_math.h.

dxHost dxDevice void add_assign_volatile ( volatile float4 a,
float4 b,
volatile float4 c 
) [inline]

Definition at line 34 of file parallel_math.h.

dxHost dxDevice void add_assign_volatile ( volatile double4 a,
double4 b,
volatile double4 c 
) [inline]

Definition at line 39 of file parallel_math.h.

dxHost dxDevice void assign_volatile ( volatile float3 a,
float3 b 
) [inline]

Definition at line 45 of file parallel_math.h.

dxHost dxDevice void assign_volatile ( volatile double3 a,
double3 b 
) [inline]

Definition at line 48 of file parallel_math.h.

dxDevice dxHost float clamp ( float  f,
float  a,
float  b 
) [inline]

Definition at line 103 of file parallel_math.h.

dxDevice dxHost double clamp ( double  f,
double  a,
double  b 
) [inline]

Definition at line 109 of file parallel_math.h.

dxDevice dxHost float3 clamp ( float3  v,
float  a,
float  b 
) [inline]

Definition at line 294 of file parallel_math.h.

dxDevice dxHost float3 clamp ( float3  v,
float3  a,
float3  b 
) [inline]

Definition at line 299 of file parallel_math.h.

dxDevice dxHost float4 clamp ( float4  v,
float  a,
float  b 
) [inline]

Definition at line 508 of file parallel_math.h.

dxDevice dxHost float4 clamp ( float4  v,
float4  a,
float4  b 
) [inline]

Definition at line 513 of file parallel_math.h.

dxHost dxDevice float3 cross ( float3  a,
float3  b 
) [inline]

Definition at line 336 of file parallel_math.h.

dxHost dxDevice float dot ( const float3 a,
const float3 b 
) [inline]

Definition at line 305 of file parallel_math.h.

dxHost dxDevice double dot ( const double3 a,
const double3 b 
) [inline]

Definition at line 310 of file parallel_math.h.

dxHost dxDevice float dot ( const float3 a,
const float4 b 
) [inline]

Definition at line 315 of file parallel_math.h.

dxHost dxDevice double dot ( const double3 a,
const double4 b 
) [inline]

Definition at line 320 of file parallel_math.h.

dxHost dxDevice float dot ( const float4 a,
const float4 b 
) [inline]

Definition at line 325 of file parallel_math.h.

dxHost dxDevice double dot ( const double4 a,
const double4 b 
) [inline]

Definition at line 330 of file parallel_math.h.

template<typename T >
dxHost dxDevice T dot ( typename vec4< T >::Type  a,
typename vec4< T >::Type  b 
) [inline]

Definition at line 519 of file parallel_math.h.

dxHost dxDevice float3 floor ( const float3  v) [inline]

Definition at line 355 of file parallel_math.h.

dxHost dxDevice float4 floor ( const float4  v) [inline]

Definition at line 538 of file parallel_math.h.

float fmaxf ( float  a,
float  b 
) [inline]

Definition at line 73 of file parallel_math.h.

static __inline__ dxHost dxDevice float3 fmaxf ( float3  a,
float3  b 
) [static]

Definition at line 205 of file parallel_math.h.

static __inline__ dxHost dxDevice float4 fmaxf ( float4  a,
float4  b 
) [static]

Definition at line 435 of file parallel_math.h.

float fminf ( float  a,
float  b 
) [inline]

Definition at line 68 of file parallel_math.h.

static __inline__ dxHost dxDevice float3 fminf ( float3  a,
float3  b 
) [static]

Definition at line 199 of file parallel_math.h.

static __inline__ dxHost dxDevice float4 fminf ( float4  a,
float4  b 
) [static]

Definition at line 429 of file parallel_math.h.

dxHost dxDevice float length ( float3  v) [inline]

Definition at line 342 of file parallel_math.h.

dxHost dxDevice float length ( float4  r) [inline]

Definition at line 525 of file parallel_math.h.

dxHost dxDevice double3 make_double3 ( double  s) [inline]

Definition at line 178 of file parallel_math.h.

Definition at line 183 of file parallel_math.h.

Definition at line 187 of file parallel_math.h.

dxHost dxDevice double4 make_double4 ( double  s) [inline]

Definition at line 385 of file parallel_math.h.

Definition at line 389 of file parallel_math.h.

dxHost dxDevice double4 make_double4 ( double3  a,
double  w 
) [inline]

Definition at line 393 of file parallel_math.h.

dxHost dxDevice double4 make_double4 ( const double &  a,
const double &  b,
const double &  c 
) [inline]

Definition at line 397 of file parallel_math.h.

Definition at line 401 of file parallel_math.h.

dxHost dxDevice double4 make_fdouble4 ( double  s) [inline]

Definition at line 405 of file parallel_math.h.

dxHost dxDevice float3 make_float3 ( float  s) [inline]

Definition at line 165 of file parallel_math.h.

Definition at line 169 of file parallel_math.h.

Definition at line 173 of file parallel_math.h.

dxHost dxDevice float4 make_float4 ( float  s) [inline]

Definition at line 364 of file parallel_math.h.

Definition at line 368 of file parallel_math.h.

dxHost dxDevice float4 make_float4 ( float3  a,
float  w 
) [inline]

Definition at line 372 of file parallel_math.h.

dxHost dxDevice float4 make_float4 ( const float &  a,
const float &  b,
const float &  c 
) [inline]

Definition at line 376 of file parallel_math.h.

Definition at line 380 of file parallel_math.h.

dxHost dxDevice vec3<float>::Type make_vec3 ( float  a,
float  b,
float  c 
) [inline]

Definition at line 543 of file parallel_math.h.

dxHost dxDevice vec3<double>::Type make_vec3 ( double  a,
double  b,
double  c 
) [inline]

Definition at line 562 of file parallel_math.h.

dxHost dxDevice vec3<float>::Type make_vec3 ( float4  a) [inline]

Definition at line 572 of file parallel_math.h.

dxHost dxDevice vec3<double>::Type make_vec3 ( double4  a) [inline]

Definition at line 573 of file parallel_math.h.

dxHost dxDevice vec3<float>::Type make_vec3 ( float  a) [inline]

Definition at line 575 of file parallel_math.h.

dxHost dxDevice vec3<double>::Type make_vec3 ( double  a) [inline]

Definition at line 576 of file parallel_math.h.

dxHost dxDevice vec4<float>::Type make_vec4 ( const float &  a,
const float &  b,
const float &  c 
) [inline]

Definition at line 547 of file parallel_math.h.

dxHost dxDevice vec4<double>::Type make_vec4 ( const double &  a,
const double &  b,
const double &  c 
) [inline]

Definition at line 551 of file parallel_math.h.

dxHost dxDevice vec4<float>::Type make_vec4 ( float  a,
float  b,
float  c,
float  d 
) [inline]

Definition at line 555 of file parallel_math.h.

dxHost dxDevice vec4<double>::Type make_vec4 ( double  a,
double  b,
double  c,
double  d 
) [inline]

Definition at line 559 of file parallel_math.h.

dxHost dxDevice vec4<float>::Type make_vec4 ( float3  a) [inline]

Definition at line 566 of file parallel_math.h.

dxHost dxDevice vec4<double>::Type make_vec4 ( double3  a) [inline]

Definition at line 567 of file parallel_math.h.

dxHost dxDevice vec4<float>::Type make_vec4 ( float  a) [inline]

Definition at line 569 of file parallel_math.h.

dxHost dxDevice vec4<double>::Type make_vec4 ( double  a) [inline]

Definition at line 570 of file parallel_math.h.

dxHost dxDevice void make_zero ( float3 a) [inline]

Definition at line 52 of file parallel_math.h.

dxHost dxDevice void make_zero ( double3 a) [inline]

Definition at line 55 of file parallel_math.h.

dxHost dxDevice void make_zero ( float4 a) [inline]

Definition at line 58 of file parallel_math.h.

dxHost dxDevice void make_zero ( double4 a) [inline]

Definition at line 61 of file parallel_math.h.

int max ( int  a,
int  b 
) [inline]

Definition at line 78 of file parallel_math.h.

int min ( int  a,
int  b 
) [inline]

Definition at line 83 of file parallel_math.h.

Definition at line 348 of file parallel_math.h.

Definition at line 531 of file parallel_math.h.

dxHost dxDevice int2 operator* ( int2  a,
int2  b 
) [inline]

Definition at line 144 of file parallel_math.h.

dxHost dxDevice int2 operator* ( int2  a,
int  s 
) [inline]

Definition at line 148 of file parallel_math.h.

dxHost dxDevice int2 operator* ( int  s,
int2  a 
) [inline]

Definition at line 152 of file parallel_math.h.

dxHost dxDevice float3 operator* ( float3  a,
float3  b 
) [inline]

Definition at line 251 of file parallel_math.h.

dxHost dxDevice float3 operator* ( float3  a,
float  s 
) [inline]

Definition at line 255 of file parallel_math.h.

dxHost dxDevice float3 operator* ( float  s,
float3  a 
) [inline]

Definition at line 259 of file parallel_math.h.

template<typename T >
dxHost dxDevice vec4<T>::Type operator* ( typename vec4< T >::Type  a,
s 
) [inline]

Definition at line 469 of file parallel_math.h.

dxHost dxDevice float4 operator* ( float  s,
float4  a 
) [inline]

Definition at line 473 of file parallel_math.h.

dxHost dxDevice void operator*= ( int2 a,
int  s 
) [inline]

Definition at line 156 of file parallel_math.h.

dxHost dxDevice void operator*= ( float3 a,
float  s 
) [inline]

Definition at line 263 of file parallel_math.h.

dxHost dxDevice void operator*= ( double3 a,
double  s 
) [inline]

Definition at line 267 of file parallel_math.h.

dxHost dxDevice void operator*= ( float4 a,
float  s 
) [inline]

Definition at line 477 of file parallel_math.h.

dxHost dxDevice void operator*= ( double4 a,
double  s 
) [inline]

Definition at line 481 of file parallel_math.h.

dxHost dxDevice int2 operator+ ( int2  a,
int2  b 
) [inline]

Definition at line 124 of file parallel_math.h.

dxHost dxDevice float3 operator+ ( float3  a,
float3  b 
) [inline]

Definition at line 211 of file parallel_math.h.

dxHost dxDevice double3 operator+ ( double3  a,
double3  b 
) [inline]

Definition at line 215 of file parallel_math.h.

dxHost dxDevice float3 operator+ ( float3  a,
float  b 
) [inline]

Definition at line 219 of file parallel_math.h.

dxHost dxDevice double3 operator+ ( double3  a,
double  b 
) [inline]

Definition at line 223 of file parallel_math.h.

dxHost dxDevice float4 operator+ ( float4  a,
float4  b 
) [inline]

Definition at line 441 of file parallel_math.h.

dxHost dxDevice double4 operator+ ( double4  a,
double4  b 
) [inline]

Definition at line 445 of file parallel_math.h.

dxHost dxDevice void operator+= ( int2 a,
int2  b 
) [inline]

Definition at line 128 of file parallel_math.h.

dxHost dxDevice void operator+= ( float3 a,
float3  b 
) [inline]

Definition at line 227 of file parallel_math.h.

dxHost dxDevice void operator+= ( double3 a,
double3  b 
) [inline]

Definition at line 231 of file parallel_math.h.

dxHost dxDevice void operator+= ( float4 a,
float4  b 
) [inline]

Definition at line 449 of file parallel_math.h.

dxHost dxDevice void operator+= ( double4 a,
double4  b 
) [inline]

Definition at line 453 of file parallel_math.h.

dxHost dxDevice int2 operator- ( int2 a) [inline]

Definition at line 118 of file parallel_math.h.

dxHost dxDevice int2 operator- ( int2  a,
int2  b 
) [inline]

Definition at line 134 of file parallel_math.h.

dxHost dxDevice float3 operator- ( float3 a) [inline]

Definition at line 193 of file parallel_math.h.

dxHost dxDevice float3 operator- ( float3  a,
float3  b 
) [inline]

Definition at line 237 of file parallel_math.h.

dxHost dxDevice float3 operator- ( float3  a,
float  b 
) [inline]

Definition at line 241 of file parallel_math.h.

dxHost dxDevice float4 operator- ( float4 a) [inline]

Definition at line 423 of file parallel_math.h.

dxHost dxDevice float4 operator- ( float4  a,
float4  b 
) [inline]

Definition at line 459 of file parallel_math.h.

dxHost dxDevice void operator-= ( int2 a,
int2  b 
) [inline]

Definition at line 138 of file parallel_math.h.

dxHost dxDevice void operator-= ( float3 a,
float3  b 
) [inline]

Definition at line 245 of file parallel_math.h.

dxHost dxDevice void operator-= ( float4 a,
float4  b 
) [inline]

Definition at line 463 of file parallel_math.h.

dxHost dxDevice float3 operator/ ( float3  a,
float3  b 
) [inline]

Definition at line 273 of file parallel_math.h.

dxHost dxDevice float3 operator/ ( float3  a,
float  s 
) [inline]

Definition at line 277 of file parallel_math.h.

dxHost dxDevice float3 operator/ ( float  s,
float3  a 
) [inline]

Definition at line 282 of file parallel_math.h.

dxHost dxDevice float4 operator/ ( float4  a,
float4  b 
) [inline]

Definition at line 487 of file parallel_math.h.

dxHost dxDevice float4 operator/ ( float4  a,
float  s 
) [inline]

Definition at line 491 of file parallel_math.h.

dxHost dxDevice float4 operator/ ( float  s,
float4  a 
) [inline]

Definition at line 496 of file parallel_math.h.

dxHost dxDevice void operator/= ( float3 a,
float  s 
) [inline]

Definition at line 287 of file parallel_math.h.

dxHost dxDevice void operator/= ( float4 a,
float  s 
) [inline]

Definition at line 501 of file parallel_math.h.

template<typename T >
dxDevice T readAndReplace ( T *  buffer,
const T &  element 
) [inline]

Definition at line 17 of file parallel_math.h.



parallel_quickstep
Author(s): Jared Duke
autogenerated on Wed Apr 23 2014 10:23:51