STXXL  1.4.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
stxxl::double_blocked_index< SizeType, modulo2, modulo1 > Class Template Reference

Detailed Description

template<typename SizeType, SizeType modulo2, SizeType modulo1>
class stxxl::double_blocked_index< SizeType, modulo2, modulo1 >

Definition at line 48 of file vector.h.

+ Collaboration diagram for stxxl::double_blocked_index< SizeType, modulo2, modulo1 >:

Public Member Functions

 double_blocked_index ()
 
 double_blocked_index (size_type pos)
 
 double_blocked_index (unsigned_type block2, unsigned_type block1, unsigned_type offset)
 
const unsigned_typeget_block1 () const
 
const unsigned_typeget_block2 () const
 
const unsigned_typeget_offset () const
 
size_type get_pos () const
 
bool operator!= (const double_blocked_index &dbi2) const
 
double_blocked_index operator+ (size_type addend) const
 
double_blocked_indexoperator++ ()
 
double_blocked_index operator++ (int)
 
double_blocked_indexoperator+= (size_type addend)
 
double_blocked_index operator- (size_type addend) const
 
size_type operator- (const double_blocked_index &dbi2) const
 
double_blocked_indexoperator-- ()
 
double_blocked_index operator-- (int)
 
double_blocked_indexoperator-= (size_type subtrahend)
 
bool operator< (const double_blocked_index &dbi2) const
 
bool operator<= (const double_blocked_index &dbi2) const
 
double_blocked_indexoperator= (size_type pos)
 
bool operator== (const double_blocked_index &dbi2) const
 
bool operator> (const double_blocked_index &dbi2) const
 
bool operator>= (const double_blocked_index &dbi2) const
 
double_blocked_indexoperator>>= (size_type shift)
 

Private Types

typedef SizeType size_type
 

Private Member Functions

void set (size_type pos)
 

Private Attributes

unsigned_type block1
 
unsigned_type block2
 
unsigned_type offset
 
size_type pos
 

Static Private Attributes

static const size_type modulo12 = modulo1 * modulo2
 

Member Typedef Documentation

template<typename SizeType , SizeType modulo2, SizeType modulo1>
typedef SizeType stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::size_type
private

Definition at line 50 of file vector.h.

Constructor & Destructor Documentation

template<typename SizeType , SizeType modulo2, SizeType modulo1>
stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::double_blocked_index ( )
inline

Definition at line 73 of file vector.h.

template<typename SizeType , SizeType modulo2, SizeType modulo1>
stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::double_blocked_index ( size_type  pos)
inline

Definition at line 78 of file vector.h.

template<typename SizeType , SizeType modulo2, SizeType modulo1>
stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::double_blocked_index ( unsigned_type  block2,
unsigned_type  block1,
unsigned_type  offset 
)
inline

Definition at line 83 of file vector.h.

Member Function Documentation

template<typename SizeType , SizeType modulo2, SizeType modulo1>
const unsigned_type& stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::get_block1 ( ) const
inline
template<typename SizeType , SizeType modulo2, SizeType modulo1>
const unsigned_type& stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::get_block2 ( ) const
inline
template<typename SizeType , SizeType modulo2, SizeType modulo1>
const unsigned_type& stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::get_offset ( ) const
inline
template<typename SizeType , SizeType modulo2, SizeType modulo1>
size_type stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::get_pos ( ) const
inline

Definition at line 225 of file vector.h.

Referenced by stxxl::vector< ValueType >::element().

template<typename SizeType , SizeType modulo2, SizeType modulo1>
bool stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::operator!= ( const double_blocked_index< SizeType, modulo2, modulo1 > &  dbi2) const
inline
template<typename SizeType , SizeType modulo2, SizeType modulo1>
double_blocked_index stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::operator+ ( size_type  addend) const
inline

Definition at line 162 of file vector.h.

template<typename SizeType , SizeType modulo2, SizeType modulo1>
double_blocked_index& stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::operator++ ( )
inline

Definition at line 101 of file vector.h.

template<typename SizeType , SizeType modulo2, SizeType modulo1>
double_blocked_index stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::operator++ ( int  )
inline

Definition at line 124 of file vector.h.

References operator++().

template<typename SizeType , SizeType modulo2, SizeType modulo1>
double_blocked_index& stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::operator+= ( size_type  addend)
inline

Definition at line 167 of file vector.h.

template<typename SizeType , SizeType modulo2, SizeType modulo1>
double_blocked_index stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::operator- ( size_type  addend) const
inline

Definition at line 173 of file vector.h.

template<typename SizeType , SizeType modulo2, SizeType modulo1>
size_type stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::operator- ( const double_blocked_index< SizeType, modulo2, modulo1 > &  dbi2) const
inline
template<typename SizeType , SizeType modulo2, SizeType modulo1>
double_blocked_index& stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::operator-- ( )
inline

Definition at line 132 of file vector.h.

template<typename SizeType , SizeType modulo2, SizeType modulo1>
double_blocked_index stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::operator-- ( int  )
inline

Definition at line 155 of file vector.h.

References operator--().

template<typename SizeType , SizeType modulo2, SizeType modulo1>
double_blocked_index& stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::operator-= ( size_type  subtrahend)
inline

Definition at line 183 of file vector.h.

template<typename SizeType , SizeType modulo2, SizeType modulo1>
bool stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::operator< ( const double_blocked_index< SizeType, modulo2, modulo1 > &  dbi2) const
inline
template<typename SizeType , SizeType modulo2, SizeType modulo1>
bool stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::operator<= ( const double_blocked_index< SizeType, modulo2, modulo1 > &  dbi2) const
inline
template<typename SizeType , SizeType modulo2, SizeType modulo1>
double_blocked_index& stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::operator= ( size_type  pos)
inline

Definition at line 94 of file vector.h.

template<typename SizeType , SizeType modulo2, SizeType modulo1>
bool stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::operator== ( const double_blocked_index< SizeType, modulo2, modulo1 > &  dbi2) const
inline
template<typename SizeType , SizeType modulo2, SizeType modulo1>
bool stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::operator> ( const double_blocked_index< SizeType, modulo2, modulo1 > &  dbi2) const
inline
template<typename SizeType , SizeType modulo2, SizeType modulo1>
bool stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::operator>= ( const double_blocked_index< SizeType, modulo2, modulo1 > &  dbi2) const
inline
template<typename SizeType , SizeType modulo2, SizeType modulo1>
double_blocked_index& stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::operator>>= ( size_type  shift)
inline

Definition at line 219 of file vector.h.

template<typename SizeType , SizeType modulo2, SizeType modulo1>
void stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::set ( size_type  pos)
inlineprivate
Invariant
block2 * modulo12 + block1 * modulo1 + offset == pos && 0 <= block1 < modulo2 && 0 <= offset < modulo1

Definition at line 59 of file vector.h.

Member Data Documentation

template<typename SizeType , SizeType modulo2, SizeType modulo1>
unsigned_type stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::block1
private

Definition at line 55 of file vector.h.

template<typename SizeType , SizeType modulo2, SizeType modulo1>
unsigned_type stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::block2
private

Definition at line 55 of file vector.h.

template<typename SizeType , SizeType modulo2, SizeType modulo1>
const size_type stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::modulo12 = modulo1 * modulo2
staticprivate

Definition at line 52 of file vector.h.

template<typename SizeType , SizeType modulo2, SizeType modulo1>
unsigned_type stxxl::double_blocked_index< SizeType, modulo2, modulo1 >::offset
private

Definition at line 55 of file vector.h.


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