6void MassToString(Mass val,
char* out,
int maxlen) {
8 strncpy(out,
"? kg", maxlen);
11 const char* sign =
"";
13 if (val.inKg() == 0.0f) {
14 snprintf(out, maxlen,
"0 kg");
26 num = val.inKilograms();
32 num = val.inMilligrams();
35 num = val.inMicrograms();
37 snprintf(out, maxlen, format, sign, num);
43#if defined(ESP32) || defined(ESP8266) || defined(__linux__)
45std::string Mass::asString()
const {
47 MassToString(*
this, out, 16);
55String Mass::asArduinoString()
const {
57 MassToString(*
this, out, 16);
65 MassToString(val, out, 16);
Representation of mass, internally stored as floating-point kilograms.
For convenience conversion from roo_time::Duration.
roo_logging::Stream & operator<<(roo_logging::Stream &os, const Area &val)
Mass MassInMilligrams(float mass)
Returns a mass object equivalent to the specified mass expressed in milligrams.
Mass MassInGrams(float mass)
Returns a mass object equivalent to the specified mass expressed in grams.
Mass MassInTons(float mass)
Returns a mass object equivalent to the specified mass expressed in metric tons.
Mass MassInKilograms(float mass)
Returns a mass object equivalent to the specified mass expressed in kilograms.