blob: 2dfa1f5080e7aa2f0f1634c64fd3a2b6414a6d7f [file] [log] [blame]
Deepak Kodihallic6e8fb52019-05-02 08:35:31 -05001#pragma once
2
3#include <stdint.h>
4
Deepak Kodihallid0782962019-05-07 16:36:47 +05305#include <string>
6#include <vector>
7
Deepak Kodihallic6e8fb52019-05-02 08:35:31 -05008namespace pldm
9{
10
11namespace responder
12{
13
14namespace effecter
15{
16
17using Id = uint16_t;
18
19/** @brief Get next available id to assign to an effecter
20 *
21 * @return uint16_t - effecter id
22 */
23Id nextId();
24
Deepak Kodihallid0782962019-05-07 16:36:47 +053025namespace dbus_mapping
26{
27using Paths = std::vector<std::string>;
28
29/** @brief Add an effecter id -> D-Bus objects mapping
30 *
31 * @param[in] id - effecter id
32 * @param[in] paths - list of D-Bus object paths
33 */
34void add(Id id, Paths&& paths);
35
36/** @brief Retrieve an effecter id -> D-Bus objects mapping
37 *
38 * @param[in] id - effecter id
39 *
40 * @return Paths - list of D-Bus object paths
41 */
42Paths get(Id id);
43} // namespace dbus_mapping
44
Deepak Kodihallic6e8fb52019-05-02 08:35:31 -050045} // namespace effecter
46} // namespace responder
47} // namespace pldm