This class implements a diagonally symmetric matrix for twobit numbers, that is, the elements of the matrix can only be the numbers 0, 1, 2 or 3.
More...

 DiagMatrixT () 
 Creates a DiagMatrixT of size 0. More...


void  SetSize (unsigned long n) 
 (Re)sets the size of this DiagMatrixT to n*n and initializes the elements with zeros. More...


char  GetValue (unsigned long row, unsigned long col) const 
 Returns the value at (row, col). More...


void  SetValue (unsigned long row, unsigned long col, char value) 
 Sets the value at (row, col). Note that value must be 0, 1, 2 or 3. More...


unsigned long  GetBytesAlloced () const 

bool  Test () 
 Implements a simple test case for objects of this class. More...


This class implements a diagonally symmetric matrix for twobit numbers, that is, the elements of the matrix can only be the numbers 0, 1, 2 or 3.
Implementation notes:
 Only the lower left half of the matrix is physically stored.
 Each matrix element is physically represented by two bits.
 The elements in turn are stored in tuples of 16 in "unsigned long"s.
 Assumes that the type "unsigned long" has (at least) 32 bits.
DiagMatrixT::DiagMatrixT 
( 
 ) 


inline 
char DiagMatrixT::GetValue 
( 
unsigned long 
row, 


unsigned long 
col 

) 
 const 

inline 
Returns the value at (row, col).
void DiagMatrixT::SetSize 
( 
unsigned long 
n  ) 


inline 
(Re)sets the size of this DiagMatrixT to n*n and initializes the elements with zeros.
void DiagMatrixT::SetValue 
( 
unsigned long 
row, 


unsigned long 
col, 


char 
value 

) 
 

inline 
Sets the value at (row, col). Note that value must be 0, 1, 2 or 3.
bool DiagMatrixT::Test 
( 
 ) 

Implements a simple test case for objects of this class.
Returns true if all tests pass, false otherwise. The contents of the matrix after the test is undefined.
The documentation for this class was generated from the following file: