View on GitHub

Vistle

Distributed Data-parallel Scientific Visualization in VR

Public Types | Public Member Functions | Static Public Member Functions | List of all members
vistle::shm_array< T, allocator > Class Template Reference

#include <core/shm_array.h>

Inheritance diagram for vistle::shm_array< T, allocator >:
Inheritance graph
[legend]
Collaboration diagram for vistle::shm_array< T, allocator >:
Collaboration graph
[legend]

Public Types

typedef T value_type
 
typedef uint64_t size_type
 
typedef const value_typeconst_reference
 
typedef allocator::pointer pointer
 
typedef T * iterator
 
typedef const T * const_iterator
 
- Public Types inherited from vistle::ShmData
enum  ShmType { INVALID , OBJECT , ARRAY }
 

Public Member Functions

 shm_array (const allocator &alloc=allocator())
 
 shm_array (const size_t size, const allocator &alloc=allocator())
 
 shm_array (const size_t size, const T &value, const allocator &alloc=allocator())
 
 shm_array (shm_array &&other)
 
 ~shm_array ()
 
int type () const
 
bool check () const
 
iterator begin () const
 
iterator end () const
 
T * data () const
 
T & operator[] (const size_t idx)
 
T & operator[] (const size_t idx) const
 
T & at (const size_t idx)
 
T & at (const size_t idx) const
 
void push_back (const T &v)
 
template<class... Args>
void emplace_back (Args &&...args)
 
T & back ()
 
T & front ()
 
bool empty () const
 
void clear ()
 
size_t size () const
 
void resize (const size_t size)
 
void resize (const size_t size, const T &value)
 
void clearDimensionHint ()
 
void setDimensionHint (const size_t sx, const size_t sy=1, const size_t sz=1)
 
void setExact (bool exact)
 
size_t capacity () const
 
void reserve (const size_t new_capacity)
 
void reserve_or_shrink (const size_t capacity)
 
void shrink_to_fit ()
 
template<class Archive >
void save (Archive &ar) const
 
- Public Member Functions inherited from vistle::ShmData
 ShmData (ShmType t, const std::string &name=std::string())
 
 ~ShmData ()
 
int ref () const
 
int unref () const
 
int refcount () const
 

Static Public Member Functions

static int typeId ()
 

Additional Inherited Members

- Public Attributes inherited from vistle::ShmData
const shm_name_t name
 
std::atomic< int > m_refcount
 
const ShmType shmtype = INVALID
 

Member Typedef Documentation

◆ const_iterator

template<typename T , class allocator >
typedef const T* vistle::shm_array< T, allocator >::const_iterator

◆ const_reference

template<typename T , class allocator >
typedef const value_type& vistle::shm_array< T, allocator >::const_reference

◆ iterator

template<typename T , class allocator >
typedef T* vistle::shm_array< T, allocator >::iterator

◆ pointer

template<typename T , class allocator >
typedef allocator::pointer vistle::shm_array< T, allocator >::pointer

◆ size_type

template<typename T , class allocator >
typedef uint64_t vistle::shm_array< T, allocator >::size_type

◆ value_type

template<typename T , class allocator >
typedef T vistle::shm_array< T, allocator >::value_type

Constructor & Destructor Documentation

◆ shm_array() [1/4]

template<typename T , class allocator >
vistle::shm_array< T, allocator >::shm_array ( const allocator alloc = allocator())
inline

◆ shm_array() [2/4]

template<typename T , class allocator >
vistle::shm_array< T, allocator >::shm_array ( const size_t  size,
const allocator alloc = allocator() 
)
inline

◆ shm_array() [3/4]

template<typename T , class allocator >
vistle::shm_array< T, allocator >::shm_array ( const size_t  size,
const T &  value,
const allocator alloc = allocator() 
)
inline

◆ shm_array() [4/4]

template<typename T , class allocator >
vistle::shm_array< T, allocator >::shm_array ( shm_array< T, allocator > &&  other)
inline

◆ ~shm_array()

template<typename T , class allocator >
vistle::shm_array< T, allocator >::~shm_array ( )
inline

Member Function Documentation

◆ at() [1/2]

template<typename T , class allocator >
T & vistle::shm_array< T, allocator >::at ( const size_t  idx)
inline

◆ at() [2/2]

template<typename T , class allocator >
T & vistle::shm_array< T, allocator >::at ( const size_t  idx) const
inline

◆ back()

template<typename T , class allocator >
T & vistle::shm_array< T, allocator >::back ( )
inline

◆ begin()

template<typename T , class allocator >
iterator vistle::shm_array< T, allocator >::begin ( ) const
inline

◆ capacity()

template<typename T , class allocator >
size_t vistle::shm_array< T, allocator >::capacity ( ) const
inline

◆ check()

template<typename T , class allocator >
bool vistle::shm_array< T, allocator >::check ( ) const
inline

◆ clear()

template<typename T , class allocator >
void vistle::shm_array< T, allocator >::clear ( )
inline

◆ clearDimensionHint()

template<typename T , class allocator >
void vistle::shm_array< T, allocator >::clearDimensionHint ( )
inline

◆ data()

template<typename T , class allocator >
T * vistle::shm_array< T, allocator >::data ( ) const
inline

◆ emplace_back()

template<typename T , class allocator >
template<class... Args>
void vistle::shm_array< T, allocator >::emplace_back ( Args &&...  args)
inline

◆ empty()

template<typename T , class allocator >
bool vistle::shm_array< T, allocator >::empty ( ) const
inline

◆ end()

template<typename T , class allocator >
iterator vistle::shm_array< T, allocator >::end ( ) const
inline

◆ front()

template<typename T , class allocator >
T & vistle::shm_array< T, allocator >::front ( )
inline

◆ operator[]() [1/2]

template<typename T , class allocator >
T & vistle::shm_array< T, allocator >::operator[] ( const size_t  idx)
inline

◆ operator[]() [2/2]

template<typename T , class allocator >
T & vistle::shm_array< T, allocator >::operator[] ( const size_t  idx) const
inline

◆ push_back()

template<typename T , class allocator >
void vistle::shm_array< T, allocator >::push_back ( const T &  v)
inline

◆ reserve()

template<typename T , class allocator >
void vistle::shm_array< T, allocator >::reserve ( const size_t  new_capacity)
inline

◆ reserve_or_shrink()

template<typename T , class allocator >
void vistle::shm_array< T, allocator >::reserve_or_shrink ( const size_t  capacity)
inline

◆ resize() [1/2]

template<typename T , class allocator >
void vistle::shm_array< T, allocator >::resize ( const size_t  size)
inline

◆ resize() [2/2]

template<typename T , class allocator >
void vistle::shm_array< T, allocator >::resize ( const size_t  size,
const T &  value 
)
inline

◆ save()

template<typename T , class allocator >
template<class Archive >
void vistle::shm_array< T, allocator >::save ( Archive &  ar) const

◆ setDimensionHint()

template<typename T , class allocator >
void vistle::shm_array< T, allocator >::setDimensionHint ( const size_t  sx,
const size_t  sy = 1,
const size_t  sz = 1 
)
inline

◆ setExact()

template<typename T , class allocator >
void vistle::shm_array< T, allocator >::setExact ( bool  exact)
inline

◆ shrink_to_fit()

template<typename T , class allocator >
void vistle::shm_array< T, allocator >::shrink_to_fit ( )
inline

◆ size()

template<typename T , class allocator >
size_t vistle::shm_array< T, allocator >::size ( ) const
inline

◆ type()

template<typename T , class allocator >
int vistle::shm_array< T, allocator >::type ( ) const
inline

◆ typeId()

template<typename T , class allocator >
int vistle::shm_array< T, allocator >::typeId
static

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