RTEMS 5.2
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros Modules Pages
object.h
Go to the documentation of this file.
1
9/* COPYRIGHT (c) 1989-2013.
10 * On-Line Applications Research Corporation (OAR).
11 *
12 * The license and distribution terms for this file may be
13 * found in the file LICENSE in this distribution or at
14 * http://www.rtems.org/license/LICENSE.
15 */
16
17#ifndef _RTEMS_RTEMS_OBJECT_H
18#define _RTEMS_RTEMS_OBJECT_H
19
20#include <stdint.h>
21#include <rtems/score/object.h>
22#include <rtems/rtems/status.h>
23#include <rtems/rtems/types.h>
24
25#ifdef __cplusplus
26extern "C" {
27#endif
28
43typedef struct {
49 uint32_t maximum;
53 uint32_t unallocated;
55
73#define rtems_build_id( _api, _class, _node, _index ) \
74 _Objects_Build_id( _api, _class, _node, _index )
75
93#define rtems_build_name( _C1, _C2, _C3, _C4 ) \
94 _Objects_Build_name( _C1, _C2, _C3, _C4 )
95
112 rtems_id id,
113 rtems_name *name
114);
115
131 rtems_id id,
132 size_t length,
133 char *name
134);
135
153 rtems_id id,
154 const char *name
155);
156
173#define rtems_object_id_get_api( _id ) \
174 _Objects_Get_API( _id )
175
190#define rtems_object_id_get_class( _id ) \
191 _Objects_Get_class( _id )
192
207#define rtems_object_id_get_node( _id ) \
208 _Objects_Get_node( _id )
209
224#define rtems_object_id_get_index( _id ) \
225 _Objects_Get_index( _id )
226
238#define rtems_object_id_api_minimum() \
239 OBJECTS_INTERNAL_API
240
252#define rtems_object_id_api_maximum() \
253 OBJECTS_APIS_LAST
254
269 int api
270);
271
285 int api
286);
287
288
302 int api
303);
304
317const char *rtems_object_get_api_name(
318 int api
319);
320
335 int the_api,
336 int the_class
337);
338
355 int the_api,
356 int the_class,
358);
359
366{
367 return _Objects_Local_node;
368}
369
370#ifdef __cplusplus
371}
372#endif
373
376#endif
377/* end of include file */
const char * rtems_object_get_api_class_name(int the_api, int the_class)
Get Class Name.
Definition: rtemsobjectgetapiclassname.c:57
int rtems_object_api_minimum_class(int api)
Get Lowest Valid Class Value.
Definition: rtemsobjectapiminimumclass.c:25
RTEMS_INLINE_ROUTINE uint16_t rtems_object_get_local_node(void)
Get the local MPCI node number.
Definition: object.h:365
int rtems_object_api_maximum_class(int api)
Get Highest Valid Class Value.
Definition: rtemsobjectapimaximumclass.c:24
const char * rtems_object_get_api_name(int api)
Get API Name.
Definition: rtemsobjectgetapiname.c:32
char * rtems_object_get_name(rtems_id id, size_t length, char *name)
Obtain Object Name as String.
Definition: rtemsobjectgetname.c:24
rtems_status_code rtems_object_set_name(rtems_id id, const char *name)
Set Name of Object.
Definition: rtemsobjectsetname.c:31
int rtems_object_id_api_maximum_class(int api)
Get Highest Valid Class Value.
rtems_status_code rtems_object_get_class_information(int the_api, int the_class, rtems_object_api_class_information *info)
Get Class Information.
Definition: rtemsobjectgetclassinfo.c:24
rtems_status_code rtems_object_get_classic_name(rtems_id id, rtems_name *name)
Obtain Name of Object.
Definition: rtemsobjectgetclassicname.c:25
rtems_status_code
Classic API Status.
Definition: status.h:43
uint32_t rtems_name
Classic API object name type.
Definition: types.h:77
Objects_Id rtems_id
Used to manage and manipulate RTEMS object identifiers.
Definition: types.h:83
#define RTEMS_INLINE_ROUTINE
Definition: basedefs.h:66
#define _Objects_Local_node
The local MPCI node number.
Definition: object.h:347
Constants and Structures Associated with the Object Handler.
Definition: object.h:43
rtems_id maximum_id
Definition: object.h:47
uint32_t unallocated
Definition: object.h:53
uint32_t maximum
Definition: object.h:49
rtems_id minimum_id
Definition: object.h:45
bool auto_extend
Definition: object.h:51