1 #pragma once 2 3 #include <sdbusplus/bus.hpp> 4 #include <util/ffdc_file.hpp> 5 6 #include <string> 7 8 namespace attn 9 { 10 11 /** 12 * Create a dbus method 13 * 14 * Find the dbus service associated with the dbus object path and create 15 * a dbus method for calling the specified dbus interface and function. 16 * 17 * @param i_path - dbus object path 18 * @param i_interface - dbus method interface 19 * @param i_function - dbus interface function 20 * @param o_method - method that is created 21 * @return non-zero if error 22 * 23 **/ 24 int dbusMethod(const std::string& i_path, const std::string& i_interface, 25 const std::string& i_function, sdbusplus::message_t& o_method); 26 27 /** 28 * Create a PEL from raw PEL data 29 * 30 * Create a PEL based on the pel defined in the data buffer specified. 31 * 32 * @param i_buffer - buffer containing a raw PEL 33 */ 34 void createPelRaw(const std::vector<uint8_t>& i_buffer); 35 36 /** 37 * Get file descriptor of exisitng PEL 38 * 39 * The backend logging code will search for a PEL having the provided pel id 40 * and return a file descriptor of a file containing this pel in raw form. 41 * 42 * @param i_pelid - the PEL ID 43 * @return file descriptor or -1 if error 44 */ 45 int getPel(const uint32_t i_pelId); 46 47 } // namespace attn 48