Point Cloud Library (PCL)  1.9.1-dev
List of all members | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes
pcl::poisson::SparseMatrix< T > Class Template Reference

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

+ Inheritance diagram for pcl::poisson::SparseMatrix< T >:

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  )

Definition at line 70 of file sparse_matrix.hpp.

template<class T >
pcl::poisson::SparseMatrix< T >::SparseMatrix ( int  rows)

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 
)

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)
template<class T >
pcl::poisson::SparseMatrix< T >::~SparseMatrix ( void  )

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
template<class T >
SparseMatrix< T > pcl::poisson::SparseMatrix< T >::Multiply ( const SparseMatrix< T > &  M) const
template<class T >
template<class T2 >
Vector< T2 > pcl::poisson::SparseMatrix< T >::Multiply ( const Vector< T2 > &  V) const
template<class T >
template<class T2 >
void pcl::poisson::SparseMatrix< T >::Multiply ( const Vector< T2 > &  In,
Vector< T2 > &  Out,
int  threads = 1 
) const
template<class T>
SparseMatrix<T> pcl::poisson::SparseMatrix< T >::MultiplyTranspose ( const SparseMatrix< T > &  Mt) const
template<class T >
SparseMatrix< T > pcl::poisson::SparseMatrix< T >::operator* ( const T &  V) const

Definition at line 241 of file sparse_matrix.hpp.

template<class T >
SparseMatrix< T > pcl::poisson::SparseMatrix< T >::operator* ( const SparseMatrix< T > &  M) const

Definition at line 306 of file sparse_matrix.hpp.

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

template<class T >
template<class T2 >
Vector< T2 > pcl::poisson::SparseMatrix< T >::operator* ( const Vector< T2 > &  V) const

Definition at line 312 of file sparse_matrix.hpp.

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

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

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)
template<class T>
MatrixEntry< T >* pcl::poisson::SparseMatrix< T >::operator[] ( int  idx)
inline

Definition at line 67 of file sparse_matrix.h.

template<class T>
const MatrixEntry< T >* pcl::poisson::SparseMatrix< T >::operator[] ( int  idx) const
inline
template<class T >
bool pcl::poisson::SparseMatrix< T >::read ( FILE *  fp)
template<class T >
bool pcl::poisson::SparseMatrix< T >::read ( const char *  fileName)

Definition at line 126 of file sparse_matrix.hpp.

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

template<class T >
void pcl::poisson::SparseMatrix< T >::Resize ( int  rows)
template<class T >
void pcl::poisson::SparseMatrix< T >::Resize ( int  rows,
int  maxEntriesPerRow 
)
template<class T >
void pcl::poisson::SparseMatrix< T >::SetAllocator ( int  blockSize)
static
template<class T >
void pcl::poisson::SparseMatrix< T >::SetIdentity ( )

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 
)
template<class T >
void pcl::poisson::SparseMatrix< T >::SetZero ( )
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 
)
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 
)
static
template<class T >
SparseMatrix< T > pcl::poisson::SparseMatrix< T >::Transpose ( ) const
template<class T >
int pcl::poisson::SparseMatrix< T >::UseAllocator ( void  )
static

Definition at line 55 of file sparse_matrix.hpp.

template<class T >
bool pcl::poisson::SparseMatrix< T >::write ( FILE *  fp) const
template<class T >
bool pcl::poisson::SparseMatrix< T >::write ( const char *  fileName) const

Definition at line 117 of file sparse_matrix.hpp.

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

Member Data Documentation

template<class T>
Allocator< MatrixEntry< T > > pcl::poisson::SparseMatrix< T >::internalAllocator
static

Definition at line 60 of file sparse_matrix.h.

Referenced by pcl::poisson::SparseMatrix< T >::SetRowSize().

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: