From 5a422aba704c375a307a902bafe658342e209906 Mon Sep 17 00:00:00 2001 From: scuri Date: Fri, 17 Oct 2008 06:10:15 +0000 Subject: First commit - moving from LuaForge to SourceForge --- include/im_attrib_flat.h | 39 +++++++++++++++++++++++++++++++++++++++ 1 file changed, 39 insertions(+) create mode 100644 include/im_attrib_flat.h (limited to 'include/im_attrib_flat.h') diff --git a/include/im_attrib_flat.h b/include/im_attrib_flat.h new file mode 100644 index 0000000..db6c2d8 --- /dev/null +++ b/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 -- cgit v1.2.3