00001
00002
00003
00004
00005
00006
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
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
00086
00087 int insertSetHashtable( SetPropertyHashTable * hashTable, char * key, setPropertyFunc value ) ;
00088
00089
00090
00091 #endif