PVData C++
8.0.6
|
Data class for a structureArray. More...
#include <pv/pvData.h>
Public Types | |
typedef PVStructurePtr | value_type |
typedef PVStructurePtr * | pointer |
typedef const PVStructurePtr * | const_pointer |
typedef PVStructureArray & | reference |
typedef const PVStructureArray & | const_reference |
typedef ::epics::pvData::shared_vector < PVStructurePtr > | svector |
typedef ::epics::pvData::shared_vector < const PVStructurePtr > | const_svector |
Public Types inherited from epics::pvData::detail::PVVectorStorage< PVStructurePtr, PVArray > | |
typedef PVStructurePtr | value_type |
typedef PVStructurePtr * | pointer |
typedef const PVStructurePtr * | const_pointer |
typedef ::epics::pvData::shared_vector < PVStructurePtr > | svector |
typedef ::epics::pvData::shared_vector < const PVStructurePtr > | const_svector |
Public Types inherited from epics::pvData::PVArray | |
typedef std::tr1::shared_ptr < PVArray > | shared_pointer |
typedef std::tr1::shared_ptr < const PVArray > | const_shared_pointer |
typedef std::tr1::weak_ptr < PVArray > | weak_pointer |
typedef std::tr1::weak_ptr < const PVArray > | const_weak_pointer |
Public Types inherited from epics::pvData::PVField | |
enum | { isPVField =1 } |
typedef std::tr1::shared_ptr < PVField > | shared_pointer |
typedef std::tr1::shared_ptr < const PVField > | const_shared_pointer |
typedef std::tr1::weak_ptr < PVField > | weak_pointer |
typedef std::tr1::weak_ptr < const PVField > | const_weak_pointer |
Public Member Functions | |
POINTER_DEFINITIONS (PVStructureArray) | |
virtual | ~PVValueArray () |
virtual ArrayConstPtr | getArray () const OVERRIDE FINAL |
virtual size_t | getLength () const OVERRIDE FINAL |
virtual size_t | getCapacity () const OVERRIDE FINAL |
virtual void | setCapacity (size_t capacity) OVERRIDE FINAL |
virtual void | setLength (std::size_t length) OVERRIDE FINAL |
StructureArrayConstPtr | getStructureArray () const |
std::size_t | append (std::size_t number) |
bool | remove (std::size_t offset, std::size_t number) |
void | compress () |
virtual const_svector | view () const OVERRIDE FINAL |
Fetch a read-only view of the current array data. | |
virtual void | swap (const_svector &other) OVERRIDE FINAL |
virtual void | replace (const const_svector &other) OVERRIDE FINAL |
virtual void | serialize (ByteBuffer *pbuffer, SerializableControl *pflusher) const OVERRIDE FINAL |
virtual void | deserialize (ByteBuffer *buffer, DeserializableControl *pflusher) OVERRIDE FINAL |
virtual void | serialize (ByteBuffer *pbuffer, SerializableControl *pflusher, std::size_t offset, std::size_t count) const OVERRIDE FINAL |
virtual std::ostream & | dumpValue (std::ostream &o) const OVERRIDE FINAL |
virtual std::ostream & | dumpValue (std::ostream &o, std::size_t index) const OVERRIDE FINAL |
void | copy (const PVStructureArray &from) |
void | copyUnchecked (const PVStructureArray &from) |
Public Member Functions inherited from epics::pvData::detail::PVVectorStorage< PVStructurePtr, PVArray > | |
svector | reuse () |
Public Member Functions inherited from epics::pvData::PVArray | |
virtual | ~PVArray () |
virtual void | setImmutable () |
bool | isCapacityMutable () const |
void | setCapacityMutable (bool isMutable) |
virtual void | setCapacity (std::size_t capacity)=0 |
Public Member Functions inherited from epics::pvData::PVField | |
virtual | ~PVField () |
const std::string & | getFieldName () const |
std::string | getFullName () const |
std::size_t | getFieldOffset () const |
std::size_t | getNextFieldOffset () const |
std::size_t | getNumberFields () const |
bool | isImmutable () const |
const FieldConstPtr & | getField () const |
PVStructure * | getParent () |
const PVStructure * | getParent () const |
void | postPut () |
void | setPostHandler (PostHandlerPtr const &postHandler) |
virtual bool | equals (PVField &pv) |
void | copy (const PVField &from) |
void | copyUnchecked (const PVField &from) |
Public Member Functions inherited from epics::pvData::Serializable | |
virtual | ~Serializable () |
Public Member Functions inherited from epics::pvData::SerializableArray | |
virtual | ~SerializableArray () |
Protected Member Functions | |
PVValueArray (StructureArrayConstPtr const &structureArray) | |
Protected Member Functions inherited from epics::pvData::detail::PVVectorStorage< PVStructurePtr, PVArray > | |
PVVectorStorage (A a) | |
Protected Member Functions inherited from epics::pvData::PVArray | |
PVArray (FieldConstPtr const &field) | |
void | checkLength (size_t length) const |
Protected Member Functions inherited from epics::pvData::PVField | |
PVField::shared_pointer | getPtrSelf () |
PVField (FieldConstPtr field) | |
void | setParentAndName (PVStructure *parent, std::string const &fieldName) |
Friends | |
class | PVDataCreate |
Additional Inherited Members | |
Static Public Attributes inherited from epics::pvData::PVField | |
static size_t | num_instances |
Data class for a structureArray.
|
inlinevirtual |
std::size_t epics::pvData::PVValueArray< PVStructurePtr >::append | ( | std::size_t | number | ) |
Append new elements to the end of the array.
number | The number of elements to add. |
void epics::pvData::PVValueArray< PVStructurePtr >::compress | ( | ) |
Compress. This removes all null elements from the array.
|
virtual |
Deserialize buffer.
buffer | serialization buffer. |
flusher | deserialization control. |
Implements epics::pvData::Serializable.
|
virtual |
Puts the PVField raw value to the stream.
o | output stream. |
Implements epics::pvData::PVField.
|
inlinevirtual |
|
inlinevirtual |
|
inlinevirtual |
|
inline |
bool epics::pvData::PVValueArray< PVStructurePtr >::remove | ( | std::size_t | offset, |
std::size_t | number | ||
) |
Remove elements from the array.
offset | The offset of the first element to remove. |
number | The number of elements to remove. |
|
inlinevirtual |
Discard current contents and replaced with the provided. Fails for Immutable arrays calls postPut()
Implements epics::pvData::detail::PVVectorStorage< PVStructurePtr, PVArray >.
|
virtual |
Serialize field into given buffer.
buffer | serialization buffer. |
flusher | flush interface. |
Implements epics::pvData::Serializable.
|
virtual |
Serialize field into given buffer.
buffer | serialization buffer. |
flusher | flush interface. |
offset | offset in elements. |
count | number of elements |
Implements epics::pvData::SerializableArray.
|
virtual |
Set the array capacity.
capacity | The length. |
|
virtual |
|
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.
Implements epics::pvData::detail::PVVectorStorage< PVStructurePtr, PVArray >.