blob: 462a4ac019bc1b8a7343eab9de51af7fa3548cfb [file] [log] [blame]
Gunnar Millsd8249ee2018-04-12 16:33:53 -05001#pragma once
Patrick Venture26f80ab2018-08-31 12:00:50 -07002
3#include <map>
Gunnar Millsd8249ee2018-04-12 16:33:53 -05004#include <string>
5#include <vector>
6
7namespace ipmi
8{
9namespace fru
10{
11using FruAreaData = std::vector<uint8_t>;
12using Section = std::string;
13using Value = std::string;
14using Property = std::string;
15using PropertyMap = std::map<Property, Value>;
16using FruInventoryData = std::map<Section, PropertyMap>;
17
18/**
19 * @brief Builds Fru area data from inventory data
20 *
21 * @param[in] invData FRU properties values read from inventory
22 *
23 * @return FruAreaData FRU area data as per IPMI specification
24 */
25FruAreaData buildFruAreaData(const FruInventoryData& inventory);
26
Patrick Venture0b02be92018-08-31 11:55:55 -070027} // namespace fru
28} // namespace ipmi