Template Class shared_vector_base¶
Defined in File sharedVector.h
Inheritance Relationships¶
Derived Types¶
public epics::pvData::shared_vector< E, Enable >
(Template Class shared_vector)public epics::pvData::shared_vector< E, typename meta::is_void< E >::type >
(Template Class shared_vector< E, typename meta::is_void< E >::type >)
Class Documentation¶
-
template<typename E>
class shared_vector_base¶ Subclassed by epics::pvData::shared_vector< E, Enable >, epics::pvData::shared_vector< E, typename meta::is_void< E >::type >
Public Functions
-
inline shared_vector_base()¶
Empty vector (not very interesting)
-
inline shared_vector_base(const shared_vector_base &O)¶
-
inline shared_vector_base(shared_vector_base<_E_non_const> &O, _shared_vector_freeze_tag)¶
Constructor used to implement freeze(). Should not be called directly.
-
inline shared_vector_base(shared_vector<const E> &O, _shared_vector_thaw_tag)¶
Constructor used to implement thaw(). Should not be called directly.
-
inline shared_vector_base &operator=(const shared_vector_base &o)¶
Copy an existing vector.
-
inline void swap(shared_vector_base &o)¶
Swap the contents of this vector with another.
-
inline bool unique() const¶
Data is not shared?
-
inline size_t size() const¶
Number of elements visible through this vector.
-
inline void slice(size_t offset, size_t length = (size_t)-1)¶
Reduce the view of this shared_vector.
Reduce the portion of the underlying buffer which is accessible through this shared_vector.
When the requested new offset and length are not possible then the following holds.
When offset is >= size() then after slice() size()==0. When length >= size()-offset then after slice() size() = old_size-offset.
Note
offset and length are in units of sizeof(E). or bytes (1) when E=void.
- Parameters
offset – The request new offset relative to the current offset.
length – The requested new length.
-
inline size_t dataOffset() const¶
-
inline size_t dataCount() const¶
-
inline size_t dataTotal() const¶
Protected Types
-
typedef meta::strip_const<E>::type _E_non_const¶
Protected Functions
-
inline void _null_input()¶
-
inline shared_vector_base()¶