Template Class PVValueArray¶
Defined in File pvData.h
Inheritance Relationships¶
Base Type¶
public epics::pvData::detail::PVVectorStorage< T, PVScalarArray >
(Template Class PVVectorStorage)
Class Documentation¶
-
template<typename T>
class PVValueArray : public epics::pvData::detail::PVVectorStorage<T, PVScalarArray>¶ template class for all extensions of PVArray.
The direct extensions are pvBooleanArray, pvByteArray, …, pvStringArray. There are specializations for PVStringArray, PVStructureArray, and PVUnionArray.
Public Types
-
typedef ::epics::pvData::shared_vector<T> svector¶
-
typedef ::epics::pvData::shared_vector<const T> const_svector¶
Public Functions
-
POINTER_DEFINITIONS(PVValueArray)¶
-
virtual ~PVValueArray()¶
Destructor
- virtual ArrayConstPtr getArray () const OVERRIDE FINAL
Get introspection interface.
- virtual std::ostream & dumpValue (std::ostream &o) const OVERRIDE FINAL
Puts the PVField raw value to the stream.
- Parameters
o – output stream.
- Returns
The output stream.
- virtual std::ostream & dumpValue (std::ostream &o, size_t index) const OVERRIDE FINAL
- inline virtual size_t getLength () const OVERRIDE FINAL
Get the array length.
- Returns
The length.
- inline virtual size_t getCapacity () const OVERRIDE FINAL
Get the array capacity.
- Returns
The capacity.
- virtual void setCapacity (size_t capacity) OVERRIDE FINAL
- virtual void setLength (size_t length) OVERRIDE FINAL
- inline 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
Exchange our contents for the provided.
Callers must ensure that postPut() is called after the last swap() operation.
Before you call this directly, consider using the reuse(), or replace() methods.
- Throws
std::logic_error – for Immutable arrays.
- virtual void replace (const const_svector &next) OVERRIDE FINAL
Discard current contents and replaced with the provided. Fails for Immutable arrays calls postPut()
- virtual void serialize (ByteBuffer *pbuffer, SerializableControl *pflusher) const OVERRIDE FINAL
Serialize field into given buffer.
- Parameters
buffer – serialization buffer.
flusher – flush interface.
- virtual void deserialize (ByteBuffer *pbuffer, DeserializableControl *pflusher) OVERRIDE FINAL
Deserialize buffer.
- Parameters
buffer – serialization buffer.
flusher – deserialization control.
- virtual void serialize (ByteBuffer *pbuffer, SerializableControl *pflusher, size_t offset, size_t count) const OVERRIDE FINAL
-
template<>
std::ostream &dumpValue(std::ostream &o, size_t index) const¶
-
template<>
virtual std::ostream &dumpValue(std::ostream &o) const¶ Puts the PVField raw value to the stream.
- Parameters
o – output stream.
- Returns
The output stream.
-
template<>
virtual void deserialize(ByteBuffer *pbuffer, DeserializableControl *pcontrol)¶ Deserialize buffer.
- Parameters
buffer – serialization buffer.
flusher – deserialization control.
-
template<>
void serialize(ByteBuffer *pbuffer, SerializableControl *pflusher, size_t offset, size_t count) const¶
Public Static Attributes
-
static const ScalarType typeCode = pvBoolean¶
Protected Functions
- virtual void _getAsVoid (epics::pvData::shared_vector< const void > &out) const OVERRIDE FINAL
- virtual void _putFromVoid (const epics::pvData::shared_vector< const void > &in) OVERRIDE FINAL
-
explicit PVValueArray(ScalarArrayConstPtr const &scalar)¶
Protected Attributes
-
const_svector value¶
Friends
- friend class PVDataCreate
-
typedef ::epics::pvData::shared_vector<T> svector¶