atlas  0.6
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
atlas::bitvector::BitMatrix< dim > Class Template Reference

#include <Atlas.h>

Public Member Functions

 BitMatrix (size_t n)
 
 BitMatrix (size_t m, size_t n)
 
 BitMatrix (const std::vector< BitVector< dim > > &, unsigned short int num_rows)
 
 BitMatrix (const matrix::Matrix< int > &m)
 
bool test (size_t i, size_t j) const
 The (i,j) entry of the BitMatrix. More...
 
BitVector< dim > operator* (const BitVector< dim > &src) const
 
template<typename I , typename O >
void apply (const I &, const I &, O) const
 
BitVectorList< dim > image () const
 
BitVectorList< dim > kernel () const
 
size_t numColumns () const
 
size_t numRows () const
 
BitVector< dim > row (size_t i) const
 
BitVector< dim > column (size_t j) const
 Column $j$ of the BitMatrix, as a BitVector. More...
 
void get_column (BitVector< dim > &c, size_t j) const
 
BitMatrixoperator+= (const BitMatrix &)
 
BitMatrixoperator*= (const BitMatrix &)
 
void addColumn (const BitSet< dim > &f)
 
void addColumn (const BitVector< dim > &c)
 
void addToColumn (size_t j, const BitVector< dim > &v)
 
BitMatrix section () const
 
BitMatrixset (size_t i, size_t j)
 
BitMatrixreset (size_t i, size_t j)
 
void set (size_t i, size_t j, bool b)
 
void set_mod2 (size_t i, size_t j, unsigned long v)
 
void reset ()
 
void resize (size_t n)
 
void resize (size_t m, size_t n)
 
void setColumn (size_t j, const BitSet< dim > &data)
 
void swap (BitMatrix &m)
 
BitMatrixtranspose ()
 

Static Public Member Functions

static BitMatrix identity (unsigned int n)
 

Private Attributes

std::vector< BitSet< dim > > d_data
 
unsigned short int d_rows
 
unsigned short int d_columns
 

Constructor & Destructor Documentation

template<size_t dim>
atlas::bitvector::BitMatrix< dim >::BitMatrix ( size_t  n)
inlineexplicit
template<size_t dim>
atlas::bitvector::BitMatrix< dim >::BitMatrix ( size_t  m,
size_t  n 
)
inline
template<size_t dim>
atlas::bitvector::BitMatrix< dim >::BitMatrix ( const std::vector< BitVector< dim > > &  b,
unsigned short int  num_rows 
)
explicit
template<size_t dim>
atlas::bitvector::BitMatrix< dim >::BitMatrix ( const matrix::Matrix< int > &  m)
explicit

Member Function Documentation

template<size_t dim>
void atlas::bitvector::BitMatrix< dim >::addColumn ( const BitSet< dim > &  f)
inline
template<size_t dim>
void atlas::bitvector::BitMatrix< dim >::addColumn ( const BitVector< dim > &  c)
inline
template<size_t dim>
void atlas::bitvector::BitMatrix< dim >::addToColumn ( size_t  j,
const BitVector< dim > &  v 
)
inline
template<size_t dim>
template<typename I , typename O >
void atlas::bitvector::BitMatrix< dim >::apply ( const I &  first,
const I &  last,
out 
) const
template<size_t dim>
BitVector<dim> atlas::bitvector::BitMatrix< dim >::column ( size_t  j) const
inline

Column $j$ of the BitMatrix, as a BitVector.

template<size_t dim>
void atlas::bitvector::BitMatrix< dim >::get_column ( BitVector< dim > &  c,
size_t  j 
) const
inline
template<size_t dim>
static BitMatrix atlas::bitvector::BitMatrix< dim >::identity ( unsigned int  n)
inlinestatic
template<size_t dim>
BitVectorList< dim > atlas::bitvector::BitMatrix< dim >::image ( ) const
template<size_t dim>
BitVectorList< dim > atlas::bitvector::BitMatrix< dim >::kernel ( ) const
template<size_t dim>
size_t atlas::bitvector::BitMatrix< dim >::numColumns ( ) const
inline
template<size_t dim>
size_t atlas::bitvector::BitMatrix< dim >::numRows ( ) const
inline
template<size_t dim>
BitVector< dim > atlas::bitvector::BitMatrix< dim >::operator* ( const BitVector< dim > &  src) const
template<size_t dim>
BitMatrix< dim > & atlas::bitvector::BitMatrix< dim >::operator*= ( const BitMatrix< dim > &  m)
template<size_t dim>
BitMatrix< dim > & atlas::bitvector::BitMatrix< dim >::operator+= ( const BitMatrix< dim > &  m)
template<size_t dim>
BitMatrix& atlas::bitvector::BitMatrix< dim >::reset ( size_t  i,
size_t  j 
)
inline
template<size_t dim>
void atlas::bitvector::BitMatrix< dim >::reset ( )
template<size_t dim>
void atlas::bitvector::BitMatrix< dim >::resize ( size_t  n)
inline
template<size_t dim>
void atlas::bitvector::BitMatrix< dim >::resize ( size_t  m,
size_t  n 
)
template<size_t dim>
BitVector< dim > atlas::bitvector::BitMatrix< dim >::row ( size_t  i) const
template<size_t dim>
BitMatrix< dim > atlas::bitvector::BitMatrix< dim >::section ( ) const
template<size_t dim>
BitMatrix& atlas::bitvector::BitMatrix< dim >::set ( size_t  i,
size_t  j 
)
inline
template<size_t dim>
void atlas::bitvector::BitMatrix< dim >::set ( size_t  i,
size_t  j,
bool  b 
)
inline
template<size_t dim>
void atlas::bitvector::BitMatrix< dim >::set_mod2 ( size_t  i,
size_t  j,
unsigned long  v 
)
inline
template<size_t dim>
void atlas::bitvector::BitMatrix< dim >::setColumn ( size_t  j,
const BitSet< dim > &  data 
)
inline
template<size_t dim>
void atlas::bitvector::BitMatrix< dim >::swap ( BitMatrix< dim > &  m)
template<size_t dim>
bool atlas::bitvector::BitMatrix< dim >::test ( size_t  i,
size_t  j 
) const
inline

The (i,j) entry of the BitMatrix.

template<size_t dim>
BitMatrix< dim > & atlas::bitvector::BitMatrix< dim >::transpose ( )

Member Data Documentation

template<size_t dim>
unsigned short int atlas::bitvector::BitMatrix< dim >::d_columns
private
template<size_t dim>
std::vector<BitSet<dim> > atlas::bitvector::BitMatrix< dim >::d_data
private
template<size_t dim>
unsigned short int atlas::bitvector::BitMatrix< dim >::d_rows
private

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