18 #ifdef POK_NEEDS_ARINC653_SAMPLING
20 #include <arinc653/types.h>
31 #define MAX_NUMBER_OF_SAMPLING_PORTS SYSTEM_LIMIT_NUMBER_OF_SAMPLING_PORTS
33 typedef NAME_TYPE SAMPLING_PORT_NAME_TYPE;
35 typedef APEX_INTEGER SAMPLING_PORT_ID_TYPE;
37 typedef enum { INVALID = 0, VALID = 1 } VALIDITY_TYPE;
41 SYSTEM_TIME_TYPE REFRESH_PERIOD;
42 MESSAGE_SIZE_TYPE MAX_MESSAGE_SIZE;
43 PORT_DIRECTION_TYPE PORT_DIRECTION;
44 VALIDITY_TYPE LAST_MSG_VALIDITY;
47 extern void CREATE_SAMPLING_PORT (
48 SAMPLING_PORT_NAME_TYPE SAMPLING_PORT_NAME,
49 MESSAGE_SIZE_TYPE MAX_MESSAGE_SIZE,
50 PORT_DIRECTION_TYPE PORT_DIRECTION,
51 SYSTEM_TIME_TYPE REFRESH_PERIOD,
52 SAMPLING_PORT_ID_TYPE *SAMPLING_PORT_ID,
53 RETURN_CODE_TYPE *RETURN_CODE );
55 extern void WRITE_SAMPLING_MESSAGE (
56 SAMPLING_PORT_ID_TYPE SAMPLING_PORT_ID,
57 MESSAGE_ADDR_TYPE MESSAGE_ADDR,
58 MESSAGE_SIZE_TYPE LENGTH,
59 RETURN_CODE_TYPE *RETURN_CODE );
61 extern void READ_SAMPLING_MESSAGE (
62 SAMPLING_PORT_ID_TYPE SAMPLING_PORT_ID,
63 MESSAGE_ADDR_TYPE MESSAGE_ADDR,
64 MESSAGE_SIZE_TYPE *LENGTH,
65 VALIDITY_TYPE *VALIDITY,
66 RETURN_CODE_TYPE *RETURN_CODE );
68 extern void GET_SAMPLING_PORT_ID (
69 SAMPLING_PORT_NAME_TYPE SAMPLING_PORT_NAME,
70 SAMPLING_PORT_ID_TYPE *SAMPLING_PORT_ID,
71 RETURN_CODE_TYPE *RETURN_CODE );
73 extern void GET_SAMPLING_PORT_STATUS (
74 SAMPLING_PORT_ID_TYPE SAMPLING_PORT_ID,
76 RETURN_CODE_TYPE *RETURN_CODE );