| HDK
    | 
#include <UT_SparseMatrix.h>
| Public Types | |
| typedef UT_SparseMatrixCSRT< T > | SparseMatrixType | 
| Public Member Functions | |
| UT_SparseMatrixBuilderT () | |
| Construct an uninitialized sparse matrix builder.  More... | |
| UT_SparseMatrixBuilderT (SparseMatrixType &matrix) | |
| Construct a sparse matrix builder for the given matrix.  More... | |
| void | init (SparseMatrixType &matrix) | 
| Initializes the builder to start building the given matrix.  More... | |
| void | setCapacity (exint capacity) | 
| void | startRow (exint row) | 
| void | addToColumn (exint col, T value) | 
| void | finish () | 
| Completes the remaining rows and finalizes the matrix.  More... | |
Simple helper class to construct a SparseMatrixCSRT. This operates on the matrix data in-place and is generally much more performant than constructing via triplets, but the builder has the limitation of only being able to add to rows sequentially; i.e. each call to startRow must start the construction of a row greater than the last, while addToColumn can be called with any column ordering.
Definition at line 1037 of file UT_SparseMatrix.h.
| typedef UT_SparseMatrixCSRT<T> UT_SparseMatrixBuilderT< T >::SparseMatrixType | 
Definition at line 1040 of file UT_SparseMatrix.h.
| 
 | inline | 
Construct an uninitialized sparse matrix builder.
Definition at line 1043 of file UT_SparseMatrix.h.
| 
 | inline | 
Construct a sparse matrix builder for the given matrix.
Definition at line 1046 of file UT_SparseMatrix.h.
| void UT_SparseMatrixBuilderT< T >::addToColumn | ( | exint | col, | 
| T | value | ||
| ) | 
Adds the given value at the given column to the current row. If a cell is already present for the given column, the given value is added to it.
| void UT_SparseMatrixBuilderT< T >::finish | ( | ) | 
Completes the remaining rows and finalizes the matrix.
| void UT_SparseMatrixBuilderT< T >::init | ( | SparseMatrixType & | matrix | ) | 
Initializes the builder to start building the given matrix.
| void UT_SparseMatrixBuilderT< T >::setCapacity | ( | exint | capacity | ) | 
Sets the minimum capacity of non-zero elements for the given matrix. This is used to preallocate memory for the matrix to avoid excessive reallocation as elements are added.
| void UT_SparseMatrixBuilderT< T >::startRow | ( | exint | row | ) | 
Advances the current row to the given row. The row must be greater than the current row.