代码拉取完成,页面将自动刷新
#pragma once
#include "config.h"
#include "xyz/openbmc_project/Logging/ErrorBlocksTransition/server.hpp"
#include <sdbusplus/bus.hpp>
#include <sdbusplus/server/object.hpp>
#include <xyz/openbmc_project/Association/Definitions/server.hpp>
namespace phosphor
{
namespace logging
{
using BlockIface = sdbusplus::server::object_t<
sdbusplus::server::xyz::openbmc_project::logging::ErrorBlocksTransition,
sdbusplus::server::xyz::openbmc_project::association::Definitions>;
using AssociationList =
std::vector<std::tuple<std::string, std::string, std::string>>;
/** @class Block
* @brief OpenBMC logging Block implementation.
* @details A concrete implementation for the
* xyz.openbmc_project.Logging.ErrorBlocksTransition DBus API
*/
class Block : public BlockIface
{
public:
Block() = delete;
Block(const Block&) = delete;
Block& operator=(const Block&) = delete;
Block(Block&&) = delete;
Block& operator=(Block&&) = delete;
virtual ~Block() = default;
/** @brief Constructor to put object onto bus at a dbus path.
* @param[in] bus - Bus to attach to.
* @param[in] path - Path to attach at.
* @param[in] entryId - Distinct ID of the error.
*/
Block(sdbusplus::bus_t& bus, const std::string& path, uint32_t entryId) :
BlockIface(bus, path.c_str()), entryId(entryId)
{
std::string entryPath{std::string(OBJ_ENTRY) + '/' +
std::to_string(entryId)};
AssociationList assoc{std::make_tuple(std::string{"blocking_error"},
std::string{"blocking_obj"},
entryPath)};
associations(std::move(assoc));
};
uint32_t entryId;
private:
};
} // namespace logging
} // namespace phosphor
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。