COVISE Core
coExport.h
Go to the documentation of this file.
1/* This file is part of COVISE.
2
3 You can use it under the terms of the GNU Lesser General Public License
4 version 2.1 or later, see lgpl-2.1.txt.
5
6 * License: LGPL 2+ */
7
8#ifndef CO_EXPORT_H
9#define CO_EXPORT_H
10
11/* ---------------------------------------------------------------------- //
12// //
13// //
14// Description: DLL EXPORT/IMPORT specification and type definitions //
15// //
16// //
17// //
18// //
19// //
20// //
21// (C)2003 HLRS //
22// Author: Uwe Woessner, Ruth Lang //
23// Date: 30.10.03 V1.0 */
24
25#if defined(__arm__) || defined(__APPLE__) || defined(CO_rhel3) || (defined(CO_ia64icc) && (__GNUC__ >= 4))
26#define EXPORT_TEMPLATE(x)
27#define EXPORT_TEMPLATE2(x, y)
28#define EXPORT_TEMPLATE3(x, y, z)
29#define INST_TEMPLATE1(x)
30#define INST_TEMPLATE2(x, y)
31#define INST_TEMPLATE3(x, y, z)
32#else
33#define EXPORT_TEMPLATE(x) x;
34#define EXPORT_TEMPLATE2(x, y) x, y;
35#define EXPORT_TEMPLATE3(x, y, z) x, y, z;
36#define INST_TEMPLATE1(x) x;
37#define INST_TEMPLATE2(x, y) x, y;
38#define INST_TEMPLATE3(x, y, z) x, y, z;
39#endif
40
41#if defined(_WIN32) && !defined(NODLL)
42#define COIMPORT __declspec(dllimport)
43#define COEXPORT __declspec(dllexport)
44
45#elif(defined(__GNUC__) && __GNUC__ >= 4 && !defined(CO_ia64icc)) || defined(__clang__)
46#define COEXPORT __attribute__((visibility("default")))
47#define COIMPORT COEXPORT
48
49#else
50#define COIMPORT
51#define COEXPORT
52#endif
53
54#if defined(COVISE_APPL)
55#define APPLEXPORT COEXPORT
56#else
57#define APPLEXPORT COIMPORT
58#endif
59
60#if defined(COVISE_VR_INTERACTOR)
61#define VR_INTERACTOR_EXPORT COEXPORT
62#else
63#define VR_INTERACTOR_EXPORT COIMPORT
64#endif
65
66#if defined(COVISE_OSGVRUI)
67#define OSGVRUIEXPORT COEXPORT
68#else
69#define OSGVRUIEXPORT COIMPORT
70#endif
71
72#if defined(SG_VRUI)
73#define SGVRUIEXPORT COEXPORT
74#else
75#define SGVRUIEXPORT COIMPORT
76#endif
77
78#if defined(coMessages_EXPORTS)
79#define COMSGEXPORT COEXPORT
80#else
81#define COMSGEXPORT COIMPORT
82#endif
83
84#if defined(coVRB_EXPORTS)
85#define VRBEXPORT COEXPORT
86#else
87#define VRBEXPORT COIMPORT
88#endif
89
90#if defined(coVRBClient_EXPORTS)
91#define VRBCLIENTEXPORT COEXPORT
92#else
93#define VRBCLIENTEXPORT COIMPORT
94#endif
95
96#if defined(coVRBServer_EXPORTS)
97#define VRBSERVEREXPORT COEXPORT
98#else
99#define VRBSERVEREXPORT COIMPORT
100#endif
101
102#if defined(COVISE_FILE)
103#define FILEEXPORT COEXPORT
104#else
105#define FILEEXPORT COIMPORT
106#endif
107
108#if defined(COVISE_GPU)
109#define GPUEXPORT COEXPORT
110#else
111#define GPUEXPORT COIMPORT
112#endif
113
114#if defined(COIMAGE_EXPORT)
115#define COIMAGEEXPORT COEXPORT
116#else
117#define COIMAGEEXPORT COIMPORT
118#endif
119#if defined(IMPORT_PLUGIN)
120#define PLUGINEXPORT COEXPORT
121#else
122#define PLUGINEXPORT COIMPORT
123#endif
124
125#if defined(ROADTERRAIN_PLUGIN)
126#define ROADTERRAINPLUGINEXPORT COEXPORT
127#else
128#define ROADTERRAINPLUGINEXPORT COIMPORT
129#endif
130
131#if defined(VEHICLE_UTIL)
132#define VEHICLEUTILEXPORT COEXPORT
133#else
134#define VEHICLEUTILEXPORT COIMPORT
135#endif
136
137#if defined(coTrafficSimulation_EXPORTS)
138#define TRAFFICSIMULATIONEXPORT COEXPORT
139#else
140#define TRAFFICSIMULATIONEXPORT COIMPORT
141#endif
142
143#if defined(VRML97_IMPORT_PLUGIN)
144#define VRML97PLUGINEXPORT COEXPORT
145#else
146#define VRML97PLUGINEXPORT COIMPORT
147#endif
148
149#if defined(Vrml97Cover_EXPORTS)
150#define VRML97COVEREXPORT COEXPORT
151#else
152#define VRML97COVEREXPORT COIMPORT
153#endif
154
155#if defined(CovisePluginUtil_EXPORTS)
156#define COVISEPLUGINEXPORT COEXPORT
157#else
158#define COVISEPLUGINEXPORT COIMPORT
159#endif
160
161#if defined(COVISE_VRUI)
162#define VRUIEXPORT COEXPORT
163#else
164#define VRUIEXPORT COIMPORT
165#endif
166
167#if defined(COVISE_PLUGIN_UTIL)
168#define PLUGIN_UTILEXPORT COEXPORT
169#else
170#define PLUGIN_UTILEXPORT COIMPORT
171#endif
172
173#if defined(input_legacy_EXPORTS)
174#define INPUT_LEGACY_EXPORT COEXPORT
175#else
176#define INPUT_LEGACY_EXPORT COIMPORT
177#endif
178
179#if defined(coOpenCOVER_EXPORTS)
180#define COVEREXPORT COEXPORT
181#else
182#define COVEREXPORT COIMPORT
183#endif
184
185#if defined(COVISE_PFIV)
186#define PFIVEXPORT COEXPORT
187#else
188#define PFIVEXPORT COIMPORT
189#endif
190
191#if defined(COVISE_PFOBJ)
192#define PFOBJEXPORT COEXPORT
193#else
194#define PFOBJEXPORT COIMPORT
195#endif
196
197#if defined(COVISE_COVISE)
198#define COVISEEXPORT COEXPORT
199#else
200#define COVISEEXPORT COIMPORT
201#endif
202
203#if defined(UTIL_EXPORTS) || defined(COVISE_UTIL)
204#define UTILEXPORT COEXPORT
205#else
206#define UTILEXPORT COIMPORT
207#endif
208
209#if defined(COVISE_STAR)
210#define STAREXPORT COEXPORT
211#else
212#define STAREXPORT COIMPORT
213#endif
214
215#if defined(COVISE_ENGINE)
216#define ENGINEEXPORT COEXPORT
217#else
218#define ENGINEEXPORT COIMPORT
219#endif
220
221#if defined(COVISE_READER)
222#define READEREXPORT COEXPORT
223#else
224#define READEREXPORT COIMPORT
225#endif
226
227#if defined(COVISE_COLORMAP)
228#define CMAPEXPORT COEXPORT
229#else
230#define CMAPEXPORT COIMPORT
231#endif
232
233#if defined(CONFIG_EXPORT)
234#define CONFIGEXPORT COEXPORT
235#else
236#define CONFIGEXPORT COIMPORT
237#endif
238
239#if defined(NET_EXPORT)
240#define NETEXPORT COEXPORT
241#else
242#define NETEXPORT COIMPORT
243#endif
244
245#if defined(REG_EXPORT)
246#define REGEXPORT COEXPORT
247#else
248#define REGEXPORT COIMPORT
249#endif
250
251/* tracker client */
252#if defined(OSG_TCLIENT) && defined(_WIN32)
253#define OSGTCLIENT COEXPORT
254#else
255#define OSGTCLIENT COIMPORT
256#endif
257
258/* backend */
259#if defined(WIN32DLL_VINCEBACKEND) && defined(_WIN32)
260#define WIN32_DLL_VINCEBACKEND COEXPORT
261#else
262#define WIN32_DLL_VINCEBACKEND COIMPORT
263#endif
264
265/* ViNCE renderer */
266#if defined(VINCE_EXPORT) && defined(_WIN32)
267#define VINCEEXPORT COEXPORT
268#else
269#define VINCEEXPORT COIMPORT
270#endif
271
272#if defined(COVISE_API) || defined(YAC_API)
273#define APIEXPORT COEXPORT
274#else
275#define APIEXPORT COIMPORT
276#endif
277
278#if defined(COVISE_COMM) || defined(COMM_EXPORTS)
279#define COMMEXPORT COEXPORT
280#define COMMEXPORTONLY COEXPORT
281#else
282#define COMMEXPORT COIMPORT
283#define COMMEXPORTONLY
284#endif
285
286#if defined(SHM_EXPORTS)
287#define SHMEXPORT COEXPORT
288#else
289#define SHMEXPORT COIMPORT
290#endif
291
292#if defined(IMPORT_PLUGIN)
293#define PLUGINEXPORT COEXPORT
294#else
295#define PLUGINEXPORT COIMPORT
296#endif
297
298#if defined(YAC_JAVA_API)
299#define JAVAAPIEXPORT COEXPORT
300#else
301#define JAVAAPIEXPORT COIMPORT
302#endif
303
304#if defined(RENDERER_EXPORTS)
305#define RENDEREXPORT COEXPORT
306#else
307#define RENDEREXPORT COIMPORT
308#endif
309
310#if defined(CRYPT_EXPORTS)
311#define CRYPTEXPORT COEXPORT
312#else
313#define CRYPTEXPORT COIMPORT
314#endif
315
316#if defined(COVISE_THREAD) || defined(COVISE_THREADS) || defined(THREADS_EXPORTS)
317#define THREADEXPORT COEXPORT
318#else
319#define THREADEXPORT COIMPORT
320#endif
321
322#if defined(COVISE_DMGR) || defined(DMGR_EXPORTS)
323#define DMGREXPORT COEXPORT
324#else
325#define DMGREXPORT COIMPORT
326#endif
327
328#if defined(DO_EXPORTS) || defined(COVISE_DO)
329#define DOEXPORT COEXPORT
330#else
331#define DOEXPORT COIMPORT
332#endif
333
334#if defined(COVISE_ALG) || defined(ALG_EXPORTS)
335#define ALGEXPORT COEXPORT
336#else
337#define ALGEXPORT COIMPORT
338#endif
339
340#if defined(COVISE_VTK) || defined(VTK_EXPORTS)
341#define VTKEXPORT COEXPORT
342#else
343#define VTKEXPORT COIMPORT
344#endif
345
346#if defined(COVISE_GRMSG) || defined(GRMSGEXPORT)
347#define GRMSGEXPORT COEXPORT
348#else
349#define GRMSGEXPORT COIMPORT
350#endif
351
352#if defined(COVISE_VR_INTERACTOR)
353#define VR_INTERACTOR_EXPORT COEXPORT
354#else
355#define VR_INTERACTOR_EXPORT COIMPORT
356#endif
357
358#if defined(COVISE_OPENVRUI)
359#define OPENVRUIEXPORT COEXPORT
360#else
361#define OPENVRUIEXPORT COIMPORT
362#endif
363
364#if defined(CONFIG_EXPORT)
365#define CONFIGEXPORT COEXPORT
366#else
367#define CONFIGEXPORT COIMPORT
368#endif
369
370#if defined(NET_EXPORT)
371#define NETEXPORT COEXPORT
372#else
373#define NETEXPORT COIMPORT
374#endif
375
376#if defined(CONFIGEDITOR_EXPORT)
377#define CONFIGEDITOREXPORT COEXPORT
378#else
379#define CONFIGEDITOREXPORT COIMPORT
380#endif
381
382#if defined(WSLIB_EXPORT)
383#define WSLIBEXPORT COEXPORT
384#else
385#define WSLIBEXPORT COIMPORT
386#endif
387
388#if defined(UI_EXPORT)
389#define UIEXPORT COEXPORT
390#else
391#define UIEXPORT COIMPORT
392#endif
393
394#if defined(SCA_EXPORT)
395#define SCAEXPORT COEXPORT
396#else
397#define SCAEXPORT COIMPORT
398#endif
399
400#if defined(RS_EXPORT) || defined(COVISE_RS)
401#define RSEXPORT COEXPORT
402#else
403#define RSEXPORT COIMPORT
404#endif
405#endif