|
PVData C++
8.0.6
|
#include <misc/pv/anyscalar.h>
Classes | |
| struct | bad_cast |
Public Member Functions | |
| AnyScalar () | |
| template<typename T > | |
| AnyScalar (T v) | |
| Construct from provided value. | |
| AnyScalar (ScalarType type, const void *buf) | |
| AnyScalar (const AnyScalar &o) | |
| AnyScalar & | operator= (const AnyScalar &o) |
| template<typename T > | |
| AnyScalar & | operator= (T v) |
| void | clear () |
| void | swap (AnyScalar &o) |
| ScalarType | type () const |
| Type code of contained value. Or (ScalarType)-1 is empty. | |
| void * | unsafe () |
| const void * | unsafe () const |
| bool | empty () const |
| operator bool_type () const | |
| const void * | bufferUnsafe () const |
| template<typename T > | |
| detail::any_storage_type < typename meta::strip_const < T >::type >::type & | ref () |
| template<typename T > | |
| meta::decorate_const< typename detail::any_storage_type < typename meta::strip_const < T >::type >::type >::type & | ref () const |
| template<typename T > | |
| T | as () const |
Friends | |
| std::ostream & | operator<< (std::ostream &strm, const AnyScalar &v) |
A type-safe variant union capable of holding any of the PVD scalar types (POD or string)
Definition at line 51 of file anyscalar.h.
|
inline |
| epics::pvData::AnyScalar::AnyScalar | ( | ScalarType | type, |
| const void * | buf | ||
| ) |
Construct from un-typed pointer. Caller is responsible to ensure that buf actually points to the provided type
|
inline |
copy out wrapped value, with a value conversion.
Definition at line 230 of file anyscalar.h.
| const void* epics::pvData::AnyScalar::bufferUnsafe | ( | ) | const |
Provide read-only access to underlying buffer. For a string this is std::string::c_str().
| void epics::pvData::AnyScalar::clear | ( | ) |
|
inline |
|
inline |
Return typed reference to wrapped value. Const reference does not allow modification.
| bad_cast | when the requested type does not match the stored type |
Definition at line 215 of file anyscalar.h.
1.8.5