PVData C++  8.0.5
Public Types | Public Member Functions | Protected Member Functions | Friends | List of all members
epics::pvData::PVScalarArray Class Referenceabstract

Base class for a scalarArray. More...

#include <pv/pvData.h>

Inheritance diagram for epics::pvData::PVScalarArray:
Inheritance graph
[legend]
Collaboration diagram for epics::pvData::PVScalarArray:
Collaboration graph
[legend]

Public Types

typedef std::tr1::shared_ptr< PVScalarArrayshared_pointer
 
typedef std::tr1::shared_ptr< const PVScalarArrayconst_shared_pointer
 
typedef std::tr1::weak_ptr< PVScalarArrayweak_pointer
 
typedef std::tr1::weak_ptr< const PVScalarArrayconst_weak_pointer
 
typedef PVScalarArrayreference
 
typedef const PVScalarArrayconst_reference
 
- Public Types inherited from epics::pvData::PVArray
typedef std::tr1::shared_ptr< PVArrayshared_pointer
 
typedef std::tr1::shared_ptr< const PVArrayconst_shared_pointer
 
typedef std::tr1::weak_ptr< PVArrayweak_pointer
 
typedef std::tr1::weak_ptr< const PVArrayconst_weak_pointer
 
- Public Types inherited from epics::pvData::PVField
enum  { isPVField =1 }
 
typedef std::tr1::shared_ptr< PVFieldshared_pointer
 
typedef std::tr1::shared_ptr< const PVFieldconst_shared_pointer
 
typedef std::tr1::weak_ptr< PVFieldweak_pointer
 
typedef std::tr1::weak_ptr< const PVFieldconst_weak_pointer
 

Public Member Functions

virtual ~PVScalarArray ()
 
const ScalarArrayConstPtr getScalarArray () const
 
template<typename T >
void getAs (shared_vector< const T > &out) const
 
template<typename T >
void putFrom (const shared_vector< const T > &inp)
 
void assign (const PVScalarArray &pv)
 
void copy (const PVScalarArray &from)
 
void copyUnchecked (const PVScalarArray &from)
 
- Public Member Functions inherited from epics::pvData::PVArray
virtual ~PVArray ()
 
virtual ArrayConstPtr getArray () const =0
 
virtual void setImmutable ()
 
virtual std::size_t getLength () const =0
 
virtual void setLength (std::size_t length)=0
 
virtual std::size_t getCapacity () const =0
 
bool isCapacityMutable () const
 
void setCapacityMutable (bool isMutable)
 
virtual void setCapacity (std::size_t capacity)=0
 
virtual std::ostream & dumpValue (std::ostream &o, std::size_t index) const =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 FieldConstPtrgetField () const
 
PVStructuregetParent ()
 
const PVStructuregetParent () const
 
void postPut ()
 
void setPostHandler (PostHandlerPtr const &postHandler)
 
virtual bool equals (PVField &pv)
 
virtual std::ostream & dumpValue (std::ostream &o) const =0
 
void copy (const PVField &from)
 
void copyUnchecked (const PVField &from)
 
- Public Member Functions inherited from epics::pvData::Serializable
virtual ~Serializable ()
 
virtual void serialize (ByteBuffer *buffer, SerializableControl *flusher) const =0
 
virtual void deserialize (ByteBuffer *buffer, DeserializableControl *flusher)=0
 
- Public Member Functions inherited from epics::pvData::SerializableArray
virtual ~SerializableArray ()
 
virtual void serialize (ByteBuffer *buffer, SerializableControl *flusher, std::size_t offset, std::size_t count) const =0
 

Protected Member Functions

virtual void _getAsVoid (shared_vector< const void > &) const =0
 
virtual void _putFromVoid (const shared_vector< const void > &)=0
 
 PVScalarArray (ScalarArrayConstPtr const &scalarArray)
 
- 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
 

Detailed Description

Base class for a scalarArray.

Definition at line 618 of file pvData.h.

Constructor & Destructor Documentation

◆ ~PVScalarArray()

virtual epics::pvData::PVScalarArray::~PVScalarArray ( )
virtual

Destructor

Member Function Documentation

◆ assign()

void epics::pvData::PVScalarArray::assign ( const PVScalarArray pv)
inline

Assign the given PVScalarArray's value.

A copy and element-wise conversion is performed unless the element type of the PVScalarArray matches the type of the provided data. If the types do match then a new reference to the provided data is kept.

Definition at line 681 of file pvData.h.

◆ getAs()

template<typename T >
void epics::pvData::PVScalarArray::getAs ( shared_vector< const T > &  out) const
inline

Fetch the current value and convert to the requested type.

A copy is made if the requested type does not match the element type. If the types do match then no copy is made.

Definition at line 647 of file pvData.h.

◆ getScalarArray()

const ScalarArrayConstPtr epics::pvData::PVScalarArray::getScalarArray ( ) const

Get the introspection interface

Returns
The interface.

◆ putFrom()

template<typename T >
void epics::pvData::PVScalarArray::putFrom ( const shared_vector< const T > &  inp)
inline

Assign the given value after conversion.

A copy and element-wise conversion is performed unless the element type of the PVScalarArray matches the type of the provided data. If the types do match then a new reference to the provided data is kept.

Calls postPut()

Definition at line 666 of file pvData.h.


The documentation for this class was generated from the following file: