6 using Dt = ChimeraTK::DataType::TheType;
8 static ChimeraTK::DataType mapTangoToUserType(
int tangoType) {
9 static const std::map<Tango::CmdArgType, ChimeraTK::DataType::TheType> typeMap{
10 {Tango::DEV_BOOLEAN, Dt::Boolean},
11 {Tango::DEV_SHORT, Dt::int16},
12 {Tango::DEV_LONG, Dt::int32},
13 {Tango::DEV_FLOAT, Dt::float32},
14 {Tango::DEV_DOUBLE, Dt::float64},
15 {Tango::DEV_USHORT, Dt::uint16},
16 {Tango::DEV_ULONG, Dt::uint32},
17 {Tango::DEV_STRING, Dt::string},
18 {Tango::DEV_STATE, Dt::uint8},
19 {Tango::DEV_UCHAR, Dt::uint8},
20 {Tango::DEV_LONG64, Dt::int64},
21 {Tango::DEV_ULONG64, Dt::uint64},
22 {Tango::DEV_ENUM, Dt::int64},
29 tangoType =
static_cast<int>(Tango::DEV_LONG);
32 return typeMap.at(
static_cast<Tango::CmdArgType
>(tangoType));
34 catch(std::out_of_range&) {
35 throw ChimeraTK::logic_error(
"Unmappable Tango type " + std::to_string(tangoType));