1*580423feSLawrence Tang #ifndef CPER_SECTION_H 2*580423feSLawrence Tang #define CPER_SECTION_H 3*580423feSLawrence Tang 4*580423feSLawrence Tang #include <json.h> 5*580423feSLawrence Tang #include <stdio.h> 6*580423feSLawrence Tang #include <stdlib.h> 7*580423feSLawrence Tang #include "../edk/Cper.h" 8*580423feSLawrence Tang 9*580423feSLawrence Tang //Definition structure for a single CPER section type. 10*580423feSLawrence Tang typedef struct { 11*580423feSLawrence Tang EFI_GUID* Guid; 12*580423feSLawrence Tang const char* ReadableName; 13*580423feSLawrence Tang json_object* (*ToIR)(void*, EFI_ERROR_SECTION_DESCRIPTOR*); 14*580423feSLawrence Tang void (*ToCPER)(json_object*, FILE*); 15*580423feSLawrence Tang } CPER_SECTION_DEFINITION; 16*580423feSLawrence Tang 17*580423feSLawrence Tang extern CPER_SECTION_DEFINITION section_definitions[]; 18*580423feSLawrence Tang extern const size_t section_definitions_len; 19*580423feSLawrence Tang 20*580423feSLawrence Tang #endif