pcl::poisson::SparseMatrix< T > Class Template Reference

#include <pcl/surface/3rdparty/poisson4/sparse_matrix.h>

Inheritance diagram for pcl::poisson::SparseMatrix< T >:
Inheritance graph
[legend]
Collaboration diagram for pcl::poisson::SparseMatrix< T >:
Collaboration graph
[legend]

List of all members.

Public Member Functions

MatrixEntry< T > * operator[] (int idx)
const MatrixEntry< T > * operator[] (int idx) const
 SparseMatrix (void)
 SparseMatrix (int rows)
 SparseMatrix (int rows, int maxEntriesPerRow)
void Resize (int rows)
void Resize (int rows, int maxEntriesPerRow)
void SetRowSize (int row, int count)
int Entries (void) const
 SparseMatrix (const SparseMatrix &M)
 ~SparseMatrix ()
void SetZero ()
void SetIdentity ()
SparseMatrix< T > & operator= (const SparseMatrix< T > &M)
SparseMatrix< T > operator* (const T &V) const
SparseMatrix< T > & operator*= (const T &V)
SparseMatrix< T > operator* (const SparseMatrix< T > &M) const
SparseMatrix< T > Multiply (const SparseMatrix< T > &M) const
SparseMatrix< T > MultiplyTranspose (const SparseMatrix< T > &Mt) const
template<class T2 >
Vector< T2 > operator* (const Vector< T2 > &V) const
template<class T2 >
Vector< T2 > Multiply (const Vector< T2 > &V) const
template<class T2 >
void Multiply (const Vector< T2 > &In, Vector< T2 > &Out, int threads=1) const
SparseMatrix< T > Transpose () const
bool write (FILE *fp) const
bool write (const char *fileName) const
bool read (FILE *fp)
bool read (const char *fileName)

Static Public Member Functions

static int UseAllocator (void)
static void SetAllocator (int blockSize)
static int Solve (const SparseMatrix< T > &M, const Vector< T > &b, int iters, Vector< T > &solution, const T eps=1e-8)
template<class T2 >
static int SolveSymmetric (const SparseMatrix< T > &M, const Vector< T2 > &b, int iters, Vector< T2 > &solution, const T2 eps=1e-8, int reset=1, int threads=1)

Public Attributes

int rows
int * rowSizes
MatrixEntry< T > ** m_ppElements

Static Public Attributes

static Allocator< MatrixEntry
< T > > 
internalAllocator

Detailed Description

template<class T>
class pcl::poisson::SparseMatrix< T >

Definition at line 53 of file sparse_matrix.h.


Constructor & Destructor Documentation

template<class T >
pcl::poisson::SparseMatrix< T >::SparseMatrix ( void   )  [inline]
template<class T >
pcl::poisson::SparseMatrix< T >::SparseMatrix ( int  rows  )  [inline]

Definition at line 79 of file sparse_matrix.hpp.

References pcl::poisson::SparseMatrix< T >::Resize().

template<class T >
pcl::poisson::SparseMatrix< T >::SparseMatrix ( int  rows,
int  maxEntriesPerRow 
) [inline]

Definition at line 80 of file sparse_matrix.hpp.

References pcl::poisson::SparseMatrix< T >::Resize().

template<class T >
pcl::poisson::SparseMatrix< T >::SparseMatrix ( const SparseMatrix< T > &  M  )  [inline]
template<class T >
pcl::poisson::SparseMatrix< T >::~SparseMatrix ( void   )  [inline]

Definition at line 114 of file sparse_matrix.hpp.

References pcl::poisson::SparseMatrix< T >::Resize().


Member Function Documentation

template<class T >
int pcl::poisson::SparseMatrix< T >::Entries ( void   )  const [inline]
template<class T >
template<class T2 >
void pcl::poisson::SparseMatrix< T >::Multiply ( const Vector< T2 > &  In,
Vector< T2 > &  Out,
int  threads = 1 
) const [inline]
template<class T >
template<class T2 >
Vector< T2 > pcl::poisson::SparseMatrix< T >::Multiply ( const Vector< T2 > &  V  )  const [inline]
template<class T >
SparseMatrix< T > pcl::poisson::SparseMatrix< T >::Multiply ( const SparseMatrix< T > &  M  )  const [inline]
template<class T>
SparseMatrix<T> pcl::poisson::SparseMatrix< T >::MultiplyTranspose ( const SparseMatrix< T > &  Mt  )  const
template<class T >
template<class T2 >
Vector< T2 > pcl::poisson::SparseMatrix< T >::operator* ( const Vector< T2 > &  V  )  const [inline]
template<class T >
SparseMatrix< T > pcl::poisson::SparseMatrix< T >::operator* ( const SparseMatrix< T > &  M  )  const [inline]

Definition at line 306 of file sparse_matrix.hpp.

References pcl::poisson::SparseMatrix< T >::Multiply().

template<class T >
SparseMatrix< T > pcl::poisson::SparseMatrix< T >::operator* ( const T &  V  )  const [inline]

Definition at line 241 of file sparse_matrix.hpp.

template<class T >
SparseMatrix< T > & pcl::poisson::SparseMatrix< T >::operator*= ( const T &  V  )  [inline]

Definition at line 249 of file sparse_matrix.hpp.

References pcl::poisson::SparseMatrix< T >::m_ppElements.

template<class T >
SparseMatrix< T > & pcl::poisson::SparseMatrix< T >::operator= ( const SparseMatrix< T > &  M  )  [inline]
template<class T>
const MatrixEntry< T >* pcl::poisson::SparseMatrix< T >::operator[] ( int  idx  )  const [inline]

Definition at line 68 of file sparse_matrix.h.

References pcl::poisson::SparseMatrix< T >::m_ppElements.

template<class T>
MatrixEntry< T >* pcl::poisson::SparseMatrix< T >::operator[] ( int  idx  )  [inline]

Definition at line 67 of file sparse_matrix.h.

References pcl::poisson::SparseMatrix< T >::m_ppElements.

template<class T >
bool pcl::poisson::SparseMatrix< T >::read ( const char *  fileName  )  [inline]

Definition at line 126 of file sparse_matrix.hpp.

References pcl::poisson::SparseMatrix< T >::read().

template<class T >
bool pcl::poisson::SparseMatrix< T >::read ( FILE *  fp  )  [inline]
template<class T >
void pcl::poisson::SparseMatrix< T >::Resize ( int  rows,
int  maxEntriesPerRow 
) [inline]
template<class T >
void pcl::poisson::SparseMatrix< T >::Resize ( int  rows  )  [inline]
template<class T >
void pcl::poisson::SparseMatrix< T >::SetAllocator ( int  blockSize  )  [inline, static]
template<class T >
void pcl::poisson::SparseMatrix< T >::SetIdentity (  )  [inline]

Definition at line 233 of file sparse_matrix.hpp.

References pcl::poisson::SparseMatrix< T >::SetZero().

template<class T >
void pcl::poisson::SparseMatrix< T >::SetRowSize ( int  row,
int  count 
) [inline]
template<class T >
void pcl::poisson::SparseMatrix< T >::SetZero (  )  [inline]
template<class T >
int pcl::poisson::SparseMatrix< T >::Solve ( const SparseMatrix< T > &  M,
const Vector< T > &  b,
int  iters,
Vector< T > &  solution,
const T  eps = 1e-8 
) [inline, static]
template<class T >
template<class T2 >
int pcl::poisson::SparseMatrix< T >::SolveSymmetric ( const SparseMatrix< T > &  M,
const Vector< T2 > &  b,
int  iters,
Vector< T2 > &  solution,
const T2  eps = 1e-8,
int  reset = 1,
int  threads = 1 
) [inline, static]
template<class T >
SparseMatrix< T > pcl::poisson::SparseMatrix< T >::Transpose (  )  const [inline]
template<class T >
int pcl::poisson::SparseMatrix< T >::UseAllocator ( void   )  [inline, static]

Definition at line 55 of file sparse_matrix.hpp.

template<class T >
bool pcl::poisson::SparseMatrix< T >::write ( const char *  fileName  )  const [inline]

Definition at line 117 of file sparse_matrix.hpp.

References pcl::poisson::SparseMatrix< T >::write().

template<class T >
bool pcl::poisson::SparseMatrix< T >::write ( FILE *  fp  )  const [inline]

Member Data Documentation

template<class T>
Allocator< MatrixEntry< T > > pcl::poisson::SparseMatrix< T >::internalAllocator [inline, static]
template<class T>
MatrixEntry<T>** pcl::poisson::SparseMatrix< T >::m_ppElements
template<class T>
int pcl::poisson::SparseMatrix< T >::rows
template<class T>
int* pcl::poisson::SparseMatrix< T >::rowSizes

The documentation for this class was generated from the following files:
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends