diff options
author | Pixel <pixel@nobis-crew.org> | 2009-11-04 11:56:41 -0800 |
---|---|---|
committer | Pixel <pixel@nobis-crew.org> | 2009-11-04 11:59:33 -0800 |
commit | d577d991b97ae2b5ee1af23641bcffc3f83af5b2 (patch) | |
tree | 590639d50205d1bcfaff2a7d2dc6ebf3f373c7ed /im/include/im_attrib_flat.h |
Initial import. Contains the im, cd and iup librairies, and a "working" Makefile for them under linux.
Diffstat (limited to 'im/include/im_attrib_flat.h')
-rwxr-xr-x | im/include/im_attrib_flat.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/im/include/im_attrib_flat.h b/im/include/im_attrib_flat.h new file mode 100755 index 0000000..db6c2d8 --- /dev/null +++ b/im/include/im_attrib_flat.h @@ -0,0 +1,39 @@ +/** \file + * \brief Attributes Table Flat API. + * This will simplify the DLL export, and can be used for C aplications. + * + * See Copyright Notice in im_lib.h + */ + +#ifndef __IM_ATTRIB_FLAT_H_ +#define __IM_ATTRIB_FLAT_H_ + +#if defined(__cplusplus) +extern "C" { +#endif + +struct imAttribTablePrivate; + +/** Definition of the callback used in ForEach function. */ +typedef int (*imAttribTableCallback)(void* user_data, int index, const char* name, int data_type, int count, const void* data); + +imAttribTablePrivate* imAttribTableCreate(int hash_size); +void imAttribTableDestroy(imAttribTablePrivate* ptable); +int imAttribTableCount(imAttribTablePrivate* ptable); +void imAttribTableRemoveAll(imAttribTablePrivate* ptable); +const void* imAttribTableGet(const imAttribTablePrivate* ptable, const char *name, int *data_type, int *count); +void imAttribTableSet(imAttribTablePrivate* ptable, const char* name, int data_type, int count, const void* data); +void imAttribTableUnSet(imAttribTablePrivate* ptable, const char *name); +void imAttribTableCopyFrom(imAttribTablePrivate* ptable_dst, const imAttribTablePrivate* ptable_src); +void imAttribTableForEach(const imAttribTablePrivate* ptable, void* user_data, imAttribTableCallback attrib_func); + +imAttribTablePrivate* imAttribArrayCreate(int hash_size); +const void* imAttribArrayGet(const imAttribTablePrivate* ptable, int index, char *name, int *data_type, int *count); +void imAttribArraySet(imAttribTablePrivate* ptable, int index, const char* name, int data_type, int count, const void* data); +void imAttribArrayCopyFrom(imAttribTablePrivate* ptable_dst, const imAttribTablePrivate* ptable_src); + +#if defined(__cplusplus) +} +#endif + +#endif |