[PATCH 04/21] rtems: Move internal structures to barrierdata.h

Sebastian Huber sebastian.huber at embedded-brains.de
Thu Nov 8 12:51:57 UTC 2018


Update #3598.
---
 cpukit/headers.am                        |  1 +
 cpukit/include/rtems/confdefs.h          |  1 +
 cpukit/include/rtems/rtems/barrier.h     | 36 +++------------------
 cpukit/include/rtems/rtems/barrierdata.h | 54 ++++++++++++++++++++++++++++++++
 cpukit/include/rtems/rtems/barrierimpl.h | 12 +++----
 5 files changed, 65 insertions(+), 39 deletions(-)
 create mode 100644 cpukit/include/rtems/rtems/barrierdata.h

diff --git a/cpukit/headers.am b/cpukit/headers.am
index 6210ba9153..5656ee5712 100644
--- a/cpukit/headers.am
+++ b/cpukit/headers.am
@@ -228,6 +228,7 @@ include_rtems_rtems_HEADERS += include/rtems/rtems/asrimpl.h
 include_rtems_rtems_HEADERS += include/rtems/rtems/attr.h
 include_rtems_rtems_HEADERS += include/rtems/rtems/attrimpl.h
 include_rtems_rtems_HEADERS += include/rtems/rtems/barrier.h
+include_rtems_rtems_HEADERS += include/rtems/rtems/barrierdata.h
 include_rtems_rtems_HEADERS += include/rtems/rtems/barrierimpl.h
 include_rtems_rtems_HEADERS += include/rtems/rtems/cache.h
 include_rtems_rtems_HEADERS += include/rtems/rtems/clock.h
diff --git a/cpukit/include/rtems/confdefs.h b/cpukit/include/rtems/confdefs.h
index 410a4366a5..f48580963a 100644
--- a/cpukit/include/rtems/confdefs.h
+++ b/cpukit/include/rtems/confdefs.h
@@ -32,6 +32,7 @@
 #include <rtems/score/percpu.h>
 #include <rtems/score/userextimpl.h>
 #include <rtems/score/wkspace.h>
+#include <rtems/rtems/barrierdata.h>
 #include <rtems/rtems/ratemondata.h>
 #include <rtems/posix/key.h>
 #include <rtems/posix/mqueue.h>
diff --git a/cpukit/include/rtems/rtems/barrier.h b/cpukit/include/rtems/rtems/barrier.h
index 2eea90fa41..7422f78931 100644
--- a/cpukit/include/rtems/rtems/barrier.h
+++ b/cpukit/include/rtems/rtems/barrier.h
@@ -1,21 +1,9 @@
 /**
- * @file rtems/rtems/barrier.h
+ * @file
  *
- * @defgroup ClassicBarrier Barriers
- *
- * @ingroup ClassicRTEMS
- * @brief Classic API Barrier Manager
+ * @ingroup ClassicBarrier
  *
- * This include file contains all the constants and structures associated
- * with the Barrier Manager.
- *
- * Directives provided are:
- *
- * - create a barrier
- * - get an ID of a barrier
- * - delete a barrier
- * - wait for a barrier
- * - signal a barrier
+ * @brief Classic Barrier Manager API
  */
 
 /* COPYRIGHT (c) 1989-2008.
@@ -29,11 +17,9 @@
 #ifndef _RTEMS_RTEMS_BARRIER_H
 #define _RTEMS_RTEMS_BARRIER_H
 
-#include <rtems/rtems/types.h>
-#include <rtems/rtems/status.h>
 #include <rtems/rtems/attr.h>
-#include <rtems/score/object.h>
-#include <rtems/score/corebarrier.h>
+#include <rtems/rtems/status.h>
+#include <rtems/rtems/types.h>
 
 #ifdef __cplusplus
 extern "C" {
@@ -49,18 +35,6 @@ extern "C" {
  */
 /**@{*/
 
-/**
- *  This type defines the control block used to manage each barrier.
- */
-typedef struct {
-  /** This is used to manage a barrier as an object. */
-  Objects_Control          Object;
-  /** This is used to implement the barrier. */
-  CORE_barrier_Control     Barrier;
-  /** This is used to specify the attributes of a barrier. */
-  rtems_attribute          attribute_set;
-}   Barrier_Control;
-
 /**
  * @brief RTEMS Create Barrier
  *
diff --git a/cpukit/include/rtems/rtems/barrierdata.h b/cpukit/include/rtems/rtems/barrierdata.h
new file mode 100644
index 0000000000..a19ed88758
--- /dev/null
+++ b/cpukit/include/rtems/rtems/barrierdata.h
@@ -0,0 +1,54 @@
+/**
+ * @file
+ *
+ * @ingroup ClassicBarrierImpl
+ *
+ * @brief Classic Barrier Manager Data Structures
+ */
+
+
+/* COPYRIGHT (c) 1989-2008.
+ * On-Line Applications Research Corporation (OAR).
+ *
+ * The license and distribution terms for this file may be
+ * found in the file LICENSE in this distribution or at
+ * http://www.rtems.org/license/LICENSE.
+ */
+
+#ifndef _RTEMS_RTEMS_BARRIERDATA_H
+#define _RTEMS_RTEMS_BARRIERDATA_H
+
+#include <rtems/rtems/barrier.h>
+#include <rtems/score/object.h>
+#include <rtems/score/corebarrier.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/**
+ * @addtogroup XXX
+ *
+ * @{
+ */
+
+/**
+ *  This type defines the control block used to manage each barrier.
+ */
+typedef struct {
+  /** This is used to manage a barrier as an object. */
+  Objects_Control          Object;
+  /** This is used to implement the barrier. */
+  CORE_barrier_Control     Barrier;
+  /** This is used to specify the attributes of a barrier. */
+  rtems_attribute          attribute_set;
+}   Barrier_Control;
+
+/** @} */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+/*  end of include file */
diff --git a/cpukit/include/rtems/rtems/barrierimpl.h b/cpukit/include/rtems/rtems/barrierimpl.h
index f0b53e0cab..0acef05af3 100644
--- a/cpukit/include/rtems/rtems/barrierimpl.h
+++ b/cpukit/include/rtems/rtems/barrierimpl.h
@@ -1,13 +1,9 @@
 /**
- * @file rtems/rtems/barrier.inl
+ * @file
  *
- * @defgroup ClassicBarrier Barriers
+ * @ingroup ClassicBarrierImpl
  *
- * @ingroup ClassicRTEMS
- * @brief Inline Implementation from Barrier Manager
- *
- * This file contains the static inlin implementation of the inlined
- * routines from the Barrier Manager.
+ * @brief Classic Barrier Manager Implementation
  */
 
 /*
@@ -22,7 +18,7 @@
 #ifndef _RTEMS_RTEMS_BARRIERIMPL_H
 #define _RTEMS_RTEMS_BARRIERIMPL_H
 
-#include <rtems/rtems/barrier.h>
+#include <rtems/rtems/barrierdata.h>
 #include <rtems/score/corebarrierimpl.h>
 #include <rtems/score/objectimpl.h>
 
-- 
2.16.4




More information about the devel mailing list