#include <stdbool.h>
#include "fosa_cpp_macros.h"
+#include "fosa_opaque_types_time.h"
/////////////////////// MARTE_OS /////////////////////////////
FOSA_CPP_BEGIN_DECLS
-/* Time */
-/********/
-// typedef struct timespec fosa_rel_time_t;
-// typedef struct timespec fosa_abs_time_t;
/* Thread and signals */
/**********************/
/* Application defined Scheduling */
/**********************************/
-typedef struct {
- posix_appsched_actions_t actions;
- struct timespec *timeout_ptr;
- struct timespec timeout;
- bool rejected;
- bool suspended;
- bool activated;
-} fosa_ads_actions_internal_t;
+#define FOSA_ADS_ACTIONS_T_OPAQUE struct \
+{ \
+ posix_appsched_actions_t actions; \
+ struct timespec *timeout_ptr; \
+ struct timespec timeout; \
+ bool rejected; \
+ bool suspended; \
+ bool activated; \
+}
-#define FOSA_ADS_ACTIONS_T_OPAQUE fosa_ads_actions_internal_t
/* Local jump */
/**************/
#include <errno.h>
#include <rtl_timer.h>
-/* Time */
-/********/
-// typedef struct timespec fosa_rel_time_t;
-// typedef struct timespec fosa_abs_time_t;
-
/* Threads and signals */
/***********************/
#ifdef OSE
-/* Time */
-/********/
-// typedef struct timespec fosa_rel_time_t;
-// typedef struct timespec fosa_abs_time_t;
/* Put OSE dependent includes and defines here */
#ifdef AQuoSA
-#define __USE_UNIX98
+#include <unistd.h>
+#include <linux/unistd.h>
+#define _XOPEN_SOURCE 500
+#define __USE_UNIX98
#include <pthread.h>
+
#include <signal.h>
#include <errno.h>
#include <time.h>
};
enum _fosa_signal_limits_e {
- FOSA_SIGNAL_MIN = SIGRTMIN,
- FOSA_SIGNAL_MAX = SIGRTMIN + 0,
+ LONGJMP_NSIG = 3,
+ LONGJMP_FIRSTSIG = SIGRTMAX - LONGJMP_NSIG + 1,
+ FOSA_SIGNAL_MAX = LONGJMP_FIRSTSIG - 1,
+ FOSA_SIGNAL_MIN = FOSA_SIGNAL_MAX,
};
enum _fosa_errors_e {