This is Unofficial EPICS BASE Doxygen Site
epics::pvData::ValueBuilder::child_scalar< T > Struct Template Reference
+ Inheritance diagram for epics::pvData::ValueBuilder::child_scalar< T >:
+ Collaboration diagram for epics::pvData::ValueBuilder::child_scalar< T >:

Public Member Functions

virtual ~child_scalar ()
 
 child_scalar (const void *v)
 
virtual void store (const PVFieldPtr &val) OVERRIDE FINAL
 
- Public Member Functions inherited from epics::pvData::ValueBuilder::child_scalar_base
virtual ~child_scalar_base ()
 
 child_scalar_base (ScalarType s)
 
virtual void build (const std::string &name, FieldBuilderPtr &builder) OVERRIDE FINAL
 
- Public Member Functions inherited from epics::pvData::ValueBuilder::child
virtual ~child ()
 
 child (Type t)
 

Public Attributes

value
 
- Public Attributes inherited from epics::pvData::ValueBuilder::child_scalar_base
ScalarType stype
 
- Public Attributes inherited from epics::pvData::ValueBuilder::child
Type type
 

Detailed Description

template<typename T>
struct epics::pvData::ValueBuilder::child_scalar< T >

Definition at line 88 of file valueBuilder.cpp.

Constructor & Destructor Documentation

template<typename T >
virtual epics::pvData::ValueBuilder::child_scalar< T >::~child_scalar ( )
inlinevirtual

Definition at line 90 of file valueBuilder.cpp.

90 {}
template<typename T >
epics::pvData::ValueBuilder::child_scalar< T >::child_scalar ( const void *  v)
inline

Definition at line 92 of file valueBuilder.cpp.

92 : child_scalar_base(static_cast<ScalarType>(ScalarTypeID<T>::value)), value(*static_cast<const T*>(v)) {}

Member Function Documentation

template<typename T >
virtual void epics::pvData::ValueBuilder::child_scalar< T >::store ( const PVFieldPtr val)
inlinevirtual

Implements epics::pvData::ValueBuilder::child.

Definition at line 94 of file valueBuilder.cpp.

95  {
96  if(val->getField()->getType()!=scalar)
97  THROW_EXCEPTION2(std::logic_error, "Scalar type mis-match");
98 
99  PVScalarPtr scalar(std::tr1::static_pointer_cast<PVScalar>(val));
100  scalar->putFrom(value);
101  }
Definition: link.h:174
#define THROW_EXCEPTION2(TYPE, MSG)
std::tr1::shared_ptr< PVScalar > PVScalarPtr
Definition: pvData.h:77

Member Data Documentation

template<typename T >
T epics::pvData::ValueBuilder::child_scalar< T >::value

Definition at line 91 of file valueBuilder.cpp.


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