1 #pragma once 2 3 #include <map> 4 #include <string> 5 #include <vector> 6 7 namespace ipmi 8 { 9 namespace fru 10 { 11 using FruAreaData = std::vector<uint8_t>; 12 using Section = std::string; 13 using Value = std::string; 14 using Property = std::string; 15 using PropertyMap = std::map<Property, Value>; 16 using 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 */ 25 FruAreaData buildFruAreaData(const FruInventoryData& inventory); 26 27 } // namespace fru 28 } // namespace ipmi 29