]> rtime.felk.cvut.cz Git - frescor/fosa.git/blobdiff - include/fosa_opaque_types.h
AQuoSA: Avoid redefinition of preprocessor symbols if they were defined earlier
[frescor/fosa.git] / include / fosa_opaque_types.h
index 8f05443a3d1cb507f6ea5b10b157cbf21a90130c..6a8be30d55072a3bf8c1dab30866e8537d737148 100644 (file)
@@ -130,7 +130,7 @@ typedef pthread_cond_t FOSA_COND_T_OPAQUE;
 
 /* Local jump */
 /**************/
-#include "marte_non_local_jmp.h"
+#include "misc/marte_non_local_jmp.h"
 
 #define FOSA_LONG_JUMP_CONTEXT_T_OPAQUE  struct { \
   marte_nonlocaljmp_context_t marte_context;      \
@@ -138,11 +138,11 @@ typedef pthread_cond_t FOSA_COND_T_OPAQUE;
 }
 
 
-/* Thread groups */
-/*****************/
-typedef marte_thread_set_t FOSA_THREAD_GROUP_ID_T_OPAQUE;
+/* Group clocks */
+/****************/
+typedef marte_thread_set_t FOSA_THREAD_SET_ID_T_OPAQUE;
 
-#define FOSA_NULL_THREAD_GROUP_ID_OPAQUE 0 /* In MaRTE-OS thread_set_t are
+#define FOSA_NULL_THREAD_SET_ID_OPAQUE 0 /* In MaRTE-OS thread_set_t are
                                      * pointers */
 
 /* FOSA errors */
@@ -167,7 +167,7 @@ typedef marte_thread_set_t FOSA_THREAD_GROUP_ID_T_OPAQUE;
 
 #define FOSA_ETIMEDOUT ETIMEDOUT
 
-/* Not found in search (non existing thread, thread_group...) */
+/* Not found in search (non existing thread, thread_set...) */
 #define FOSA_ESRCH   ESRCH
 #define FOSA_ENOTSUP ENOTSUP
 
@@ -217,7 +217,7 @@ typedef pthread_mutex_t FOSA_MUTEX_T_OPAQUE;
 
 /* Thread groups */
 /*****************/
-typedef int FOSA_THREAD_GROUP_ID_T_OPAQUE
+typedef int FOSA_THREAD_SET_ID_T_OPAQUE
 
 /* FOSA Errors */
 /***************/
@@ -259,18 +259,24 @@ typedef int FOSA_THREAD_GROUP_ID_T_OPAQUE
 #include <unistd.h>
 #include <linux/unistd.h>
 
+#ifndef _XOPEN_SOURCE
 #define _XOPEN_SOURCE 500
+#endif
+#ifndef __USE_UNIX98
 #define __USE_UNIX98
+#endif
 #include <pthread.h>
 
 #include <signal.h>
+#include <setjmp.h>
 #include <errno.h>
 #include <time.h>
 
-/* Time */
-/********/
-// typedef struct timespec fosa_rel_time_t;
-// typedef struct timespec fosa_abs_time_t;
+FOSA_CPP_BEGIN_DECLS
+
+/* Local Jump */
+/**************/
+typedef sigjmp_buf FOSA_LONG_JUMP_CONTEXT_T_OPAQUE;
 
 
 /* Threads and signals */
@@ -296,7 +302,7 @@ typedef int FOSA_SIGNAL_T_OPAQUE;
 
 /* Thread groups */
 /*****************/
-typedef int FOSA_THREAD_GROUP_ID_T_OPAQUE;
+typedef int FOSA_THREAD_SET_ID_T_OPAQUE;
 
 /* Clocks and signals */
 /**********************/
@@ -317,7 +323,6 @@ typedef pthread_mutex_t FOSA_MUTEX_T_OPAQUE;
 /* hack to get AQuoSA sources compile without having none
  * of the application level scheduler header files and symbols */
 #define posix_appsched_actions_t int
-#define FOSA_LONG_JUMP_CONTEXT_T_OPAQUE int
 
 #define FOSA_ADS_ACTIONS_T_OPAQUE posix_appsched_actions_t
 
@@ -345,7 +350,7 @@ typedef pthread_mutex_t FOSA_MUTEX_T_OPAQUE;
 
 
 
-/////////////////////////////////// PARTIKLE ///////////////////////////////////////////
+///////////////////////////////// PARTIKLE /////////////////////////////////////
 #if defined(PARTIKLE)
 
 #include <pthread.h>
@@ -365,7 +370,6 @@ typedef struct {
     bool activated;
 } FOSA_ADS_ACTIONS_T_OPAQUE;
 
-typedef unsigned long FOSA_LONG_JUMP_CONTEXT_T_OPAQUE [32];
 
 typedef pthread_t                   FOSA_THREAD_ID_T_OPAQUE;
 typedef pthread_attr_t              FOSA_THREAD_ATTR_T_OPAQUE;
@@ -374,8 +378,10 @@ typedef clockid_t                   FOSA_CLOCK_ID_T_OPAQUE;
 typedef timer_t                     FOSA_TIMER_ID_T_OPAQUE;
 typedef pthread_cond_t              FOSA_COND_T_OPAQUE;
 typedef pthread_mutex_t             FOSA_MUTEX_T_OPAQUE;
+typedef unsigned long              FOSA_LONG_JUMP_CONTEXT_T_OPAQUE [32];
+typedef group_clock_t              FOSA_THREAD_SET_ID_T_OPAQUE;
 
-
+#define FOSA_NULL_THREAD_SET_ID_OPAQUE 0x0;
 
 enum _fosa_clocks_e {
   FOSA_SYSTEM_CLOCK_OPAQUE = CLOCK_MONOTONIC
@@ -390,7 +396,8 @@ enum _fosa_clocks_e {
 enum _fosa_signal_limits_e {
   LONGJMP_FIRSTSIG = SIGRTMAX - LONGJMP_NSIG + 1,
   FOSA_SIGNAL_MAX = LONGJMP_FIRSTSIG - 1,
-  FOSA_SIGNAL_MIN = FOSA_SIGNAL_MAX,
+  FOSA_SIGNAL_MIN = SIGRTMIN,
+  FOSA_NULL_SIGNAL = -1,
 };
 
 
@@ -405,10 +412,8 @@ enum _fosa_errors_e {
 };
 
 
-
-
 #endif
-/////////////////////////////////// PARTIKLE  END //////////////////////////////////////
+/////////////////////////////// PARTIKLE  END //////////////////////////////////