37#ifndef _RTEMS_RTEMS_REGIONIMPL_H
38#define _RTEMS_RTEMS_REGIONIMPL_H
60#define REGION_OF_THREAD_QUEUE_QUEUE( queue ) \
61 RTEMS_CONTAINER_OF( queue, Region_Control, Wait_queue.Queue )
80static inline void _Region_Free (
84 _Thread_queue_Destroy( &the_region->Wait_queue );
92 _RTEMS_Lock_allocator();
97 if ( the_region != NULL ) {
102 _RTEMS_Unlock_allocator();
109 _RTEMS_Unlock_allocator();
119static inline void *_Region_Allocate_segment (
124 return _Heap_Allocate( &the_region->Memory, size );
132static inline bool _Region_Free_segment (
137 return _Heap_Free( &the_region->Memory, the_segment );
This header file provides the interfaces of the API Mutex Handler.
void _Region_Process_queue(Region_Control *the_region)
Process Region Queue.
Definition: regionprocessqueue.c:46
Objects_Information _Region_Information
The Classic Region objects information.
bool _Heap_Free(Heap_Control *heap, void *addr)
Frees the allocated memory area.
Definition: heapfree.c:119
Objects_Control * _Objects_Allocate(Objects_Information *information)
Allocates an object.
Definition: objectallocate.c:43
uint32_t Objects_Id
Definition: object.h:101
Objects_Control * _Objects_Get_no_protection(Objects_Id id, const Objects_Information *information)
Maps object ids to object control blocks.
Definition: objectgetnoprotection.c:44
This header file provides interfaces of the Barrier Handler which are only used by the implementation...
This header file provides data structures used by the implementation and the Application Configuratio...
This header file provides interfaces of the Object Handler which are only used by the implementation.
Definition: regiondata.h:60
This header file provides interfaces of the Thread Queue Handler which are only used by the implement...