Added PLDM Dump offload command

Added support to sending the SetNumericEffecterValue
PLDM command to the host to start dump offload.

Signed-off-by: Jayanth Othayoth <ojayanth@in.ibm.com>
Change-Id: I30fe59b198b55ad439a182877c6b21cfd070245b
diff --git a/pldm_interface.hpp b/pldm_interface.hpp
new file mode 100644
index 0000000..fffa682
--- /dev/null
+++ b/pldm_interface.hpp
@@ -0,0 +1,56 @@
+#pragma once
+
+#include <libpldm/pldm.h>
+
+namespace phosphor
+{
+namespace dump
+{
+namespace pldm
+{
+
+/**
+ * PLDMInterface
+ *
+ * Handles sending the SetNumericEffecterValue PLDM
+ * command to the host to start dump offload.
+ *
+ */
+
+/**
+ * @brief Kicks of the SetNumericEffecterValue command to
+ *        start offload the dump
+ *
+ * @param[in] id - The Dump Source ID.
+ *
+ */
+
+void requestOffload(uint32_t id);
+
+/**
+ * @brief Reads the MCTP endpoint ID out of a file
+ */
+mctp_eid_t readEID();
+
+/**
+ * @brief Opens the PLDM file descriptor
+ */
+int open();
+
+/**
+ * @brief Closes the PLDM file descriptor
+ */
+void closeFD(int fd);
+
+/**
+ * @brief Returns the PLDM instance ID to use for PLDM commands
+ *
+ * @param[in] eid - The PLDM EID
+ *
+ * @return uint8_t - The instance ID
+ **/
+uint8_t getPLDMInstanceID(uint8_t eid);
+
+} // namespace pldm
+} // namespace dump
+} // namespace phosphor