LocARNA-2.0.0
Public Types | Public Member Functions | Public Attributes | List of all members
LocARNA::SparseVector< T > Class Template Reference

Represents a sparse vector. More...

#include <sparse_vector.hh>

Inheritance diagram for LocARNA::SparseVector< T >:
Inheritance graph
[legend]
Collaboration diagram for LocARNA::SparseVector< T >:
Collaboration graph
[legend]

Public Types

using parent_t = SparseVectorBase< SparseVector< T >, T >
 
using size_type = typename parent_t::size_type
 usual definition of size_type
 
using value_type = T
 type of vector entries
 
using key_type = size_type
 type of vector index
 
using map_type = std::unordered_map< key_type, value_type >
 map type
 
- Public Types inherited from LocARNA::SparseVectorBase< SparseVector< T >, T >
using derived_type = SparseVector< T >
 
using value_type = T
 type of vector entries
 
using key_type = size_t
 type of vector index
 
using map_type = std::unordered_map< size_t, T >
 
using size_type = size_t
 usual definition of size_type
 
using const_iterator = typename map_type::const_iterator
 Stl-compatible constant iterator over vector elements. More...
 
using iterator = typename map_type::iterator
 

Public Member Functions

 SparseVector (const value_type &def)
 Construct with default value. More...
 
- Public Member Functions inherited from LocARNA::SparseVectorBase< SparseVector< T >, T >
 SparseVectorBase (const value_type def)
 
element_proxy operator[] (const key_type &i)
 Access to vector element. More...
 
const value_typeoperator[] (const key_type &i) const
 Read-only access to vector element of const vector. More...
 
void set (const key_type &i, const value_type &val)
 Write access to vector entry. More...
 
value_typeref (const key_type &i)
 Write access to element. More...
 
void reset (const key_type &i)
 Set vector entry to default value. More...
 
size_type size () const
 Size of sparse vector. More...
 
bool empty () const
 Check for emptiness. More...
 
void clear ()
 Clear the vector.
 
const_iterator begin () const
 Begin const iterator over vector entries. More...
 
const_iterator end () const
 End const iterator over vector entries. More...
 
const value_typedef () const
 Default value. More...
 

Public Attributes

friend parent_t
 

Additional Inherited Members

- Protected Attributes inherited from LocARNA::SparseVectorBase< SparseVector< T >, T >
value_type def_
 default value of vector entries
 
map_type the_map_
 internal representation of sparse vector
 

Detailed Description

template<typename T>
class LocARNA::SparseVector< T >

Represents a sparse vector.

Sparse vector of entries val_t implements the vector by a hash map. The class is designed to be largely exchangable with non-sparse vectors.

Constructor & Destructor Documentation

◆ SparseVector()

template<typename T >
LocARNA::SparseVector< T >::SparseVector ( const value_type def)
inlineexplicit

Construct with default value.

Parameters
defdefault value of entries

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