blob: c743e3ecf6cdcff5f54d873bcadefcb9e85431ad [file] [log] [blame]
Brad Bishop825e31e2017-06-14 16:38:22 -04001#pragma once
2
3#include <string>
4#include <tuple>
5
6namespace phosphor
7{
8namespace fan
9{
10namespace presence
11{
12
13/** @brief PrettyName and inventory path. */
14using Fan = std::tuple<std::string, std::string>;
15
16/**
17 * @brief Update the presence state.
18 *
19 * Update the Present property of the
20 * xyz.openbmc_project.Inventory.Item interface.
21 *
22 * @param[in] fan - The fan to update.
23 * @param[in] newState - The new state of the fan.
24 */
25void setPresence(const Fan& fan, bool newState);
26
27/**
28 * @brief Read the presence state.
29 *
30 * Read the Present property of the
31 * xyz.openbmc_project.Inventory.Item
32 *
33 * @param[in] fan - The fan to read.
34 */
35bool getPresence(const Fan& fan);
36} // namespace presence
37} // namespace fan
38} // namespace phosphor