mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-25 03:01:03 +00:00
a7bc7485b1
Original commit message from CVS: 2008-02-23 Bastien Nocera <hadess@hadess.net> * configure.ac: Add checks for Flex/Yacc/Bison and other furry animals, for the new goom 2k4 based plugin * gst/goom/*: Update to use goom 2k4, uses liboil to detect CPU optimisations (not working yet), move the old plugin to... * gst/goom2k1/*: ... here, in case somebody is sick enough Fixes #515073
40 lines
998 B
C
40 lines
998 B
C
#ifndef _GOOMSL_HASH_H
|
|
#define _GOOMSL_HASH_H
|
|
|
|
typedef struct GOOM_HASH_ENTRY GoomHashEntry;
|
|
typedef struct GOOM_HASH GoomHash;
|
|
|
|
typedef union {
|
|
void *ptr;
|
|
int i;
|
|
float f;
|
|
} HashValue;
|
|
|
|
struct GOOM_HASH_ENTRY {
|
|
char *key;
|
|
HashValue value;
|
|
GoomHashEntry *lower;
|
|
GoomHashEntry *upper;
|
|
};
|
|
|
|
struct GOOM_HASH {
|
|
GoomHashEntry *root;
|
|
int number_of_puts;
|
|
};
|
|
|
|
GoomHash *goom_hash_new();
|
|
void goom_hash_free(GoomHash *gh);
|
|
|
|
void goom_hash_put(GoomHash *gh, const char *key, HashValue value);
|
|
HashValue *goom_hash_get(GoomHash *gh, const char *key);
|
|
|
|
void goom_hash_put_int (GoomHash *_this, const char *key, int i);
|
|
void goom_hash_put_float(GoomHash *_this, const char *key, float f);
|
|
void goom_hash_put_ptr (GoomHash *_this, const char *key, void *ptr);
|
|
|
|
typedef void (*GH_Func)(GoomHash *caller, const char *key, HashValue *value);
|
|
|
|
void goom_hash_for_each(GoomHash *_this, GH_Func func);
|
|
int goom_hash_number_of_puts(GoomHash *_this);
|
|
|
|
#endif /* _GOOM_HASH_H */
|