]> rtime.felk.cvut.cz Git - frescor/fosa.git/commitdiff
FOSA-PaRTiKle implementation
authorbrocalv <brocalv@35b4ef3e-fd22-0410-ab77-dab3279adceb>
Fri, 15 Feb 2008 11:51:51 +0000 (11:51 +0000)
committerbrocalv <brocalv@35b4ef3e-fd22-0410-ab77-dab3279adceb>
Fri, 15 Feb 2008 11:51:51 +0000 (11:51 +0000)
git-svn-id: http://www.frescor.org/private/svn/frescor/fosa/trunk@1020 35b4ef3e-fd22-0410-ab77-dab3279adceb

include/fosa.h
include/fosa_opaque_types.h

index 2a6ad33792eed163055ad6b06db9ca96764f8c78..bcd5e6e7c5d21172c1219631046daa06ee237d2d 100644 (file)
  * defines are:
  *
  *         -DRT_LINUX
+ *         -DPARTIKLE
  *         -DOSE
  *         -DMARTE_OS
  *         -DAQuoSA
+ *         -DPARTIKLE
  *
  * This module contains all other modules that are internal to the
  * FRSH implementation.
index 043ebe4c4ef8e76eca4334a439ab57b21726a4b7..21af0c0298f83661aeae298cf723437d3ea6e658 100644 (file)
@@ -327,6 +327,60 @@ typedef pthread_mutex_t FOSA_MUTEX_T_OPAQUE;
 ////////////////// END of AQuoSA //////////////////////
 
 
+
+/////////////////////////////////// PARTIKLE ///////////////////////////////////////////
+#if defined(PARTIKLE)
+
+#include <pthread.h>
+#include <signal.h>
+#include <time.h>
+#include <sched.h>
+#include <stdlib.h>
+
+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;
+
+typedef pthread_t                   FOSA_THREAD_ID_T_OPAQUE;
+typedef pthread_attr_t              FOSA_THREAD_ATTR_T_OPAQUE;
+typedef int                         FOSA_SIGNAL_T_OPAQUE;
+typedef fosa_ads_actions_internal_t FOSA_ADS_ACTIONS_T_OPAQUE;
+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 void *                      FOSA_LONG_JUMP_CONTEXT_T_OPAQUE;
+
+
+enum _fosa_clocks_e {
+  FOSA_SYSTEM_CLOCK_OPAQUE = CLOCK_MONOTONIC
+};
+
+enum _fosa_signal_limits_e {
+  FOSA_SIGNAL_MIN = SIGRTMIN,
+  FOSA_SIGNAL_MAX = SIGRTMAX,
+};
+
+enum _fosa_errors_e {
+  FOSA_EINVAL = EINVAL,
+  FOSA_EAGAIN = EAGAIN,
+  FOSA_EREJECT = EREJECT,
+  FOSA_EMASKED = EMASKED,
+  FOSA_EPOLICY = EPOLICY, 
+  FOSA_ETIMEDOUT = ETIMEDOUT,
+  FOSA_ENOMEM = ENOMEM,
+};
+
+#endif
+/////////////////////////////////// PARTIKLE  END //////////////////////////////////////
+
+
+
 ////////////////////////// VIRTUAL TIME    //////////////////////////////////////
 #ifdef VIRTUAL_TIME