]> rtime.felk.cvut.cz Git - can-benchmark.git/blobdiff - rtems/gw/cangw/app_def.h
Initial commit of simple (just forwarding from CAN0 to CAN1 and back) CAN gateway...
[can-benchmark.git] / rtems / gw / cangw / app_def.h
diff --git a/rtems/gw/cangw/app_def.h b/rtems/gw/cangw/app_def.h
new file mode 100644 (file)
index 0000000..c2f13eb
--- /dev/null
@@ -0,0 +1,40 @@
+#ifndef _APP_DEF_H
+#define _APP_DEF_H
+
+#ifndef COND_EXTERN
+  #ifdef CONFIGURE_INIT
+    #define COND_EXTERN
+  #else
+    #define COND_EXTERN extern
+  #endif
+#endif
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+COND_EXTERN rtems_id   CAN_A_to_B_id;           /* task listening on A, sends through B */\r
+COND_EXTERN rtems_id   CAN_B_to_A_id;           /* task listening on B, sends through A */\r
+COND_EXTERN rtems_name CAN_A_to_B_name;         /* First task's name */
+COND_EXTERN rtems_name CAN_B_to_A_name;         /* Seconds task's name */\r
+
+rtems_task CAN_GW_1(rtems_task_argument arg);\r
+rtems_task CAN_GW_2(rtems_task_argument arg);
+
+void bad_rtems_status(rtems_status_code status, int fail_level, const char *text);
+
+static inline
+void check_rtems_status(rtems_status_code status, int fail_level, const char *text)
+{
+   if(!rtems_is_status_successful(status))
+     bad_rtems_status(status, fail_level, text);
+}
+
+#define CANGW_PRIORITY     30
+#define SHELL_TASK_PRIORITY 50
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /*_APP_DEF_H*/