1 #pragma once 2 3 #include <cstdint> 4 #include <tuple> 5 6 namespace openpower 7 { 8 namespace pels 9 { 10 namespace pel_rules 11 { 12 13 /** 14 * @brief Ensure certain PEL fields are in agreement, and fix them if they 15 * aren't. These rules are documented in the README.md in this 16 * directory. 17 * 18 * Note: The message registry schema enforces that there are no undefined 19 * bits set in these fields. 20 * 21 * @param[in] actionFlags - The current Action Flags value 22 * @param[in] eventType - The current Event Type value 23 * @param[in] severity - The current Severity value 24 * 25 * @return std::tuple<actionFlags, eventType> - The corrected values. 26 */ 27 std::tuple<uint16_t, uint8_t> check(uint16_t actionFlags, uint8_t eventType, 28 uint8_t severity); 29 30 } // namespace pel_rules 31 } // namespace pels 32 } // namespace openpower 33