blob: 255a5a494f781678fe9e782b8856ede1cdcd5ddd [file] [log] [blame]
Rohit PAId87bf7f2025-06-11 08:52:29 +05301#pragma once
2
3#include "MctpRequester.hpp"
4
5#include <NvidiaGpuMctpVdm.hpp>
6#include <sdbusplus/asio/connection.hpp>
7#include <sdbusplus/asio/object_server.hpp>
8
9#include <array>
10#include <memory>
11#include <string>
12
13class Inventory
14{
15 public:
16 enum class DeviceType
17 {
18 Unknown,
19 GPU,
20 };
21
22 Inventory(const std::shared_ptr<sdbusplus::asio::connection>& conn,
23 sdbusplus::asio::object_server& objectServer,
24 const std::string& inventoryName,
25 mctp::MctpRequester& mctpRequester, DeviceType deviceType,
26 uint8_t eid);
27
28 private:
29 std::shared_ptr<sdbusplus::asio::dbus_interface> acceleratorInterface;
30
31 std::string name;
32 mctp::MctpRequester& mctpRequester;
33 DeviceType deviceType;
34 uint8_t eid;
35};