11 #ifndef TYPEMAKER2_TYPE_H
12 #define TYPEMAKER2_TYPE_H
14 #include <gwenhywfar/stringlist.h>
15 #include <gwenhywfar/list1.h>
16 #include <gwenhywfar/list2.h>
30 #define TYPEMAKER2_FLAGS_NONE 0x00000001
31 #define TYPEMAKER2_FLAGS_OWN 0x00000002
32 #define TYPEMAKER2_FLAGS_VOLATILE 0x00000004
33 #define TYPEMAKER2_FLAGS_CONST 0x00000008
34 #define TYPEMAKER2_FLAGS_STATIC 0x00000010
35 #define TYPEMAKER2_FLAGS_DUP 0x00000020
36 #define TYPEMAKER2_FLAGS_NODUP 0x00000040
37 #define TYPEMAKER2_FLAGS_ATTRIBUTE 0x00000080
38 #define TYPEMAKER2_FLAGS_ENUM 0x00000100
39 #define TYPEMAKER2_FLAGS_DEFINE 0x00000200
40 #define TYPEMAKER2_FLAGS_ASSIGN 0x00000400
41 #define TYPEMAKER2_FLAGS_OMIT 0x00000800
42 #define TYPEMAKER2_FLAGS_COPY 0x00001000
43 #define TYPEMAKER2_FLAGS_NOCOPY 0x00002000
44 #define TYPEMAKER2_FLAGS_SORTBYMEMBER 0x00004000
45 #define TYPEMAKER2_FLAGS_NOCONSTOBJECT 0x00008000
46 #define TYPEMAKER2_FLAGS_WITH_GETBYMEMBER 0x00010000
47 #define TYPEMAKER2_FLAGS_WITH_HASH 0x00020000
48 #define TYPEMAKER2_FLAGS_WITH_HASHNUM 0x00040000
49 #define TYPEMAKER2_FLAGS_WITH_FLAGS 0x00080000
50 #define TYPEMAKER2_FLAGS_GWEN_CB 0x00100000
53 #define TYPEMAKER2_TYPEFLAGS_WITH_DB 0x00000001
54 #define TYPEMAKER2_TYPEFLAGS_WITH_XML 0x00000002
55 #define TYPEMAKER2_TYPEFLAGS_WITH_OBJECT 0x00000004
56 #define TYPEMAKER2_TYPEFLAGS_WITH_LIST1 0x00000008
57 #define TYPEMAKER2_TYPEFLAGS_WITH_LIST2 0x00000010
58 #define TYPEMAKER2_TYPEFLAGS_WITH_INHERIT 0x00000020
59 #define TYPEMAKER2_TYPEFLAGS_WITH_IDMAP 0x00000040
60 #define TYPEMAKER2_TYPEFLAGS_WITH_TREE 0x00000080
61 #define TYPEMAKER2_TYPEFLAGS_WITH_REFCOUNT 0x00000100
62 #define TYPEMAKER2_TYPEFLAGS_WITH_SIGNALS 0x00000800
63 #define TYPEMAKER2_TYPEFLAGS_WITH_SLOTS 0x00001000
64 #define TYPEMAKER2_TYPEFLAGS_WITH_CACHEFNS 0x00002000
65 #define TYPEMAKER2_TYPEFLAGS_DUP 0x00004000
66 #define TYPEMAKER2_TYPEFLAGS_NODUP 0x00008000
67 #define TYPEMAKER2_TYPEFLAGS_COPY 0x00010000
68 #define TYPEMAKER2_TYPEFLAGS_NOCOPY 0x00020000
69 #define TYPEMAKER2_TYPEFLAGS_WITH_HASH 0x00040000
70 #define TYPEMAKER2_TYPEFLAGS_WITH_CONSTLIST2 0x00080000
71 #define TYPEMAKER2_TYPEFLAGS_WITH_TREE2 0x00100000
#define GWEN_LIST_FUNCTION_DEFS(t, pr)
#define GWEN_LIST2_FUNCTION_DEFS(t, pr)
struct TYPEMAKER2_CODE TYPEMAKER2_CODE
struct TYPEMAKER2_ENUM TYPEMAKER2_ENUM
struct TYPEMAKER2_MEMBER TYPEMAKER2_MEMBER
const char * Typemaker2_Type_GetIdentifier(const TYPEMAKER2_TYPE *ty)
const char * Typemaker2_Type_GetExtends(const TYPEMAKER2_TYPE *ty)
const char * Typemaker2_Type_GetDefaultValue(const TYPEMAKER2_TYPE *ty)
const char * Typemaker2_Type_GetBaseFileName(const TYPEMAKER2_TYPE *ty)
const char * Typemaker2_Type_GetPresetValue(const TYPEMAKER2_TYPE *ty)
const char * Typemaker2_Type_GetFreeHook(const TYPEMAKER2_TYPE *ty)
void Typemaker2_Type_SetCopyFlags(TYPEMAKER2_TYPE *ty, uint32_t i)
uint32_t Typemaker2_Type_GetSetFlags(const TYPEMAKER2_TYPE *ty)
void Typemaker2_Type_SetDupFlags(TYPEMAKER2_TYPE *ty, uint32_t i)
int Typemaker2_Type_GetType(const TYPEMAKER2_TYPE *ty)
void Typemaker2_Type_SetAqDbType(TYPEMAKER2_TYPE *ty, const char *s)
uint32_t Typemaker2_Type_GetCopyFlags(const TYPEMAKER2_TYPE *ty)
TYPEMAKER2_SIGNAL_LIST * Typemaker2_Type_GetSignals(const TYPEMAKER2_TYPE *ty)
struct TYPEMAKER2_TYPE TYPEMAKER2_TYPE
void Typemaker2_Type_SetType(TYPEMAKER2_TYPE *ty, int i)
TYPEMAKER2_ENUM * Typemaker2_Type_FindEnum(TYPEMAKER2_TYPE *ty, const char *s)
void Typemaker2_Type_SetFreeHook(TYPEMAKER2_TYPE *ty, const char *s)
const char * Typemaker2_Type_GetPrefix(const TYPEMAKER2_TYPE *ty)
@ TypeMaker2_Type_Pointer
@ TypeMaker2_Type_Unknown
const char * Typemaker2_Type_GetDescription(const TYPEMAKER2_TYPE *ty)
void Typemaker2_Type_SetUsePrivateConstructor(TYPEMAKER2_TYPE *ty, int i)
int Typemaker2_Type_GetAccess(const TYPEMAKER2_TYPE *ty)
void Typemaker2_Type_SetIdentifier(TYPEMAKER2_TYPE *ty, const char *s)
void Typemaker2_Type_SetInheritsPtr(TYPEMAKER2_TYPE *ty, TYPEMAKER2_TYPE *p)
void Typemaker2_Type_SetFlags(TYPEMAKER2_TYPE *ty, uint32_t i)
const char * Typemaker2_Type_GetFieldCountId(const TYPEMAKER2_TYPE *ty)
void Typemaker2_Type_Dump(TYPEMAKER2_TYPE *ty, FILE *f, int indent)
TYPEMAKER2_INLINE_LIST * Typemaker2_Type_GetInlines(const TYPEMAKER2_TYPE *ty)
TYPEMAKER2_HEADER_LIST * Typemaker2_Type_GetHeaders(const TYPEMAKER2_TYPE *ty)
void Typemaker2_Type_SetSetFlags(TYPEMAKER2_TYPE *ty, uint32_t i)
void Typemaker2_Type_SetName(TYPEMAKER2_TYPE *ty, const char *s)
uint32_t Typemaker2_Type_GetFlags(const TYPEMAKER2_TYPE *ty)
const char * Typemaker2_Type_GetInherits(const TYPEMAKER2_TYPE *ty)
TYPEMAKER2_VIRTUALFN_LIST * Typemaker2_Type_GetVirtualFns(const TYPEMAKER2_TYPE *ty)
TYPEMAKER2_CODE * Typemaker2_Type_FindCodeForMember(const TYPEMAKER2_TYPE *ty, const TYPEMAKER2_MEMBER *tm, const char *id)
void Typemaker2_Type_SetPrefix(TYPEMAKER2_TYPE *ty, const char *s)
void Typemaker2_Type_Attach(TYPEMAKER2_TYPE *ty)
TYPEMAKER2_TYPE * Typemaker2_Type_new()
void Typemaker2_Type_free(TYPEMAKER2_TYPE *ty)
const char * Typemaker2_Type_GetName(const TYPEMAKER2_TYPE *ty)
const char * Typemaker2_Type_GetBaseType(const TYPEMAKER2_TYPE *ty)
void Typemaker2_Type_SetBaseFileName(TYPEMAKER2_TYPE *ty, const char *s)
void Typemaker2_Type_SetDefaultValue(TYPEMAKER2_TYPE *ty, const char *s)
void Typemaker2_Type_SetGetFlags(TYPEMAKER2_TYPE *ty, uint32_t i)
uint32_t Typemaker2_Type_GetGetFlags(const TYPEMAKER2_TYPE *ty)
int Typemaker2_Type_GetNonVolatileMemberCount(const TYPEMAKER2_TYPE *ty)
void Typemaker2_Type_SetAccess(TYPEMAKER2_TYPE *ty, int i)
const char * Typemaker2_Type_GetAqDbType(const TYPEMAKER2_TYPE *ty)
void Typemaker2_Type_SetBaseTypePtr(TYPEMAKER2_TYPE *ty, TYPEMAKER2_TYPE *p)
TYPEMAKER2_TYPE * Typemaker2_Type_GetInheritsPtr(const TYPEMAKER2_TYPE *ty)
void Typemaker2_Type_SetPresetValue(TYPEMAKER2_TYPE *ty, const char *s)
TYPEMAKER2_CODE_LIST * Typemaker2_Type_GetCodeDefs(const TYPEMAKER2_TYPE *ty)
@ TypeMaker2_Access_Private
@ TypeMaker2_Access_Library
@ TypeMaker2_Access_Protected
@ TypeMaker2_Access_Unknown
@ TypeMaker2_Access_Public
void Typemaker2_Type_SetInherits(TYPEMAKER2_TYPE *ty, const char *s)
TYPEMAKER2_SLOT_LIST * Typemaker2_Type_GetSlots(const TYPEMAKER2_TYPE *ty)
void Typemaker2_Type_SetBaseType(TYPEMAKER2_TYPE *ty, const char *s)
TYPEMAKER2_MEMBER_LIST * Typemaker2_Type_GetMembers(const TYPEMAKER2_TYPE *ty)
TYPEMAKER2_DEFINE_LIST * Typemaker2_Type_GetDefines(const TYPEMAKER2_TYPE *ty)
TYPEMAKER2_ENUM_LIST * Typemaker2_Type_GetEnums(const TYPEMAKER2_TYPE *ty)
void Typemaker2_Type_SetExtends(TYPEMAKER2_TYPE *ty, const char *s)
void Typemaker2_Type_SetExtendsPtr(TYPEMAKER2_TYPE *ty, TYPEMAKER2_TYPE *p)
void Typemaker2_Type_SetDescription(TYPEMAKER2_TYPE *ty, const char *s)
int Typemaker2_Type_GetUsePrivateConstructor(const TYPEMAKER2_TYPE *ty)
void Typemaker2_Type_SetNonVolatileMemberCount(TYPEMAKER2_TYPE *ty, int i)
TYPEMAKER2_GROUP_TREE * Typemaker2_Type_GetGroupTree(const TYPEMAKER2_TYPE *ty)
TYPEMAKER2_TYPE * Typemaker2_Type_GetExtendsPtr(const TYPEMAKER2_TYPE *ty)
int Typemaker2_Type_readXml(TYPEMAKER2_TYPE *ty, GWEN_XMLNODE *node, const char *wantedLang)
TYPEMAKER2_TYPE * Typemaker2_Type_GetBaseTypePtr(const TYPEMAKER2_TYPE *ty)
uint32_t Typemaker2_Type_GetDupFlags(const TYPEMAKER2_TYPE *ty)
void Typemaker2_Type_SetFieldCountId(TYPEMAKER2_TYPE *ty, const char *s)
struct GWEN__XMLNODE GWEN_XMLNODE