14 #define epicsExportSharedSymbols 23 namespace epics {
namespace pvData {
26 static const char* names[] = {
27 "scalar",
"scalarArray",
"structure",
"structureArray",
"union",
"unionArray" 42 namespace ScalarTypeFunc {
63 static const char* names[] = {
65 "byte",
"short",
"int",
"long",
66 "ubyte",
"ushort",
"uint",
"ulong",
67 "float",
"double",
"string",
85 #define OP(ENUM, TYPE) case ENUM: return sizeof(TYPE) 107 #define OP(ENUM, TYPE) case ENUM: return static_shared_vector_cast<void>(shared_vector<TYPE>(len)) 122 throw std::bad_alloc();
const char * name(ScalarType t)
size_t elementSize(ScalarType id)
gives sizeof(T) where T depends on the scalar type id.
A holder for a contiguous piece of memory.
#define THROW_EXCEPTION2(TYPE, MSG)
ScalarType getScalarType(const string &pvalue)
pvd::StructureConstPtr type
TODO only here because of the Lockable.
std::ostream & operator<<(std::ostream &o, const Field &f)
Miscellaneous macro definitions.
shared_vector< void > allocArray(ScalarType id, size_t len)
Allocate an untyped array based on ScalarType.
bool isPrimitive(ScalarType type)
bool isNumeric(ScalarType type)
bool isInteger(ScalarType type)
const char * name(Type t)
bool isUInteger(ScalarType type)