11 #ifndef __PCP_CPP_ATOM_HPP__ 12 #define __PCP_CPP_ATOM_HPP__ 18 PCP_CPP_BEGIN_NAMESPACE
34 template <
typename ValueType>
39 case PM_TYPE_32: atom.l =
static_cast< int32_t
>(value);
break;
40 case PM_TYPE_U32: atom.ul =
static_cast<uint32_t
>(value);
break;
41 case PM_TYPE_64: atom.ll =
static_cast< int64_t
>(value);
break;
42 case PM_TYPE_U64: atom.ull =
static_cast<uint64_t
>(value);
break;
43 case PM_TYPE_FLOAT: atom.f =
static_cast<float >(value);
break;
44 case PM_TYPE_DOUBLE: atom.d =
static_cast<double >(value);
break;
83 case PM_TYPE_STRING: atom.cp = value;
break;
116 case PM_TYPE_AGGREGATE: atom.vbp = value;
break;
117 case PM_TYPE_AGGREGATE_STATIC: atom.vbp = value;
break;
118 case PM_TYPE_EVENT: atom.vbp = value;
break;
119 #ifdef PM_TYPE_HIGHRES_EVENT // PM_TYPE_HIGHRES_EVENT added in PCP 3.9.10. 120 case PM_TYPE_HIGHRES_EVENT: atom.vbp = value;
break;
130 PCP_CPP_END_NAMESPACE
uint_fast8_t atom_type_type
PM_TYPE_* (0 - 9)
Sets up common PMDA++ library macros.
Declares various types used throughout the PMDA++ library.
Base class for all PMDA++ exceptions.
pmAtomValue atom(const atom_type_type type, ValueType value)
Caset a value to a PCP pmAtomValue.
Defines the pcp::exception class.
atom_type_type type()
Get the PM_TYPE_* constant for a given C++ type.