|
PVData C++ 8.0.7
|
Specialization for storing untyped pointers. More...
#include <misc/pv/sharedVector.h>


Public Types | |
| typedef E | value_type |
| typedef E * | pointer |
| typedef ptrdiff_t | difference_type |
| typedef size_t | size_type |
| typedef std::tr1::shared_ptr< E > | shared_pointer_type |
Public Member Functions | |
| shared_vector (pointer v, size_t o, size_t c) | |
| template<typename B > | |
| shared_vector (pointer d, B b, size_t o, size_t c) | |
| template<typename E1 > | |
| shared_vector (const std::tr1::shared_ptr< E1 > &d, size_t o, size_t c) | |
| shared_vector (const shared_vector &o) | |
| template<typename FROM > | |
| shared_vector (const shared_vector< FROM > &src, detail::_shared_vector_cast_tag) | |
| shared_vector (shared_vector< void > &O, detail::_shared_vector_freeze_tag t) | |
| shared_vector (shared_vector< const void > &O, detail::_shared_vector_thaw_tag t) | |
| shared_vector & | operator= (const shared_vector &o) |
| void | swap (shared_vector &o) |
| size_t | max_size () const |
| pointer | data () const |
| shared_vector & | set_original_type (ScalarType t) |
| ScalarType | original_type () const |
Public Member Functions inherited from epics::pvData::detail::shared_vector_base< E > | |
| shared_vector_base () | |
| Empty vector (not very interesting) | |
| template<typename A > | |
| shared_vector_base (A *v, size_t o, size_t c) | |
| shared_vector_base (const std::tr1::shared_ptr< E > &d, size_t o, size_t c) | |
| template<typename A , typename B > | |
| shared_vector_base (A d, B b, size_t o, size_t c) | |
| shared_vector_base (const shared_vector_base &O) | |
| shared_vector_base (shared_vector_base< _E_non_const > &O, _shared_vector_freeze_tag) | |
| shared_vector_base (shared_vector< const E > &O, _shared_vector_thaw_tag) | |
| shared_vector_base & | operator= (const shared_vector_base &o) |
| Copy an existing vector. | |
| void | swap (shared_vector_base &o) |
| Swap the contents of this vector with another. | |
| void | clear () |
| Clear contents. size() becomes 0. | |
| bool | unique () const |
| Data is not shared? | |
| size_t | size () const |
| Number of elements visible through this vector. | |
| bool | empty () const |
| shorthand for size()==0 | |
| void | slice (size_t offset, size_t length=(size_t) -1) |
| Reduce the view of this shared_vector. | |
| const std::tr1::shared_ptr< E > & | dataPtr () const |
| size_t | dataOffset () const |
| size_t | dataCount () const |
| size_t | dataTotal () const |
Additional Inherited Members | |
Protected Types inherited from epics::pvData::detail::shared_vector_base< E > | |
| typedef meta::strip_const< E >::type | _E_non_const |
Protected Member Functions inherited from epics::pvData::detail::shared_vector_base< E > | |
| void | _null_input () |
Protected Attributes inherited from epics::pvData::detail::shared_vector_base< E > | |
| std::tr1::shared_ptr< E > | m_sdata |
| size_t | m_offset |
| Offset in the data array of first visible element. | |
| size_t | m_count |
| Number of visible elements between m_offset and end of data. | |
| size_t | m_total |
| Total number of elements between m_offset and the end of data. | |
Specialization for storing untyped pointers.
Does not allow access or iteration of contents other than as void* or const void*
In order to support shared_vector_convert<>() information about the type of the underlying allocation is stored. This is implicitly set by static_shared_vector_cast<>() and may be explicitly checked/changed using original_type()/set_original_type().
A shared_vector<void> directly constructed from a smart pointer does not have an associated original_type(). Use epics::pvData::ScalarTypeFunc::allocArray() to convienently allocate an array with a known original_type().
Definition at line 654 of file sharedVector.h.
| ptrdiff_t epics::pvData::shared_vector< E, typename meta::is_void< E >::type >::difference_type |
Definition at line 665 of file sharedVector.h.
| E* epics::pvData::shared_vector< E, typename meta::is_void< E >::type >::pointer |
Definition at line 664 of file sharedVector.h.
| std::tr1::shared_ptr<E> epics::pvData::shared_vector< E, typename meta::is_void< E >::type >::shared_pointer_type |
Definition at line 668 of file sharedVector.h.
| size_t epics::pvData::shared_vector< E, typename meta::is_void< E >::type >::size_type |
Definition at line 666 of file sharedVector.h.
| E epics::pvData::shared_vector< E, typename meta::is_void< E >::type >::value_type |
Definition at line 663 of file sharedVector.h.
|
inline |
Definition at line 673 of file sharedVector.h.
|
inline |
Definition at line 676 of file sharedVector.h.
|
inline |
Definition at line 680 of file sharedVector.h.
|
inline |
Definition at line 684 of file sharedVector.h.
|
inline |
Definition at line 687 of file sharedVector.h.
|
inline |
Definition at line 698 of file sharedVector.h.
|
inline |
Definition at line 706 of file sharedVector.h.
|
inline |
Definition at line 711 of file sharedVector.h.
|
inline |
Definition at line 743 of file sharedVector.h.
|
inline |
Definition at line 741 of file sharedVector.h.
|
inline |
Definition at line 716 of file sharedVector.h.
|
inline |
Definition at line 748 of file sharedVector.h.
|
inline |
Definition at line 747 of file sharedVector.h.
|
inline |
Definition at line 736 of file sharedVector.h.
Definition at line 661 of file sharedVector.h.