manager.hpp (77e6fe7ae064915e73760a94ae2c674bc6d3ef8a) | manager.hpp (9fc7912818a9fb62af1b7dfca6bd98a5f5377ea4) |
---|---|
1#pragma once 2 3#include "libpldm/pldm.h" 4 5#include "common/instance_id.hpp" 6#include "common/types.hpp" 7#include "event_manager.hpp" 8#include "platform_manager.hpp" --- 87 unchanged lines hidden (view full) --- 96 97 /** @brief Helper function to stop sensor polling of the terminus TID 98 */ 99 void stopSensorPolling(pldm_tid_t tid) 100 { 101 sensorManager.stopPolling(tid); 102 } 103 | 1#pragma once 2 3#include "libpldm/pldm.h" 4 5#include "common/instance_id.hpp" 6#include "common/types.hpp" 7#include "event_manager.hpp" 8#include "platform_manager.hpp" --- 87 unchanged lines hidden (view full) --- 96 97 /** @brief Helper function to stop sensor polling of the terminus TID 98 */ 99 void stopSensorPolling(pldm_tid_t tid) 100 { 101 sensorManager.stopPolling(tid); 102 } 103 |
104 /** @brief Sensor event handler funtion | 104 /** @brief Sensor event handler function |
105 * 106 * @param[in] request - Event message 107 * @param[in] payloadLength - Event message payload size 108 * @param[in] tid - Terminus ID 109 * @param[in] eventDataOffset - Event data offset 110 * 111 * @return PLDM error code: PLDM_SUCCESS when there is no error in handling 112 * the event 113 */ 114 int handleSensorEvent(const pldm_msg* request, size_t payloadLength, 115 uint8_t /* formatVersion */, uint8_t tid, 116 size_t eventDataOffset) 117 { 118 auto eventData = reinterpret_cast<const uint8_t*>(request->payload) + 119 eventDataOffset; 120 auto eventDataSize = payloadLength - eventDataOffset; | 105 * 106 * @param[in] request - Event message 107 * @param[in] payloadLength - Event message payload size 108 * @param[in] tid - Terminus ID 109 * @param[in] eventDataOffset - Event data offset 110 * 111 * @return PLDM error code: PLDM_SUCCESS when there is no error in handling 112 * the event 113 */ 114 int handleSensorEvent(const pldm_msg* request, size_t payloadLength, 115 uint8_t /* formatVersion */, uint8_t tid, 116 size_t eventDataOffset) 117 { 118 auto eventData = reinterpret_cast<const uint8_t*>(request->payload) + 119 eventDataOffset; 120 auto eventDataSize = payloadLength - eventDataOffset; |
121 eventManager.handlePlatformEvent(tid, 0x00, PLDM_SENSOR_EVENT, 122 eventData, eventDataSize); | 121 eventManager.handlePlatformEvent(tid, PLDM_PLATFORM_EVENT_ID_NULL, 122 PLDM_SENSOR_EVENT, eventData, 123 eventDataSize); |
123 return PLDM_SUCCESS; 124 } 125 | 124 return PLDM_SUCCESS; 125 } 126 |
127 /** @brief CPER event handler function 128 * 129 * @param[in] request - Event message 130 * @param[in] payloadLength - Event message payload size 131 * @param[in] tid - Terminus ID 132 * @param[in] eventDataOffset - Event data offset 133 * 134 * @return PLDM error code: PLDM_SUCCESS when there is no error in handling 135 * the event 136 */ 137 int handleCperEvent(const pldm_msg* request, size_t payloadLength, 138 uint8_t /* formatVersion */, uint8_t tid, 139 size_t eventDataOffset) 140 { 141 auto eventData = 142 const_cast<const uint8_t*>(request->payload) + eventDataOffset; 143 auto eventDataSize = payloadLength - eventDataOffset; 144 eventManager.handlePlatformEvent(tid, PLDM_PLATFORM_EVENT_ID_NULL, 145 PLDM_CPER_EVENT, eventData, 146 eventDataSize); 147 return PLDM_SUCCESS; 148 } 149 |
|
126 private: 127 /** @brief List of discovered termini */ 128 TerminiMapper termini{}; 129 130 /** @brief Terminus interface for calling the hook functions */ 131 TerminusManager terminusManager; 132 133 /** @brief Platform interface for calling the hook functions */ 134 PlatformManager platformManager; 135 136 /** @brief Store platform manager handler */ 137 SensorManager sensorManager; 138 139 /** @brief Store event manager handler */ 140 EventManager eventManager; 141}; 142} // namespace platform_mc 143} // namespace pldm | 150 private: 151 /** @brief List of discovered termini */ 152 TerminiMapper termini{}; 153 154 /** @brief Terminus interface for calling the hook functions */ 155 TerminusManager terminusManager; 156 157 /** @brief Platform interface for calling the hook functions */ 158 PlatformManager platformManager; 159 160 /** @brief Store platform manager handler */ 161 SensorManager sensorManager; 162 163 /** @brief Store event manager handler */ 164 EventManager eventManager; 165}; 166} // namespace platform_mc 167} // namespace pldm |