]> rtime.felk.cvut.cz Git - frescor/fosa.git/blobdiff - include/fosa_opaque_types.h
Finished API phase II transition and fixed make system for AQuoSA.
[frescor/fosa.git] / include / fosa_opaque_types.h
index a658d5e2e88dad89ec5432efb22e696775b5b86f..f5420dbd57cac1ef83a163bc08faf62b59092b4c 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 */
 /***************/
@@ -264,13 +264,13 @@ typedef int FOSA_THREAD_GROUP_ID_T_OPAQUE
 #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;
+/* Local Jump */
+/**************/
+typedef sigjmp_buf FOSA_LONG_JUMP_CONTEXT_T_OPAQUE;
 
 
 /* Threads and signals */
@@ -294,6 +294,10 @@ typedef int FOSA_SIGNAL_T_OPAQUE;
 #define FOSA_NULL_SIGNAL 0
 
 
+/* Thread groups */
+/*****************/
+typedef int FOSA_THREAD_SET_ID_T_OPAQUE;
+
 /* Clocks and signals */
 /**********************/
 #define    FOSA_CLOCK_ID_T_OPAQUE    clockid_t
@@ -313,7 +317,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
 
@@ -341,7 +344,7 @@ typedef pthread_mutex_t FOSA_MUTEX_T_OPAQUE;
 
 
 
-/////////////////////////////////// PARTIKLE ///////////////////////////////////////////
+///////////////////////////////// PARTIKLE /////////////////////////////////////
 #if defined(PARTIKLE)
 
 #include <pthread.h>
@@ -361,7 +364,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;
@@ -370,8 +372,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
@@ -386,7 +390,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,
 };
 
 
@@ -401,10 +406,8 @@ enum _fosa_errors_e {
 };
 
 
-
-
 #endif
-/////////////////////////////////// PARTIKLE  END //////////////////////////////////////
+/////////////////////////////// PARTIKLE  END //////////////////////////////////