diff options
Diffstat (limited to 'modules/sensors/dynamic_sensor/HidUtils/HidParser.cpp')
-rw-r--r-- | modules/sensors/dynamic_sensor/HidUtils/HidParser.cpp | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/modules/sensors/dynamic_sensor/HidUtils/HidParser.cpp b/modules/sensors/dynamic_sensor/HidUtils/HidParser.cpp index 63210200..264f13c2 100644 --- a/modules/sensors/dynamic_sensor/HidUtils/HidParser.cpp +++ b/modules/sensors/dynamic_sensor/HidUtils/HidParser.cpp @@ -240,23 +240,14 @@ std::vector<HidParser::ReportPacket> HidParser::convertGroupToPacket( auto logical = r.getLogicalRange(); auto physical = r.getPhysicalRange(); - double scale; - if ((physical.first != physical.second) && - (logical.first != logical.second)) { - scale = static_cast<double>(physical.second - physical.first) - / (logical.second - logical.first); - } else { - scale = (physical.first != 0) ? physical.first : 1.0; - } + int64_t offset = physical.first - logical.first; + double scale = static_cast<double>((physical.second - physical.first)) + / (logical.second - logical.first); scale *= r.getExponentValue(); - int64_t offset = - (physical.first * r.getExponentValue() / scale) - - logical.first; ReportItem digest = { .usage = r.getFullUsage(), .id = id, - .usageVector = r.getUsageVector(), .minRaw = logical.first, .maxRaw = logical.second, .a = scale, @@ -325,5 +316,4 @@ std::ostream& operator<<(std::ostream &os, const HidParser::DigestVector &digest os << LOG_ENDL; return os; } - } // namespace HidUtil |