Project
Loading...
Searching...
No Matches
o2::rans::internal::ShiftableVector< source_T, value_T > Class Template Reference

#include <ShiftableVector.h>

Public Types

using source_type = source_T
 
using value_type = value_T
 
using container_type = std::vector< value_type >
 
using size_type = size_t
 
using difference_type = std::ptrdiff_t
 
using reference = value_type &
 
using const_reference = const value_type &
 
using pointer = value_type *
 
using const_pointer = const value_type *
 
using iterator = pointer
 
using const_iterator = const_pointer
 
using reverse_iterator = std::reverse_iterator< iterator >
 
using const_reverse_iterator = std::reverse_iterator< const_iterator >
 

Public Member Functions

 ShiftableVector ()=default
 
 ShiftableVector (ShiftableVector &&)=default
 
 ShiftableVector (const ShiftableVector &vec)
 
ShiftableVectoroperator= (ShiftableVector &&)=default
 
ShiftableVectoroperator= (const ShiftableVector &vec)
 
 ShiftableVector (size_type size, source_type offset=0)
 
 ShiftableVector (container_type container, source_type offset=0)
 
 ~ShiftableVector ()=default
 
const_reference operator[] (source_type sourceSymbol) const
 
reference operator[] (source_type sourceSymbol)
 
const_reference operator() (size_type index) const
 
reference operator() (size_type index)
 
const_pointer data () const noexcept
 
pointer data () noexcept
 
size_type size () const noexcept
 
bool empty () const noexcept
 
source_type getOffset () const noexcept
 
void setOffset (source_type offset) noexcept
 
void reserve (size_type newSize)
 
void resize (size_type newSize, source_type offset, const value_type &value)
 
void resize (size_type newSize, source_type offset)
 
void resize (size_type newSize, const value_type &value)
 
void resize (size_type newSize)
 
void push_back (value_type value)
 
template<class... Args>
void emplace_back (Args &&... args)
 
const_iterator cbegin () const noexcept
 
const_iterator cend () const noexcept
 
const_iterator begin () const noexcept
 
const_iterator end () const noexcept
 
iterator begin () noexcept
 
iterator end () noexcept
 
const_reverse_iterator crbegin () const noexcept
 
const_reverse_iterator crend () const noexcept
 
const_reverse_iterator rbegin () const noexcept
 
const_reverse_iterator rend () const noexcept
 
reverse_iterator rbegin () noexcept
 
reverse_iterator rend () noexcept
 
container_type release () &&noexcept
 

Protected Member Functions

const_pointer getAddressAt (source_type sourceSymbol) const
 
pointer getAddressAt (source_type sourceSymbol)
 

Protected Attributes

container_type mContainer {}
 
source_type mOffset {}
 
intptr_t mShiftedBegin {}
 

Friends

void swap (ShiftableVector &a, ShiftableVector &b) noexcept
 

Detailed Description

template<class source_T, class value_T>
class o2::rans::internal::ShiftableVector< source_T, value_T >

Definition at line 34 of file ShiftableVector.h.

Member Typedef Documentation

◆ const_iterator

template<class source_T , class value_T >
using o2::rans::internal::ShiftableVector< source_T, value_T >::const_iterator = const_pointer

Definition at line 47 of file ShiftableVector.h.

◆ const_pointer

template<class source_T , class value_T >
using o2::rans::internal::ShiftableVector< source_T, value_T >::const_pointer = const value_type*

Definition at line 45 of file ShiftableVector.h.

◆ const_reference

template<class source_T , class value_T >
using o2::rans::internal::ShiftableVector< source_T, value_T >::const_reference = const value_type&

Definition at line 43 of file ShiftableVector.h.

◆ const_reverse_iterator

template<class source_T , class value_T >
using o2::rans::internal::ShiftableVector< source_T, value_T >::const_reverse_iterator = std::reverse_iterator<const_iterator>

Definition at line 49 of file ShiftableVector.h.

◆ container_type

template<class source_T , class value_T >
using o2::rans::internal::ShiftableVector< source_T, value_T >::container_type = std::vector<value_type>

Definition at line 39 of file ShiftableVector.h.

◆ difference_type

template<class source_T , class value_T >
using o2::rans::internal::ShiftableVector< source_T, value_T >::difference_type = std::ptrdiff_t

Definition at line 41 of file ShiftableVector.h.

◆ iterator

template<class source_T , class value_T >
using o2::rans::internal::ShiftableVector< source_T, value_T >::iterator = pointer

Definition at line 46 of file ShiftableVector.h.

◆ pointer

template<class source_T , class value_T >
using o2::rans::internal::ShiftableVector< source_T, value_T >::pointer = value_type*

Definition at line 44 of file ShiftableVector.h.

◆ reference

template<class source_T , class value_T >
using o2::rans::internal::ShiftableVector< source_T, value_T >::reference = value_type&

Definition at line 42 of file ShiftableVector.h.

◆ reverse_iterator

template<class source_T , class value_T >
using o2::rans::internal::ShiftableVector< source_T, value_T >::reverse_iterator = std::reverse_iterator<iterator>

Definition at line 48 of file ShiftableVector.h.

◆ size_type

template<class source_T , class value_T >
using o2::rans::internal::ShiftableVector< source_T, value_T >::size_type = size_t

Definition at line 40 of file ShiftableVector.h.

◆ source_type

template<class source_T , class value_T >
using o2::rans::internal::ShiftableVector< source_T, value_T >::source_type = source_T

Definition at line 37 of file ShiftableVector.h.

◆ value_type

template<class source_T , class value_T >
using o2::rans::internal::ShiftableVector< source_T, value_T >::value_type = value_T

Definition at line 38 of file ShiftableVector.h.

Constructor & Destructor Documentation

◆ ShiftableVector() [1/5]

template<class source_T , class value_T >
o2::rans::internal::ShiftableVector< source_T, value_T >::ShiftableVector ( )
default

◆ ShiftableVector() [2/5]

template<class source_T , class value_T >
o2::rans::internal::ShiftableVector< source_T, value_T >::ShiftableVector ( ShiftableVector< source_T, value_T > &&  )
default

◆ ShiftableVector() [3/5]

template<class source_T , class value_T >
o2::rans::internal::ShiftableVector< source_T, value_T >::ShiftableVector ( const ShiftableVector< source_T, value_T > &  vec)
inline

Definition at line 55 of file ShiftableVector.h.

◆ ShiftableVector() [4/5]

template<class source_T , class value_T >
o2::rans::internal::ShiftableVector< source_T, value_T >::ShiftableVector ( size_type  size,
source_type  offset = 0 
)
inline

Definition at line 70 of file ShiftableVector.h.

◆ ShiftableVector() [5/5]

template<class source_T , class value_T >
o2::rans::internal::ShiftableVector< source_T, value_T >::ShiftableVector ( container_type  container,
source_type  offset = 0 
)
inline

Definition at line 72 of file ShiftableVector.h.

◆ ~ShiftableVector()

template<class source_T , class value_T >
o2::rans::internal::ShiftableVector< source_T, value_T >::~ShiftableVector ( )
default

Member Function Documentation

◆ begin() [1/2]

template<class source_T , class value_T >
const_iterator o2::rans::internal::ShiftableVector< source_T, value_T >::begin ( ) const
inlinenoexcept

Definition at line 154 of file ShiftableVector.h.

◆ begin() [2/2]

template<class source_T , class value_T >
iterator o2::rans::internal::ShiftableVector< source_T, value_T >::begin ( )
inlinenoexcept

Definition at line 158 of file ShiftableVector.h.

◆ cbegin()

template<class source_T , class value_T >
const_iterator o2::rans::internal::ShiftableVector< source_T, value_T >::cbegin ( ) const
inlinenoexcept

Definition at line 150 of file ShiftableVector.h.

◆ cend()

template<class source_T , class value_T >
const_iterator o2::rans::internal::ShiftableVector< source_T, value_T >::cend ( ) const
inlinenoexcept

Definition at line 152 of file ShiftableVector.h.

◆ crbegin()

template<class source_T , class value_T >
const_reverse_iterator o2::rans::internal::ShiftableVector< source_T, value_T >::crbegin ( ) const
inlinenoexcept

Definition at line 162 of file ShiftableVector.h.

◆ crend()

template<class source_T , class value_T >
const_reverse_iterator o2::rans::internal::ShiftableVector< source_T, value_T >::crend ( ) const
inlinenoexcept

Definition at line 164 of file ShiftableVector.h.

◆ data() [1/2]

template<class source_T , class value_T >
const_pointer o2::rans::internal::ShiftableVector< source_T, value_T >::data ( ) const
inlinenoexcept

Definition at line 92 of file ShiftableVector.h.

◆ data() [2/2]

template<class source_T , class value_T >
pointer o2::rans::internal::ShiftableVector< source_T, value_T >::data ( )
inlinenoexcept

Definition at line 94 of file ShiftableVector.h.

◆ emplace_back()

template<class source_T , class value_T >
template<class... Args>
void o2::rans::internal::ShiftableVector< source_T, value_T >::emplace_back ( Args &&...  args)
inline

Definition at line 144 of file ShiftableVector.h.

◆ empty()

template<class source_T , class value_T >
bool o2::rans::internal::ShiftableVector< source_T, value_T >::empty ( ) const
inlinenoexcept

Definition at line 98 of file ShiftableVector.h.

◆ end() [1/2]

template<class source_T , class value_T >
const_iterator o2::rans::internal::ShiftableVector< source_T, value_T >::end ( ) const
inlinenoexcept

Definition at line 156 of file ShiftableVector.h.

◆ end() [2/2]

template<class source_T , class value_T >
iterator o2::rans::internal::ShiftableVector< source_T, value_T >::end ( )
inlinenoexcept

Definition at line 160 of file ShiftableVector.h.

◆ getAddressAt() [1/2]

template<class source_T , class value_T >
pointer o2::rans::internal::ShiftableVector< source_T, value_T >::getAddressAt ( source_type  sourceSymbol)
inlineprotected

Definition at line 190 of file ShiftableVector.h.

◆ getAddressAt() [2/2]

template<class source_T , class value_T >
const_pointer o2::rans::internal::ShiftableVector< source_T, value_T >::getAddressAt ( source_type  sourceSymbol) const
inlineprotected

Definition at line 185 of file ShiftableVector.h.

◆ getOffset()

template<class source_T , class value_T >
source_type o2::rans::internal::ShiftableVector< source_T, value_T >::getOffset ( ) const
inlinenoexcept

Definition at line 100 of file ShiftableVector.h.

◆ operator()() [1/2]

template<class source_T , class value_T >
reference o2::rans::internal::ShiftableVector< source_T, value_T >::operator() ( size_type  index)
inline

Definition at line 90 of file ShiftableVector.h.

◆ operator()() [2/2]

template<class source_T , class value_T >
const_reference o2::rans::internal::ShiftableVector< source_T, value_T >::operator() ( size_type  index) const
inline

Definition at line 84 of file ShiftableVector.h.

◆ operator=() [1/2]

template<class source_T , class value_T >
ShiftableVector & o2::rans::internal::ShiftableVector< source_T, value_T >::operator= ( const ShiftableVector< source_T, value_T > &  vec)
inline

Definition at line 63 of file ShiftableVector.h.

◆ operator=() [2/2]

template<class source_T , class value_T >
ShiftableVector & o2::rans::internal::ShiftableVector< source_T, value_T >::operator= ( ShiftableVector< source_T, value_T > &&  )
default

◆ operator[]() [1/2]

template<class source_T , class value_T >
reference o2::rans::internal::ShiftableVector< source_T, value_T >::operator[] ( source_type  sourceSymbol)
inline

Definition at line 82 of file ShiftableVector.h.

◆ operator[]() [2/2]

template<class source_T , class value_T >
const_reference o2::rans::internal::ShiftableVector< source_T, value_T >::operator[] ( source_type  sourceSymbol) const
inline

Definition at line 76 of file ShiftableVector.h.

◆ push_back()

template<class source_T , class value_T >
void o2::rans::internal::ShiftableVector< source_T, value_T >::push_back ( value_type  value)
inline

Definition at line 137 of file ShiftableVector.h.

◆ rbegin() [1/2]

template<class source_T , class value_T >
const_reverse_iterator o2::rans::internal::ShiftableVector< source_T, value_T >::rbegin ( ) const
inlinenoexcept

Definition at line 166 of file ShiftableVector.h.

◆ rbegin() [2/2]

template<class source_T , class value_T >
reverse_iterator o2::rans::internal::ShiftableVector< source_T, value_T >::rbegin ( )
inlinenoexcept

Definition at line 170 of file ShiftableVector.h.

◆ release()

template<class source_T , class value_T >
container_type o2::rans::internal::ShiftableVector< source_T, value_T >::release ( ) &&
inlinenoexcept

Definition at line 174 of file ShiftableVector.h.

◆ rend() [1/2]

template<class source_T , class value_T >
const_reverse_iterator o2::rans::internal::ShiftableVector< source_T, value_T >::rend ( ) const
inlinenoexcept

Definition at line 168 of file ShiftableVector.h.

◆ rend() [2/2]

template<class source_T , class value_T >
reverse_iterator o2::rans::internal::ShiftableVector< source_T, value_T >::rend ( )
inlinenoexcept

Definition at line 172 of file ShiftableVector.h.

◆ reserve()

template<class source_T , class value_T >
void o2::rans::internal::ShiftableVector< source_T, value_T >::reserve ( size_type  newSize)
inline

Definition at line 110 of file ShiftableVector.h.

◆ resize() [1/4]

template<class source_T , class value_T >
void o2::rans::internal::ShiftableVector< source_T, value_T >::resize ( size_type  newSize)
inline

Definition at line 132 of file ShiftableVector.h.

◆ resize() [2/4]

template<class source_T , class value_T >
void o2::rans::internal::ShiftableVector< source_T, value_T >::resize ( size_type  newSize,
const value_type value 
)
inline

Definition at line 127 of file ShiftableVector.h.

◆ resize() [3/4]

template<class source_T , class value_T >
void o2::rans::internal::ShiftableVector< source_T, value_T >::resize ( size_type  newSize,
source_type  offset 
)
inline

Definition at line 122 of file ShiftableVector.h.

◆ resize() [4/4]

template<class source_T , class value_T >
void o2::rans::internal::ShiftableVector< source_T, value_T >::resize ( size_type  newSize,
source_type  offset,
const value_type value 
)
inline

Definition at line 116 of file ShiftableVector.h.

◆ setOffset()

template<class source_T , class value_T >
void o2::rans::internal::ShiftableVector< source_T, value_T >::setOffset ( source_type  offset)
inlinenoexcept

Definition at line 102 of file ShiftableVector.h.

◆ size()

template<class source_T , class value_T >
size_type o2::rans::internal::ShiftableVector< source_T, value_T >::size ( ) const
inlinenoexcept

Definition at line 96 of file ShiftableVector.h.

Friends And Related Symbol Documentation

◆ swap

template<class source_T , class value_T >
void swap ( ShiftableVector< source_T, value_T > &  a,
ShiftableVector< source_T, value_T > &  b 
)
friend

Definition at line 176 of file ShiftableVector.h.

Member Data Documentation

◆ mContainer

template<class source_T , class value_T >
container_type o2::rans::internal::ShiftableVector< source_T, value_T >::mContainer {}
protected

Definition at line 195 of file ShiftableVector.h.

◆ mOffset

template<class source_T , class value_T >
source_type o2::rans::internal::ShiftableVector< source_T, value_T >::mOffset {}
protected

Definition at line 196 of file ShiftableVector.h.

◆ mShiftedBegin

template<class source_T , class value_T >
intptr_t o2::rans::internal::ShiftableVector< source_T, value_T >::mShiftedBegin {}
protected

Definition at line 197 of file ShiftableVector.h.


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