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) 2012 Zhongwei Yao.
00012  * COPYRIGHT (c) 1989-2011.
00013  * On-Line Applications Research Corporation (OAR).
00014  *
00015  * The license and distribution terms for this file may be
00016  * found in the file LICENSE in this distribution or at
00017  * http://www.rtems.org/license/LICENSE.
00018  */
00019 
00020 #ifndef _RTEMS_POSIX_KEY_H
00021 #define _RTEMS_POSIX_KEY_H
00022 
00023 #include <pthread.h>
00024 
00025 #include <rtems/score/chain.h>
00026 #include <rtems/score/object.h>
00027 #include <rtems/score/rbtree.h>
00028 
00029 #ifdef __cplusplus
00030 extern "C" {
00031 #endif
00032 
00044 typedef struct {
00046   Chain_Node Key_values_per_thread_node;
00048   RBTree_Node Key_value_lookup_node;
00050   pthread_key_t key;
00052   Objects_Id thread_id;
00054   const void *value;
00055 }  POSIX_Keys_Key_value_pair;
00056 
00060 typedef struct {
00062    Objects_Control     Object;
00064    void (*destructor) (void *);
00065  }  POSIX_Keys_Control;
00066 
00069 #ifdef __cplusplus
00070 }
00071 #endif
00072 
00073 #endif
00074 /*  end of include file */