#include <uhd/types/sensors.hpp>
Public Types | |
enum | data_type_t { BOOLEAN = 'b', INTEGER = 'i', REALNUM = 'r', STRING = 's' } |
Enumeration of possible data types in a sensor. More... | |
typedef std::map< std::string, std::string > | sensor_map_t |
Public Member Functions | |
sensor_value_t (const std::string &name, bool value, const std::string &utrue, const std::string &ufalse) | |
sensor_value_t (const std::string &name, signed value, const std::string &unit, const std::string &formatter="%d") | |
sensor_value_t (const std::string &name, double value, const std::string &unit, const std::string &formatter="%f") | |
sensor_value_t (const std::string &name, const std::string &value, const std::string &unit) | |
sensor_value_t (const std::map< std::string, std::string > &sensor_dict) | |
sensor_value_t (const sensor_value_t &source) | |
bool | to_bool (void) const |
convert the sensor value to a boolean More... | |
signed | to_int (void) const |
convert the sensor value to an integer More... | |
double | to_real (void) const |
convert the sensor value to real number More... | |
sensor_map_t | to_map (void) const |
convert the sensor value to sensor_map_t More... | |
std::string | to_pp_string (void) const |
Convert this sensor value into a printable string. More... | |
sensor_value_t & | operator= (const sensor_value_t &value) |
Assignment operator for sensor value. More... | |
Public Attributes | |
std::string | name |
The name of the sensor value. More... | |
std::string | value |
std::string | unit |
data_type_t | type |
The data type of the value. More... | |
A sensor value stores a sensor reading as a string with unit and data type. The sensor value class can be used in the following way:
sensor_value_t ref_lock_sensor("Reference", my_lock, "unlocked", "locked"); std::cout << ref_lock_sensor.to_pp_string() << std::endl; //prints Reference: locked
sensor_value_t temp_sensor("Temperature", my_temp, "C"); std::cout << temp_sensor.to_pp_string() << std::endl; //prints Temperature: 38.5 C
typedef std::map<std::string, std::string> uhd::sensor_value_t::sensor_map_t |
uhd::sensor_value_t::sensor_value_t | ( | const std::string & | name, |
bool | value, | ||
const std::string & | utrue, | ||
const std::string & | ufalse | ||
) |
Create a sensor value from a boolean.
name | the name of the sensor |
value | the value true or false |
utrue | the unit string when value is true |
ufalse | the unit string when value is false |
uhd::sensor_value_t::sensor_value_t | ( | const std::string & | name, |
signed | value, | ||
const std::string & | unit, | ||
const std::string & | formatter = "%d" |
||
) |
Create a sensor value from an integer.
name | the name of the sensor |
value | the signed integer value |
unit | the associated unit type |
formatter | the formatter string |
uhd::sensor_value_t::sensor_value_t | ( | const std::string & | name, |
double | value, | ||
const std::string & | unit, | ||
const std::string & | formatter = "%f" |
||
) |
Create a sensor value from a real number.
name | the name of the sensor |
value | the real number value |
unit | the associated unit type |
formatter | the formatter string |
uhd::sensor_value_t::sensor_value_t | ( | const std::string & | name, |
const std::string & | value, | ||
const std::string & | unit | ||
) |
Create a sensor value from a string.
name | the name of the sensor |
value | the real number value |
unit | the associated unit type |
uhd::sensor_value_t::sensor_value_t | ( | const std::map< std::string, std::string > & | sensor_dict | ) |
Create a sensor value from a map.
The map must have the following keys: name, type, value, and unit.
type must one of the following strings: BOOLEAN, INTEGER, REALNUM, or STRING (see data_type_t).
uhd::sensor_value_t::sensor_value_t | ( | const sensor_value_t & | source | ) |
Create a sensor value from another sensor value.
source | the source sensor value to copy |
sensor_value_t& uhd::sensor_value_t::operator= | ( | const sensor_value_t & | value | ) |
Assignment operator for sensor value.
bool uhd::sensor_value_t::to_bool | ( | void | ) | const |
convert the sensor value to a boolean
signed uhd::sensor_value_t::to_int | ( | void | ) | const |
convert the sensor value to an integer
sensor_map_t uhd::sensor_value_t::to_map | ( | void | ) | const |
convert the sensor value to sensor_map_t
std::string uhd::sensor_value_t::to_pp_string | ( | void | ) | const |
Convert this sensor value into a printable string.
double uhd::sensor_value_t::to_real | ( | void | ) | const |
convert the sensor value to real number
std::string uhd::sensor_value_t::name |
The name of the sensor value.
data_type_t uhd::sensor_value_t::type |
The data type of the value.
std::string uhd::sensor_value_t::unit |
The sensor value's unit type. For boolean types, this will be the one of the two units depending upon the value of the boolean true or false.
std::string uhd::sensor_value_t::value |
The sensor value as a string. For integer and real number types, this will be the output of the formatter. For boolean types, the value will be the string literal "true" or "false".