20 namespace epics {
namespace pvData {
40 static inline void parseToPOD(
const std::string& str, int16_t *out) {
return parseToPOD(str.c_str(), out); }
41 static inline void parseToPOD(
const std::string& str, uint16_t *out) {
return parseToPOD(str.c_str(), out); }
42 static inline void parseToPOD(
const std::string& str, int32_t *out) {
return parseToPOD(str.c_str(), out); }
43 static inline void parseToPOD(
const std::string& str, uint32_t *out) {
return parseToPOD(str.c_str(), out); }
44 static inline void parseToPOD(
const std::string& str, int64_t *out) {
return parseToPOD(str.c_str(), out); }
45 static inline void parseToPOD(
const std::string& str, uint64_t *out) {
return parseToPOD(str.c_str(), out); }
46 static inline void parseToPOD(
const std::string& str,
float *out) {
return parseToPOD(str.c_str(), out); }
47 static inline void parseToPOD(
const std::string& str,
double *out) {
return parseToPOD(str.c_str(), out); }
52 template<
typename ARG>
84 template<
typename TO,
typename FROM,
class Enable =
void>
87 return static_cast<TO
>(from);
101 template<
typename FROM>
103 static std::string
op(FROM from) {
104 std::ostringstream strm;
107 throw std::runtime_error(
"Cast to string failed");
114 template<
typename TO>
125 template<
typename TO>
194 template<
typename TO,
typename FROM>
225 const std::string& orig;
228 escape(
const std::string& orig) :orig(orig), S(C) {}
233 std::string
str()
const;
242 #endif // PVTYPECAST_H
static FORCE_INLINE return_t op(boolean i)
escape(const std::string &orig)
static FORCE_INLINE TO op(const char *from)
escape & style(style_t s)
Change escaping style.
pvd::StructureConstPtr type
TODO only here because of the Lockable.
static FORCE_INLINE float op(double from)
Mark external symbols and entry points for shared libraries.
static FORCE_INLINE return_t op(int8 i)
std::ostream & operator<<(std::ostream &o, const Field &f)
LIBCOM_API float epicsConvertDoubleToFloat(double value)
static FORCE_INLINE return_t op(uint8 i)
void parseToPOD(const char *in, boolean *out)
static FORCE_INLINE TO op(FROM from)
epicsShareExtern void castUnsafeV(size_t count, ScalarType to, void *dest, ScalarType from, const void *src)
detail::pick_type< int8_t, signed char, detail::pick_type< uint8_t, char, unsigned char >::type >::type boolean
ChannelPut::shared_pointer op
static FORCE_INLINE return_t op(const T &i)