2 * NOTICE and LICENSE for Tecplot Input/Output Library (TecIO) - OpenFOAM
4 * Copyright (C) 1988-2009 Tecplot, Inc. All rights reserved worldwide.
6 * Tecplot hereby grants OpenCFD limited authority to distribute without
7 * alteration the source code to the Tecplot Input/Output library, known
8 * as TecIO, as part of its distribution of OpenFOAM and the
9 * OpenFOAM_to_Tecplot converter. Users of this converter are also hereby
10 * granted access to the TecIO source code, and may redistribute it for the
11 * purpose of maintaining the converter. However, no authority is granted
12 * to alter the TecIO source code in any form or manner.
14 * This limited grant of distribution does not supersede Tecplot, Inc.'s
15 * copyright in TecIO. Contact Tecplot, Inc. for further information.
18 * 3535 Factoria Blvd, Ste. 550
19 * Bellevue, WA 98006, USA
20 * Phone: +1 425 653 1200
21 * http://www.tecplot.com/
25 * TECXXX.h: Copyright (C) 1988-2008 Tecplot, Inc.
28 #if !defined TECXXX_H_
32 # define TECFOREIGN112 tecforeign112
33 # define TECINI112 tecini112
34 # define TECZNE112 teczne112
35 # define TECDAT112 tecdat112
36 # define TECNOD112 tecnod112
37 # define TECGEO112 tecgeo112
38 # define TECTXT112 tectxt112
39 # define TECLAB112 teclab112
40 # define TECFIL112 tecfil112
41 # define TECEND112 tecend112
42 # define TECUSR112 tecusr112
43 # define TECAUXSTR112 tecauxstr112
44 # define TECZAUXSTR112 teczauxstr112
45 # define TECVAUXSTR112 tecvauxstr112
46 # define TECFACE112 tecface112
47 # define TECPOLY112 tecpoly112
49 # define TECFOREIGN111 tecforeign111
50 # define TECINI111 tecini111
51 # define TECZNE111 teczne111
52 # define TECDAT111 tecdat111
53 # define TECNOD111 tecnod111
54 # define TECGEO111 tecgeo111
55 # define TECTXT111 tectxt111
56 # define TECLAB111 teclab111
57 # define TECFIL111 tecfil111
58 # define TECEND111 tecend111
59 # define TECUSR111 tecusr111
60 # define TECAUXSTR111 tecauxstr111
61 # define TECZAUXSTR111 teczauxstr111
62 # define TECVAUXSTR111 tecvauxstr111
63 # define TECFACE111 tecface111
64 # define TECPOLY111 tecpoly111
66 # define TECFOREIGN110 tecforeign110
67 # define TECINI110 tecini110
68 # define TECZNE110 teczne110
69 # define TECDAT110 tecdat110
70 # define TECNOD110 tecnod110
71 # define TECGEO110 tecgeo110
72 # define TECTXT110 tectxt110
73 # define TECLAB110 teclab110
74 # define TECFIL110 tecfil110
75 # define TECEND110 tecend110
76 # define TECUSR110 tecusr110
77 # define TECAUXSTR110 tecauxstr110
78 # define TECZAUXSTR110 teczauxstr110
79 # define TECVAUXSTR110 tecvauxstr110
80 # define TECFACE110 tecface110
82 # define TECFOREIGN100 tecforeign100
83 # define TECINI100 tecini100
84 # define TECZNE100 teczne100
85 # define TECDAT100 tecdat100
86 # define TECNOD100 tecnod100
87 # define TECGEO100 tecgeo100
88 # define TECTXT100 tectxt100
89 # define TECLAB100 teclab100
90 # define TECFIL100 tecfil100
91 # define TECEND100 tecend100
92 # define TECUSR100 tecusr100
93 # define TECAUXSTR100 tecauxstr100
94 # define TECZAUXSTR100 teczauxstr100
95 # define TECVAUXSTR100 tecvauxstr100
96 # define TECFACE100 tecface100
98 # define TECINI tecini
99 # define TECZNE teczne
100 # define TECDAT tecdat
101 # define TECNOD tecnod
102 # define TECGEO tecgeo
103 # define TECTXT tectxt
104 # define TECLAB teclab
105 # define TECFIL tecfil
106 # define TECEND tecend
107 # define TECUSR tecusr
111 #if defined TECPLOTKERNEL
112 /* CORE SOURCE CODE REMOVED */
115 #define INTEGER2 short
120 #define MSWIN /* MSWIN */
124 #if !defined (EXTERNC)
125 # if defined (__cplusplus)
126 # define EXTERNC extern "C"
129 # endif /* __cplusplus */
130 #endif /* EXTERN_C */
132 #if !defined (STDCALL)
134 # define STDCALL __stdcall
140 #if !defined (DLLEXPORT)
142 # define DLLEXPORT _declspec (dllexport)
146 #endif /* DLLEXPORT */
148 #if !defined (DLLIMPORT)
150 # define DLLIMPORT _declspec (dllimport)
154 #endif /* DLLIMPORT */
157 #if defined (TECPLOTKERNEL)
158 /* CORE SOURCE CODE REMOVED */
159 #else /* !TECPLOTKERNAL && !MAKEARCHIVE */
160 # define LIBCALL STDCALL
161 # define LIBFUNCTION EXTERNC DLLIMPORT
165 * V11.3 tecio functions
168 LIBFUNCTION
void LIBCALL
TECFOREIGN112(INTEGER4
*OutputForeignByteOrder
);
170 LIBFUNCTION INTEGER4 LIBCALL
TECINI112(char *Title
,
176 INTEGER4
*VIsDouble
);
178 LIBFUNCTION INTEGER4 LIBCALL
TECZNE112(char *ZoneTitle
,
180 INTEGER4
*IMxOrNumPts
,
181 INTEGER4
*JMxOrNumElements
,
182 INTEGER4
*KMxOrNumFaces
,
186 double *SolutionTime
,
188 INTEGER4
*ParentZone
,
190 INTEGER4
*NumFaceConnections
,
191 INTEGER4
*FaceNeighborMode
,
192 INTEGER4
*TotalNumFaceNodes
,
193 INTEGER4
*NumConnectedBoundaryFaces
,
194 INTEGER4
*TotalNumBoundaryConnections
,
195 INTEGER4
*PassiveVarList
,
196 INTEGER4
*ValueLocation
,
197 INTEGER4
*ShareVarFromZone
,
198 INTEGER4
*ShareConnectivityFromZone
);
200 LIBFUNCTION INTEGER4 LIBCALL
TECDAT112(INTEGER4
*N
,
204 LIBFUNCTION INTEGER4 LIBCALL
TECNOD112(INTEGER4
*NData
);
206 LIBFUNCTION INTEGER4 LIBCALL
TECEND112(void);
208 LIBFUNCTION INTEGER4 LIBCALL
TECLAB112(char *S
);
210 LIBFUNCTION INTEGER4 LIBCALL
TECUSR112(char *S
);
212 LIBFUNCTION INTEGER4 LIBCALL
TECGEO112(double *XPos
,
215 INTEGER4
*PosCoordMode
,
216 INTEGER4
*AttachToZone
,
222 INTEGER4
*LinePattern
,
223 double *PatternLength
,
224 double *LineThickness
,
225 INTEGER4
*NumEllipsePts
,
226 INTEGER4
*ArrowheadStyle
,
227 INTEGER4
*ArrowheadAttachment
,
228 double *ArrowheadSize
,
229 double *ArrowheadAngle
,
232 INTEGER4
*NumSegments
,
239 LIBFUNCTION INTEGER4 LIBCALL
TECTXT112(double *XOrThetaPos
,
241 double *ZOrUnusedPos
,
242 INTEGER4
*PosCoordMode
,
243 INTEGER4
*AttachToZone
,
246 INTEGER4
*FontHeightUnits
,
250 double *BoxLineThickness
,
252 INTEGER4
*BoxFillColor
,
262 LIBFUNCTION INTEGER4 LIBCALL
TECFIL112(INTEGER4
*F
);
264 LIBFUNCTION INTEGER4 LIBCALL
TECAUXSTR112(char *Name
,
267 LIBFUNCTION INTEGER4 LIBCALL
TECZAUXSTR112(char *Name
,
270 LIBFUNCTION INTEGER4 LIBCALL
TECVAUXSTR112(INTEGER4
*Var
,
274 LIBFUNCTION INTEGER4 LIBCALL
TECFACE112(INTEGER4
*FaceConnections
);
276 LIBFUNCTION INTEGER4 LIBCALL
TECPOLY112(INTEGER4
*FaceNodeCounts
,
278 INTEGER4
*FaceLeftElems
,
279 INTEGER4
*FaceRightElems
,
280 INTEGER4
*FaceBndryConnectionCounts
,
281 INTEGER4
*FaceBndryConnectionElems
,
282 INTEGER4
*FaceBndryConnectionZones
);
285 * V11.1 tecio functions TODO (JN): Tecplot's version is still in flux so the .1 may change
288 LIBFUNCTION
void LIBCALL
TECFOREIGN111(INTEGER4
*OutputForeignByteOrder
);
290 LIBFUNCTION INTEGER4 LIBCALL
TECINI111(char *Title
,
296 INTEGER4
*VIsDouble
);
298 LIBFUNCTION INTEGER4 LIBCALL
TECZNE111(char *ZoneTitle
,
300 INTEGER4
*IMxOrNumPts
,
301 INTEGER4
*JMxOrNumElements
,
302 INTEGER4
*KMxOrNumFaces
,
306 double *SolutionTime
,
308 INTEGER4
*ParentZone
,
310 INTEGER4
*NumFaceConnections
,
311 INTEGER4
*FaceNeighborMode
,
312 INTEGER4
*TotalNumFaceNodes
,
313 INTEGER4
*NumConnectedBoundaryFaces
,
314 INTEGER4
*TotalNumBoundaryConnections
,
315 INTEGER4
*PassiveVarList
,
316 INTEGER4
*ValueLocation
,
317 INTEGER4
*ShareVarFromZone
,
318 INTEGER4
*ShareConnectivityFromZone
);
320 LIBFUNCTION INTEGER4 LIBCALL
TECDAT111(INTEGER4
*N
,
324 LIBFUNCTION INTEGER4 LIBCALL
TECNOD111(INTEGER4
*NData
);
326 LIBFUNCTION INTEGER4 LIBCALL
TECEND111(void);
328 LIBFUNCTION INTEGER4 LIBCALL
TECLAB111(char *S
);
330 LIBFUNCTION INTEGER4 LIBCALL
TECUSR111(char *S
);
332 LIBFUNCTION INTEGER4 LIBCALL
TECGEO111(double *XPos
,
335 INTEGER4
*PosCoordMode
,
336 INTEGER4
*AttachToZone
,
342 INTEGER4
*LinePattern
,
343 double *PatternLength
,
344 double *LineThickness
,
345 INTEGER4
*NumEllipsePts
,
346 INTEGER4
*ArrowheadStyle
,
347 INTEGER4
*ArrowheadAttachment
,
348 double *ArrowheadSize
,
349 double *ArrowheadAngle
,
352 INTEGER4
*NumSegments
,
359 LIBFUNCTION INTEGER4 LIBCALL
TECTXT111(double *XOrThetaPos
,
361 double *ZOrUnusedPos
,
362 INTEGER4
*PosCoordMode
,
363 INTEGER4
*AttachToZone
,
366 INTEGER4
*FontHeightUnits
,
370 double *BoxLineThickness
,
372 INTEGER4
*BoxFillColor
,
382 LIBFUNCTION INTEGER4 LIBCALL
TECFIL111(INTEGER4
*F
);
384 LIBFUNCTION INTEGER4 LIBCALL
TECAUXSTR111(char *Name
,
387 LIBFUNCTION INTEGER4 LIBCALL
TECZAUXSTR111(char *Name
,
390 LIBFUNCTION INTEGER4 LIBCALL
TECVAUXSTR111(INTEGER4
*Var
,
394 LIBFUNCTION INTEGER4 LIBCALL
TECFACE111(INTEGER4
*FaceConnections
);
396 LIBFUNCTION INTEGER4 LIBCALL
TECPOLY111(INTEGER4
*FaceNodeCounts
,
398 INTEGER4
*FaceLeftElems
,
399 INTEGER4
*FaceRightElems
,
400 INTEGER4
*FaceBndryConnectionCounts
,
401 INTEGER4
*FaceBndryConnectionElems
,
402 INTEGER2
*FaceBndryConnectionZones
);
406 * V11 tecio functions
409 LIBFUNCTION
void LIBCALL
TECFOREIGN110(INTEGER4
*OutputForeignByteOrder
);
411 LIBFUNCTION INTEGER4 LIBCALL
TECINI110(char *Title
,
416 INTEGER4
*VIsDouble
);
418 LIBFUNCTION INTEGER4 LIBCALL
TECZNE110(char *ZoneTitle
,
420 INTEGER4
*IMxOrNumPts
,
421 INTEGER4
*JMxOrNumElements
,
422 INTEGER4
*KMxOrNumFaces
,
426 double *SolutionTime
,
428 INTEGER4
*ParentZone
,
430 INTEGER4
*NumFaceConnections
,
431 INTEGER4
*FaceNeighborMode
,
432 INTEGER4
*PassiveVarList
,
433 INTEGER4
*ValueLocation
,
434 INTEGER4
*ShareVarFromZone
,
435 INTEGER4
*ShareConnectivityFromZone
);
437 LIBFUNCTION INTEGER4 LIBCALL
TECDAT110(INTEGER4
*N
,
441 LIBFUNCTION INTEGER4 LIBCALL
TECNOD110(INTEGER4
*NData
);
443 LIBFUNCTION INTEGER4 LIBCALL
TECEND110(void);
445 LIBFUNCTION INTEGER4 LIBCALL
TECLAB110(char *S
);
447 LIBFUNCTION INTEGER4 LIBCALL
TECUSR110(char *S
);
449 LIBFUNCTION INTEGER4 LIBCALL
TECGEO110(double *XPos
,
452 INTEGER4
*PosCoordMode
,
453 INTEGER4
*AttachToZone
,
459 INTEGER4
*LinePattern
,
460 double *PatternLength
,
461 double *LineThickness
,
462 INTEGER4
*NumEllipsePts
,
463 INTEGER4
*ArrowheadStyle
,
464 INTEGER4
*ArrowheadAttachment
,
465 double *ArrowheadSize
,
466 double *ArrowheadAngle
,
469 INTEGER4
*NumSegments
,
476 LIBFUNCTION INTEGER4 LIBCALL
TECTXT110(double *XOrThetaPos
,
478 double *ZOrUnusedPos
,
479 INTEGER4
*PosCoordMode
,
480 INTEGER4
*AttachToZone
,
483 INTEGER4
*FontHeightUnits
,
487 double *BoxLineThickness
,
489 INTEGER4
*BoxFillColor
,
499 LIBFUNCTION INTEGER4 LIBCALL
TECFIL110(INTEGER4
*F
);
501 LIBFUNCTION INTEGER4 LIBCALL
TECAUXSTR110(char *Name
,
504 LIBFUNCTION INTEGER4 LIBCALL
TECZAUXSTR110(char *Name
,
507 LIBFUNCTION INTEGER4 LIBCALL
TECVAUXSTR110(INTEGER4
*Var
,
511 LIBFUNCTION INTEGER4 LIBCALL
TECFACE110(INTEGER4
*FaceConnections
);
515 * V10 tecio functions kept for backward compatability.
518 LIBFUNCTION
void LIBCALL
TECFOREIGN100(INTEGER4
*OutputForeignByteOrder
);
520 LIBFUNCTION INTEGER4 LIBCALL
TECINI100(char *Title
,
525 INTEGER4
*VIsDouble
);
527 LIBFUNCTION INTEGER4 LIBCALL
TECZNE100(char *ZoneTitle
,
529 INTEGER4
*IMxOrNumPts
,
530 INTEGER4
*JMxOrNumElements
,
531 INTEGER4
*KMxOrNumFaces
,
536 INTEGER4
*NumFaceConnections
,
537 INTEGER4
*FaceNeighborMode
,
538 INTEGER4
*ValueLocation
,
539 INTEGER4
*ShareVarFromZone
,
540 INTEGER4
*ShareConnectivityFromZone
);
542 LIBFUNCTION INTEGER4 LIBCALL
TECDAT100(INTEGER4
*N
,
546 LIBFUNCTION INTEGER4 LIBCALL
TECNOD100(INTEGER4
*NData
);
548 LIBFUNCTION INTEGER4 LIBCALL
TECEND100(void);
550 LIBFUNCTION INTEGER4 LIBCALL
TECLAB100(char *S
);
552 LIBFUNCTION INTEGER4 LIBCALL
TECUSR100(char *S
);
554 LIBFUNCTION INTEGER4 LIBCALL
TECGEO100(double *XPos
,
557 INTEGER4
*PosCoordMode
,
558 INTEGER4
*AttachToZone
,
564 INTEGER4
*LinePattern
,
565 double *PatternLength
,
566 double *LineThickness
,
567 INTEGER4
*NumEllipsePts
,
568 INTEGER4
*ArrowheadStyle
,
569 INTEGER4
*ArrowheadAttachment
,
570 double *ArrowheadSize
,
571 double *ArrowheadAngle
,
574 INTEGER4
*NumSegments
,
581 LIBFUNCTION INTEGER4 LIBCALL
TECTXT100(double *XOrThetaPos
,
583 double *ZOrUnusedPos
,
584 INTEGER4
*PosCoordMode
,
585 INTEGER4
*AttachToZone
,
588 INTEGER4
*FontHeightUnits
,
592 double *BoxLineThickness
,
594 INTEGER4
*BoxFillColor
,
604 LIBFUNCTION INTEGER4 LIBCALL
TECFIL100(INTEGER4
*F
);
606 LIBFUNCTION INTEGER4 LIBCALL
TECAUXSTR100(char *Name
,
609 LIBFUNCTION INTEGER4 LIBCALL
TECZAUXSTR100(char *Name
,
612 LIBFUNCTION INTEGER4 LIBCALL
TECVAUXSTR100(INTEGER4
*Var
,
616 LIBFUNCTION INTEGER4 LIBCALL
TECFACE100(INTEGER4
*FaceConnections
);
618 /* Old V9 functions retained for backward compatibility */
620 LIBFUNCTION INTEGER4 LIBCALL
TECINI(char *Title
,
625 INTEGER4
*VIsDouble
);
627 LIBFUNCTION INTEGER4 LIBCALL
TECZNE(char *ZoneTitle
,
634 LIBFUNCTION INTEGER4 LIBCALL
TECDAT(INTEGER4
*N
,
638 LIBFUNCTION INTEGER4 LIBCALL
TECNOD(INTEGER4
*NData
);
640 LIBFUNCTION INTEGER4 LIBCALL
TECEND(void);
642 LIBFUNCTION INTEGER4 LIBCALL
TECLAB(char *S
);
644 LIBFUNCTION INTEGER4 LIBCALL
TECUSR(char *S
);
646 LIBFUNCTION INTEGER4 LIBCALL
TECGEO(double *XPos
,
649 INTEGER4
*PosCoordMode
,
650 INTEGER4
*AttachToZone
,
656 INTEGER4
*LinePattern
,
657 double *PatternLength
,
658 double *LineThickness
,
659 INTEGER4
*NumEllipsePts
,
660 INTEGER4
*ArrowheadStyle
,
661 INTEGER4
*ArrowheadAttachment
,
662 double *ArrowheadSize
,
663 double *ArrowheadAngle
,
665 INTEGER4
*NumSegments
,
672 LIBFUNCTION INTEGER4 LIBCALL
TECTXT(double *XPos
,
674 INTEGER4
*PosCoordMode
,
675 INTEGER4
*AttachToZone
,
678 INTEGER4
*FontHeightUnits
,
682 double *BoxLineThickness
,
684 INTEGER4
*BoxFillColor
,
693 LIBFUNCTION INTEGER4 LIBCALL
TECFIL(INTEGER4
*F
);
695 #if defined TECPLOTKERNEL
696 /* CORE SOURCE CODE REMOVED */
698 #endif /* TECXXX_H_ */