RTEMS CPU Kit with SuperCore  4.10.99.0
rtems/posix/key.h
Go to the documentation of this file.
00001 
00010 /*
00011  *  COPYRIGHT (c) 1989-2011.
00012  *  On-Line Applications Research Corporation (OAR).
00013  *
00014  *  The license and distribution terms for this file may be
00015  *  found in the file LICENSE in this distribution or at
00016  *  http://www.rtems.com/license/LICENSE.
00017  */
00018 
00019 #ifndef _RTEMS_POSIX_KEY_H
00020 #define _RTEMS_POSIX_KEY_H
00021 
00022 #include <rtems/score/object.h>
00023 
00032 #ifdef __cplusplus
00033 extern "C" {
00034 #endif
00035 
00042 typedef struct {
00044    Objects_Control     Object;
00046    void              (*destructor)( void * );
00048    void              **Values[ OBJECTS_APIS_LAST + 1 ];
00049 }  POSIX_Keys_Control;
00050 
00055 POSIX_EXTERN Objects_Information  _POSIX_Keys_Information;
00056 
00062 void _POSIX_Key_Manager_initialization(void);
00063 
00076 void _POSIX_Keys_Run_destructors(
00077   Thread_Control *thread
00078 );
00079 
00088 void _POSIX_Keys_Free_memory(
00089   POSIX_Keys_Control *the_key
00090 );
00091 
00100 RTEMS_INLINE_ROUTINE void _POSIX_Keys_Free (
00101   POSIX_Keys_Control *the_key
00102 );
00103 
00104 #include <rtems/posix/key.inl>
00105 
00108 #ifdef __cplusplus
00109 }
00110 #endif
00111 
00112 #endif
00113 /*  end of include file */