![]() |
This is Unofficial EPICS BASE Doxygen Site
|
Common code for PV*Array. More...
#include "pvData.h"
Inheritance diagram for epics::pvData::detail::PVVectorStorage< T, Base >:
Collaboration diagram for epics::pvData::detail::PVVectorStorage< T, Base >:Public Types | |
| typedef T | value_type |
| typedef T * | pointer |
| typedef const T * | const_pointer |
| typedef ::epics::pvData::shared_vector< T > | svector |
| typedef ::epics::pvData::shared_vector< const T > | const_svector |
Public Member Functions | |
| virtual | ~PVVectorStorage () |
| virtual const_svector | view () const =0 |
| Fetch a read-only view of the current array data. More... | |
| virtual void | swap (const_svector &other)=0 |
| virtual void | replace (const const_svector &next)=0 |
| svector | reuse () |
Protected Member Functions | |
| template<typename A > | |
| PVVectorStorage (A a) | |
Common code for PV*Array.
| typedef const T* epics::pvData::detail::PVVectorStorage< T, Base >::const_pointer |
| typedef ::epics::pvData::shared_vector<const T> epics::pvData::detail::PVVectorStorage< T, Base >::const_svector |
| typedef T* epics::pvData::detail::PVVectorStorage< T, Base >::pointer |
| typedef ::epics::pvData::shared_vector<T> epics::pvData::detail::PVVectorStorage< T, Base >::svector |
| typedef T epics::pvData::detail::PVVectorStorage< T, Base >::value_type |
|
inlineexplicitprotected |
|
inlinevirtual |
|
pure virtual |
Discard current contents and replaced with the provided. Fails for Immutable arrays calls postPut()
Implemented in epics::pvData::PVValueArray< PVUnionPtr >, epics::pvData::PVValueArray< PVStructurePtr >, and epics::pvData::PVValueArray< T >.
|
inline |
Remove and return the current array data or an unique copy if shared.
Does not (and should not) call postPut()
The returned shared_vector<T> will have unique()==true.
Definition at line 1155 of file pvData.h.
|
pure virtual |
Exchange our contents for the provided.
| std::logic_error | for Immutable arrays. |
Callers must ensure that postPut() is called after the last swap() operation.
Before you call this directly, consider using the reuse(), or replace() methods.
Implemented in epics::pvData::PVValueArray< PVUnionPtr >, epics::pvData::PVValueArray< PVStructurePtr >, and epics::pvData::PVValueArray< T >.
|
pure virtual |
Fetch a read-only view of the current array data.
Implemented in epics::pvData::PVValueArray< PVUnionPtr >, epics::pvData::PVValueArray< PVStructurePtr >, and epics::pvData::PVValueArray< T >.