diff options
author | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2013-07-23 11:12:52 +0200 |
---|---|---|
committer | Sebastian Huber <sebastian.huber@embedded-brains.de> | 2013-07-23 15:12:52 +0200 |
commit | 63d229d655f10dcce750478b36aa8d7846ad8756 (patch) | |
tree | 68c28177f2fa59eb8dc13f7ded150542b3289015 /cpukit/rtems/include/rtems/rtems/attrimpl.h | |
parent | rtems: Create options implementation header (diff) | |
download | rtems-63d229d655f10dcce750478b36aa8d7846ad8756.tar.bz2 |
rtems: Create attr implementation header
Move implementation specific parts of attr.h and attr.inl into new
header file attrimpl.h. The attr.h contains now only the application
visible API.
Diffstat (limited to '')
-rw-r--r-- | cpukit/rtems/include/rtems/rtems/attrimpl.h (renamed from cpukit/rtems/inline/rtems/rtems/attr.inl) | 51 |
1 files changed, 41 insertions, 10 deletions
diff --git a/cpukit/rtems/inline/rtems/rtems/attr.inl b/cpukit/rtems/include/rtems/rtems/attrimpl.h index 126259a067..4f06b16fd7 100644 --- a/cpukit/rtems/inline/rtems/rtems/attr.inl +++ b/cpukit/rtems/include/rtems/rtems/attrimpl.h @@ -1,8 +1,9 @@ /** - * @file rtems/rtems/attr.inl + * @file * - * This include file contains all of the inlined routines associated - * with attributes. + * @ingroup ClassicAttributesImpl + * + * @brief Classic Attributes Implementation */ /* @@ -14,20 +15,46 @@ * http://www.rtems.com/license/LICENSE. */ -#ifndef _RTEMS_RTEMS_ATTR_H -# error "Never use <rtems/rtems/attr.inl> directly; include <rtems/rtems/attr.h> instead." -#endif - #ifndef _RTEMS_RTEMS_ATTR_INL #define _RTEMS_RTEMS_ATTR_INL -#include <rtems/score/basedefs.h> /* RTEMS_INLINE_ROUTINE */ +#include <rtems/rtems/attr.h> +#include <rtems/score/cpu.h> + +#ifdef __cplusplus +extern "C" { +#endif /** - * @addtogroup ClassicAttributes - * @{ + * @defgroup ClassicAttributesImpl Classic Attributes Implementation + * + * @ingroup ClassicAttributes + * + * @{ */ +/****************** Forced Attributes in Configuration ****************/ + +/** + * This attribute constant indicates the attributes that are not + * supportable given the hardware configuration. + */ +#if ( CPU_HARDWARE_FP == TRUE ) || ( CPU_SOFTWARE_FP == TRUE ) +#define ATTRIBUTES_NOT_SUPPORTED 0 +#else +#define ATTRIBUTES_NOT_SUPPORTED RTEMS_FLOATING_POINT +#endif + +/** + * This attribute constant indicates the attributes that are + * required given the hardware configuration. + */ +#if ( CPU_ALL_TASKS_ARE_FP == TRUE ) +#define ATTRIBUTES_REQUIRED RTEMS_FLOATING_POINT +#else +#define ATTRIBUTES_REQUIRED 0 +#endif + /** * @brief Sets the requested new_attributes in the attribute_set passed in. * @@ -201,5 +228,9 @@ RTEMS_INLINE_ROUTINE bool _Attributes_Is_system_task( /**@}*/ +#ifdef __cplusplus +} +#endif + #endif /* end of include file */ |