summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2013-07-28 13:49:28 +0200
committerSebastian Huber <sebastian.huber@embedded-brains.de>2013-07-28 14:00:19 +0200
commit0a10eb30c2bb599c4587bafc5e7f10e098c8dd71 (patch)
treed82beec139aa2f31ba7de46a78d1928268eb8ce4
parenttestsuites: Include missing header files (diff)
downloadrtems-0a10eb30c2bb599c4587bafc5e7f10e098c8dd71.tar.bz2
score: Move object MP content to public API
-rw-r--r--cpukit/score/include/rtems/score/object.h16
-rw-r--r--cpukit/score/include/rtems/score/objectmp.h18
2 files changed, 20 insertions, 14 deletions
diff --git a/cpukit/score/include/rtems/score/object.h b/cpukit/score/include/rtems/score/object.h
index f06342facb..b231039c6a 100644
--- a/cpukit/score/include/rtems/score/object.h
+++ b/cpukit/score/include/rtems/score/object.h
@@ -233,6 +233,22 @@ typedef struct {
Objects_Name name;
} Objects_Control;
+#if defined( RTEMS_MULTIPROCESSING )
+/**
+ * This defines the Global Object Control Block used to manage
+ * objects resident on other nodes. It is derived from Object.
+ */
+typedef struct {
+ /** This is an object control structure. */
+ Objects_Control Object;
+ /** This is the name of the object. Using an unsigned thirty two
+ * bit value is broken but works. If any API is MP with variable
+ * length names .. BOOM!!!!
+ */
+ uint32_t name;
+} Objects_MP_Control;
+#endif
+
/**
* No object can have this ID.
*/
diff --git a/cpukit/score/include/rtems/score/objectmp.h b/cpukit/score/include/rtems/score/objectmp.h
index 654d7aa66e..e069f82cbf 100644
--- a/cpukit/score/include/rtems/score/objectmp.h
+++ b/cpukit/score/include/rtems/score/objectmp.h
@@ -19,6 +19,10 @@
#ifndef _RTEMS_SCORE_OBJECTMP_H
#define _RTEMS_SCORE_OBJECTMP_H
+#ifndef _RTEMS_SCORE_OBJECTIMPL_H
+# error "Never use <rtems/rtems/objectmp.h> directly; include <rtems/rtems/objectimpl.h> instead."
+#endif
+
#include <rtems/score/chainimpl.h>
#ifdef __cplusplus
@@ -37,20 +41,6 @@ extern "C" {
/**@{*/
/**
- * This defines the Global Object Control Block used to manage
- * objects resident on other nodes. It is derived from Object.
- */
-typedef struct {
- /** This is an object control structure. */
- Objects_Control Object;
- /** This is the name of the object. Using an unsigned thirty two
- * bit value is broken but works. If any API is MP with variable
- * length names .. BOOM!!!!
- */
- uint32_t name;
-} Objects_MP_Control;
-
-/**
* @brief Intializes the inactive global object chain
* based on the maximum number of global objects configured.
*