1188f1096SBen Tyner #pragma once 2188f1096SBen Tyner 3188f1096SBen Tyner #include <sdbusplus/bus.hpp> 4188f1096SBen Tyner #include <util/ffdc_file.hpp> 5188f1096SBen Tyner 6188f1096SBen Tyner #include <string> 7188f1096SBen Tyner 8188f1096SBen Tyner namespace attn 9188f1096SBen Tyner { 10188f1096SBen Tyner 11188f1096SBen Tyner /** 125c5db65aSBen Tyner * Create a dbus method 135c5db65aSBen Tyner * 145c5db65aSBen Tyner * Find the dbus service associated with the dbus object path and create 155c5db65aSBen Tyner * a dbus method for calling the specified dbus interface and function. 165c5db65aSBen Tyner * 175c5db65aSBen Tyner * @param i_path - dbus object path 185c5db65aSBen Tyner * @param i_interface - dbus method interface 195c5db65aSBen Tyner * @param i_function - dbus interface function 205c5db65aSBen Tyner * @param o_method - method that is created 215c5db65aSBen Tyner * @return non-zero if error 225c5db65aSBen Tyner * 235c5db65aSBen Tyner **/ 245c5db65aSBen Tyner int dbusMethod(const std::string& i_path, const std::string& i_interface, 25*e212fb06SPatrick Williams const std::string& i_function, sdbusplus::message_t& o_method); 265c5db65aSBen Tyner 275c5db65aSBen Tyner /** 28188f1096SBen Tyner * Create a PEL from raw PEL data 29188f1096SBen Tyner * 30188f1096SBen Tyner * Create a PEL based on the pel defined in the data buffer specified. 31188f1096SBen Tyner * 32188f1096SBen Tyner * @param i_buffer - buffer containing a raw PEL 33188f1096SBen Tyner */ 34188f1096SBen Tyner void createPelRaw(const std::vector<uint8_t>& i_buffer); 35188f1096SBen Tyner 36188f1096SBen Tyner /** 37188f1096SBen Tyner * Get file descriptor of exisitng PEL 38188f1096SBen Tyner * 39188f1096SBen Tyner * The backend logging code will search for a PEL having the provided pel id 40188f1096SBen Tyner * and return a file descriptor of a file containing this pel in raw form. 41188f1096SBen Tyner * 42188f1096SBen Tyner * @param i_pelid - the PEL ID 43188f1096SBen Tyner * @return file descriptor or -1 if error 44188f1096SBen Tyner */ 45188f1096SBen Tyner int getPel(const uint32_t i_pelId); 46188f1096SBen Tyner 47188f1096SBen Tyner } // namespace attn 48