1 #ifndef CPER_SECTION_H 2 #define CPER_SECTION_H 3 4 #ifdef __cplusplus 5 extern "C" { 6 #endif 7 8 #include <json.h> 9 #include <stdio.h> 10 #include <stdlib.h> 11 #include <libcper/Cper.h> 12 13 //Definition structure for a single CPER section type. 14 typedef struct { 15 EFI_GUID *Guid; 16 const char *ReadableName; 17 const char *ShortName; 18 json_object *(*ToIR)(const UINT8 *, UINT32); 19 void (*ToCPER)(json_object *, FILE *); 20 } CPER_SECTION_DEFINITION; 21 22 extern CPER_SECTION_DEFINITION section_definitions[]; 23 extern const size_t section_definitions_len; 24 25 CPER_SECTION_DEFINITION *select_section_by_guid(EFI_GUID *guid); 26 27 #ifdef __cplusplus 28 } 29 #endif 30 31 #endif 32