| 
    SparseLibrary
    Version 1.6.0
    
   | 
 
Codes the Minimal CRS block order. More...
#include <MinCRS.hpp>


Protected Member Functions | |
| virtual void | pre_readout (const unsigned long int index) | 
| Prefix operations during SBD tree traversal.  More... | |
| virtual void | in_readout (const unsigned long int index) | 
| Infix operations during SBD tree traversal.  More... | |
| virtual void | post_readout (const unsigned long int index) | 
| Postfix operations during SBD tree traversal.  More... | |
  Protected Member Functions inherited from BlockOrderer< T > | |
| void | prefix (const unsigned long int index) | 
| Prefix operation during SBD tree traversal.  More... | |
| void | infix (const unsigned long int index) | 
| Infix operation during SBD tree traversal.  More... | |
| void | postfix (const unsigned long int index) | 
| Postfix operation during SBD tree traversal.  More... | |
| void | traverse () | 
| Traverses the SBD tree, makes call to prefix, infix, and postfix during traversal.  More... | |
| void | pre_height (const unsigned long int index) | 
| Prefix code for height-determining traversal.  More... | |
| void | in_height (const unsigned long int index) | 
| Infix code for height-determining traversal.  More... | |
| void | post_height (const unsigned long int index) | 
| Postfix code for height-determining traversal.  More... | |
| bool | left_horizontal (const unsigned long int index, const Triplet< T > triplet) | 
| Helper function for determining place of a nonzero within a separator cross.  | |
| bool | right_horizontal (const unsigned long int index, const Triplet< T > triplet) | 
| Helper function for determining place of a nonzero within a separator cross.  | |
| bool | upper_vertical (const unsigned long int index, const Triplet< T > triplet) | 
| Helper function for determining place of a nonzero within a separator cross.  | |
| bool | lower_vertical (const unsigned long int index, const Triplet< T > triplet) | 
| Helper function for determining place of a nonzero within a separator cross.  | |
| bool | middle (const unsigned long int index, const Triplet< T > triplet) | 
| Helper function for determining place of a nonzero within a separator cross.  | |
Additional Inherited Members | |
  Public Member Functions inherited from BlockOrderer< T > | |
| BlockOrderer () | |
| Base constructor.  | |
| virtual | ~BlockOrderer () | 
| Base destructor.  | |
| 
std::vector< std::vector < Triplet< T > > >  | induce (const std::vector< Triplet< T > > &input, std::vector< unsigned long int > &r_hierarchy, std::vector< unsigned long int > &c_hierarchy, std::vector< unsigned long int > &r_bounds, std::vector< unsigned long int > &c_bounds, std::vector< signed char > *datatype) | 
| Induces this ordering on a set of nonzeroes.  | |
  Protected Attributes inherited from BlockOrderer< T > | |
| SBDTree * | tree | 
| The SBD tree to order the blocks of.  More... | |
| std::vector< char > | leftpass | 
| Stores whether a node has been traversed from the left.  More... | |
| std::vector< char > | rightpass | 
| Stores whether a node has been traversed from the right.  More... | |
| char | traverse_mode | 
| Sets the traversal mode.  More... | |
| unsigned long int * | height | 
| Stores the height of a SBD node.  More... | |
| unsigned long int | cur_height | 
| The current height at the traversal position.  More... | |
| std::vector< Triplet< T > > * | items | 
| Nonzero storage at each node.  More... | |
| std::vector< std::vector < Triplet< T > > > *  | output | 
| Output structure after SBD readout (series of blocks in the correct order).  More... | |
| std::vector< signed char > * | datatype | 
| The data type of each block.  More... | |
  Static Protected Attributes inherited from BlockOrderer< T > | |
| static const char | TRAVERSE_HEIGHT = 0 | 
| Mode flag for height-determining traversal.  More... | |
| static const char | READOUT = 1 | 
| Mode flag for SBD tree readouts.  More... | |
Codes the Minimal CRS block order.
      
  | 
  inlineprotectedvirtual | 
Infix operations during SBD tree traversal.
Implements BlockOrderer< T >.
References BlockOrderer< T >::datatype, SBDTree::isLeaf(), BlockOrderer< T >::items, BlockOrderer< T >::left_horizontal(), BlockOrderer< T >::middle(), BlockOrderer< T >::output, BlockOrderer< T >::right_horizontal(), and BlockOrderer< T >::tree.
      
  | 
  inlineprotectedvirtual | 
Postfix operations during SBD tree traversal.
Implements BlockOrderer< T >.
References BlockOrderer< T >::datatype, SBDTree::isLeaf(), BlockOrderer< T >::items, BlockOrderer< T >::lower_vertical(), BlockOrderer< T >::output, and BlockOrderer< T >::tree.
      
  | 
  inlineprotectedvirtual | 
Prefix operations during SBD tree traversal.
Implements BlockOrderer< T >.
References BlockOrderer< T >::datatype, SBDTree::isLeaf(), BlockOrderer< T >::items, BlockOrderer< T >::output, BlockOrderer< T >::tree, and BlockOrderer< T >::upper_vertical().
 1.8.7