blob: 0103a52940088c609d96023f42389720f37e46d5 [file] [log] [blame]
#pragma once
#include <util/ffdc_file.hpp>
#include <cstddef> // for size_t
#include <map>
#include <string>
#include <vector>
namespace attn
{
/** @brief Logging level types */
enum level
{
INFO
};
/** @brief Logging event types */
enum class EventType
{
Checkstop = 0,
Terminate = 1,
Vital = 2,
HwDiagsFail = 3,
AttentionFail = 4
};
/** @brief Maximum length of a single trace event message */
static const size_t trace_msg_max_len = 255;
/** @brief Create trace message template */
template <level L>
void trace(const char* i_message);
/** @brief Commit checkstop event to log */
void eventCheckstop(std::map<std::string, std::string>& i_errors);
/** @brief Commit special attention TI event to log */
void eventTerminate(std::map<std::string, std::string> i_additionalData,
char* i_tiInfoData);
/** @brief Commit SBE vital event to log */
void eventVital();
/** @brief Commit analyzer failure event to log */
void eventHwDiagsFail(int i_error);
/** @brief Commit attention handler failure event to log */
void eventAttentionFail(int i_error);
} // namespace attn