setGetHashTable.h

Go to the documentation of this file.
00001 /*------------------------------------------------------------------------*/
00002 /* file: setGetHashTable.h                                                */
00003 /* Copyright INRIA 2006                                                   */
00004 /* Authors : Jean-Baptiste Silvy                                          */
00005 /* desc : define two hash table to be used in sci_set and sci_get         */
00006 /*        These hash table are based on the Scilab hashTable              */
00007 /*------------------------------------------------------------------------*/
00008 
00009 #ifndef _SET_GET_HASHTABLE_H_
00010 #define _SET_GET_HASHTABLE_H_
00011 
00012 #include "hashtable.h"
00013 #include "ObjectStructure.h"
00014 
00015 /*-----------------------------------------------------------------------------------*/ 
00019 typedef struct hashtable GetPropertyHashTable ;
00020 
00024 typedef struct hashtable SetPropertyHashTable ;
00025 /*-----------------------------------------------------------------------------------*/ 
00026 
00027 /*-----------------------------------------------------------------------------------*/ 
00033 typedef int (*getPropertyFunc)(sciPointObj *) ;
00034 
00042 typedef int (*setPropertyFunc)(sciPointObj *, int, int, int, int ) ;
00043 /*-----------------------------------------------------------------------------------*/
00044 
00045 /*-----------------------------------------------------------------------------------*/
00049 GetPropertyHashTable * createGetHashTable( void ) ;
00050 
00054 void destroyGetHashTable( GetPropertyHashTable * hashTable ) ;
00055 
00060 getPropertyFunc searchGetHashtable( GetPropertyHashTable * hashTable , char * key ) ;
00061 
00062 /*
00063  * Insert a new element in the hashtable
00064  */
00065 int insertGetHashtable( GetPropertyHashTable * hashTable, char * key, getPropertyFunc value ) ;
00066 
00067 /*-----------------------------------------------------------------------------------*/
00071 GetPropertyHashTable * createSetHashTable( void ) ;
00072 
00076 void destroySetHashTable( SetPropertyHashTable * hashTable ) ;
00077 
00082 setPropertyFunc searchSetHashtable( SetPropertyHashTable * hashTable , char * key ) ;
00083 
00084 /*
00085 * Insert a new element in the hashtable
00086 */
00087 int insertSetHashtable( SetPropertyHashTable * hashTable, char * key, setPropertyFunc value ) ;
00088 
00089 /*-----------------------------------------------------------------------------------*/ 
00090 
00091 #endif /* _SET_GET_HASHTABLE_H_ */

Generated on Sun Mar 4 15:03:51 2007 for Scilab [trunk] by  doxygen 1.5.1