c_ast_construction.h 4.47 KB
Newer Older
Maxime Perrotin's avatar
Maxime Perrotin committed
1
/* Buildsupport is (c) 2008-2016 European Space Agency
Maxime Perrotin's avatar
Maxime Perrotin committed
2
3
4
5
6
7
8
 * contact: maxime.perrotin@esa.int
 * License is LGPL, check LICENSE file */
#ifndef __C_AST_CONSTRUCTION_H__
#define __C_AST_CONSTRUCTION_H__


Interface *FindInterface(FV *fv,char *interface_name);
Maxime Perrotin's avatar
Maxime Perrotin committed
9
Interface *FindCorrespondingRI(FV *remote, Interface *pi);
Maxime Perrotin's avatar
Maxime Perrotin committed
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
void CompareIFname(Interface *i,Interface **result);
void CompareFVname(FV *fv_local,FV **result);
void SetSearchName(char *name);
void End_FV();
void End_IF();
void Add_Out_Param(char *name, size_t l1, 
                   char *type, size_t l2, 
                   char *module, size_t l3,
                   char *filename, size_t l4);

void Add_In_Param(char *,size_t l1,char *,size_t, char *, size_t, char*, size_t);
void Add_RI(char *ri,size_t length,char *dist_fv,size_t distant_length, char *dist_name, size_t dist_name_length);
void Add_PI(char *pi, size_t length);
void New_Interface(char *name, size_t length,char *dist_fv,size_t distant_length, char *dist_name, size_t dist_name_length, IF_type direction);
FV *New_FV(char *fv_name, size_t length, char *caseSensitive);
FV *FindFV(char *fv_name);
void LookForRI(Interface *i, Interface **check);
FV_list *Find_All_Calling_FV(Interface *i);
void Add_Binding(char *b, size_t length);
void Set_Current_Process(Process *p);
void End_Process();
void New_Drivers_Section();
Maxime Perrotin's avatar
Maxime Perrotin committed
32
void End_Drivers_Section();
33
34
35
36
37
38
void New_Processor (char *name,       size_t name_length,
                    char *classifier, size_t classifier_length,
                    char* platform,   size_t platform_length,
                    char *envvars,    size_t envvars_length,
                    char *cflags,     size_t cflags_length,
                    char *ldflags,    size_t ldflags_length);
Maxime Perrotin's avatar
Maxime Perrotin committed
39
void New_Process(char *, size_t, char *,size_t, char *, size_t, bool);
Maxime Perrotin's avatar
Maxime Perrotin committed
40
41
42
43
void Set_OutDir(char *o,size_t len);
void Set_Interfaceview (char *name, size_t len);
void Set_Dataview (char *name, size_t len);
void Set_Test();
44
void Set_Timer_Resolution(char *val, size_t len);
Maxime Perrotin's avatar
Maxime Perrotin committed
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
void Set_Future();
void Set_OnlyCV();
void Set_AADLV2();
void Set_Gateway();
void Set_keep_case();
void Set_Glue();
Context *get_context();
void Set_Compute_Time (uint64_t lower, char *unitlower, size_t len2,
                       uint64_t upper, char *unitupper, size_t len4);
void Set_Context_Variable (char *name, size_t len1, char *type, size_t len2,
                           char *def, size_t len3, char *mod, size_t len4, char *file, size_t len5, char *nameWithCase);

void Set_Period(long long p);
void Set_UndefinedKind_PI();
void Set_Unprotected_IF();
void Set_Protected_IF();
void Set_Variator_IF();
void Set_Sporadic_IF();
void Set_Cyclic_IF();
void Set_Unknown_IF();
void Set_ASync_IF();
void Set_Sync_IF();
void Set_Language_To_GUI();
void Set_Language_To_CPP();
69
void Set_Language_To_VDM();
Maxime Perrotin's avatar
Maxime Perrotin committed
70
71
72
73
74
75
76
77
78
79
80
81
void Set_Language_To_OpenGEODE();
void Set_Language_To_BlackBox_Device();
void Set_Language_To_Ada();
void Set_Language_To_QGenAda();
void Set_Language_To_QGenC();
void Set_Language_To_Scade();
void Set_Language_To_Rhapsody();
void Set_Language_To_RTDS();
void Set_Language_To_C();
void Set_Language_To_Other();
void Set_Language_To_Simulink();
void Set_Language_To_SDL();
82
void Set_Language_To_MicroPython();
Maxime Perrotin's avatar
Maxime Perrotin committed
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
void Set_ASN1_BasicType_Unknown();
void Set_ASN1_BasicType_OctetString();
void Set_ASN1_BasicType_Choice();
void Set_ASN1_BasicType_String();
void Set_ASN1_BasicType_Real();
void Set_ASN1_BasicType_Boolean();
void Set_ASN1_BasicType_Integer();
void Set_ASN1_BasicType_SetOf();
void Set_ASN1_BasicType_Set();
void Set_ASN1_BasicType_Enumerated();
void Set_ASN1_BasicType_SequenceOf();
void Set_ASN1_BasicType_Sequence();
void Set_UPER_Encoding();
void Set_Native_Encoding();
void Set_Zipfile (char *file, size_t len);
void Set_Root_Node(char *name,size_t len);
void Set_PolyorbHI_C();
System *get_system_ast();
void Delete_System_AST();
void C_Init();
void New_Connection(char *src_system, size_t src_system_length,
                    char *src_port, size_t src_port_length,
                    char *bus, size_t bus_length,
                    char *dst_system, size_t dst_system_length,
                    char *dst_port, size_t dst_port_length);
void End_Connection();
Connection *Get_Connection();
char *getASN1DataView();
char *getDataViewPath();

/* 
  Debug functions
*/
void Print_Interface (Interface *i);
void Dump_Interfaces (Interface_list *l);

void Set_Interface_Queue_Size (const unsigned long long int);

#endif