NTrace
GPU ray tracing framework
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
FW::MatrixBase Class Reference

#include <Math.hpp>

Public Member Functions

FW_CUDA_FUNC MatrixBase (void)
 
FW_CUDA_FUNC const T * getPtr (void) const
 
FW_CUDA_FUNC T * getPtr (void)
 
FW_CUDA_FUNC const T & get (int idx) const
 
FW_CUDA_FUNC T & get (int idx)
 
FW_CUDA_FUNC const T & get (int r, int c) const
 
FW_CUDA_FUNC T & get (int r, int c)
 
FW_CUDA_FUNCset (int idx, const T &a)
 
FW_CUDA_FUNCset (int r, int c, const T &a)
 
FW_CUDA_FUNC const Vector< T, L > & col (int c) const
 
FW_CUDA_FUNC Vector< T, L > & col (int c)
 
FW_CUDA_FUNC const Vector< T, L > & getCol (int c) const
 
FW_CUDA_FUNC Vector< T, LgetRow (int r) const
 
FW_CUDA_FUNC void set (const T &a)
 
FW_CUDA_FUNC void set (const T *ptr)
 
FW_CUDA_FUNC void setZero (void)
 
FW_CUDA_FUNC void setIdentity (void)
 
void print (void) const
 
FW_CUDA_FUNCdet (void) const
 
FW_CUDA_FUNCtransposed (void) const
 
FW_CUDA_FUNCinverted (void) const
 
FW_CUDA_FUNC void transpose (void)
 
FW_CUDA_FUNC void invert (void)
 
FW_CUDA_FUNC const T & operator() (int r, int c) const
 
FW_CUDA_FUNC T & operator() (int r, int c)
 
FW_CUDA_FUNC S & operator= (const T &a)
 
FW_CUDA_FUNC S & operator+= (const T &a)
 
FW_CUDA_FUNC S & operator-= (const T &a)
 
FW_CUDA_FUNC S & operator*= (const T &a)
 
FW_CUDA_FUNC S & operator/= (const T &a)
 
FW_CUDA_FUNC S & operator%= (const T &a)
 
FW_CUDA_FUNC S & operator&= (const T &a)
 
FW_CUDA_FUNC S & operator|= (const T &a)
 
FW_CUDA_FUNC S & operator^= (const T &a)
 
FW_CUDA_FUNC S & operator<<= (const T &a)
 
FW_CUDA_FUNC S & operator>>= (const T &a)
 
FW_CUDA_FUNCoperator+ (void) const
 
FW_CUDA_FUNCoperator- (void) const
 
FW_CUDA_FUNCoperator~ (void) const
 
FW_CUDA_FUNCoperator+ (const T &a) const
 
FW_CUDA_FUNCoperator- (const T &a) const
 
FW_CUDA_FUNCoperator* (const T &a) const
 
FW_CUDA_FUNCoperator/ (const T &a) const
 
FW_CUDA_FUNCoperator% (const T &a) const
 
FW_CUDA_FUNCoperator& (const T &a) const
 
FW_CUDA_FUNCoperator| (const T &a) const
 
FW_CUDA_FUNCoperator^ (const T &a) const
 
FW_CUDA_FUNCoperator<< (const T &a) const
 
FW_CUDA_FUNCoperator>> (const T &a) const
 
template<class V >
FW_CUDA_FUNC void setCol (int c, const VectorBase< T, L, V > &v)
 
template<class V >
FW_CUDA_FUNC void setRow (int r, const VectorBase< T, L, V > &v)
 
template<class V >
FW_CUDA_FUNC void set (const MatrixBase< T, L, V > &v)
 
template<class V >
FW_CUDA_FUNC S & operator= (const MatrixBase< T, L, V > &v)
 
template<class V >
FW_CUDA_FUNC S & operator+= (const MatrixBase< T, L, V > &v)
 
template<class V >
FW_CUDA_FUNC S & operator-= (const MatrixBase< T, L, V > &v)
 
template<class V >
FW_CUDA_FUNC S & operator*= (const MatrixBase< T, L, V > &v)
 
template<class V >
FW_CUDA_FUNC S & operator/= (const MatrixBase< T, L, V > &v)
 
template<class V >
FW_CUDA_FUNC S & operator%= (const MatrixBase< T, L, V > &v)
 
template<class V >
FW_CUDA_FUNC S & operator&= (const MatrixBase< T, L, V > &v)
 
template<class V >
FW_CUDA_FUNC S & operator|= (const MatrixBase< T, L, V > &v)
 
template<class V >
FW_CUDA_FUNC S & operator^= (const MatrixBase< T, L, V > &v)
 
template<class V >
FW_CUDA_FUNC S & operator<<= (const MatrixBase< T, L, V > &v)
 
template<class V >
FW_CUDA_FUNC S & operator>>= (const MatrixBase< T, L, V > &v)
 
template<class V >
FW_CUDA_FUNCoperator* (const VectorBase< T, L, V > &v) const
 
template<class V >
FW_CUDA_FUNCoperator* (const VectorBase< T, L-1, V > &v) const
 
template<class V >
FW_CUDA_FUNCoperator+ (const MatrixBase< T, L, V > &v) const
 
template<class V >
FW_CUDA_FUNCoperator- (const MatrixBase< T, L, V > &v) const
 
template<class V >
FW_CUDA_FUNCoperator* (const MatrixBase< T, L, V > &v) const
 
template<class V >
FW_CUDA_FUNCoperator/ (const MatrixBase< T, L, V > &v) const
 
template<class V >
FW_CUDA_FUNCoperator% (const MatrixBase< T, L, V > &v) const
 
template<class V >
FW_CUDA_FUNCoperator& (const MatrixBase< T, L, V > &v) const
 
template<class V >
FW_CUDA_FUNCoperator| (const MatrixBase< T, L, V > &v) const
 
template<class V >
FW_CUDA_FUNCoperator^ (const MatrixBase< T, L, V > &v) const
 
template<class V >
FW_CUDA_FUNCoperator<< (const MatrixBase< T, L, V > &v) const
 
template<class V >
FW_CUDA_FUNCoperator>> (const MatrixBase< T, L, V > &v) const
 
template<class V >
FW_CUDA_FUNC bool operator== (const MatrixBase< T, L, V > &v) const
 
template<class V >
FW_CUDA_FUNC bool operator!= (const MatrixBase< T, L, V > &v) const
 
template<class V >
translate (const VectorBase< T, L-1, V > &v)
 
template<class V >
scale (const VectorBase< T, L-1, V > &v)
 
template<class V >
scale (const VectorBase< T, L, V > &v)
 
template<class V >
void setRow (int idx, const VectorBase< T, L, V > &v)
 
template<class V >
operator* (const VectorBase< T, L, V > &v) const
 
template<class V >
operator* (const VectorBase< T, L-1, V > &v) const
 
template<class V >
operator* (const MatrixBase< T, L, V > &v) const
 

Static Public Member Functions

template<class V >
static FW_CUDA_FUNCtranslate (const VectorBase< T, L-1, V > &v)
 
template<class V >
static FW_CUDA_FUNCscale (const VectorBase< T, L-1, V > &v)
 
template<class V >
static FW_CUDA_FUNCscale (const VectorBase< T, L, V > &v)
 

Detailed Description

Definition at line 509 of file Math.hpp.

Constructor & Destructor Documentation

FW_CUDA_FUNC FW::MatrixBase::MatrixBase ( void  )
inline

Definition at line 512 of file Math.hpp.

Member Function Documentation

FW_CUDA_FUNC const Vector<T, L>& FW::MatrixBase::col ( int  c) const
inline

Definition at line 526 of file Math.hpp.

FW_CUDA_FUNC Vector<T, L>& FW::MatrixBase::col ( int  c)
inline

Definition at line 527 of file Math.hpp.

T FW::MatrixBase::det ( void  ) const

Definition at line 946 of file Math.hpp.

FW_CUDA_FUNC const T& FW::MatrixBase::get ( int  idx) const
inline

Definition at line 520 of file Math.hpp.

FW_CUDA_FUNC T& FW::MatrixBase::get ( int  idx)
inline

Definition at line 521 of file Math.hpp.

FW_CUDA_FUNC const T& FW::MatrixBase::get ( int  r,
int  c 
) const
inline

Definition at line 522 of file Math.hpp.

FW_CUDA_FUNC T& FW::MatrixBase::get ( int  r,
int  c 
)
inline

Definition at line 523 of file Math.hpp.

FW_CUDA_FUNC const Vector<T, L>& FW::MatrixBase::getCol ( int  c) const
inline

Definition at line 528 of file Math.hpp.

FW_CUDA_FUNC const T* FW::MatrixBase::getPtr ( void  ) const
inline

Definition at line 518 of file Math.hpp.

FW_CUDA_FUNC T* FW::MatrixBase::getPtr ( void  )
inline

Definition at line 519 of file Math.hpp.

Vector< T, L > FW::MatrixBase::getRow ( int  r) const

Definition at line 881 of file Math.hpp.

FW_CUDA_FUNC void FW::MatrixBase::invert ( void  )
inline

Definition at line 544 of file Math.hpp.

S FW::MatrixBase::inverted ( void  ) const

Definition at line 964 of file Math.hpp.

template<class V >
FW_CUDA_FUNC bool FW::MatrixBase::operator!= ( const MatrixBase< T, L, V > &  v) const
inline

Definition at line 607 of file Math.hpp.

FW_CUDA_FUNC S FW::MatrixBase::operator% ( const T &  a) const
inline

Definition at line 569 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S FW::MatrixBase::operator% ( const MatrixBase< T, L, V > &  v) const
inline

Definition at line 599 of file Math.hpp.

FW_CUDA_FUNC S& FW::MatrixBase::operator%= ( const T &  a)
inline

Definition at line 554 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S& FW::MatrixBase::operator%= ( const MatrixBase< T, L, V > &  v)
inline

Definition at line 585 of file Math.hpp.

FW_CUDA_FUNC S FW::MatrixBase::operator& ( const T &  a) const
inline

Definition at line 570 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S FW::MatrixBase::operator& ( const MatrixBase< T, L, V > &  v) const
inline

Definition at line 600 of file Math.hpp.

FW_CUDA_FUNC S& FW::MatrixBase::operator&= ( const T &  a)
inline

Definition at line 555 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S& FW::MatrixBase::operator&= ( const MatrixBase< T, L, V > &  v)
inline

Definition at line 586 of file Math.hpp.

FW_CUDA_FUNC const T& FW::MatrixBase::operator() ( int  r,
int  c 
) const
inline

Definition at line 546 of file Math.hpp.

FW_CUDA_FUNC T& FW::MatrixBase::operator() ( int  r,
int  c 
)
inline

Definition at line 547 of file Math.hpp.

FW_CUDA_FUNC S FW::MatrixBase::operator* ( const T &  a) const
inline

Definition at line 567 of file Math.hpp.

template<class V >
FW_CUDA_FUNC V FW::MatrixBase::operator* ( const VectorBase< T, L, V > &  v) const
template<class V >
FW_CUDA_FUNC V FW::MatrixBase::operator* ( const VectorBase< T, L-1, V > &  v) const
template<class V >
FW_CUDA_FUNC S FW::MatrixBase::operator* ( const MatrixBase< T, L, V > &  v) const
template<class V >
V FW::MatrixBase::operator* ( const VectorBase< T, L, V > &  v) const

Definition at line 998 of file Math.hpp.

template<class V >
V FW::MatrixBase::operator* ( const VectorBase< T, L-1, V > &  v) const

Definition at line 1013 of file Math.hpp.

template<class V >
S FW::MatrixBase::operator* ( const MatrixBase< T, L, V > &  v) const

Definition at line 1033 of file Math.hpp.

FW_CUDA_FUNC S& FW::MatrixBase::operator*= ( const T &  a)
inline

Definition at line 552 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S& FW::MatrixBase::operator*= ( const MatrixBase< T, L, V > &  v)
inline

Definition at line 583 of file Math.hpp.

FW_CUDA_FUNC S FW::MatrixBase::operator+ ( void  ) const
inline

Definition at line 561 of file Math.hpp.

FW_CUDA_FUNC S FW::MatrixBase::operator+ ( const T &  a) const
inline

Definition at line 565 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S FW::MatrixBase::operator+ ( const MatrixBase< T, L, V > &  v) const
inline

Definition at line 595 of file Math.hpp.

FW_CUDA_FUNC S& FW::MatrixBase::operator+= ( const T &  a)
inline

Definition at line 550 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S& FW::MatrixBase::operator+= ( const MatrixBase< T, L, V > &  v)
inline

Definition at line 581 of file Math.hpp.

FW_CUDA_FUNC S FW::MatrixBase::operator- ( void  ) const
inline

Definition at line 562 of file Math.hpp.

FW_CUDA_FUNC S FW::MatrixBase::operator- ( const T &  a) const
inline

Definition at line 566 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S FW::MatrixBase::operator- ( const MatrixBase< T, L, V > &  v) const
inline

Definition at line 596 of file Math.hpp.

FW_CUDA_FUNC S& FW::MatrixBase::operator-= ( const T &  a)
inline

Definition at line 551 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S& FW::MatrixBase::operator-= ( const MatrixBase< T, L, V > &  v)
inline

Definition at line 582 of file Math.hpp.

FW_CUDA_FUNC S FW::MatrixBase::operator/ ( const T &  a) const
inline

Definition at line 568 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S FW::MatrixBase::operator/ ( const MatrixBase< T, L, V > &  v) const
inline

Definition at line 598 of file Math.hpp.

FW_CUDA_FUNC S& FW::MatrixBase::operator/= ( const T &  a)
inline

Definition at line 553 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S& FW::MatrixBase::operator/= ( const MatrixBase< T, L, V > &  v)
inline

Definition at line 584 of file Math.hpp.

FW_CUDA_FUNC S FW::MatrixBase::operator<< ( const T &  a) const
inline

Definition at line 573 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S FW::MatrixBase::operator<< ( const MatrixBase< T, L, V > &  v) const
inline

Definition at line 603 of file Math.hpp.

FW_CUDA_FUNC S& FW::MatrixBase::operator<<= ( const T &  a)
inline

Definition at line 558 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S& FW::MatrixBase::operator<<= ( const MatrixBase< T, L, V > &  v)
inline

Definition at line 589 of file Math.hpp.

FW_CUDA_FUNC S& FW::MatrixBase::operator= ( const T &  a)
inline

Definition at line 549 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S& FW::MatrixBase::operator= ( const MatrixBase< T, L, V > &  v)
inline

Definition at line 580 of file Math.hpp.

template<class V >
FW_CUDA_FUNC bool FW::MatrixBase::operator== ( const MatrixBase< T, L, V > &  v) const
inline

Definition at line 606 of file Math.hpp.

FW_CUDA_FUNC S FW::MatrixBase::operator>> ( const T &  a) const
inline

Definition at line 574 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S FW::MatrixBase::operator>> ( const MatrixBase< T, L, V > &  v) const
inline

Definition at line 604 of file Math.hpp.

FW_CUDA_FUNC S& FW::MatrixBase::operator>>= ( const T &  a)
inline

Definition at line 559 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S& FW::MatrixBase::operator>>= ( const MatrixBase< T, L, V > &  v)
inline

Definition at line 590 of file Math.hpp.

FW_CUDA_FUNC S FW::MatrixBase::operator^ ( const T &  a) const
inline

Definition at line 572 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S FW::MatrixBase::operator^ ( const MatrixBase< T, L, V > &  v) const
inline

Definition at line 602 of file Math.hpp.

FW_CUDA_FUNC S& FW::MatrixBase::operator^= ( const T &  a)
inline

Definition at line 557 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S& FW::MatrixBase::operator^= ( const MatrixBase< T, L, V > &  v)
inline

Definition at line 588 of file Math.hpp.

FW_CUDA_FUNC S FW::MatrixBase::operator| ( const T &  a) const
inline

Definition at line 571 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S FW::MatrixBase::operator| ( const MatrixBase< T, L, V > &  v) const
inline

Definition at line 601 of file Math.hpp.

FW_CUDA_FUNC S& FW::MatrixBase::operator|= ( const T &  a)
inline

Definition at line 556 of file Math.hpp.

template<class V >
FW_CUDA_FUNC S& FW::MatrixBase::operator|= ( const MatrixBase< T, L, V > &  v)
inline

Definition at line 587 of file Math.hpp.

FW_CUDA_FUNC S FW::MatrixBase::operator~ ( void  ) const
inline

Definition at line 563 of file Math.hpp.

void FW::MatrixBase::print ( void  ) const

Definition at line 892 of file Math.hpp.

template<class V >
static FW_CUDA_FUNC S FW::MatrixBase::scale ( const VectorBase< T, L-1, V > &  v)
static
template<class V >
static FW_CUDA_FUNC S FW::MatrixBase::scale ( const VectorBase< T, L, V > &  v)
static
template<class V >
S FW::MatrixBase::scale ( const VectorBase< T, L-1, V > &  v)

Definition at line 861 of file Math.hpp.

template<class V >
S FW::MatrixBase::scale ( const VectorBase< T, L, V > &  v)

Definition at line 871 of file Math.hpp.

FW_CUDA_FUNC T FW::MatrixBase::set ( int  idx,
const T &  a 
)
inline

Definition at line 524 of file Math.hpp.

FW_CUDA_FUNC T FW::MatrixBase::set ( int  r,
int  c,
const T &  a 
)
inline

Definition at line 525 of file Math.hpp.

FW_CUDA_FUNC void FW::MatrixBase::set ( const T &  a)
inline

Definition at line 531 of file Math.hpp.

FW_CUDA_FUNC void FW::MatrixBase::set ( const T *  ptr)
inline

Definition at line 532 of file Math.hpp.

template<class V >
FW_CUDA_FUNC void FW::MatrixBase::set ( const MatrixBase< T, L, V > &  v)
inline

Definition at line 578 of file Math.hpp.

template<class V >
FW_CUDA_FUNC void FW::MatrixBase::setCol ( int  c,
const VectorBase< T, L, V > &  v 
)
inline

Definition at line 576 of file Math.hpp.

FW_CUDA_FUNC void FW::MatrixBase::setIdentity ( void  )
inline

Definition at line 534 of file Math.hpp.

template<class V >
FW_CUDA_FUNC void FW::MatrixBase::setRow ( int  r,
const VectorBase< T, L, V > &  v 
)
template<class V >
void FW::MatrixBase::setRow ( int  idx,
const VectorBase< T, L, V > &  v 
)

Definition at line 990 of file Math.hpp.

FW_CUDA_FUNC void FW::MatrixBase::setZero ( void  )
inline

Definition at line 533 of file Math.hpp.

template<class V >
static FW_CUDA_FUNC S FW::MatrixBase::translate ( const VectorBase< T, L-1, V > &  v)
static
template<class V >
S FW::MatrixBase::translate ( const VectorBase< T, L-1, V > &  v)

Definition at line 851 of file Math.hpp.

FW_CUDA_FUNC void FW::MatrixBase::transpose ( void  )
inline

Definition at line 543 of file Math.hpp.

S FW::MatrixBase::transposed ( void  ) const

Definition at line 953 of file Math.hpp.


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