1 /***************************************************************************
2     begin       : Thu Jul 02 2009
3     copyright   : (C) 2009 by Martin Preuss
4     email       : martin@libchipcard.de
5 
6  ***************************************************************************
7  *          Please see toplevel file COPYING for license details           *
8  ***************************************************************************/
9 
10 
11 #ifndef TYPEMAKER2_TYPEMANAGER_H
12 #define TYPEMAKER2_TYPEMANAGER_H
13 
14 #include "tm_type.h"
15 
16 #include <stdio.h>
17 
18 
19 typedef struct TYPEMAKER2_TYPEMANAGER TYPEMAKER2_TYPEMANAGER;
20 
21 TYPEMAKER2_TYPEMANAGER *Typemaker2_TypeManager_new();
22 void Typemaker2_TypeManager_free(TYPEMAKER2_TYPEMANAGER *tym);
23 
24 const char *Typemaker2_TypeManager_GetLanguage(const TYPEMAKER2_TYPEMANAGER *tym);
25 void Typemaker2_TypeManager_SetLanguage(TYPEMAKER2_TYPEMANAGER *tym, const char *s);
26 
27 const char *Typemaker2_TypeManager_GetApiDeclaration(const TYPEMAKER2_TYPEMANAGER *tym);
28 void Typemaker2_TypeManager_SetApiDeclaration(TYPEMAKER2_TYPEMANAGER *tym, const char *s);
29 
30 void Typemaker2_TypeManager_AddFolder(TYPEMAKER2_TYPEMANAGER *tym, const char *s);
31 
32 void Typemaker2_TypeManager_AddType(TYPEMAKER2_TYPEMANAGER *tym, TYPEMAKER2_TYPE *ty);
33 int Typemaker2_TypeManager_SetTypePtrs(TYPEMAKER2_TYPEMANAGER *tym, TYPEMAKER2_TYPE *ty);
34 int Typemaker2_TypeManager_SetMemberTypePtrs(TYPEMAKER2_TYPEMANAGER *tym, TYPEMAKER2_TYPE *ty);
35 
36 TYPEMAKER2_TYPE *Typemaker2_TypeManager_FindType(TYPEMAKER2_TYPEMANAGER *tym, const char *s);
37 TYPEMAKER2_TYPE *Typemaker2_TypeManager_GetType(TYPEMAKER2_TYPEMANAGER *tym, const char *s);
38 
39 
40 TYPEMAKER2_TYPE *Typemaker2_TypeManager_LoadTypeFile(TYPEMAKER2_TYPEMANAGER *tym, const char *fileName);
41 int Typemaker2_TypeManager_LoadTypeFile2(TYPEMAKER2_TYPEMANAGER *tym, const char *fileName,
42                                          TYPEMAKER2_TYPE_LIST2 *tlist2);
43 
44 int Typemaker2_TypeManager_LoadTypeFileNoLookup(TYPEMAKER2_TYPEMANAGER *tym, const char *fileName,
45                                                 TYPEMAKER2_TYPE_LIST2 *tlist2);
46 
47 
48 void Typemaker2_TypeManager_Dump(TYPEMAKER2_TYPEMANAGER *tym, FILE *f, int indent);
49 
50 
51 #endif
52 
53 
54 
55 
56