blob: e8350f66d805004d28db5cf226caa63e5f421424 [file] [log] [blame]
Deepak Kodihalli35c7fb12016-11-21 04:32:44 -06001#pragma once
2
3#include <climits>
4#include <vector>
Deepak Kodihalli76794492017-02-16 23:48:18 -06005#include <string>
6#include <map>
7#include <sdbusplus/server.hpp>
Deepak Kodihalli35c7fb12016-11-21 04:32:44 -06008
9namespace openpower
10{
11namespace vpd
12{
13
14/** @brief The OpenPOWER VPD, in binary, is specified as a
15 * sequence of characters */
16static_assert((8 == CHAR_BIT), "A byte is not 8 bits!");
17using Byte = uint8_t;
18using Binary = std::vector<Byte>;
19
Deepak Kodihalli76794492017-02-16 23:48:18 -060020namespace inventory
21{
22
23using Path = std::string;
24using Property = std::string;
25using Value = sdbusplus::message::variant<bool, int64_t, std::string>;
26using PropertyMap = std::map<Property, Value>;
27
28using Interface = std::string;
29using InterfaceMap = std::map<Interface, PropertyMap>;
30
31using Object = sdbusplus::message::object_path;
32using ObjectMap = std::map<Object, InterfaceMap>;
33
34using namespace std::string_literals;
Brad Bishop623ec6c2017-02-23 11:39:31 -050035static const auto pimPath = "/xyz/openbmc_project/inventory"s;
Deepak Kodihalli76794492017-02-16 23:48:18 -060036static const auto pimIntf = "xyz.openbmc_project.Inventory.Manager"s;
37
38} // namespace inventory
39
Deepak Kodihalli35c7fb12016-11-21 04:32:44 -060040} // namespace vpd
41} // namespace openpower