18 #ifdef POK_NEEDS_ARINC653_ERROR
22 #ifndef POK_NEEDS_ARINC653_PROCESS
23 #define POK_NEEDS_ARINC653_PROCESS 1
26 #include <arinc653/process.h>
28 #include <arinc653/types.h>
30 #define MAX_ERROR_MESSAGE_SIZE 64
32 typedef APEX_INTEGER ERROR_MESSAGE_SIZE_TYPE;
34 typedef APEX_BYTE ERROR_MESSAGE_TYPE[MAX_ERROR_MESSAGE_SIZE];
36 enum ERROR_CODE_VALUE_TYPE {
38 APPLICATION_ERROR = 1,
47 typedef enum ERROR_CODE_VALUE_TYPE ERROR_CODE_TYPE;
52 ERROR_CODE_TYPE ERROR_CODE;
53 MESSAGE_SIZE_TYPE LENGTH;
54 PROCESS_ID_TYPE FAILED_PROCESS_ID;
55 SYSTEM_ADDRESS_TYPE FAILED_ADDRESS;
56 ERROR_MESSAGE_TYPE MESSAGE;
66 extern void REPORT_APPLICATION_MESSAGE (MESSAGE_ADDR_TYPE MESSAGE,
67 MESSAGE_SIZE_TYPE LENGTH,
68 RETURN_CODE_TYPE *RETURN_CODE);
70 extern void CREATE_ERROR_HANDLER (SYSTEM_ADDRESS_TYPE ENTRY_POINT,
71 STACK_SIZE_TYPE STACK_SIZE,
72 RETURN_CODE_TYPE *RETURN_CODE);
75 RETURN_CODE_TYPE *RETURN_CODE );
77 extern void RAISE_APPLICATION_ERROR (ERROR_CODE_TYPE ERROR_CODE,
78 MESSAGE_ADDR_TYPE MESSAGE,
79 ERROR_MESSAGE_SIZE_TYPE LENGTH,
80 RETURN_CODE_TYPE *RETURN_CODE);