linbox
Sparse_Vector< T, I > Class Template Reference

vector< Pair<T,I> > and actualsize More...

#include <sparse.h>

+ Inheritance diagram for Sparse_Vector< T, I >:

Public Types

typedef std::pair< I, T > Element
 
typedef T Type_t
 
typedef Sparse_Vector< T, ISelf_t
 
typedef VectorCategories::SparseSequenceVectorTag VectorCategory
 
typedef std::pair< unsigned int, T > value_type
 
typedef std::pair< unsigned int, T > * iterator
 
typedef const std::pair< unsigned int, T > * const_iterator
 

Public Member Functions

 Sparse_Vector ()
 
 Sparse_Vector (size_t n)
 
 Sparse_Vector (size_t n, size_t rn)
 
 ~Sparse_Vector ()
 
size_t actualsize () const
 Actual dimension of the vector, 0 for infinite or unknown.
 
size_t reactualsize (const size_t s)
 
template<class XX>
size_t reactualsize (const XX s)
 
void reserve (size_t s)
 
size_t size () const
 
std::pair< unsigned int, T > & operator[] (size_t i)
 
const std::pair< unsigned int, T > & operator[] (size_t i) const
 
void clear ()
 
void resize (size_t s)
 
iterator begin ()
 
const_iterator begin () const
 
iterator end ()
 
const_iterator end () const
 
std::pair< unsigned int, T > & front ()
 
const std::pair< unsigned int, T > & front () const
 
std::pair< unsigned int, T > & back ()
 
const std::pair< unsigned int, T > & back () const
 
void push_back (const std::pair< unsigned int, T > &c)
 
void emplace_back (Args &&... args)
 
void pop_back ()
 
iterator insert (iterator pos, const std::pair< unsigned int, T > &c)
 
iterator insert (iterator pos, const_iterator Beg, const_iterator End)
 
iterator erase (iterator pos)
 
iterator erase (iterator first, iterator last)
 

Protected Member Functions

void reallocate (size_t s, size_t endc)
 
iterator insertwithspace (iterator pos, const std::pair< unsigned int, T > &c)
 
iterator insertwithrealloc (iterator pos, const std::pair< unsigned int, T > &c)
 

Friends

std::ostream & operator<< (std::ostream &o, const Sparse_Vector< T, I > v)
 

Detailed Description

template<class T, class I = unsigned int>
class LinBox::Sparse_Vector< T, I >

vector< Pair<T,I> > and actualsize

Member Typedef Documentation

◆ Element

template<class T, class I = unsigned int>
typedef std::pair<I, T> Element

◆ Type_t

template<class T, class I = unsigned int>
typedef T Type_t

◆ Self_t

template<class T, class I = unsigned int>
typedef Sparse_Vector<T, I> Self_t

◆ VectorCategory

template<class T, class I = unsigned int>
typedef VectorCategories::SparseSequenceVectorTag VectorCategory

◆ value_type

typedef std::pair< unsigned int, T > value_type
inherited

◆ iterator

typedef std::pair< unsigned int, T >* iterator
inherited

◆ const_iterator

typedef const std::pair< unsigned int, T >* const_iterator
inherited

Constructor & Destructor Documentation

◆ Sparse_Vector() [1/3]

template<class T, class I = unsigned int>
Sparse_Vector ( )
inline

◆ Sparse_Vector() [2/3]

template<class T, class I = unsigned int>
Sparse_Vector ( size_t n)
inline

◆ Sparse_Vector() [3/3]

template<class T, class I = unsigned int>
Sparse_Vector ( size_t n,
size_t rn )
inline

◆ ~Sparse_Vector()

template<class T, class I = unsigned int>
~Sparse_Vector ( )
inline

Member Function Documentation

◆ actualsize()

template<class T, class I = unsigned int>
size_t actualsize ( ) const
inline

Actual dimension of the vector, 0 for infinite or unknown.

◆ reactualsize() [1/2]

template<class T, class I = unsigned int>
size_t reactualsize ( const size_t s)
inline

◆ reactualsize() [2/2]

template<class T, class I = unsigned int>
template<class XX>
size_t reactualsize ( const XX s)
inline

◆ reserve()

void reserve ( size_t s)
inlineinherited

◆ size()

size_t size ( ) const
inlineinherited

◆ operator[]() [1/2]

std::pair< unsigned int, T > & operator[] ( size_t i)
inlineinherited

◆ operator[]() [2/2]

const std::pair< unsigned int, T > & operator[] ( size_t i) const
inlineinherited

◆ clear()

void clear ( )
inlineinherited

◆ resize()

void resize ( size_t s)
inlineinherited

◆ begin() [1/2]

iterator begin ( )
inlineinherited

◆ begin() [2/2]

const_iterator begin ( ) const
inlineinherited

◆ end() [1/2]

iterator end ( )
inlineinherited

◆ end() [2/2]

const_iterator end ( ) const
inlineinherited

◆ front() [1/2]

std::pair< unsigned int, T > & front ( )
inlineinherited

◆ front() [2/2]

const std::pair< unsigned int, T > & front ( ) const
inlineinherited

◆ back() [1/2]

std::pair< unsigned int, T > & back ( )
inlineinherited

◆ back() [2/2]

const std::pair< unsigned int, T > & back ( ) const
inlineinherited

◆ push_back()

void push_back ( const std::pair< unsigned int, T > & c)
inlineinherited

◆ emplace_back()

void emplace_back ( Args &&... args)
inlineinherited

◆ pop_back()

void pop_back ( )
inlineinherited

◆ insert() [1/2]

iterator insert ( iterator pos,
const std::pair< unsigned int, T > & c )
inlineinherited

◆ insert() [2/2]

iterator insert ( iterator pos,
const_iterator Beg,
const_iterator End )
inlineinherited

◆ erase() [1/2]

iterator erase ( iterator pos)
inlineinherited

◆ erase() [2/2]

iterator erase ( iterator first,
iterator last )
inlineinherited

◆ reallocate()

void reallocate ( size_t s,
size_t endc )
inlineprotectedinherited

◆ insertwithspace()

iterator insertwithspace ( iterator pos,
const std::pair< unsigned int, T > & c )
inlineprotectedinherited

◆ insertwithrealloc()

iterator insertwithrealloc ( iterator pos,
const std::pair< unsigned int, T > & c )
inlineprotectedinherited

Friends And Related Symbol Documentation

◆ operator<<

template<class T, class I = unsigned int>
std::ostream & operator<< ( std::ostream & o,
const Sparse_Vector< T, I > v )
friend

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