Added fix for the yocto rebase build failure

Fixed below errors found during yocto rebase due to missing header
file algorithm.

```
calculate.cpp:
  error: 'sort' is not a member of 'std'; did you mean 'qsort'?
  error: 'max_element' is not a member of 'std'; did you mean 'tuple_element'?
  error: 'min_element' is not a member of 'std'; did you mean 'tuple_element'?
```

Tested: Build verified with yocto rebase patches.

Change-Id: Ie6f920e20a8ddb4b953b246b0debc4be87fa2462
Signed-off-by: Jayanth Othayoth <ojayanth@gmail.com>
1 file changed
tree: 301bb486e2e3970554174ff31e7ccfb02c4e62a3
  1. subprojects/
  2. test/
  3. .clang-format
  4. .editorconfig
  5. .gitignore
  6. .prettierrc.yaml
  7. calculate.cpp
  8. calculate.hpp
  9. dbusSensor.cpp
  10. dbusSensor.hpp
  11. dbusUtils.cpp
  12. dbusUtils.hpp
  13. exprtkTools.hpp
  14. LICENSE
  15. meson.build
  16. meson.options
  17. OWNERS
  18. phosphor-virtual-sensor.service.in
  19. README.md
  20. thresholds.hpp
  21. virtual_sensor_config.json
  22. virtualSensor.cpp
  23. virtualSensor.hpp
README.md

phosphor-virtual-sensor

phosphor-virtual-sensor reads the configuration file virtual_sensor_config.json from one of three locations:

  1. The current directory.
  2. /var/lib/phosphor-virtual-sensor
  3. /usr/share/phosphor-virtual-sensor

By default the repository will install a sample config into (3).

There are two types of data in this file.

virtual sensor configuration information

See virtual_sensor_config.json in this repository for an example. Sensors added this way can use any expression that is accepted by exprtk.

information to get a virtual sensor configuration from D-Bus

For example:

{
  "Desc": {
    "Config": "D-Bus",
    "Type": "ModifiedMedian"
  }
}

Sensors added this way can only use a set of restricted calculations. Currently the only type supported is modifiedMedian.

The virtual sensor configuration information needs to be added into the relevant hardware configuration file in entity-manager. This method of adding a virtual sensor allows a recipe that builds for different hardware configurations to have different virtual sensors for each configuration.

The virtual sensor configuration in entity manager follows a different format to the JSON in virtual_sensor_config.json (specified in entity-manager/schemas/VirtualSensor.json).