CMR  1.3.0
Public Member Functions | Protected Attributes | List of all members
matrix_generator Class Referenceabstract

#include <gen_generic.hpp>

Inheritance diagram for matrix_generator:
cycle_violator_matrix_generator network_matrix_generator random_matrix_generator

Public Member Functions

 matrix_generator (const char *name, size_t height, size_t width, tu::log_level level)
 
virtual ~matrix_generator ()
 
virtual void generate ()=0
 
void log_generate_start ()
 
void log_generate_end ()
 
virtual bool do_pivot (size_t row, size_t column)
 
template<typename MatrixType >
void permute_rows (MatrixType &matrix)
 
void permute_rows ()
 
void permute_columns ()
 
virtual void randomize ()
 
virtual void sign ()
 
virtual void print ()
 

Protected Attributes

size_t _height
 
size_t _width
 
tu::integer_matrix _matrix
 
boost::mt19937 _rng
 
tu::log_level _level
 
const char * _name
 

Constructor & Destructor Documentation

matrix_generator::matrix_generator ( const char *  name,
size_t  height,
size_t  width,
tu::log_level  level 
)
inline
virtual matrix_generator::~matrix_generator ( )
inlinevirtual

Member Function Documentation

virtual bool matrix_generator::do_pivot ( size_t  row,
size_t  column 
)
inlinevirtual

Reimplemented in random_matrix_generator.

virtual void matrix_generator::generate ( )
pure virtual
void matrix_generator::log_generate_end ( )
inline
void matrix_generator::log_generate_start ( )
inline
void matrix_generator::permute_columns ( )
inline
template<typename MatrixType >
void matrix_generator::permute_rows ( MatrixType &  matrix)
inline
void matrix_generator::permute_rows ( )
inline
virtual void matrix_generator::print ( )
inlinevirtual
virtual void matrix_generator::randomize ( )
inlinevirtual
virtual void matrix_generator::sign ( )
inlinevirtual

Member Data Documentation

size_t matrix_generator::_height
protected
tu::log_level matrix_generator::_level
protected
tu::integer_matrix matrix_generator::_matrix
protected
const char* matrix_generator::_name
protected
boost::mt19937 matrix_generator::_rng
protected
size_t matrix_generator::_width
protected

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