PVData C++  8.0.2
Namespaces | Classes | Typedefs | Enumerations | Functions
epics::pvData Namespace Reference

pvData More...

Namespaces

 ScalarTypeFunc
 Convenience functions for ScalarType.
 
 TypeFunc
 Convenience functions for Type.
 

Classes

class  AnyScalar
 
class  Array
 This class implements introspection object for Array. More...
 
class  BaseException
 Base for pvData exceptions. More...
 
class  BitSet
 A vector of bits. More...
 
class  BitSetSerializable
 Class for serializing bitSets. More...
 
class  BoundedScalarArray
 This class implements introspection object for bounded scalar array. More...
 
class  BoundedString
 This class implements introspection object for BoundedString. More...
 
class  ByteBuffer
 This class implements a Bytebuffer that is like the java.nio.ByteBuffer. More...
 
class  Convert
 Conversion and Copy facility for pvData. More...
 
class  CreateRequest
 Create pvRequest structure for Channel methods. More...
 
class  DeserializableControl
 Callback class for deserialization. More...
 
struct  escape
 
class  Event
 C++ wrapper for epicsEvent from EPICS base. More...
 
class  ExceptionMixin
 
class  Field
 This class implements introspection object for field. More...
 
class  FieldBuilder
 Interface for in-line creating of introspection interfaces. More...
 
class  FieldCreate
 This is a singleton class for creating introspection interfaces. More...
 
class  FixedScalarArray
 This class implements introspection object for bounded scalar array. More...
 
struct  JSONPrintOptions
 Options used during printing. More...
 
class  Lock
 A lock for multithreading. More...
 
struct  maybeQuote
 
class  NoDefaultMethods
 Base class for not allowing default methods. More...
 
class  PostHandler
 This class is implemented by code that calls setPostHander. More...
 
class  PVArray
 PVArray is the base class for all array types. More...
 
class  PVDataCreate
 This is a singleton class for creating data instances. More...
 
struct  PVDataVersion
 
class  PVField
 PVField is the base class for each PVData field. More...
 
class  PVRequestMapper
 
class  PVScalar
 PVScalar is the base class for each scalar field. More...
 
class  PVScalarArray
 Base class for a scalarArray. More...
 
class  PVScalarValue
 Class that holds the data for each possible scalar type. More...
 
class  PVString
 PVString is special case, since it implements SerializableArray. More...
 
class  PVStructure
 Data interface for a structure,. More...
 
class  PVUnion
 PVUnion has a single subfield. More...
 
class  PVValueArray
 template class for all extensions of PVArray. More...
 
class  PVValueArray< PVStructurePtr >
 Data class for a structureArray. More...
 
class  PVValueArray< PVUnionPtr >
 Data class for a unionArray. More...
 
class  Scalar
 This class implements introspection object for Scalar. More...
 
class  ScalarArray
 This class implements introspection object for scalar array. More...
 
struct  ScalarTypeID
 
struct  ScalarTypeID< boolean >
 
struct  ScalarTypeID< const boolean >
 
struct  ScalarTypeID< const double >
 
struct  ScalarTypeID< const float >
 
struct  ScalarTypeID< const int16 >
 
struct  ScalarTypeID< const int32 >
 
struct  ScalarTypeID< const int64 >
 
struct  ScalarTypeID< const int8 >
 
struct  ScalarTypeID< const std::string >
 
struct  ScalarTypeID< const uint16 >
 
struct  ScalarTypeID< const uint32 >
 
struct  ScalarTypeID< const uint64 >
 
struct  ScalarTypeID< const uint8 >
 
struct  ScalarTypeID< double >
 
struct  ScalarTypeID< float >
 
struct  ScalarTypeID< int16 >
 
struct  ScalarTypeID< int32 >
 
struct  ScalarTypeID< int64 >
 
struct  ScalarTypeID< int8 >
 
struct  ScalarTypeID< std::string >
 
struct  ScalarTypeID< uint16 >
 
struct  ScalarTypeID< uint32 >
 
struct  ScalarTypeID< uint64 >
 
struct  ScalarTypeID< uint8 >
 
struct  ScalarTypeTraits
 
struct  ScalarTypeTraits< pvBoolean >
 
struct  ScalarTypeTraits< pvByte >
 
struct  ScalarTypeTraits< pvDouble >
 
struct  ScalarTypeTraits< pvFloat >
 
struct  ScalarTypeTraits< pvInt >
 
struct  ScalarTypeTraits< pvLong >
 
struct  ScalarTypeTraits< pvShort >
 
struct  ScalarTypeTraits< pvString >
 
struct  ScalarTypeTraits< pvUByte >
 
struct  ScalarTypeTraits< pvUInt >
 
struct  ScalarTypeTraits< pvULong >
 
struct  ScalarTypeTraits< pvUShort >
 
class  Serializable
 Base class for serialization. More...
 
class  SerializableArray
 Class for serializing arrays. More...
 
class  SerializableControl
 Callback class for serialization. More...
 
class  SerializeHelper
 Serialization helper. More...
 
class  shared_vector
 A holder for a contiguous piece of memory. More...
 
class  shared_vector< E, typename meta::is_void< E >::type >
 Specialization for storing untyped pointers. More...
 
class  StandardField
 Standard Fields is a class or creating or sharing Field objects for standard fields. More...
 
class  StandardPVField
 StandardPVField is a class or creating standard data fields. More...
 
class  Status
 Status. More...
 
class  Structure
 This class implements introspection object for a structure. More...
 
class  StructureArray
 This class implements introspection object for a structureArray. More...
 
class  Thread
 C++ wrapper for epicsThread from EPICS base. More...
 
class  Timer
 Support for delayed or periodic callback execution. More...
 
class  TimerCallback
 Class that must be implemented by code that makes Timer requests. More...
 
class  Union
 This class implements introspection object for a union. More...
 
class  UnionArray
 This class implements introspection object for a unionArray. More...
 
class  ValueBuilder
 

Typedefs

typedef std::tr1::shared_ptr< ConvertConvertPtr
 
typedef std::tr1::shared_ptr< PostHandlerPostHandlerPtr
 
typedef std::tr1::shared_ptr< PVFieldPVFieldPtr
 
typedef std::vector< PVFieldPtrPVFieldPtrArray
 
typedef std::vector< PVFieldPtr >::iterator PVFieldPtrArray_iterator
 
typedef std::vector< PVFieldPtr >::const_iterator PVFieldPtrArray_const__iterator
 
typedef std::tr1::shared_ptr< PVScalarPVScalarPtr
 
typedef std::tr1::shared_ptr< PVScalarArrayPVScalarArrayPtr
 
typedef std::tr1::shared_ptr< PVStructurePVStructurePtr
 
typedef std::vector< PVStructurePtrPVStructurePtrArray
 
typedef std::vector< PVStructurePtr >::iterator PVStructurePtrArray_iterator
 
typedef std::vector< PVStructurePtr >::const_iterator PVStructurePtrArray_const__iterator
 
typedef PVValueArray< PVStructurePtrPVStructureArray
 
typedef std::tr1::shared_ptr< PVStructureArrayPVStructureArrayPtr
 
typedef std::vector< PVStructureArrayPtr > PVStructureArrayPtrArray
 
typedef std::tr1::shared_ptr< PVStructureArrayPtrArrayPVStructureArrayPtrArrayPtr
 
typedef std::tr1::shared_ptr< PVUnionPVUnionPtr
 
typedef std::vector< PVUnionPtrPVUnionPtrArray
 
typedef std::vector< PVUnionPtr >::iterator PVUnionPtrArray_iterator
 
typedef std::vector< PVUnionPtr >::const_iterator PVUnionPtrArray_const__iterator
 
typedef PVValueArray< PVUnionPtrPVUnionArray
 
typedef std::tr1::shared_ptr< PVUnionArrayPVUnionArrayPtr
 
typedef std::vector< PVUnionArrayPtr > PVUnionArrayPtrArray
 
typedef std::tr1::shared_ptr< PVUnionArrayPtrArrayPVUnionArrayPtrArrayPtr
 
typedef std::tr1::shared_ptr< PVDataCreatePVDataCreatePtr
 
typedef PVScalarValue< booleanPVBoolean
 
typedef PVScalarValue< int8PVByte
 
typedef PVScalarValue< int16PVShort
 
typedef PVScalarValue< int32PVInt
 
typedef PVScalarValue< int64PVLong
 
typedef PVScalarValue< uint8PVUByte
 
typedef PVScalarValue< uint16PVUShort
 
typedef PVScalarValue< uint32PVUInt
 
typedef PVScalarValue< uint64PVULong
 
typedef PVScalarValue< float > PVFloat
 
typedef PVScalarValue< double > PVDouble
 
typedef std::tr1::shared_ptr< PVBooleanPVBooleanPtr
 
typedef std::tr1::shared_ptr< PVBytePVBytePtr
 
typedef std::tr1::shared_ptr< PVShortPVShortPtr
 
typedef std::tr1::shared_ptr< PVIntPVIntPtr
 
typedef std::tr1::shared_ptr< PVLongPVLongPtr
 
typedef std::tr1::shared_ptr< PVUBytePVUBytePtr
 
typedef std::tr1::shared_ptr< PVUShortPVUShortPtr
 
typedef std::tr1::shared_ptr< PVUIntPVUIntPtr
 
typedef std::tr1::shared_ptr< PVULongPVULongPtr
 
typedef std::tr1::shared_ptr< PVFloatPVFloatPtr
 
typedef std::tr1::shared_ptr< PVDoublePVDoublePtr
 
typedef std::tr1::shared_ptr< PVStringPVStringPtr
 
typedef PVValueArray< booleanPVBooleanArray
 
typedef std::tr1::shared_ptr< PVBooleanArrayPVBooleanArrayPtr
 
typedef PVValueArray< int8PVByteArray
 
typedef std::tr1::shared_ptr< PVByteArrayPVByteArrayPtr
 
typedef PVValueArray< int16PVShortArray
 
typedef std::tr1::shared_ptr< PVShortArrayPVShortArrayPtr
 
typedef PVValueArray< int32PVIntArray
 
typedef std::tr1::shared_ptr< PVIntArrayPVIntArrayPtr
 
typedef PVValueArray< int64PVLongArray
 
typedef std::tr1::shared_ptr< PVLongArrayPVLongArrayPtr
 
typedef PVValueArray< uint8PVUByteArray
 
typedef std::tr1::shared_ptr< PVUByteArrayPVUByteArrayPtr
 
typedef PVValueArray< uint16PVUShortArray
 
typedef std::tr1::shared_ptr< PVUShortArrayPVUShortArrayPtr
 
typedef PVValueArray< uint32PVUIntArray
 
typedef std::tr1::shared_ptr< PVUIntArrayPVUIntArrayPtr
 
typedef PVValueArray< uint64PVULongArray
 
typedef std::tr1::shared_ptr< PVULongArrayPVULongArrayPtr
 
typedef PVValueArray< float > PVFloatArray
 
typedef std::tr1::shared_ptr< PVFloatArrayPVFloatArrayPtr
 
typedef PVValueArray< double > PVDoubleArray
 
typedef std::tr1::shared_ptr< PVDoubleArrayPVDoubleArrayPtr
 
typedef PVValueArray< std::stringPVStringArray
 
typedef std::tr1::shared_ptr< PVStringArrayPVStringArrayPtr
 
typedef std::tr1::shared_ptr< const FieldFieldConstPtr
 
typedef std::vector< FieldConstPtrFieldConstPtrArray
 
typedef std::tr1::shared_ptr< const ScalarScalarConstPtr
 
typedef std::tr1::shared_ptr< const ArrayArrayConstPtr
 
typedef std::tr1::shared_ptr< const ScalarArrayScalarArrayConstPtr
 
typedef std::tr1::shared_ptr< const StructureStructureConstPtr
 
typedef std::tr1::shared_ptr< const StructureArrayStructureArrayConstPtr
 
typedef std::tr1::shared_ptr< const UnionUnionConstPtr
 
typedef std::tr1::shared_ptr< const UnionArrayUnionArrayConstPtr
 
typedef std::tr1::shared_ptr< const BoundedStringBoundedStringConstPtr
 
typedef std::tr1::shared_ptr< FieldCreateFieldCreatePtr
 
typedef std::tr1::shared_ptr< FieldBuilderFieldBuilderPtr
 
typedef detail::pick_type< int8_t, signed char, detail::pick_type< uint8_t, char, unsigned char >::type >::type boolean
 
typedef int8_t int8
 
typedef int16_t int16
 
typedef int32_t int32
 
typedef int64_t int64
 
typedef uint8_t uint8
 
typedef uint16_t uint16
 
typedef uint32_t uint32
 
typedef uint64_t uint64
 
typedef std::vector< std::stringStringArray
 
typedef std::tr1::shared_ptr< StringArrayStringArrayPtr
 
typedef std::vector< std::string >::iterator StringArray_iterator
 
typedef std::vector< std::string >::const_iterator StringArray_const_iterator
 
typedef std::tr1::shared_ptr< StandardFieldStandardFieldPtr
 
typedef std::tr1::shared_ptr< StandardPVFieldStandardPVFieldPtr
 
typedef std::tr1::shared_ptr< BitSetBitSetPtr
 
typedef std::tr1::shared_ptr< EventEventPtr
 
typedef epicsMutex Mutex
 
typedef std::tr1::shared_ptr< ThreadThreadPtr
 
typedef std::tr1::shared_ptr< epicsThread > EpicsThreadPtr
 
typedef epicsThreadRunable Runnable
 
typedef std::tr1::shared_ptr< TimerCallbackTimerCallbackPtr
 
typedef std::tr1::shared_ptr< TimerTimerPtr
 

Enumerations

enum  Type {
  scalar, scalarArray, structure, structureArray,
  union_, unionArray
}
 
enum  ScalarType {
  pvBoolean, pvByte, pvShort, pvInt,
  pvLong, pvUByte, pvUShort, pvUInt,
  pvULong, pvFloat, pvDouble, pvString
}
 
enum  ThreadPriority {
  lowestPriority =epicsThreadPriorityLow, lowerPriority =epicsThreadPriorityLow + 15, lowPriority =epicsThreadPriorityMedium - 15, middlePriority =epicsThreadPriorityMedium,
  highPriority =epicsThreadPriorityMedium + 15, higherPriority =epicsThreadPriorityHigh - 15, highestPriority =epicsThreadPriorityHigh
}
 

Functions

void getVersion (epics::pvData::PVDataVersion *ptr)
 
epicsShareExtern std::ostreamoperator<< (std::ostream &o, const PVField &f)
 
epicsShareExtern std::ostreamoperator<< (format::array_at_internal const &manip, const PVArray &array)
 
epicsShareFunc std::ostreamoperator<< (std::ostream &strm, const PVStructure::Formatter &format)
 
FORCE_INLINE const PVDataCreatePtr & getPVDataCreate ()
 
bool epicsShareExtern operator== (const PVField &, const PVField &)
 
epicsShareExtern std::ostreamoperator<< (std::ostream &o, const Type &type)
 
epicsShareExtern std::ostreamoperator<< (std::ostream &o, const ScalarType &scalarType)
 
epicsShareExtern std::ostreamoperator<< (std::ostream &o, const Field &field)
 
const FieldCreatePtr & getFieldCreate ()
 
bool epicsShareExtern compare (const Field &, const Field &)
 
bool epicsShareExtern compare (const Scalar &, const Scalar &)
 
bool epicsShareExtern compare (const ScalarArray &, const ScalarArray &)
 
bool epicsShareExtern compare (const Structure &, const Structure &)
 
bool epicsShareExtern compare (const StructureArray &, const StructureArray &)
 
bool epicsShareExtern compare (const Union &, const Union &)
 
bool epicsShareExtern compare (const UnionArray &, const UnionArray &)
 
bool epicsShareExtern compare (const BoundedString &, const BoundedString &)
 
template<typename T >
epicsShareExtern void copy (PVValueArray< T > &pvFrom, size_t fromOffset, size_t fromStride, PVValueArray< T > &pvTo, size_t toOffset, size_t toStride, size_t count)
 Copy a subarray from one scalar array to another. More...
 
epicsShareExtern void copy (PVScalarArray &pvFrom, size_t fromOffset, size_t fromStride, PVScalarArray &pvTo, size_t toOffset, size_t toStride, size_t count)
 Copy a subarray from one scalar array to another. More...
 
epicsShareExtern void copy (PVStructureArray &pvFrom, size_t fromOffset, size_t fromStride, PVStructureArray &pvTo, size_t toOffset, size_t toStride, size_t count)
 Copy a subarray from one structure array to another. More...
 
epicsShareExtern void copy (PVArray &pvFrom, size_t fromOffset, size_t fromStride, PVArray &pvTo, size_t toOffset, size_t toStride, size_t count)
 Copy a subarray from one array to another. More...
 
epicsShareExtern void copy (PVArray::shared_pointer const &pvFrom, size_t fromOffset, size_t fromStride, PVArray::shared_pointer &pvTo, size_t toOffset, size_t toStride, size_t count)
 Copy a subarray from one array to another. More...
 
std::stringget (StringArray &value)
 
std::string const * get (StringArray const &value)
 
std::stringget (StringArrayPtr &value)
 
std::string const * get (StringArrayPtr const &value)
 
StringArraygetVector (StringArrayPtr &value)
 
StringArray const & getVector (StringArrayPtr const &value)
 
FORCE_INLINE const StandardFieldPtr & getStandardField ()
 
epicsShareExtern StandardPVFieldPtr getStandardPVField ()
 
epicsShareExtern PVStructure::shared_pointer createRequest (std::string const &request)
 
epicsShareExtern std::ostreamoperator<< (std::ostream &strm, const AnyScalar &v)
 
epicsShareExtern std::ostreamoperator<< (std::ostream &o, const BitSet &b)
 
template<typename T >
swap (T val)
 
void epicsShareFunc serializeToVector (const Serializable *S, int byteOrder, std::vector< epicsUInt8 > &out)
 Push serialize and append to the provided byte vector. No caching is done. Only complete serialization. More...
 
void epicsShareFunc deserializeFromBuffer (Serializable *S, ByteBuffer &in)
 deserializeFromBuffer Deserialize into S from provided vector More...
 
void deserializeFromVector (Serializable *S, int byteOrder, const std::vector< epicsUInt8 > &in)
 deserializeFromBuffer Deserialize into S from provided vector More...
 
std::ostreamoperator<< (std::ostream &o, const Status &status)
 
std::ostreamoperator<< (std::ostream &o, const Status::StatusType &statusType)
 
epicsShareExtern std::ostreamoperator<< (std::ostream &o, const Timer &timer)
 
epicsShareExtern void castUnsafeV (size_t count, ScalarType to, void *dest, ScalarType from, const void *src)
 
epicsShareFunc std::ostreamoperator<< (std::ostream &strm, const escape &Q)
 
epicsShareExtern std::ostreamoperator<< (std::ostream &strm, const maybeQuote &q)
 
epicsShareFunc void printJSON (std::ostream &strm, const PVStructure &val, const BitSet &mask, const JSONPrintOptions &opts=JSONPrintOptions())
 
epicsShareFunc void printJSON (std::ostream &strm, const PVField &val, const JSONPrintOptions &opts=JSONPrintOptions())
 
void printJSON (std::ostream &strm, const PVField::const_shared_pointer &val, const JSONPrintOptions &opts=JSONPrintOptions())
 
epicsShareFunc PVStructure::shared_pointer parseJSON (std::istream &strm)
 
epicsShareFunc void parseJSON (std::istream &strm, PVField &dest, BitSet *assigned=0)
 
void parseJSON (std::istream &strm, const PVField::shared_pointer &dest, BitSet *assigned=0)
 
epicsShareFunc bool yajl_parse_helper (std::istream &src, yajl_handle handle)
 

Detailed Description

pvData

Typedef Documentation

◆ ArrayConstPtr

typedef std::tr1::shared_ptr<const Array> epics::pvData::ArrayConstPtr

typedef for a shared pointer to an immutable Array.

Definition at line 154 of file pvIntrospect.h.

◆ boolean

typedef detail::pick_type<int8_t, signed char, detail::pick_type<uint8_t, char, unsigned char>::type >::type epics::pvData::boolean

This is a set of typedefs used by pvData. boolean, i.e. can only have the values false or true

Definition at line 71 of file pvType.h.

◆ BoundedStringConstPtr

typedef std::tr1::shared_ptr<const BoundedString> epics::pvData::BoundedStringConstPtr

typedef for a shared pointer to an immutable BoundedString.

Definition at line 178 of file pvIntrospect.h.

◆ FieldConstPtr

typedef std::tr1::shared_ptr<const Field> epics::pvData::FieldConstPtr

typedef for a shared pointer to an immutable Field.

Definition at line 137 of file pvIntrospect.h.

◆ FieldConstPtrArray

typedef for an array of shared pointer to an immutable Field.

Definition at line 146 of file pvIntrospect.h.

◆ int16

A 16 bit signed integer

Definition at line 79 of file pvType.h.

◆ int32

A 32 bit signed integer

Definition at line 83 of file pvType.h.

◆ int64

typedef int64_t epics::pvData::int64

A 64 bit signed integer

Definition at line 87 of file pvType.h.

◆ int8

typedef int8_t epics::pvData::int8

A 8 bit signed integer

Definition at line 75 of file pvType.h.

◆ PostHandlerPtr

typedef std::tr1::shared_ptr<PostHandler> epics::pvData::PostHandlerPtr

typedef for a pointer to a PostHandler.

Definition at line 55 of file pvData.h.

◆ PVBooleanArray

Definitions for the various scalarArray types.

Definition at line 1430 of file pvData.h.

◆ PVFieldPtr

typedef std::tr1::shared_ptr<PVField> epics::pvData::PVFieldPtr

typedef for a pointer to a PVField.

Definition at line 66 of file pvData.h.

◆ PVFieldPtrArray

typedef for a pointer to a array of pointer to PVField.

Definition at line 70 of file pvData.h.

◆ PVScalarArrayPtr

typedef std::tr1::shared_ptr<PVScalarArray> epics::pvData::PVScalarArrayPtr

typedef for a pointer to a PVScalarArray.

Definition at line 82 of file pvData.h.

◆ PVScalarPtr

typedef std::tr1::shared_ptr<PVScalar> epics::pvData::PVScalarPtr

typedef for a pointer to a PVScalar.

Definition at line 77 of file pvData.h.

◆ PVStructureArray

typedef for a pointer to a PVStructureArray.

Definition at line 99 of file pvData.h.

◆ PVStructurePtr

typedef std::tr1::shared_ptr<PVStructure> epics::pvData::PVStructurePtr

typedef for a pointer to a PVStructure.

Definition at line 87 of file pvData.h.

◆ PVStructurePtrArray

typedef for a pointer to a array of pointer to PVStructure.

Definition at line 91 of file pvData.h.

◆ PVUnionArray

typedef for a pointer to a PVUnionArray.

Definition at line 119 of file pvData.h.

◆ PVUnionPtr

typedef std::tr1::shared_ptr<PVUnion> epics::pvData::PVUnionPtr

typedef for a pointer to a PVUnion.

Definition at line 107 of file pvData.h.

◆ PVUnionPtrArray

typedef for a pointer to a array of pointer to PVUnion.

Definition at line 111 of file pvData.h.

◆ ScalarArrayConstPtr

typedef std::tr1::shared_ptr<const ScalarArray> epics::pvData::ScalarArrayConstPtr

typedef for a shared pointer to an immutable ScalarArray.

Definition at line 158 of file pvIntrospect.h.

◆ ScalarConstPtr

typedef std::tr1::shared_ptr<const Scalar> epics::pvData::ScalarConstPtr

typedef for a shared pointer to an immutable Scalar.

Definition at line 150 of file pvIntrospect.h.

◆ StringArray

A string array.

Definition at line 110 of file pvType.h.

◆ StructureArrayConstPtr

typedef std::tr1::shared_ptr<const StructureArray> epics::pvData::StructureArrayConstPtr

typedef for a shared pointer to an immutable StructureArray.

Definition at line 166 of file pvIntrospect.h.

◆ StructureConstPtr

typedef std::tr1::shared_ptr<const Structure> epics::pvData::StructureConstPtr

typedef for a shared pointer to an immutable Structure.

Definition at line 162 of file pvIntrospect.h.

◆ uint16

typedef uint16_t epics::pvData::uint16

A 16 bit unsigned integer

Definition at line 95 of file pvType.h.

◆ uint32

typedef uint32_t epics::pvData::uint32

A 32 bit unsigned integer

Definition at line 99 of file pvType.h.

◆ uint64

typedef uint64_t epics::pvData::uint64

A 64 bit unsigned integer

Definition at line 103 of file pvType.h.

◆ uint8

typedef uint8_t epics::pvData::uint8

A 8 bit unsigned integer

Definition at line 91 of file pvType.h.

◆ UnionArrayConstPtr

typedef std::tr1::shared_ptr<const UnionArray> epics::pvData::UnionArrayConstPtr

typedef for a shared pointer to an immutable UnionArray.

Definition at line 174 of file pvIntrospect.h.

◆ UnionConstPtr

typedef std::tr1::shared_ptr<const Union> epics::pvData::UnionConstPtr

typedef for a shared pointer to an immutable Union.

Definition at line 170 of file pvIntrospect.h.

Enumeration Type Documentation

◆ ScalarType

Definition of support scalar types.

Enumerator
pvBoolean 

The type is boolean, i.e. value can be false or true

pvByte 

The type is byte, i.e. a 8 bit signed integer.

pvShort 

The type is short, i.e. a 16 bit signed integer.

pvInt 

The type is int, i.e. a 32 bit signed integer.

pvLong 

The type is long, i.e. a 64 bit signed integer.

pvUByte 

The type is unsigned byte, i.e. a 8 bit unsigned integer.

pvUShort 

The type is unsigned short, i.e. a 16 bit unsigned integer.

pvUInt 

The type is unsigned int, i.e. a 32 bit unsigned integer.

pvULong 

The type is unsigned long, i.e. a 64 bit unsigned integer.

pvFloat 

The type is float, i.e. 32 bit IEEE floating point,

pvDouble 

The type is float, i.e. 64 bit IEEE floating point,

pvString 

The type is string, i.e. a UTF8 character string.

Definition at line 229 of file pvIntrospect.h.

◆ Type

Definition of support field types.

Enumerator
scalar 

The type is scalar. It has a scalarType

scalarArray 

The type is scalarArray. Each element is a scalar of the same scalarType.

structure 

The type is structure.

structureArray 

The type is structureArray. Each element is a structure.

union_ 

The type is an union.

unionArray 

The type is an array of unions.

Definition at line 183 of file pvIntrospect.h.

Function Documentation

◆ copy() [1/5]

template<typename T >
epicsShareExtern void epics::pvData::copy ( PVValueArray< T > &  pvFrom,
size_t  fromOffset,
size_t  fromStride,
PVValueArray< T > &  pvTo,
size_t  toOffset,
size_t  toStride,
size_t  count 
)

Copy a subarray from one scalar array to another.

Warning
The two scalar arrays must both be PVValueArrays of the same type.
Parameters
pvFromThe source array.
fromOffsetThe offset in the source.
fromStrideThe interval between elements in pvFrom.
pvToThe destination array.
toOffsetThe offset in the destination.
toStrideThe interval between elements in pvTo.
countThe total number of elements to copy from pvFrom to pvTo.

◆ copy() [2/5]

epicsShareExtern void epics::pvData::copy ( PVScalarArray pvFrom,
size_t  fromOffset,
size_t  fromStride,
PVScalarArray pvTo,
size_t  toOffset,
size_t  toStride,
size_t  count 
)

Copy a subarray from one scalar array to another.

Warning
The two scalar arrays must both be PVValueArrays of the same type.
Parameters
pvFromThe source array.
fromOffsetThe offset in the source.
fromStrideThe interval between elements in pvFrom.
pvToThe destination array.
toOffsetThe offset in the destination.
toStrideThe interval between elements in pvTo.
countThe total number of elements to copy from pvFrom to pvTo.

◆ copy() [3/5]

epicsShareExtern void epics::pvData::copy ( PVStructureArray pvFrom,
size_t  fromOffset,
size_t  fromStride,
PVStructureArray pvTo,
size_t  toOffset,
size_t  toStride,
size_t  count 
)

Copy a subarray from one structure array to another.

Warning
The two structure arrays must have the same structure introspection interface.
Parameters
pvFromThe source array.
fromOffsetThe offset in the source.
fromStrideThe interval between elements in pvFrom.
pvToThe destination array.
toOffsetThe offset in the destination.
toStrideThe interval between elements in pvTo.
countThe total number of elements to copy from pvFrom to pvTo.

◆ copy() [4/5]

epicsShareExtern void epics::pvData::copy ( PVArray pvFrom,
size_t  fromOffset,
size_t  fromStride,
PVArray pvTo,
size_t  toOffset,
size_t  toStride,
size_t  count 
)

Copy a subarray from one array to another.

Warning
The two arrays must have the same introspection interface.
Parameters
pvFromThe source array.
fromOffsetThe offset in the source.
fromStrideThe interval between elements in pvFrom.
pvToThe destination array.
toOffsetThe offset in the destination.
toStrideThe interval between elements in pvTo.
countThe total number of elements to copy from pvFrom to pvTo.

◆ copy() [5/5]

epicsShareExtern void epics::pvData::copy ( PVArray::shared_pointer const &  pvFrom,
size_t  fromOffset,
size_t  fromStride,
PVArray::shared_pointer &  pvTo,
size_t  toOffset,
size_t  toStride,
size_t  count 
)

Copy a subarray from one array to another.

Warning
The two arrays must have the same introspection interface.
Parameters
pvFromThe source array.
fromOffsetThe offset in the source.
fromStrideThe interval between elements in pvFrom.
pvToThe destination array.
toOffsetThe offset in the destination.
toStrideThe interval between elements in pvTo.
countThe total number of elements to copy from pvFrom to pvTo.

◆ createRequest()

epicsShareExtern PVStructure::shared_pointer epics::pvData::createRequest ( std::string const &  request)

Parse and build pvRequest structure.

request the Request string to be parsed. eg. "field(value)"

Returns
The resulting strucuture. Never NULL
Exceptions
std::exceptionfor various parsing errors

◆ deserializeFromBuffer()

void epicsShareFunc epics::pvData::deserializeFromBuffer ( Serializable S,
ByteBuffer in 
)

deserializeFromBuffer Deserialize into S from provided vector

Parameters
SA Serializeable object. The current contents will be replaced
inThe input buffer (byte order of this buffer is used)
Exceptions
std::logic_errorif input buffer is too small. State of S is then undefined.

◆ deserializeFromVector()

void epics::pvData::deserializeFromVector ( Serializable S,
int  byteOrder,
const std::vector< epicsUInt8 > &  in 
)
inline

deserializeFromBuffer Deserialize into S from provided vector

Parameters
SA Serializeable object. The current contents will be replaced
byteOrderByte order to write (EPICS_ENDIAN_LITTLE or EPICS_ENDIAN_BIG)
inThe input vector
Exceptions
std::logic_errorif input buffer is too small. State of S is then undefined.

Definition at line 190 of file serialize.h.

◆ getFieldCreate()

const FieldCreatePtr& epics::pvData::getFieldCreate ( )
inline

Get the single class that implements FieldCreate,

Returns
The fieldCreate factory.

Definition at line 1416 of file pvIntrospect.h.

◆ serializeToVector()

void epicsShareFunc epics::pvData::serializeToVector ( const Serializable S,
int  byteOrder,
std::vector< epicsUInt8 > &  out 
)

Push serialize and append to the provided byte vector. No caching is done. Only complete serialization.

Parameters
SA Serializable object
byteOrderByte order to write (EPICS_ENDIAN_LITTLE or EPICS_ENDIAN_BIG)
outThe output vector. Results are appended

◆ swap()

template<typename T >
T epics::pvData::swap ( val)
inline

Unconditional byte order swap. defined for integer and floating point types

Definition at line 209 of file byteBuffer.h.