From a6e7d5e492fd5e4c361d4d9aa13eb0eb951b386a Mon Sep 17 00:00:00 2001 From: Sebastian Huber Date: Mon, 12 Nov 2018 09:00:36 +0100 Subject: score: Move internal structures to objectdata.h Update #3598. --- cpukit/headers.am | 1 + cpukit/include/rtems/extensiondata.h | 2 +- cpukit/include/rtems/posix/mqueue.h | 2 +- cpukit/include/rtems/posix/semaphore.h | 2 +- cpukit/include/rtems/posix/shm.h | 2 +- cpukit/include/rtems/posix/timer.h | 2 +- cpukit/include/rtems/rtems/barrierdata.h | 2 +- cpukit/include/rtems/rtems/dpmemdata.h | 2 +- cpukit/include/rtems/rtems/messagedata.h | 2 +- cpukit/include/rtems/rtems/partdata.h | 2 +- cpukit/include/rtems/rtems/regiondata.h | 2 +- cpukit/include/rtems/rtems/timerdata.h | 2 +- cpukit/include/rtems/score/object.h | 58 ------------------- cpukit/include/rtems/score/objectdata.h | 98 ++++++++++++++++++++++++++++++++ cpukit/include/rtems/score/objectimpl.h | 2 +- cpukit/include/rtems/score/thread.h | 2 +- 16 files changed, 112 insertions(+), 71 deletions(-) create mode 100644 cpukit/include/rtems/score/objectdata.h diff --git a/cpukit/headers.am b/cpukit/headers.am index fa51f8dcee..a3183496be 100644 --- a/cpukit/headers.am +++ b/cpukit/headers.am @@ -330,6 +330,7 @@ include_rtems_score_HEADERS += include/rtems/score/mrsp.h include_rtems_score_HEADERS += include/rtems/score/mrspimpl.h include_rtems_score_HEADERS += include/rtems/score/muteximpl.h include_rtems_score_HEADERS += include/rtems/score/object.h +include_rtems_score_HEADERS += include/rtems/score/objectdata.h include_rtems_score_HEADERS += include/rtems/score/objectimpl.h include_rtems_score_HEADERS += include/rtems/score/objectmp.h include_rtems_score_HEADERS += include/rtems/score/onceimpl.h diff --git a/cpukit/include/rtems/extensiondata.h b/cpukit/include/rtems/extensiondata.h index ba32a2b319..4c3be8a5a2 100644 --- a/cpukit/include/rtems/extensiondata.h +++ b/cpukit/include/rtems/extensiondata.h @@ -19,7 +19,7 @@ #define _RTEMS_EXTENSIONDATA_H #include -#include +#include #ifdef __cplusplus extern "C" { diff --git a/cpukit/include/rtems/posix/mqueue.h b/cpukit/include/rtems/posix/mqueue.h index 6211c68783..bec82ee3d9 100644 --- a/cpukit/include/rtems/posix/mqueue.h +++ b/cpukit/include/rtems/posix/mqueue.h @@ -34,7 +34,7 @@ #include #include /* struct mq_attr */ #include -#include +#include #ifdef __cplusplus extern "C" { diff --git a/cpukit/include/rtems/posix/semaphore.h b/cpukit/include/rtems/posix/semaphore.h index 734d8bb84b..16b6d711cc 100644 --- a/cpukit/include/rtems/posix/semaphore.h +++ b/cpukit/include/rtems/posix/semaphore.h @@ -20,7 +20,7 @@ #define _RTEMS_POSIX_SEMAPHORE_H #include -#include +#include #ifdef __cplusplus extern "C" { diff --git a/cpukit/include/rtems/posix/shm.h b/cpukit/include/rtems/posix/shm.h index 310af6692b..ae0416e1fe 100644 --- a/cpukit/include/rtems/posix/shm.h +++ b/cpukit/include/rtems/posix/shm.h @@ -15,7 +15,7 @@ #ifndef _RTEMS_POSIX_SHM_H #define _RTEMS_POSIX_SHM_H -#include +#include #include #include diff --git a/cpukit/include/rtems/posix/timer.h b/cpukit/include/rtems/posix/timer.h index 52732af991..2cbc56e873 100644 --- a/cpukit/include/rtems/posix/timer.h +++ b/cpukit/include/rtems/posix/timer.h @@ -19,7 +19,7 @@ #ifndef _RTEMS_POSIX_TIMER_H #define _RTEMS_POSIX_TIMER_H -#include +#include #include #include diff --git a/cpukit/include/rtems/rtems/barrierdata.h b/cpukit/include/rtems/rtems/barrierdata.h index a19ed88758..12b2eab2d8 100644 --- a/cpukit/include/rtems/rtems/barrierdata.h +++ b/cpukit/include/rtems/rtems/barrierdata.h @@ -19,7 +19,7 @@ #define _RTEMS_RTEMS_BARRIERDATA_H #include -#include +#include #include #ifdef __cplusplus diff --git a/cpukit/include/rtems/rtems/dpmemdata.h b/cpukit/include/rtems/rtems/dpmemdata.h index 293ad15ea5..86302f9089 100644 --- a/cpukit/include/rtems/rtems/dpmemdata.h +++ b/cpukit/include/rtems/rtems/dpmemdata.h @@ -18,7 +18,7 @@ #define _RTEMS_RTEMS_DPMEMDATA_H #include -#include +#include #ifdef __cplusplus extern "C" { diff --git a/cpukit/include/rtems/rtems/messagedata.h b/cpukit/include/rtems/rtems/messagedata.h index be09d8ed86..b035dff97b 100644 --- a/cpukit/include/rtems/rtems/messagedata.h +++ b/cpukit/include/rtems/rtems/messagedata.h @@ -18,8 +18,8 @@ #define _RTEMS_RTEMS_MESSAGEDATA_H #include -#include #include +#include #ifdef __cplusplus extern "C" { diff --git a/cpukit/include/rtems/rtems/partdata.h b/cpukit/include/rtems/rtems/partdata.h index 4423de09f7..3b030c8f34 100644 --- a/cpukit/include/rtems/rtems/partdata.h +++ b/cpukit/include/rtems/rtems/partdata.h @@ -19,7 +19,7 @@ #include #include -#include +#include #ifdef __cplusplus extern "C" { diff --git a/cpukit/include/rtems/rtems/regiondata.h b/cpukit/include/rtems/rtems/regiondata.h index 75fc950691..cfbc07f713 100644 --- a/cpukit/include/rtems/rtems/regiondata.h +++ b/cpukit/include/rtems/rtems/regiondata.h @@ -19,7 +19,7 @@ #include #include -#include +#include #include #ifdef __cplusplus diff --git a/cpukit/include/rtems/rtems/timerdata.h b/cpukit/include/rtems/rtems/timerdata.h index a3a13b774e..db32739488 100644 --- a/cpukit/include/rtems/rtems/timerdata.h +++ b/cpukit/include/rtems/rtems/timerdata.h @@ -21,7 +21,7 @@ #define _RTEMS_RTEMS_TIMERDATA_H #include -#include +#include #include #ifdef __cplusplus diff --git a/cpukit/include/rtems/score/object.h b/cpukit/include/rtems/score/object.h index adafcaa72d..9c2699dbcb 100644 --- a/cpukit/include/rtems/score/object.h +++ b/cpukit/include/rtems/score/object.h @@ -22,8 +22,6 @@ #include #include -#include -#include #ifdef __cplusplus extern "C" { @@ -214,62 +212,6 @@ typedef enum { /** This macro is used to generically specify the last API index. */ #define OBJECTS_APIS_LAST OBJECTS_POSIX_API -/** - * The following defines the Object Control Block used to manage - * each object local to this node. - */ -typedef struct { - /** This is the chain node portion of an object. */ - Chain_Node Node; - /** This is the object's ID. */ - Objects_Id id; - /** This is the object's name. */ - Objects_Name name; -} Objects_Control; - -#if defined( RTEMS_MULTIPROCESSING ) -/** - * @brief This defines the Global Object Control Block used to manage objects - * resident on other nodes. - */ -typedef struct { - /** - * @brief Nodes to manage active and inactive global objects. - */ - union { - /** - * @brief Inactive global objects reside on a chain. - */ - Chain_Node Inactive; - - struct { - /** - * @brief Node to lookup an active global object by identifier. - */ - RBTree_Node Id_lookup; - - /** - * @brief Node to lookup an active global object by name. - */ - RBTree_Node Name_lookup; - } Active; - } Nodes; - - /** - * @brief The global object identifier. - */ - Objects_Id id; - - /** - * @brief The global object name. - * - * 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/include/rtems/score/objectdata.h b/cpukit/include/rtems/score/objectdata.h new file mode 100644 index 0000000000..51258fa4a4 --- /dev/null +++ b/cpukit/include/rtems/score/objectdata.h @@ -0,0 +1,98 @@ +/** + * @file + * + * @ingroup ScoreObject + * + * @brief Object Handler Data Structures + */ + +/* + * COPYRIGHT (c) 1989-2011. + * 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_SCORE_OBJECTDATA_H +#define _RTEMS_SCORE_OBJECTDATA_H + +#include +#include +#include + +#ifdef __cplusplus +extern "C" { +#endif + +/** + * @addtogroup ScoreObject + * + * @{ + */ + +/** + * The following defines the Object Control Block used to manage + * each object local to this node. + */ +typedef struct { + /** This is the chain node portion of an object. */ + Chain_Node Node; + /** This is the object's ID. */ + Objects_Id id; + /** This is the object's name. */ + Objects_Name name; +} Objects_Control; + +#if defined( RTEMS_MULTIPROCESSING ) +/** + * @brief This defines the Global Object Control Block used to manage objects + * resident on other nodes. + */ +typedef struct { + /** + * @brief Nodes to manage active and inactive global objects. + */ + union { + /** + * @brief Inactive global objects reside on a chain. + */ + Chain_Node Inactive; + + struct { + /** + * @brief Node to lookup an active global object by identifier. + */ + RBTree_Node Id_lookup; + + /** + * @brief Node to lookup an active global object by name. + */ + RBTree_Node Name_lookup; + } Active; + } Nodes; + + /** + * @brief The global object identifier. + */ + Objects_Id id; + + /** + * @brief The global object name. + * + * 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 + +/** @} */ + +#ifdef __cplusplus +} +#endif + +#endif +/* end of include file */ diff --git a/cpukit/include/rtems/score/objectimpl.h b/cpukit/include/rtems/score/objectimpl.h index bf4d45df4a..8934e24244 100644 --- a/cpukit/include/rtems/score/objectimpl.h +++ b/cpukit/include/rtems/score/objectimpl.h @@ -19,7 +19,7 @@ #ifndef _RTEMS_SCORE_OBJECTIMPL_H #define _RTEMS_SCORE_OBJECTIMPL_H -#include +#include #include #include #include diff --git a/cpukit/include/rtems/score/thread.h b/cpukit/include/rtems/score/thread.h index c665fccb69..7e24af43c9 100644 --- a/cpukit/include/rtems/score/thread.h +++ b/cpukit/include/rtems/score/thread.h @@ -27,7 +27,7 @@ #include #endif #include -#include +#include #include #include #include -- cgit v1.2.3