Open Inventor
Release 2024.2.1
Loading...
Searching...
No Matches
port.h
1
/*=======================================================================
2
*** THE CONTENT OF THIS WORK IS PROPRIETARY TO FEI S.A.S, (FEI S.A.S.), ***
3
*** AND IS DISTRIBUTED UNDER A LICENSE AGREEMENT. ***
4
*** ***
5
*** REPRODUCTION, DISCLOSURE, OR USE, IN WHOLE OR IN PART, OTHER THAN AS ***
6
*** SPECIFIED IN THE LICENSE ARE NOT TO BE UNDERTAKEN EXCEPT WITH PRIOR ***
7
*** WRITTEN AUTHORIZATION OF FEI S.A.S. ***
8
*** ***
9
*** RESTRICTED RIGHTS LEGEND ***
10
*** USE, DUPLICATION, OR DISCLOSURE BY THE GOVERNMENT OF THE CONTENT OF THIS ***
11
*** WORK OR RELATED DOCUMENTATION IS SUBJECT TO RESTRICTIONS AS SET FORTH IN ***
12
*** SUBPARAGRAPH (C)(1) OF THE COMMERCIAL COMPUTER SOFTWARE RESTRICTED RIGHT ***
13
*** CLAUSE AT FAR 52.227-19 OR SUBPARAGRAPH (C)(1)(II) OF THE RIGHTS IN ***
14
*** TECHNICAL DATA AND COMPUTER SOFTWARE CLAUSE AT DFARS 52.227-7013. ***
15
*** ***
16
*** COPYRIGHT (C) 1996-2022 BY FEI S.A.S, ***
17
*** BORDEAUX, FRANCE ***
18
*** ALL RIGHTS RESERVED ***
19
**=======================================================================*/
20
/*=======================================================================
21
** Author : VSG (MMM YYYY)
22
**=======================================================================*/
23
#ifndef _INVENTOR_PORT_H
24
#define _INVENTOR_PORT_H
25
26
#include <SbTypes.h>
27
28
// kept for compatibility but no more used
29
#define __IvStaticImport
30
31
#ifdef __GNUC__
32
#define OIV_FUNCTION __PRETTY_FUNCTION__
33
#else
34
#define OIV_FUNCTION __FUNCTION__
35
#endif
36
37
#ifdef _WIN32
38
39
40
# pragma warning( disable: 4800)
41
# pragma warning( disable: 4251)
42
43
#include <Inventor/Win/SoWinBeginStrict.h>
44
45
# include <windows.h>
46
# include <winsock.h>
47
# include <math.h>
48
# include <string.h>
49
#ifdef LIBRARYBUILD
50
//Don't force customers to use this definition
51
# define strcasecmp _stricmp
52
#endif
53
54
#ifndef _USE_MATH_DEFINES
55
# ifdef _WIN64
56
# define _USE_MATH_DEFINES
57
# endif
58
#endif
59
60
# include <math.h>
61
62
#ifndef _USE_MATH_DEFINES
63
#ifndef M_E
64
# define M_E 2.7182818284590452354
65
#endif
66
#ifndef M_LOG2E
67
# define M_LOG2E 1.4426950408889634074
68
#endif
69
#ifndef M_LOG10E
70
# define M_LOG10E 0.43429448190325182765
71
#endif
72
#ifndef M_LN2
73
# define M_LN2 0.69314718055994530942
74
#endif
75
#ifndef M_LN10
76
# define M_LN10 2.30258509299404568402
77
#endif
78
#ifndef M_PI
79
# define M_PI 3.14159265358979323846
80
#endif
81
#ifndef M_PI_2
82
# define M_PI_2 1.57079632679489661923
83
#endif
84
#ifndef M_PI_4
85
# define M_PI_4 0.78539816339744830962
86
#endif
87
#ifndef M_1_PI
88
# define M_1_PI 0.31830988618379067154
89
#endif
90
#ifndef M_2_PI
91
# define M_2_PI 0.63661977236758134308
92
#endif
93
#ifndef M_2_SQRTPI
94
# define M_2_SQRTPI 1.12837916709551257390
95
#endif
96
#ifndef M_SQRT2
97
# define M_SQRT2 1.41421356237309504880
98
#endif
99
#ifndef M_SQRT1_2
100
# define M_SQRT1_2 0.70710678118654752440
101
#endif
102
#ifndef MAXFLOAT
103
# define MAXFLOAT ((float)3.40282346638528860e+38)
104
#endif
105
#endif
106
107
108
#if defined(_MSC_VER) && (_MSC_VER < 1300)
109
# define __FUNCTION__ "NO__FUNCTION__FOR_VC6"
110
#endif
111
112
#ifdef bcopy
113
# undef bcopy
114
#endif
115
#define bcopy(from,to,len) memcpy((to),(from),(len))
116
117
#include <SoVersion.h>
118
119
#define VC_DLL_EXPORT __declspec(dllexport)
120
#define VC_DLL_IMPORT __declspec(dllimport)
121
122
#include <Inventor/Win/SoWinEndStrict.h>
123
124
#include <Inventor/SoInventorImageLibName.h>
125
126
// DialogViz_EXPORTS is defined only when building DialogViz dll
127
#if defined(DialogVizXt_EXPORTS) || defined(DialogVizWin_EXPORTS) || defined(DialogVizQt_EXPORTS)
128
# define VC_DLL_EXPORT
129
#else
130
# define VC_DLL_IMPORT
131
#endif
132
133
// DialogVizQt_EXPORTS is defined only when building DialogVizQt dll
134
#ifdef DialogVizQt_EXPORTS
135
# define VC_DLL_EXPORT
136
#else
137
# define VC_DLL_IMPORT
138
#endif
139
140
// HardCopy_EXPORTS is defined only when building HardCopy dll
141
#ifdef HardCopy_EXPORTS
142
# define VC_DLL_EXPORT
143
#else
144
# define VC_DLL_IMPORT
145
#endif
146
147
// HardCopyWin_EXPORTS is defined only when building HardCopyW dll
148
#ifdef HardCopyWin_EXPORTS
149
# define VC_DLL_EXPORT
150
#else
151
# define VC_DLL_IMPORT
152
#endif
153
154
// IvTuneExtenderAPI_EXPORTS is defined only when building IvTuneExtender dll
155
#ifdef IvTuneExtenderAPI_EXPORTS
156
# define VC_DLL_EXPORT
157
#else
158
# define VC_DLL_IMPORT
159
#endif
160
161
// MeshViz_EXPORTS is defined only when building MeshViz dll
162
#ifdef MeshViz_EXPORTS
163
# define VC_DLL_EXPORT
164
#else
165
# define VC_DLL_IMPORT
166
#endif
167
168
// MeshVizWin_EXPORTS is defined only when building MeshVizWin dll
169
#ifdef MeshVizWin_EXPORTS
170
# define VC_DLL_EXPORT
171
#else
172
# define VC_DLL_IMPORT
173
#endif
174
175
// Inventor_EXPORTS is defined only when building Inventor dll
176
#ifdef Inventor_EXPORTS
177
# define VC_DLL_EXPORT
178
#else
179
# define VC_DLL_IMPORT
180
#endif
181
182
// InventorBase_EXPORTS is defined only when building InventorBase dll
183
#ifdef InventorBase_EXPORTS
184
# define VC_DLL_EXPORT
185
#else
186
# define VC_DLL_IMPORT
187
#endif
188
189
// InventorGL_EXPORTS is defined only when building InventorBase dll
190
#ifdef InventorGL_EXPORTS
191
# define VC_DLL_EXPORT
192
#else
193
# define VC_DLL_IMPORT
194
#endif
195
196
// InventorGL_EXPORTS is defined only when building InventorBase dll
197
#ifdef InventorImage_EXPORTS
198
# define VC_DLL_EXPORT
199
#else
200
# define VC_DLL_IMPORT
201
#endif
202
203
// InventorWin_EXPORTS is defined only when building InventorWin dll
204
#ifdef InventorWin_EXPORTS
205
# define VC_DLL_EXPORT
206
#else
207
# define VC_DLL_IMPORT
208
#endif
209
#define
210
211
// InventorQt_EXPORTS is defined only when building InventorQt dll
212
#ifdef InventorQt_EXPORTS
213
# define VC_DLL_EXPORT
214
#else
215
# define VC_DLL_IMPORT
216
#endif
217
218
// InventorGui_EXPORTS is defined only when building InventorGui dll
219
#ifdef InventorGui_EXPORTS
220
# define VC_DLL_EXPORT
221
#else
222
# define VC_DLL_IMPORT
223
#endif
224
225
// IvDLCSG_EXPORTS is defined only when building IvDLCSG dll
226
#ifdef IvDLCSG_EXPORTS
227
# define IVDLCSG_API VC_DLL_EXPORT
228
#else
229
# define IVDLCSG_API VC_DLL_IMPORT
230
#endif
231
232
// IvTune_EXPORTS is defined only when building IvTune dll
233
#ifdef IvTune_EXPORTS
234
# define VC_DLL_EXPORT
235
#else
236
# define VC_DLL_IMPORT
237
#endif
238
239
// IvTunePlg_EXPORTS is defined only when building IvTune plugins
240
#ifdef IvTunePlg_EXPORTS
241
# define IVTUNEPLG_API VC_DLL_EXPORT
242
#else
243
# define IVTUNEPLG_API VC_DLL_IMPORT
244
#endif
245
246
// RemoteVizServices_EXPORTS is defined only when building RemoteViz dll
247
#ifdef RemoteVizServices_EXPORTS
248
# define RENDERSERVICE_API VC_DLL_EXPORT
249
#else
250
# define RENDERSERVICE_API VC_DLL_IMPORT
251
#endif
252
253
// RemoteVizClient_EXPORTS is defined only when building RemoteVizClient dll
254
#ifdef RemoteVizClient_EXPORTS
255
# define RVCLIENT_API VC_DLL_EXPORT
256
#else
257
# define RVCLIENT_API VC_DLL_IMPORT
258
#endif
259
260
// ScaleViz_EXPORTS is defined only when building Inv dll
261
#ifdef ScaleVizRemote_EXPORTS
262
# define SCALEVIZREMOTE_API VC_DLL_EXPORT
263
#else
264
# define SCALEVIZREMOTE_API VC_DLL_IMPORT
265
#endif
266
267
// ScaleViz_EXPORTS is defined only when building Inv dll
268
#ifdef ScaleViz_EXPORTS
269
# define VC_DLL_EXPORT
270
#else
271
# define VC_DLL_IMPORT
272
#endif
273
274
// VolumeViz_EXPORTS is defined only when building VolumeViz dll
275
#ifdef VolumeViz_EXPORTS
276
# define VC_DLL_EXPORT
277
#else
278
# define VC_DLL_IMPORT
279
#endif
280
281
// LDM_EXPORTS is defined only when building LDM dll
282
#ifdef LDM_EXPORTS
283
# define VC_DLL_EXPORT
284
#else
285
# define VC_DLL_IMPORT
286
#endif
287
288
// ViewerComponents_EXPORTS is defined only when building ViewerComponents dll
289
#ifdef ViewerComponents_EXPORTS
290
# define VIEWERCOMPONENTS_API VC_DLL_EXPORT
291
#else
292
# define VIEWERCOMPONENTS_API VC_DLL_IMPORT
293
#endif
294
295
// WinViewerComponents_EXPORTS is defined only when building WinViewerComponents dll
296
#ifdef WinViewerComponents_EXPORTS
297
# define WINVIEWERCOMPONENTS_API VC_DLL_EXPORT
298
#else
299
# define WINVIEWERCOMPONENTS_API VC_DLL_IMPORT
300
#endif
301
302
// MFCViewerComponents_EXPORTS is defined only when building MFCViewerComponents dll
303
#ifdef MFCViewerComponents_EXPORTS
304
# define MFCVIEWERCOMPONENTS_API VC_DLL_EXPORT
305
#else
306
# define MFCVIEWERCOMPONENTS_API VC_DLL_IMPORT
307
#endif
308
309
// QtViewerComponents_EXPORTS is defined only when building QtViewerComponents dll
310
#ifdef QtViewerComponents_EXPORTS
311
# define QTVIEWERCOMPONENTS_API VC_DLL_EXPORT
312
#else
313
# define QTVIEWERCOMPONENTS_API VC_DLL_IMPORT
314
#endif
315
316
// InventorMedical_EXPORTS is defined only when building InventorMedical dll
317
#ifdef InventorMedical_EXPORTS
318
# define INVENTORMEDICAL_API VC_DLL_EXPORT
319
#else
320
# define INVENTORMEDICAL_API VC_DLL_IMPORT
321
#endif
322
323
#ifdef OIV_ENABLE_LEAKDETECTOR
324
#include <vld.h>
325
#endif
326
327
#else
/********************************************** UNIX **********************************************/
328
329
#if __GNUC__ > 3
330
#define GCC_DLLEXPORT __attribute__ ((visibility("default")))
331
#else
332
#define GCC_DLLEXPORT
333
#endif
334
335
//always set the attribute with GCC
336
#define VC_DLL_IMPORT GCC_DLLEXPORT
337
#define VC_DLL_EXPORT GCC_DLLEXPORT
338
339
# include <strings.h>
340
341
# ifndef APIENTRY
342
# define APIENTRY
343
# endif
344
# ifndef CALLBACK
345
# define CALLBACK
346
# endif
347
# ifndef WINGDIAPI
348
# define WINGDIAPI
349
# endif
350
# ifndef HDC
351
# define HDC void *
352
# endif
353
# if defined(_HP_NAMESPACE_STD)
354
# include <limits>
355
# endif
356
# ifndef UINT
357
typedef
unsigned
int
UINT;
358
# endif
359
360
# define GCC_DLLEXPORT
361
# define GCC_DLLEXPORT
362
# define GCC_DLLEXPORT
363
# define GCC_DLLEXPORT
364
# define GCC_DLLEXPORT
365
# define GCC_DLLEXPORT
366
# define GCC_DLLEXPORT
367
# define GCC_DLLEXPORT
368
# define GCC_DLLEXPORT
369
# define GCC_DLLEXPORT
370
# define GCC_DLLEXPORT
371
# define GCC_DLLEXPORT
372
# define GCC_DLLEXPORT
373
# define GCC_DLLEXPORT
374
# define IVDLCSG_API GCC_DLLEXPORT
375
# define GCC_DLLEXPORT
376
# define GCC_DLLEXPORT
377
# define IVTUNEPLG_API GCC_DLLEXPORT
378
# define RENDERSERVICE_API GCC_DLLEXPORT
379
# define RVCLIENT_API GCC_DLLEXPORT
380
# define GCC_DLLEXPORT
381
# define SCALEVIZREMOTE_API GCC_DLLEXPORT
382
# define GCC_DLLEXPORT
383
# define GCC_DLLEXPORT
384
# define VIEWERCOMPONENTS_API GCC_DLLEXPORT
385
# define WINVIEWERCOMPONENTS_API GCC_DLLEXPORT
386
# define MFCVIEWERCOMPONENTS_API GCC_DLLEXPORT
387
# define QTVIEWERCOMPONENTS_API GCC_DLLEXPORT
388
# define INVENTORMEDICAL_API GCC_DLLEXPORT
389
390
# define SO_DLL_SUFFIX ""
391
# define SO_LIB_SUFFIX ""
392
393
#endif
/* UNIX */
394
395
#ifndef __APPLE__
396
typedef
void
* WindowPtr;
397
#endif
398
399
#endif
/* _INVENTOR_PORT_H */
400
401
Inventor
sys
port.h
Generated by
1.9.8