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/
24 /* BEGINREMOVEFROMADDON */
25 /* NOTE: All code contained between comments that look like
26 * BEGINREMOVEFROMADDON
28 * are pulled out to create the GLOBAL.h file used in addons.
30 /* ENDREMOVEFROMADDON */
33 ******************************************************************
34 ******************************************************************
36 ****** (C) 1988-2008 Tecplot, Inc. *******
38 ******************************************************************
39 ******************************************************************
48 #if defined Q_MAINMODULE && defined TECPLOTKERNEL
49 /* CORE SOURCE CODE REMOVED */
54 #define EXPORT_DEPRECATED_INTERFACES_TO_ADK_ONLY
55 /* BEGINREMOVEFROMADDON */
57 * The reason for wrapping this test with "begin and end remove from addon" key
58 * words is so that the ADK users doesn't have to see this mess.
60 #if !defined COREAPI && \
61 !defined TECUTILMMODULE && \
62 !defined TECUTILOMODULE && \
63 !defined TECUTILQMODULE && \
64 !defined TECUTILSMODULE
65 /* we don't want Tecplot internals using deprecated interfaces */
66 # undef EXPORT_DEPRECATED_INTERFACES_TO_ADK_ONLY
68 /* ENDREMOVEFROMADDON */
71 /****************************************************************
75 ****************************************************************/
98 #define TRUE ((Boolean_t)1)
99 #define FALSE ((Boolean_t)0)
101 /****************************************************************
105 ****************************************************************/
106 #define ABS(X) ((X) >= 0 ? (X) : -(X) )
107 #define MAX(X,Y) ((X) > (Y) ? (X) : (Y) )
108 #define MIN(X,Y) ((X) < (Y) ? (X) : (Y) )
109 #define BESTSHOWCOLOR(X) ((X) == White_C ? Black_C : White_C)
110 #define ROUND_TO_BYTE(X) ((BYTE)((X)+0.499))
111 #define ROUNDS(X) ((short)((X)+0.499))
112 #define ROUNDL(X) ((LgIndex_t)((X)+0.499))
113 #define ROUND2(X) ((X) >= 0 ? ((int)((X)+0.499)) : ((int)((X)-0.499)))
114 #define TRUNC(X) ((short) (X))
115 #define RAD_TO_DEG(rad) (180.*(rad)/PI)
116 #define DEG_TO_RAD(deg) (PI*(deg)/180.)
118 # define CAPITAL(C) ( ('a'<=(C)&&(C)<='z') ? ((C)+('A'-'a')) : (C) ) /* okay for UNICODE */
122 #if defined TECPLOTKERNEL && defined MSWIN
123 /* CORE SOURCE CODE REMOVED */
125 #define ISEMPTYSTRING(S) ( ((const char*)(S))[0] == '\0' )
128 #define ISWHITESPACE(C) ((C == ' ') || (C == '\t') || (C == '\n'))
129 #define ISSEPARATOR(C) ((C == ' ') || (C == '\t') || (C == ','))
130 /* clamp the input to the specified range */
131 #define CLAMP(value,low,high) ((value)<(low) ? (low) : (value) > (high) ? (high) : (value))
132 /* integer division rounds any fraction up (for example n=16,d=3 results in 6) */
133 #define INTEGER_DIVIDE_AND_ROUND_UP(n, d) (((int)(n)+(int)(d)-1)/(int)(d))
135 /* BEGINREMOVEFROMADDON */
137 * Calcualtes the cell's primary corner or cell centered index from the I, J,
140 * Consider this IJ zone dimensioned 4 by 3:
142 +-------+-------+-------+-------+
144 | <8> | <9> | <10> | <11> | <--- ghost cells
147 +-------+-------+-------+-------+
149 | <4> | <5> | <6> | <7> |
152 +-------+-------+-------+-------+
154 | <0> | <1> | <2> | <3> |
157 +-------+-------+-------+-------+
165 #define IJKINDEX(CZData,I,J,K) ((I) + \
166 ((J)*(CZData)->NumIPts) + \
167 ((K)*(CZData)->NumIJPts))
170 * Calculates the I indice from the cell's primary corner or cell centered
171 * index. See IJKINDEX() for a picture.
173 #define IINDEX(CZData,N) ((N) % (CZData)->NumIPts)
176 * Calculates the J indice from the cell's primary corner or cell centered
177 * index. See IJKINDEX() for a picture.
179 #define JINDEX(CZData,N) (((N) % (CZData)->NumIJPts)/(CZData)->NumIPts)
182 * Calculates the K indice from the cell's primary corner or cell centered
183 * index. See IJKINDEX() for a picture.
185 #define KINDEX(CZData,N) ((N)/(CZData)->NumIJPts)
186 /* ENDREMOVEFROMADDON */
189 #define SWITCH(Type,A,B) do {Type T = (A); (A) = (B); (B) = T;} while (FALSE)
190 #define SWITCH_DOUBLES(A,B) SWITCH(double, (A), (B))
191 #define FPRINTFOK(x) (Boolean_t)((x) > 0)
192 #define GRAPHICSARE3D(F) ((F->PlotType == PlotType_Cartesian3D))
194 /* convenience macros for implication, P -> Q, and equivalence, P <-> Q. */
195 #define IMPLICATION(P,Q) (!(P) || (Q))
196 #define EQUIVALENCE(P,Q) ((P) == (Q))
198 /* suppress compiler warnings about unused parameters */
202 #define UNUSED(param) (void)param
205 * Converts a double into a float value
208 * double value to be converted
210 #define CONVERT_DOUBLE_TO_FLOAT(val) \
211 ( (val) >= SMALLFLOAT \
212 ? ( (val) < LARGEFLOAT \
214 : (float)LARGEFLOAT \
216 : ( (val) <= -SMALLFLOAT \
217 ? ( (val) > -LARGEFLOAT \
219 : (float)-LARGEFLOAT \
227 * Clamps a double at the limits of Tecplot's precision
230 * double value to be clamped
232 #define CLAMP_DOUBLE(val) \
233 ( (val) >= SMALLDOUBLE \
234 ? ( (val) < LARGEDOUBLE \
236 : (double)LARGEDOUBLE \
238 : ( (val) <= -SMALLDOUBLE \
239 ? ( (val) > -LARGEDOUBLE \
241 : (double)-LARGEDOUBLE \
249 * Converts a double into a 4-byte (signed) integer value
252 * double value to be converted
254 #define CONVERT_DOUBLE_TO_INT32(val) \
256 ? ( (val) < MAXINT32 \
258 : (Int32_t)MAXINT32 \
261 ? ( (val) > (Int32_t)-MAXINT32 \
263 : (Int32_t)-MAXINT32 \
271 * Converts a double into a 2-byte (signed) integer value
274 * double value to be converted
276 #define CONVERT_DOUBLE_TO_INT16(val) \
278 ? ( (val) < MAXINT16 \
280 : (Int16_t)MAXINT16 \
283 ? ( (val) > (Int16_t)-MAXINT16 \
285 : (Int16_t)-MAXINT16 \
292 * Copies two bytes from SrcBuffer to DstBuffer without causing a page
293 * fault due to misaligned words.
296 * Pointer the buffer to send the two bytes to
298 * Pointer the buffer to get the two bytes from
300 #define COPY_2_UNALIGNED_BYTES(DstBuffer, SrcBuffer) \
302 /* cannot check sizeof(SrcBuffer) or sizeof(DstBuffer) because they are */ \
303 /* most likely single byte pointers into unaligned blocks of data */ \
304 ((Byte_t *)(DstBuffer))[0] = ((Byte_t *)(SrcBuffer))[0]; \
305 ((Byte_t *)(DstBuffer))[1] = ((Byte_t *)(SrcBuffer))[1]; \
309 * Copies two bytes from SrcBuffer to DstBuffer swapping the bytes
310 * as it copies. Will not cause a page fault due to misaligned words.
313 * Pointer the buffer to send the two bytes to
315 * Pointer the buffer to get the two bytes from
317 #define COPY_AND_REVERSE_2_UNALIGNED_BYTES(DstBuffer, SrcBuffer) \
319 /* cannot check sizeof(SrcBuffer) or sizeof(DstBuffer) because they are */ \
320 /* most likely single byte pointers into unaligned blocks of data */ \
321 ((Byte_t *)(DstBuffer))[0] = ((Byte_t *)(SrcBuffer))[1]; \
322 ((Byte_t *)(DstBuffer))[1] = ((Byte_t *)(SrcBuffer))[0]; \
326 * Copies four bytes from SrcBuffer to DstBuffer without causing a page
327 * fault due to misaligned words.
330 * Pointer the buffer to send the four bytes to
332 * Pointer the buffer to get the four bytes from
334 #define COPY_4_UNALIGNED_BYTES(DstBuffer, SrcBuffer) \
336 /* cannot check sizeof(SrcBuffer) or sizeof(DstBuffer) because they are */ \
337 /* most likely single byte pointers into unaligned blocks of data */ \
338 ((Byte_t *)(DstBuffer))[0] = ((Byte_t *)(SrcBuffer))[0]; \
339 ((Byte_t *)(DstBuffer))[1] = ((Byte_t *)(SrcBuffer))[1]; \
340 ((Byte_t *)(DstBuffer))[2] = ((Byte_t *)(SrcBuffer))[2]; \
341 ((Byte_t *)(DstBuffer))[3] = ((Byte_t *)(SrcBuffer))[3]; \
345 * Copies four bytes from SrcBuffer to DstBuffer swapping the bytes
346 * as it copies. Will not cause a page fault due to misaligned words.
349 * Pointer the buffer to send the four bytes to
351 * Pointer the buffer to get the four bytes from
353 #define COPY_AND_REVERSE_4_UNALIGNED_BYTES(DstBuffer, SrcBuffer) \
355 /* cannot check sizeof(SrcBuffer) or sizeof(DstBuffer) because they are */ \
356 /* most likely single byte pointers into unaligned blocks of data */ \
357 ((Byte_t *)(DstBuffer))[0] = ((Byte_t *)(SrcBuffer))[3]; \
358 ((Byte_t *)(DstBuffer))[1] = ((Byte_t *)(SrcBuffer))[2]; \
359 ((Byte_t *)(DstBuffer))[2] = ((Byte_t *)(SrcBuffer))[1]; \
360 ((Byte_t *)(DstBuffer))[3] = ((Byte_t *)(SrcBuffer))[0]; \
364 * Copies four bytes from SrcBuffer to DstBuffer without causing a page
365 * fault due to misaligned words.
368 * Pointer the buffer to send the four bytes to
370 * Pointer the buffer to get the four bytes from
372 #define COPY_8_UNALIGNED_BYTES(DstBuffer, SrcBuffer) \
374 /* cannot check sizeof(SrcBuffer) or sizeof(DstBuffer) because they are */ \
375 /* most likely single byte pointers into unaligned blocks of data */ \
376 ((Byte_t *)(DstBuffer))[0] = ((Byte_t *)(SrcBuffer))[0]; \
377 ((Byte_t *)(DstBuffer))[1] = ((Byte_t *)(SrcBuffer))[1]; \
378 ((Byte_t *)(DstBuffer))[2] = ((Byte_t *)(SrcBuffer))[2]; \
379 ((Byte_t *)(DstBuffer))[3] = ((Byte_t *)(SrcBuffer))[3]; \
380 ((Byte_t *)(DstBuffer))[4] = ((Byte_t *)(SrcBuffer))[4]; \
381 ((Byte_t *)(DstBuffer))[5] = ((Byte_t *)(SrcBuffer))[5]; \
382 ((Byte_t *)(DstBuffer))[6] = ((Byte_t *)(SrcBuffer))[6]; \
383 ((Byte_t *)(DstBuffer))[7] = ((Byte_t *)(SrcBuffer))[7]; \
387 * Copies eight bytes from SrcBuffer to DstBuffer swapping the bytes
388 * as it copies. Will not cause a page fault due to misaligned words.
391 * Pointer the buffer to send the four bytes to
393 * Pointer the buffer to get the four bytes from
395 #define COPY_AND_REVERSE_8_UNALIGNED_BYTES(DstBuffer, SrcBuffer) \
397 /* cannot check sizeof(SrcBuffer) or sizeof(DstBuffer) because they are */ \
398 /* most likely single byte pointers into unaligned blocks of data */ \
399 ((Byte_t *)(DstBuffer))[0] = ((Byte_t *)(SrcBuffer))[7]; \
400 ((Byte_t *)(DstBuffer))[1] = ((Byte_t *)(SrcBuffer))[6]; \
401 ((Byte_t *)(DstBuffer))[2] = ((Byte_t *)(SrcBuffer))[5]; \
402 ((Byte_t *)(DstBuffer))[3] = ((Byte_t *)(SrcBuffer))[4]; \
403 ((Byte_t *)(DstBuffer))[4] = ((Byte_t *)(SrcBuffer))[3]; \
404 ((Byte_t *)(DstBuffer))[5] = ((Byte_t *)(SrcBuffer))[2]; \
405 ((Byte_t *)(DstBuffer))[6] = ((Byte_t *)(SrcBuffer))[1]; \
406 ((Byte_t *)(DstBuffer))[7] = ((Byte_t *)(SrcBuffer))[0]; \
410 * Reverses the byte order of the specified 2 byte buffer.
413 * Pointer to the 2 bytes needing byte order reversal.
415 #define REVERSE_2_BYTES_1_AT_A_TIME(Buffer) \
417 Byte_t Byte0 = ((Byte_t *)(Buffer))[0]; \
418 CHECK(sizeof(*(Buffer))==1 || sizeof(*(Buffer))==2); \
419 ((Byte_t *)(Buffer))[0] = ((Byte_t *)(Buffer))[1]; \
420 ((Byte_t *)(Buffer))[1] = Byte0; \
423 #define REVERSE_2_BYTES_2_AT_A_TIME(Buffer) \
425 UInt16_t data_bits = ((UInt16_t *)(Buffer))[0]; \
426 CHECK(sizeof(*(Buffer))==1 || sizeof(*(Buffer))==2); \
427 ((UInt16_t *)(Buffer))[0] = (((data_bits)<<8) | \
428 ((data_bits&0xff))); \
431 /* REVERSE_2_BYTES_2_AT_A_TIME may actually be slower, needs testing. */
432 #define REVERSE_2_BYTES REVERSE_2_BYTES_1_AT_A_TIME
435 * Reverses the byte order of the specified 4 byte buffer.
438 * Pointer to the 4 bytes needing byte order reversal.
456 * (1) | (2) | (3) | (4) = DCBA.
459 #define REVERSE_4_BYTES_1_AT_A_TIME(Buffer) \
461 Byte_t Byte0 = ((Byte_t *)(Buffer))[0]; \
462 Byte_t Byte1 = ((Byte_t *)(Buffer))[1]; \
463 CHECK(sizeof(*(Buffer))==1 || sizeof(*(Buffer))==4); \
464 ((Byte_t *)(Buffer))[0] = ((Byte_t *)(Buffer))[3]; \
465 ((Byte_t *)(Buffer))[1] = ((Byte_t *)(Buffer))[2]; \
466 ((Byte_t *)(Buffer))[2] = Byte1; \
467 ((Byte_t *)(Buffer))[3] = Byte0; \
470 #define REVERSE_4_BYTES_4_AT_A_TIME(Buffer) \
472 UInt32_t data_bits = *((UInt32_t *)(Buffer)); \
473 CHECK(sizeof(*(Buffer))==1 || sizeof(*(Buffer))==4); \
474 *((UInt32_t *)(Buffer)) = (((data_bits)<<24) | \
475 ((data_bits&0x0000ff00)<<8) | \
476 ((data_bits&0x00ff0000)>>8) | \
477 ((data_bits)>>24)); \
482 * The DevStuido compiler seems to be the only one that can truly handle this
483 * when optimization is turned on.
485 #define REVERSE_4_BYTES REVERSE_4_BYTES_4_AT_A_TIME
487 #define REVERSE_4_BYTES REVERSE_4_BYTES_1_AT_A_TIME
491 * Reverses the byte order of the specified 8 byte buffer.
494 * Pointer to the 8 bytes needing byte order reversal.
496 #define REVERSE_8_BYTES_1_AT_A_TIME(Buffer) \
498 Byte_t Byte0 = ((Byte_t *)(Buffer))[0]; \
499 Byte_t Byte1 = ((Byte_t *)(Buffer))[1]; \
500 Byte_t Byte2 = ((Byte_t *)(Buffer))[2]; \
501 Byte_t Byte3 = ((Byte_t *)(Buffer))[3]; \
502 CHECK(sizeof(*(Buffer))==1 || sizeof(*(Buffer))==8); \
503 ((Byte_t *)(Buffer))[0] = ((Byte_t *)(Buffer))[7]; \
504 ((Byte_t *)(Buffer))[1] = ((Byte_t *)(Buffer))[6]; \
505 ((Byte_t *)(Buffer))[2] = ((Byte_t *)(Buffer))[5]; \
506 ((Byte_t *)(Buffer))[3] = ((Byte_t *)(Buffer))[4]; \
507 ((Byte_t *)(Buffer))[4] = Byte3; \
508 ((Byte_t *)(Buffer))[5] = Byte2; \
509 ((Byte_t *)(Buffer))[6] = Byte1; \
510 ((Byte_t *)(Buffer))[7] = Byte0; \
513 #define REVERSE_8_BYTES_2_AT_A_TIME(Buffer) \
515 UInt16_t data_bits_0 = ((UInt16_t *)(Buffer))[0]; \
516 UInt16_t data_bits_1 = ((UInt16_t *)(Buffer))[1]; \
517 UInt16_t data_bits_2 = ((UInt16_t *)(Buffer))[2]; \
518 UInt16_t data_bits_3 = ((UInt16_t *)(Buffer))[3]; \
519 CHECK(sizeof(*(Buffer))==1 || sizeof(*(Buffer))==8); \
520 ((UInt16_t *)(Buffer))[0] = (((data_bits_3)<<8) | \
521 ((data_bits_3&0xff))); \
522 ((UInt16_t *)(Buffer))[1] = (((data_bits_2)<<8) | \
523 ((data_bits_2&0xff))); \
524 ((UInt16_t *)(Buffer))[2] = (((data_bits_1)<<8) | \
525 ((data_bits_1&0xff))); \
526 ((UInt16_t *)(Buffer))[3] = (((data_bits_0)<<8) | \
527 ((data_bits_0&0xff))); \
530 #define REVERSE_8_BYTES_4_AT_A_TIME(Buffer) \
532 UInt32_t data_bits_0 = ((UInt32_t *)(Buffer))[0]; \
533 UInt32_t data_bits_1 = ((UInt32_t *)(Buffer))[1]; \
534 CHECK(sizeof(*(Buffer))==1 || sizeof(*(Buffer))==8); \
535 ((UInt32_t *)(Buffer))[0] = (((data_bits_1)<<24) | \
536 ((data_bits_1&0x0000ff00)<<8) | \
537 ((data_bits_1&0x00ff0000)>>8) | \
538 ((data_bits_1)>>24)); \
539 ((UInt32_t *)(Buffer))[1] = (((data_bits_0)<<24) | \
540 ((data_bits_0&0x0000ff00)<<8) | \
541 ((data_bits_0&0x00ff0000)>>8) | \
542 ((data_bits_0)>>24)); \
545 #define REVERSE_8_BYTES_8_AT_A_TIME(Buffer) \
547 UInt64_t data_bits = *((UInt64_t *)(Buffer)); \
548 CHECK(sizeof(*(Buffer))==1 || sizeof(*(Buffer))==8); \
549 *((UInt64_t *)(Buffer)) = (((data_bits)<<56) | \
550 ((data_bits&0x000000000000ff00)<<40) | \
551 ((data_bits&0x0000000000ff0000)<<24) | \
552 ((data_bits&0x00000000ff000000)<<8) | \
553 ((data_bits&0x000000ff00000000)>>8) | \
554 ((data_bits&0x0000ff0000000000)>>24) | \
555 ((data_bits&0x00ff000000000000)>>40) | \
556 ((data_bits)>>56)); \
562 * The DevStuido compiler seems to be the only one that can truly handle this
563 * when optimization is turned on.
565 #define REVERSE_8_BYTES REVERSE_8_BYTES_4_AT_A_TIME
567 #define REVERSE_8_BYTES REVERSE_8_BYTES_1_AT_A_TIME
571 /****************************************************************
573 * ADD-ON MSWIN IMPORT/EXPORT DEFINITIONS *
575 ****************************************************************/
577 # define STDCALL __stdcall
582 #if defined (__cplusplus)
583 # define EXTERNC extern "C"
586 #endif /* __cplusplus */
589 #if defined AMTEC_INTERNAL_MAKELIBTEC || defined TECPLOTKERNEL
590 /* CORE SOURCE CODE REMOVED */
592 # define TECPLOT_DLLAPI _declspec ( dllimport )
595 # define TECPLOT_DLLAPI
598 #define LINKTOADDON EXTERNC TECPLOT_DLLAPI
604 * EXPORTFROMADDON void STDCALL InitTecAddOn(void) { ... }
608 # define EXPORTFROMADDON EXTERNC _declspec ( dllexport )
610 # define EXPORTFROMADDON EXTERNC
613 #define EXPORTFROMDLL EXPORTFROMADDON
615 #define InitTecAddOn InitTecAddOn113
616 #define TEC_INIT_FUNCTION_NAME "InitTecAddOn113"
618 /* BEGINREMOVEFROMADDON */
619 /* Use INLINE for static functions that could be optimized as inline. */
620 #if defined (__cplusplus) && !defined _DEBUG
621 # define INLINE inline
623 # define INLINE static
624 #endif /* __cplusplus */
625 /* ENDREMOVEFROMADDON */
628 /* BEGINREMOVEFROMADDON */
629 #if defined (MSWIN) ||\
632 defined (SUNSOLARIS86X) ||\
633 defined (COMPAQALPHA) ||\
635 defined (__LITTLE_ENDIAN__)
636 #define MACHINE_DOES_INTEL_ORDER
639 #if defined( MACHINE_DOES_INTEL_ORDER )
640 # define SwapBytes(IntelOrder) (!(IntelOrder))
642 # define SwapBytes(IntelOrder) (IntelOrder)
644 /* ENDREMOVEFROMADDON */
646 #if defined DECALPHA || \
647 defined LINUXALPHA || \
648 defined LINUXI64 || \
651 defined COMPAQALPHA || \
656 /****************************************************************
660 ****************************************************************/
661 #define LARGEMEMORY ((size_t)-1)
663 /* BEGINREMOVEFROMADDON */
664 /* Tclinterp add-on barfs on these huge integer constants */
665 /* Note: Tecplot is conservative by one on LARGEINTs max */
666 #define LARGEINT64 9223372036854775806LL
667 /* ENDREMOVEFROMADDON */
668 #define LARGEINT32 2147483646
669 #define LARGEINT16 32766
670 #define LARGEINT8 126
672 /* BEGINREMOVEFROMADDON */
673 #define LARGEUINT64 18446744073709551614ULL
674 /* ENDREMOVEFROMADDON */
675 #define LARGEUINT32 4294967294
676 #define LARGEUINT16 65534
677 #define LARGEUINT8 254
680 #define MAXINDEX ((LgIndex_t)LARGEINT16)
682 #define MAXINDEX ((LgIndex_t)LARGEINT32)
684 #define MAXZONEMAP MAXINDEX
685 #define LARGEDOUBLE 1.0e+150
686 #define SMALLDOUBLE 1.0e-150
687 #define LARGESTEXPONENT 150
688 #define SMALLESTEXPONENT -150
690 #define SMALLESTDOUBLE SMALLDOUBLE
692 #define LARGESTDOUBLEEXPONENT 308
693 #define SMALLESTDOUBLEEXPONENT -307
694 #define LARGESTDOUBLE 1.0e+308
695 #define LARGEFLOAT 3.40282347E+38
696 #define SMALLFLOAT 1.17549435E-38
697 #define SMALLSTDOUBLE 1.0e-307
699 /* Visual Studio 2008 defines MAXINT32, MAXINT16 which collide with ours */
707 #define MAXINT32 LARGEINT32
708 #define MAXINT16 LARGEINT16
710 #define LN2 0.69314718055994530942
711 #define LN10 2.30258509299404568402
712 #define PIOVER2 1.57079632679489661923
713 #define TWOPI 6.28318530717958647692
717 #define PI 3.14159265358979323846
718 #define ANGLEEPSILON 1.0e-10
719 #define LARGESTANGLE (4*PI+ANGLEEPSILON)
720 #define DEGPERRADIANS 57.295779513082323
721 #define CMPERINCH 2.54
722 #define POINTSPERINCH 72.0
723 #define FONTMOVEMARK 192
724 #define FONTDECISIONMARK 128
725 #define FONTLINEMARK 64
726 #define BAD_SET_VALUE ((SetIndex_t)-1)
727 #define MENU_POSITION_FIRST (0)
728 #define MENU_POSITION_LAST (-1)
729 #define INVALID_UNIQUE_ID 0
731 #define BADSETVALUE BAD_SET_VALUE
732 #define SOLID_TRANSLUCENCY 0
733 #define BAD_DISTANCE (-1.0)
734 /* MIN_CIRCUMFERENTIAL_INDEX is the min J dimension for circular zones */
735 #define MIN_CIRCUMFERENTIAL_INDEX 4
737 #define VALID_STRAND_ID(StrandID) (0 <= (StrandID) && (StrandID) < MAXZONEMAP)
738 #define STRAND_ID_STATIC (-1)
739 #define STRAND_ID_PENDING (-2)
742 * Need 3 passes for "Rest of pie" method but can only use 3 clip planes
743 * Need only 1 pass for "Piece of pie" method and can use 6 clip planes
745 #define MAX_ALLOWABLE_CLIPPASSES 1
746 #define MAX_ALLOWABLE_CLIPPLANES 6
748 /* BEGINREMOVEFROMADDON */
749 #if defined TECPLOTKERNEL
750 /* CORE SOURCE CODE REMOVED */
756 #endif /* TECPLOTKERNEL */
757 /* ENDREMOVEFROMADDON */
761 * NOTE: If you change TecplotBinaryFileVersion, you MUST also:
764 * - Change this define symbol in preplot.cpp
765 * - Change version number in the data file format in the comments in preplot.cpp
766 * - Change the version number of Preplot itself in preplot.cpp
767 * 2. Maintain the ability to write the old plt file format:
768 * - Add a new entry to BinaryFileVersion_e
769 * - Add a concrete class of the VersionWriterInterface, and update
770 * VersionWriterAbstractFactory to return the correct instance for the previous and
771 * new BinaryFileVersion_e
772 * - Abstract away the difference in the two versions behind an interface (if one does
773 * not yet exist) and create concrete implementations that can write the old and the
774 * new versions. For a trivial example of this, see FileTypeWriterInterface and its
775 * associated factory and concrete classes.
777 #define TecplotBinaryFileVersion 112
778 #define TecplotInterfaceVersion 120
779 #define TecplotInterfaceVersionStr "120" /* stay in lockstep with TecplotInterfaceVersion */
781 #define TecplotLicenseVersion 119 /* may vary from TecplotInterfaceVersion */
782 #define TecplotLicenseVersionStr "11.9" /* stay in lockstep with TecplotLicenseVersion */
784 #define TecplotLicenseVersion 120 /* may vary from TecplotInterfaceVersion */
785 #define TecplotLicenseVersionStr "12.0" /* stay in lockstep with TecplotLicenseVersion */
787 /* Also change the macro version number in COMMAND.MASTER.h */
789 #define MaxNumZonesOrVars MAXZONEMAP
792 #define MaxGeoSegments 50
793 #define MaxPtsCircleOrEllipse 720
794 #define MaxFrames 2048
795 #define MaxCustomLabelSets 10
796 #define MaxFontMoves 20000
797 #define MaxColorMapOverrides 16
798 #define MaxValueBlankConstraints 8
799 #define MaxContourGroups 8
800 #define MaxIsoSurfaceGroups 8
801 #define MaxSliceGroups 8
803 #define MaxColorMapGroups 8
804 #define DefaultNumContLevels 15
807 #define DefaultColorMapGroup ((SmInteger_t)0)
808 #define BADGROUPNUMBER ((SmInteger_t)-1)
809 #define UNUSEDGROUPNUMBER ((SmInteger_t)0)
811 #define VALID_ISOSURFACE_GROUP(Group) (((((SmInteger_t)Group) >= 0) && (((SmInteger_t)Group) < MaxIsoSurfaceGroups)))
812 #define VALID_SLICE_GROUP(Group) (((((SmInteger_t)Group) >= 0) && (((SmInteger_t)Group) < MaxSliceGroups)))
813 #define VALID_COLORMAP_GROUP(Group) (((((SmInteger_t)Group) >= 0) && (((SmInteger_t)Group) < MaxColorMapGroups)))
818 * If any of these values changes its corresponding value in preplot.c must
819 * change to match it so that files created by preplot and Tecplot are
822 #define MaxChrsDatasetTitle 256
823 #define MaxChrsZnTitle 128
824 #define MaxChrsVarName 128
825 #define MaxChrsZnOrVarName 128
826 /* currently limited to MaxLineIndex in preplot.c */
827 #define MaxChrsAuxValueString 32000
829 #define MaxNumViews 16
830 #define MaxBasicSizes 5
831 #define MaxColorMapControlPoints 50
832 #define MaxRawColorMapEntries 800
833 #define MaxDataSetReaders 100
834 #define MaxExtendedCurveFits 100
835 #define MaxColorMapCycles 20
838 /* Dimension Limits */
840 #define MinPaperDimInWorkArea 0.5
841 #define MinFrameWidth 0.25
842 #define MinFrameHeight 0.25
843 #define MinAxisLength 0.1
846 #define BadEnumValue 255
848 /* BEGINREMOVEFROMADDON */
849 /* define class element limits */
850 #if defined TECPLOTKERNEL
851 /* CORE SOURCE CODE REMOVED */
853 /* ENDREMOVEFROMADDON */
856 * Floating point values are written to layouts with a certain precision.
857 * A high precision is necessary in some cases (like streamtrace starting locations)
858 * This used to be set to 12 which was not high enough. It is now set to 16 which
859 * appears to be sufficient. This also seems to jive with the number of digits of
860 * precision that are found in "ieee double precision" values which is 53 bits or
861 * equivalent to approximately 16 digits. -bdp
864 #define STYLE_FLOAT_PRECISION 16
868 * Auxiliary data common names.
870 * Define Name Data Name Data Type Data Location
871 * ------------------------------------------ ------------------------------------ --------- -------------
873 #define AuxData_Common_Incompressible "Common.Incompressible" /* Boolean_t Dataset */
874 #define AuxData_Common_Density "Common.Density" /* double Dataset */
875 #define AuxData_Common_SpecificHeat "Common.SpecificHeat" /* double Dataset */
876 #define AuxData_Common_SpecificHeatVar "Common.SpecificHeatVar" /* int Dataset */
877 #define AuxData_Common_GasConstant "Common.GasConstant" /* double Dataset */
878 #define AuxData_Common_GasConstantVar "Common.GasConstantVar" /* int Dataset */
879 #define AuxData_Common_Gamma "Common.Gamma" /* double Dataset */
880 #define AuxData_Common_GammaVar "Common.GammaVar" /* int Dataset */
881 #define AuxData_Common_Viscosity "Common.Viscosity" /* double Dataset */
882 #define AuxData_Common_ViscosityVar "Common.ViscosityVar" /* int Dataset */
883 #define AuxData_Common_Conductivity "Common.Conductivity" /* double Dataset */
884 #define AuxData_Common_ConductivityVar "Common.ConductivityVar" /* int Dataset */
885 #define AuxData_Common_AngleOfAttack "Common.AngleOfAttack" /* double Dataset */
886 #define AuxData_Common_SpeedOfSound "Common.SpeedOfSound" /* double Dataset */
887 #define AuxData_Common_ReferenceU "Common.ReferenceU" /* double Dataset */
888 #define AuxData_Common_ReferenceV "Common.ReferenceV" /* double Dataset */
889 #define AuxData_Common_XVar "Common.XVar" /* int Dataset */
890 #define AuxData_Common_YVar "Common.YVar" /* int Dataset */
891 #define AuxData_Common_ZVar "Common.ZVar" /* int Dataset */
892 #define AuxData_Common_CVar "Common.CVar" /* int Dataset */
893 #define AuxData_Common_UVar "Common.UVar" /* int Dataset */
894 #define AuxData_Common_VVar "Common.VVar" /* int Dataset */
895 #define AuxData_Common_WVar "Common.WVar" /* int Dataset */
896 #define AuxData_Common_VectorVarsAreVelocity "Common.VectorVarsAreVelocity" /* Boolean_t Dataset */
897 #define AuxData_Common_PressureVar "Common.PressureVar" /* int Dataset */
898 #define AuxData_Common_TemperatureVar "Common.TemperatureVar" /* int Dataset */
899 #define AuxData_Common_DensityVar "Common.DensityVar" /* int Dataset */
900 #define AuxData_Common_StagnationEnergyVar "Common.StagnationEnergyVar" /* int Dataset */
901 #define AuxData_Common_MachNumberVar "Common.MachNumberVar" /* int Dataset */
902 #define AuxData_Common_ReferenceMachNumber "Common.ReferenceMachNumber" /* double Dataset */
903 #define AuxData_Common_ReferenceW "Common.ReferenceW" /* double Dataset */
904 #define AuxData_Common_PrandtlNumber "Common.PrandtlNumber" /* double DataSet */
905 #define AuxData_Common_Axisymmetric "Common.Axisymmetric" /* Boolean_t Dataset */
906 #define AuxData_Common_AxisOfSymmetryVarAssignment "Common.AxisOfSymmetryVarAssignment" /* int Dataset */
907 #define AuxData_Common_AxisValue "Common.AxisValue" /* double Dataset */
908 #define AuxData_Common_SteadyState "Common.SteadyState" /* Boolean_t Dataset */
909 #define AuxData_Common_TurbulentKineticEnergyVar "Common.TurbulentKineticEnergyVar" /* int Dataset */
910 #define AuxData_Common_TurbulentDissipationRateVar "Common.TurbulentDissipationRateVar" /* int Dataset */
911 #define AuxData_Common_TurbulentViscosityVar "Common.TurbulentViscosityVar" /* int Dataset */
912 #define AuxData_Common_TurbulentFrequencyVar "Common.TurbulentFrequencyVar" /* int Dataset */
913 #define AuxData_Common_Gravity "Common.Gravity" /* double Dataset */
914 #define AuxData_Common_IsBoundaryZone "Common.IsBoundaryZone" /* Boolean_t Zone */
915 #define AuxData_Common_BoundaryCondition "Common.BoundaryCondition" /* BCondition Zone */
916 #define AuxData_Common_Time "Common.Time" /* double Zone */
917 #define AuxData_Common_Mean "Common.Mean" /* double Variable */
918 #define AuxData_Common_Median "Common.Median" /* double Variable */
919 #define AuxData_Common_Variance "Common.Variance" /* double Variable */
920 #define AuxData_Common_StdDev "Common.StdDev" /* double Variable */
921 #define AuxData_Common_AvgDev "Common.AvgDev" /* double Variable */
922 #define AuxData_Common_GeoMean "Common.GeoMean" /* double Variable */
923 #define AuxData_Common_ChiSqre "Common.ChiSqre" /* double Variable */
931 /* BEGINREMOVEFROMADDON */
932 #if defined TECPLOTKERNEL
933 /* CORE SOURCE CODE REMOVED */
936 #endif /* TECPLOTKERNEL */
937 /* ENDREMOVEFROMADDON */
939 /* Tecplot Add-on Custom Products */
941 /* BEGINREMOVEFROMADDON */
942 /* In activeX, the color constants are an enum type,
943 so the activeX source code parser handles these as
944 a special case, and the types do not need to be
945 indicated as with the other hard #define constants */
946 /* ENDREMOVEFROMADDON */
948 #define Black_C ((ColorIndex_t)0)
949 #define Red_C ((ColorIndex_t)1)
950 #define Green_C ((ColorIndex_t)2)
951 #define Blue_C ((ColorIndex_t)3)
952 #define Cyan_C ((ColorIndex_t)4)
953 #define Yellow_C ((ColorIndex_t)5)
954 #define Purple_C ((ColorIndex_t)6)
955 #define White_C ((ColorIndex_t)7)
957 #define Custom1_C ((ColorIndex_t)8)
958 #define Custom2_C ((ColorIndex_t)9)
959 #define Custom3_C ((ColorIndex_t)10)
960 #define Custom4_C ((ColorIndex_t)11)
961 #define Custom5_C ((ColorIndex_t)12)
962 #define Custom6_C ((ColorIndex_t)13)
963 #define Custom7_C ((ColorIndex_t)14)
964 #define Custom8_C ((ColorIndex_t)15)
965 #define Custom9_C ((ColorIndex_t)16)
967 #define Custom10_C ((ColorIndex_t)17)
968 #define Custom11_C ((ColorIndex_t)18)
969 #define Custom12_C ((ColorIndex_t)19)
970 #define Custom13_C ((ColorIndex_t)20)
971 #define Custom14_C ((ColorIndex_t)21)
972 #define Custom15_C ((ColorIndex_t)22)
973 #define Custom16_C ((ColorIndex_t)23)
974 #define Custom17_C ((ColorIndex_t)24)
975 #define Custom18_C ((ColorIndex_t)25)
976 #define Custom19_C ((ColorIndex_t)26)
978 #define Custom20_C ((ColorIndex_t)27)
979 #define Custom21_C ((ColorIndex_t)28)
980 #define Custom22_C ((ColorIndex_t)29)
981 #define Custom23_C ((ColorIndex_t)30)
982 #define Custom24_C ((ColorIndex_t)31)
983 #define Custom25_C ((ColorIndex_t)32)
984 #define Custom26_C ((ColorIndex_t)33)
985 #define Custom27_C ((ColorIndex_t)34)
986 #define Custom28_C ((ColorIndex_t)35)
987 #define Custom29_C ((ColorIndex_t)36)
989 #define Custom30_C ((ColorIndex_t)37)
990 #define Custom31_C ((ColorIndex_t)38)
991 #define Custom32_C ((ColorIndex_t)39)
992 #define Custom33_C ((ColorIndex_t)40)
993 #define Custom34_C ((ColorIndex_t)41)
994 #define Custom35_C ((ColorIndex_t)42)
995 #define Custom36_C ((ColorIndex_t)43)
996 #define Custom37_C ((ColorIndex_t)44)
997 #define Custom38_C ((ColorIndex_t)45)
998 #define Custom39_C ((ColorIndex_t)46)
1000 #define Custom40_C ((ColorIndex_t)47)
1001 #define Custom41_C ((ColorIndex_t)48)
1002 #define Custom42_C ((ColorIndex_t)49)
1003 #define Custom43_C ((ColorIndex_t)50)
1004 #define Custom44_C ((ColorIndex_t)51)
1005 #define Custom45_C ((ColorIndex_t)52)
1006 #define Custom46_C ((ColorIndex_t)53)
1007 #define Custom47_C ((ColorIndex_t)54)
1008 #define Custom48_C ((ColorIndex_t)55)
1009 #define Custom49_C ((ColorIndex_t)56)
1011 #define Custom50_C ((ColorIndex_t)57)
1012 #define Custom51_C ((ColorIndex_t)58)
1013 #define Custom52_C ((ColorIndex_t)59)
1014 #define Custom53_C ((ColorIndex_t)60)
1015 #define Custom54_C ((ColorIndex_t)61)
1016 #define Custom55_C ((ColorIndex_t)62)
1017 #define Custom56_C ((ColorIndex_t)63)
1019 #define MultiColor_C ((ColorIndex_t)(-1))
1020 #define NoColor_C ((ColorIndex_t)(-2))
1021 #define MultiColor2_C ((ColorIndex_t)(-3))
1022 #define MultiColor3_C ((ColorIndex_t)(-4))
1023 #define MultiColor4_C ((ColorIndex_t)(-5))
1024 #define RGBColor_C ((ColorIndex_t)(-6))
1025 #define MultiColor5_C ((ColorIndex_t)(-7))
1026 #define MultiColor6_C ((ColorIndex_t)(-8))
1027 #define MultiColor7_C ((ColorIndex_t)(-9))
1028 #define MultiColor8_C ((ColorIndex_t)(-10))
1029 #define InvalidColor_C ((ColorIndex_t)(-255))
1031 #define FirstCustomColor Custom1_C
1032 #define LastCustomColor Custom56_C
1033 #define NumCustomColors (LastCustomColor-FirstCustomColor+1)
1035 #define FirstBasicColor Black_C
1036 #define LastBasicColor LastCustomColor
1037 #define NumBasicColors (LastBasicColor-FirstBasicColor+1)
1039 /* BEGINREMOVEFROMADDON */
1042 * V8 and earlier used this for MultiColor_C. We adjust this
1043 * to the new value in the SetValue layer so old addons work.
1045 #define OldMultiColor_C ((ColorIndex_t)255)
1047 * Gray is only used in the interface for workspace background and
1048 * for insensitive buttons in Motif.
1049 * True Black and True White are also interface only. They draw
1050 * true black or true white - regardless of what the user has set
1051 * the RGB values for the black and white basic colors.
1052 * XOrColor_C is also for interface only.
1054 #define Gray_C (LastBasicColor+1)
1055 #define DarkGray_C (LastBasicColor+2) /* Used for inactive frame border color */
1056 #define XOrColor_C (LastBasicColor+3)
1057 #define FirstInterfaceColor Gray_C
1058 #define LastInterfaceColor XOrColor_C
1060 #define NumInterfaceColors (LastInterfaceColor-FirstInterfaceColor+1)
1061 #define NumContourShades (GeneralBase.Limits.MaxNumContourLevels+1)
1062 #define NumColorsInColorTable (NumBasicColors+NumInterfaceColors+NumContourShades)
1063 #define BasicColorOffset (0)
1064 #define InterfaceColorOffset (NumBasicColors)
1065 #define ContourColorOffset (NumBasicColors+NumInterfaceColors)
1067 #define BadKey (short)31
1068 #define Plus (short)43
1069 #define Minus (short)45
1070 #define RetKey (short)13
1071 #define DeleteKey (short)127
1072 #define ShiftDelete (short)128
1073 #define BackSpace (short)8
1074 #define LeftArrow (short)29
1075 #define RightArrow (short)30
1076 #define UpArrow (short)11
1077 #define DownArrow (short)10
1078 #define Toggle (short)19
1079 #define Esc (short)27
1080 #define RegFrame (short)18
1081 #define DoBitDump (short)2
1085 #define ZoneMarker 299.0
1086 #define GeomMarker 399.0
1087 #define TextMarker 499.0
1088 #define CustomLabelMarker 599.0
1089 #define UserRecMarker 699.0
1090 #define DataSetAuxMarker 799.0
1091 #define VarAuxMarker 899.0
1092 #define EndHeaderMarker 357.0
1096 * Additional objects that have plotter
1097 * pens assigned to them.
1099 #define AxisPen Custom8_C+1
1100 #define MajGridPen Custom8_C+2
1101 #define MinGridPen Custom8_C+3
1102 #define StreamlinePen Custom8_C+4
1103 #define ColoredLinePen Custom8_C+5
1104 #define BoundaryPen Custom8_C+6
1105 #define LabelPen Custom8_C+7
1106 #define NumPlotterPens Custom8_C+8
1107 /* AutoSelectPen will select the correct pen from Black_C thru Custom8_C or ColoredLinePen */
1108 #define AutoSelectPen Custom8_C+9
1109 #define InvalidPen Custom8_C+99
1111 #define FirstObjectPen AxisPen
1112 #define LastObjectPen LabelPen
1114 #define DelZFactor 0.0001
1116 #define BadBaseValue NULL
1120 * NOTES ON TYPEDEFS:
1122 * TYPEDEF TYPE Suffix
1123 * ------------ ------
1129 * pointer to simple _pt
1130 * pointer to enumerated _pe
1131 * pointer to structure _ps
1132 * pointer to union _pu
1133 * pointer to abstract _pa
1134 * pointer to function _pf
1137 * The only execption is char * typedef's these use _t
1139 * Abstract types are intentionally made to be
1140 * obscure. The programmer should not have to know
1141 * what the underlying structure really is for abstract
1148 # define DIR_SEPARATOR "\\"
1150 # define DIR_SEPARATOR "/"
1153 /* ENDREMOVEFROMADDON */
1155 /* BEGINREMOVEFROMADDON */
1157 #define TP_FWRITE fwrite
1158 #define TP_FFLUSH fflush
1159 #define TP_FCLOSE fclose
1161 #if defined TECPLOTKERNEL
1162 /* CORE SOURCE CODE REMOVED */
1164 #define TP_UNLINK remove
1165 #define TP_RMDIR _rmdir
1166 #define TP_FREAD ::fread
1167 #define TP_FOPEN ::fopen
1168 #define TP_FREOPEN ::freopen
1169 #define TP_STAT ::_stat
1170 #define TP_GETENV ::getenv
1171 #endif /* TECPLOTKERNEL */
1174 #define TP_FSEEK(stream,offset,whence) _fseeki64((stream),(__int64)(offset),(whence))
1175 #define TP_FTELL _ftelli64
1177 #define TP_FSEEK(stream, offset, whence) fseek((stream), (long)(offset), (whence))
1178 #define TP_FTELL ftell
1182 #define TP_RMDIR rmdir
1183 #define TP_UNLINK unlink
1184 #define TP_FOPEN fopen
1185 #define TP_FREOPEN freopen
1186 #define TP_FCLOSE fclose
1187 #define TP_FREAD fread
1188 #define TP_FWRITE fwrite
1189 #define TP_FFLUSH fflush
1190 #define TP_FSEEK fseeko
1191 #define TP_FTELL ftello
1192 #define TP_STAT stat
1193 #define _stat stat // ...make the UNIXX and MSWIN platforms have the same syntax to use "struct _stat"
1194 #define TP_GETENV getenv
1196 /* ENDREMOVEFROMADDON */
1198 /****************************************************************
1202 ****************************************************************/
1206 /* How to define UInt64_t/Int64_t is platform specific, but they are always 8-bytes */
1208 typedef unsigned __int64 UInt64_t
;
1209 typedef __int64 Int64_t
;
1212 typedef unsigned int UInt64_t
;
1213 typedef int Int64_t
;
1215 #if defined LONGIS64
1216 typedef unsigned long UInt64_t
;
1217 typedef long Int64_t
;
1219 typedef unsigned long long UInt64_t
;
1220 typedef long long Int64_t
;
1225 #if defined LONGIS64
1226 typedef unsigned int UInt32_t
;
1227 typedef int Int32_t
;
1228 typedef int LgInteger_t
;
1230 typedef unsigned int UInt32_t
;
1231 typedef int Int32_t
;
1232 typedef int LgInteger_t
;
1235 typedef short Int16_t
;
1236 typedef unsigned short UInt16_t
;
1237 typedef signed char Int8_t
;
1238 typedef unsigned char UInt8_t
;
1241 typedef Int16_t LgIndex_t
;
1243 typedef Int32_t LgIndex_t
;
1245 typedef LgIndex_t NodeMap_t
;
1246 typedef LgIndex_t ScreenDim_t
;
1249 * ArbParam_t type is used for passing arbitrary integers or pointers in
1250 * parameters. HgIndex_t is used for counting node maps and other things that
1251 * may individually be LgIndex_t, but in total exceed 32-bit.
1252 * The general rule is that these are 4 bytes on "32-bit" machines
1253 * and 8 bytes on "64-bit" machines.
1256 typedef char *ArbParam_t
;
1257 typedef long HgIndex_t
;
1258 #elif defined LONGIS64
1259 typedef long ArbParam_t
;
1260 typedef long HgIndex_t
;
1261 #elif defined MSWIN && (defined _M_IA64 || defined _M_AMD64)
1262 typedef INT_PTR ArbParam_t
;
1263 typedef INT_PTR HgIndex_t
;
1265 typedef int ArbParam_t
;
1266 typedef int HgIndex_t
;
1269 typedef ArbParam_t UniqueID_t
;
1271 /* 64 bit offset used to hold file offset and size values. */
1272 typedef Int64_t FileOffset_t
;
1275 * 64 bit offset for memory mapped I/O.
1277 typedef UInt64_t MemMapOffset_t
;
1280 * SmInteger must be at least a short....
1283 typedef unsigned char Byte_t
;
1284 typedef short SmInteger_t
;
1285 typedef SmInteger_t ColorIndex_t
;
1287 typedef Int16_t EntIndex_t
;
1289 typedef Int32_t EntIndex_t
;
1291 typedef Int16_t SubZoneIndex_t
;
1293 typedef char Boolean_t
;
1294 typedef char *ZoneName_t
;
1295 typedef char *VarName_t
;
1296 typedef char *LString_t
;
1298 typedef LgIndex_t Strand_t
;
1299 typedef LgIndex_t HeapLength_t
;
1300 typedef LgIndex_t SegPtsArray_t
[MaxGeoSegments
];
1301 typedef double BasicSize_t
[MaxBasicSizes
];
1302 typedef double *VarList_t
;
1304 typedef long SetIndex_t
;
1306 typedef unsigned long SetData_t
;
1307 typedef SetData_t
*SetData_pt
;
1309 /* BEGINREMOVEFROMADDON */
1310 #if defined TECPLOTKERNEL
1311 /* CORE SOURCE CODE REMOVED */
1312 #endif /* TECPLOTKERNEL */
1314 /* The following list identifies items that can be inhibited. */
1315 #define FEATURE_3D (1L << 0)
1316 #define FEATURE_3DVOLUME (1L << 1)
1317 #define FEATURE_2D (1L << 2)
1318 #define FEATURE_XY (1L << 3)
1319 #define FEATURE_DATAALTER (1L << 4)
1320 #define FEATURE_UNSTRUCTUREDDATA (1L << 5)
1321 #define FEATURE_MULTIPLEFRAMES1 (1L << 6)
1322 #define FEATURE_MULTIPLEZONES1 (1L << 7)
1323 #define FEATURE_MULTIPLEFRAMES5 (1L << 8)
1324 #define FEATURE_MULTIPLEZONES5 (1L << 9)
1325 #define FEATURE_MULTIPLEFRAMES10 (1L << 10)
1326 #define FEATURE_MULTIPLEZONES10 (1L << 11)
1327 #define FEATURE_READNONOEMDATA (1L << 12) /* Added 07/22/2000 */
1328 #define FEATURE_DATALOADERS (1L << 13) /* Added 07/22/2000 */
1329 #define FEATURE_DATALOADERS_EXCEPTONE (1L << 14) /* Added 11/26/2001 */
1330 #define FEATURE_LOADONDEMAND (1L << 15) /* Added 09/13/2007 */
1331 #define FEATURE_MULTIPLEWORKERTHREADS (1L << 16) /* Added 09/13/2007 */
1332 #define FEATURE_ISOSURFACEGROUPS (1L << 17) /* Added 09/21/2007 */
1333 #define FEATURE_SLICEGROUPS (1L << 18) /* Added 09/21/2007 */
1334 #define FEATURE_STREAMTRACEGROUPS (1L << 19) /* Added 09/25/2007 not used yet */
1335 #define FEATURE_FEPOLYHEDRON (1L << 20) /* Added 09/25/2007 */
1336 #define FEATURE_FEPOLYGON (1L << 21) /* Added 09/25/2007 */
1339 * KnowFeaturesToInhibit must be updated whenever a new
1340 * item is added above.
1342 #define KnownFeaturesToInhibit (FEATURE_3D |\
1346 FEATURE_DATAALTER |\
1347 FEATURE_UNSTRUCTUREDDATA |\
1348 FEATURE_MULTIPLEFRAMES1 |\
1349 FEATURE_MULTIPLEZONES1 |\
1350 FEATURE_MULTIPLEFRAMES5 |\
1351 FEATURE_MULTIPLEZONES5 |\
1352 FEATURE_MULTIPLEFRAMES10 |\
1353 FEATURE_MULTIPLEZONES10 |\
1354 FEATURE_READNONOEMDATA |\
1355 FEATURE_DATALOADERS |\
1356 FEATURE_DATALOADERS_EXCEPTONE |\
1357 FEATURE_LOADONDEMAND |\
1358 FEATURE_MULTIPLEWORKERTHREADS |\
1359 FEATURE_ISOSURFACEGROUPS |\
1360 FEATURE_SLICEGROUPS |\
1361 FEATURE_STREAMTRACEGROUPS |\
1362 FEATURE_FEPOLYHEDRON |\
1365 #define VALID_FEATURE_INHIBIT_FLAG(feature) (((feature) & KnownFeaturesToInhibit) != 0)
1366 #define VALID_FEATURE_INHIBIT_MASK(mask) (((mask) & ~KnownFeaturesToInhibit)==0)
1370 /* The following are used by the OEM libs, so they need
1371 to be outside of TECPLOTKERNEL */
1372 typedef unsigned long FeatureFlag_t
;
1373 typedef unsigned long FeatureMask_t
;
1375 /* ENDREMOVEFROMADDON */
1377 typedef char SymbolChar_t
[3];
1380 * Face node offset used for identifying which node of a polytope face is
1383 typedef LgIndex_t FaceNodeOffset_t
;
1386 * Element face offset used for identifying which face of a polytope element is
1389 typedef LgIndex_t ElemFaceOffset_t
;
1392 * Face boundary item offset used for identifying which boundary item of a
1393 * polytope face is desired.
1395 typedef LgIndex_t FaceBndryItemOffset_t
;
1397 /****************************************************************
1399 * ENUMERATED TYPEDEFS *
1401 ****************************************************************/
1405 PlacementPlaneOrientation_X
,
1406 PlacementPlaneOrientation_Y
,
1407 PlacementPlaneOrientation_Z
,
1408 END_PlacementPlaneOrientation_e
,
1409 PlacementPlaneOrientation_Invalid
= BadEnumValue
1410 } PlacementPlaneOrientation_e
;
1418 StringMode_Invalid
= BadEnumValue
1424 SidebarSizing_MaxOfAll
,
1425 SidebarSizing_Dynamic
,
1426 END_SidebarSizing_e
,
1427 SidebarSizing_Invalid
= BadEnumValue
1433 SidebarLocation_Left
,
1434 SidebarLocation_Right
, /* Not allowed at this time */
1435 SidebarLocation_Top
, /* Not allowed at this time */
1436 SidebarLocation_Bottom
, /* Not allowed at this time */
1437 END_SidebarLocation_e
,
1438 SidebarLocation_Invalid
= BadEnumValue
1440 } SidebarLocation_e
;
1449 MenuItem_Invalid
= BadEnumValue
1458 StandardMenu_Insert
,
1461 StandardMenu_Workspace
, /* deprecated: use Options instead */
1464 StandardMenu_Animate
,
1465 StandardMenu_Options
,
1466 StandardMenu_Scripting
,
1468 StandardMenu_Invalid
= BadEnumValue
1473 FieldProbeDialogPage_NodalValues
,
1474 FieldProbeDialogPage_CellCenteredValues
,
1475 FieldProbeDialogPage_ZoneCellInfo
,
1476 FieldProbeDialogPage_FaceNeighbors
,
1477 END_FieldProbeDialogPage_e
,
1478 FieldProbeDialogPage_Invalid
= BadEnumValue
1479 } FieldProbeDialogPage_e
;
1481 /* BEGINREMOVEFROMADDON */
1483 /* used for caches of boolean type */
1486 BooleanCache_False
, /* Value is cached and is FALSE */
1487 BooleanCache_True
, /* Value is cached and is TRUE */
1488 BooleanCache_Uncached
, /* Value is not cached. Value is unknown. */
1490 BooleanCache_Invalid
= BadEnumValue
1494 * For determining pick location along a line
1498 LinePickLocation_None
,
1499 LinePickLocation_StartHandle
,
1500 LinePickLocation_MidLineOnHandle
,
1501 LinePickLocation_MidLineOffHandles
,
1502 LinePickLocation_EndHandle
,
1503 END_LinePickLocation_e
,
1504 LinePickLocation_Invalid
= BadEnumValue
1505 } LinePickLocation_e
;
1509 * Defines destination for setting up views: hardware (ie, OpenGL) or
1510 * software (ie, internal transformation matrices).
1517 ViewDest_Invalid
= BadEnumValue
1520 /* used for identifying the origin of the dataset reader */
1523 DataSetReaderOrigin_Native
, /* created by Tecplot */
1524 DataSetReaderOrigin_Foreign
, /* created by an add-on */
1525 END_DataSetReaderOrigin_e
,
1526 DataSetReaderOrigin_Invalid
= BadEnumValue
1527 } DataSetReaderOrigin_e
;
1529 /* used for identifying the origin of the extended curve fit */
1532 ExtendedCurveFitOrigin_Native
, /* created by Tecplot */
1533 ExtendedCurveFitOrigin_Foreign
, /* created by an add-on */
1534 END_ExtendedCurveFitOrigin_e
,
1535 ExtendedCurveFitOrigin_Invalid
= BadEnumValue
1536 } ExtendedCurveFitOrigin_e
;
1540 CollapsedStatus_NotCollapsed
,
1541 CollapsedStatus_CollapsedToPoint
,
1542 CollapsedStatus_CollapsedToLine
,
1543 CollapsedStatus_CollapsedToSegmentedLine
,
1544 CollapsedStatus_CollapsedToTriangle
,
1545 END_CollapsedStatus_e
,
1546 CollapsedStatus_Invalid
= BadEnumValue
1547 } CollapsedStatus_e
;
1548 /* ENDREMOVEFROMADDON */
1554 UndoStateCategory_Frame
,
1555 UndoStateCategory_Picked
, /* picked changes, not the pick itself */
1556 UndoStateCategory_Text
,
1557 UndoStateCategory_Geom
,
1558 UndoStateCategory_View
,
1559 UndoStateCategory_WorkspaceView
,
1560 UndoStateCategory_Style
, /* style less text and geometries */
1561 UndoStateCategory_SpecificStyle
, /* meaning that specific undo style will be added by the caller */
1562 UndoStateCategory_Data
,
1563 UndoStateCategory_DataAndStyle
,
1564 UndoStateCategory_StyleIncTextGeom
, /* style including text and geometires */
1565 UndoStateCategory_GlobalStyle
, /* style less field, map, text and geometries */
1566 UndoStateCategory_PageAction
,
1567 END_UndoStateCategory_e
,
1568 UndoStateCategory_Invalid
= BadEnumValue
1569 } UndoStateCategory_e
;
1573 * Used only for Action_PropagateLinking
1577 LinkType_WithinFrame
,
1578 LinkType_BetweenFrames
,
1580 LinkType_Invalid
= BadEnumValue
1585 FrameCollection_All
,
1586 FrameCollection_Picked
,
1587 END_FrameCollection_e
,
1588 FrameCollection_Invalid
= BadEnumValue
1589 } FrameCollection_e
;
1595 LegendProcess_DrawLegend
,
1596 LegendProcess_EraseLegend
,
1597 LegendProcess_GetExtents
,
1598 END_LegendProcess_e
,
1599 LegendProcess_Invalid
= BadEnumValue
1605 RGBLegendOrientation_RGB
,
1606 RGBLegendOrientation_GBR
,
1607 RGBLegendOrientation_BRG
,
1608 RGBLegendOrientation_RBG
,
1609 RGBLegendOrientation_GRB
,
1610 RGBLegendOrientation_BGR
,
1611 END_RGBLegendOrientation_e
,
1612 RGBLegendOrientation_Invalid
= BadEnumValue
1613 } RGBLegendOrientation_e
;
1617 /* BEGINREMOVEFROMADDON */
1618 /* Used by some of the image exporters/animators */
1626 typedef RGBTriple_s RGBPalette_t
[256];
1628 /* ENDREMOVEFROMADDON */
1630 /* BEGINREMOVEFROMADDON */
1631 /* The tag on the following line is so that the Windows
1632 build script can parse all of the current state changes
1633 out of this file, and compare them to the state changes
1634 found in the main.c template file.
1635 Do not change or delete the line below.*/
1636 /*StateChange_e_BeginDef*/
1637 /* ENDREMOVEFROMADDON */
1641 StateChange_VarsAltered
,
1642 StateChange_VarsAdded
,
1643 StateChange_ZonesDeleted
,
1644 StateChange_ZonesAdded
,
1645 StateChange_NodeMapsAltered
,
1646 StateChange_FrameDeleted
,
1647 StateChange_NewTopFrame
, /* deprecated: use NewActiveFrame and/or FrameOrderChange */
1649 StateChange_DataSetReset
,
1650 StateChange_NewLayout
,
1651 StateChange_CompleteReset
, /* deprecated: no longer broadcast */
1652 StateChange_LineMapAssignment
, /* was StateChange_XYMapAssignment */
1653 StateChange_ContourLevels
,
1654 StateChange_ModalDialogLaunch
,
1655 StateChange_ModalDialogDismiss
,
1656 StateChange_QuitTecplot
,
1657 StateChange_ZoneName
,
1658 StateChange_VarName
,
1659 StateChange_LineMapName
, /* was StateChange_XYMapName */
1660 StateChange_LineMapAddDeleteOrReorder
, /* was StateChange_XYMapAddDeleteOrReorder */
1662 StateChange_ColorMap
,
1663 StateChange_ContourVar
,
1664 StateChange_Streamtrace
,
1665 StateChange_NewAxisVariables
,
1666 StateChange_MouseModeUpdate
,
1667 StateChange_PickListCleared
,
1668 StateChange_PickListGroupSelect
,
1669 StateChange_PickListSingleSelect
,
1670 StateChange_PickListStyle
,
1671 StateChange_DataSetFileName
,
1672 StateChange_UnsuspendInterface
, /* was StateChange_DrawGraphicsOn */
1673 StateChange_SuspendInterface
, /* was StateChange_DrawGraphicsOff */
1674 StateChange_DataSetLockOn
,
1675 StateChange_DataSetLockOff
,
1678 StateChange_DataSetTitle
,
1679 StateChange_DrawingInterrupted
,
1680 StateChange_PrintPreviewLaunch
,
1681 StateChange_PrintPreviewDismiss
,
1682 StateChange_AuxDataAdded
,
1683 StateChange_AuxDataDeleted
,
1684 StateChange_AuxDataAltered
,
1685 StateChange_VarsDeleted
,
1686 StateChange_TecplotIsInitialized
,
1687 StateChange_ImageExported
,
1688 StateChange_VariableLockOn
,
1689 StateChange_VariableLockOff
,
1690 StateChange_PageDeleted
,
1691 StateChange_NewTopPage
,
1692 StateChange_NewActiveFrame
,
1693 StateChange_FrameOrderChanged
,
1695 StateChange_Invalid
= BadEnumValue
,
1696 /* deprecated values */
1697 StateChange_DrawGraphicsOn
= StateChange_UnsuspendInterface
,
1698 StateChange_DrawGraphicsOff
= StateChange_SuspendInterface
,
1699 StateChange_XYMapAssignment
= StateChange_LineMapAssignment
,
1700 StateChange_XYMapName
= StateChange_LineMapName
,
1701 StateChange_XYMapAddDeleteOrReorder
= StateChange_LineMapAddDeleteOrReorder
1706 StateChangeMode_v75
,
1707 StateChangeMode_v80
,
1708 StateChangeMode_v100
,
1709 StateChangeMode_v113
,
1710 END_StateChangeMode_e
,
1711 StateChangeMode_Invalid
= BadEnumValue
1712 } StateChangeMode_e
;
1716 StateChangeCallbackAPI_Classic
,
1717 StateChangeCallbackAPI_ChangeOnly
,
1718 StateChangeCallbackAPI_ChangePlusClient
,
1719 END_StateChangeCallbackAPI_e
,
1720 StateChangeCallbackAPI_Invalid
= BadEnumValue
1721 } StateChangeCallbackAPI_e
;
1729 AppMode_Invalid
= BadEnumValue
1734 ProductFlavor_TecplotFocus
,
1735 ProductFlavor_Tecplot360
,
1736 ProductFlavor_TecplotRS
,
1737 ProductFlavor_TecplotSDK
,
1738 END_ProductFlavor_e
,
1739 ProductFlavor_Invalid
= BadEnumValue
,
1740 ProductFlavor_Focus
= ProductFlavor_TecplotFocus
, /* deprecated */
1741 ProductFlavor_360
= ProductFlavor_Tecplot360
, /* deprecated */
1742 ProductFlavor_RS
= ProductFlavor_TecplotRS
, /* deprecated */
1743 ProductFlavor_SDK
= ProductFlavor_TecplotSDK
/* deprecated */
1748 LayoutPackageObject_Image
,
1749 LayoutPackageObject_Layout
,
1750 LayoutPackageObject_Data
,
1751 END_LayoutPackageObject_e
,
1752 LayoutPackageObject_Invalid
= BadEnumValue
1753 } LayoutPackageObject_e
;
1758 VarLoadMode_ByPosition
,
1760 VarLoadMode_Invalid
= BadEnumValue
1765 ImageSelection_OnePerFrame
,
1766 ImageSelection_WorkspaceOnly
,
1767 END_ImageSelection_e
,
1768 ImageSelection_Invalid
= BadEnumValue
1773 LibraryType_Foreign
,
1774 LibraryType_V7Standard
,
1775 LibraryType_V7ActiveX
,
1777 LibraryType_Invalid
= BadEnumValue
1778 } LibraryType_e
; /* <help> "Add-on types" */
1784 AssignOp_PlusEquals
,
1785 AssignOp_MinusEquals
,
1786 AssignOp_TimesEquals
,
1787 AssignOp_DivideEquals
,
1788 AssignOp_ConvertFromCm
,
1789 AssignOp_ConvertFromIn
,
1790 AssignOp_ConvertFromPt
,
1791 AssignOp_ConvertFromPix
,
1793 AssignOp_Invalid
= BadEnumValue
1801 Dialog_ZoneMapStyle
, /* was Dialog_PlotAttributes*/
1803 Dialog_QuickMacroPanel
,
1804 Dialog_ValueBlanking
,
1805 Dialog_Probe
, /* used for dialog positioning only */
1821 Dialog_ThreeDAxisLimits
,
1822 Dialog_ThreeDOrientationAxis
,
1823 Dialog_Streamtraces
,
1827 Dialog_VectorLength
,
1829 Dialog_VectorArrowheads
,
1830 Dialog_VectorReferenceVector
,
1831 Dialog_ScatterSizeAndFont
,
1832 Dialog_ScatterLegend
,
1833 Dialog_ScatterReferenceSymbol
,
1834 Dialog_RGBColorVarsAndRange
,
1835 Dialog_RGBColorLegend
,
1836 Dialog_LineMapLegend
,
1838 Dialog_DepthBlanking
,
1840 Dialog_Advanced3DControl
,
1841 Dialog_TwoDDrawOrder
,
1842 Dialog_PolarDrawingOptions
,
1844 Dialog_StyleLinking
,
1846 Dialog_TransformCoordinates
,
1847 Dialog_Rotate2DData
,
1848 Dialog_Create1DLine
,
1849 Dialog_CreateRectangularZone
,
1850 Dialog_CreateCircularZone
,
1851 Dialog_DuplicateZone
,
1853 Dialog_CreateZoneFromPolylines
,
1854 Dialog_CreateZoneFromValues
,
1855 Dialog_DeleteVariables
,
1857 Dialog_ExtractContourLines
,
1858 Dialog_ExtractFEBoundary
,
1859 Dialog_ExtractIsoSurfaces
,
1860 Dialog_ExtractSlices
,
1861 Dialog_ExtractSliceFromPlane
,
1862 Dialog_ExtractStreamtraces
,
1863 Dialog_ExtractSubZone
,
1864 Dialog_ExtractDiscretePoints
,
1865 Dialog_ExtractPointsFromPolyline
,
1866 Dialog_ExtractPointsFromGeometry
,
1867 Dialog_LinearInterpolation
,
1868 Dialog_InverseDistanceInterpolation
,
1869 Dialog_KrigingInterpolation
,
1873 Dialog_DataSpreadsheet
,
1877 Dialog_ThreeDViewRotate
,
1878 Dialog_ThreeDViewDetails
,
1879 Dialog_TranslateMagnify
,
1880 Dialog_PrintPreview
,
1881 Dialog_ColorPreferences
,
1882 Dialog_MiscPreferences
,
1883 Dialog_SizePreferences
,
1884 Dialog_SaveConfiguration
,
1885 Dialog_SaveColorMap
,
1886 Dialog_LoadColorMap
,
1887 Dialog_HelpAboutTecplot
,
1888 Dialog_HelpAboutAddOns
,
1891 Dialog_CopyToClipboard
,
1896 Dialog_Invalid
= BadEnumValue
,
1897 /* deprecated values */
1898 Dialog_PlotAttributes
= Dialog_ZoneMapStyle
1899 } Dialog_e
; /* <help> "Tecplot dialog types" */
1903 AnchorAlignment_TopLeft
,
1904 AnchorAlignment_TopCenter
,
1905 AnchorAlignment_TopRight
,
1906 AnchorAlignment_MiddleLeft
,
1907 AnchorAlignment_MiddleCenter
,
1908 AnchorAlignment_MiddleRight
,
1909 AnchorAlignment_BottomLeft
,
1910 AnchorAlignment_BottomCenter
,
1911 AnchorAlignment_BottomRight
,
1912 END_AnchorAlignment_e
,
1913 AnchorAlignment_Invalid
= BadEnumValue
1914 } AnchorAlignment_e
;
1916 /* BEGINREMOVEFROMADDON */
1919 PositionAtAnchor_Never
,
1920 PositionAtAnchor_Once
,
1921 PositionAtAnchor_Always
,
1922 END_PositionAtAnchor_e
,
1923 PositionAtAnchor_Invalid
= BadEnumValue
1924 } PositionAtAnchor_e
;
1925 /* ENDREMOVEFROMADDON */
1927 /* BEGINREMOVEFROMADDON */
1930 AnchorAlignment_e AnchorAlignment
;
1931 Boolean_t AnchorHorizontalInside
;
1932 Boolean_t AnchorVerticalInside
;
1933 SmInteger_t MinVisibilityPercentage
;
1936 PositionAtAnchor_e PositionAtAnchor
;
1937 Boolean_t HasBeenPositioned
; /* not persistent */
1939 /* ENDREMOVEFROMADDON */
1942 #if defined EXPORT_DEPRECATED_INTERFACES_TO_ADK_ONLY
1945 * Please use \ref CurveInfoMode_e instead.
1949 ProcessXYMode_NotUsed1
, /* deprecated: do not use */
1950 ProcessXYMode_NotUsed2
, /* deprecated: do not use */
1951 ProcessXYMode_NotUsed3
, /* deprecated: do not use */
1952 ProcessXYMode_NotUsed4
, /* deprecated: do not use */
1953 ProcessXYMode_NotUsed5
, /* deprecated: do not use */
1954 ProcessXYMode_NotUsed6
, /* deprecated: do not use */
1955 ProcessXYMode_NotUsed7
, /* deprecated: do not use */
1956 ProcessXYMode_NotUsed8
, /* deprecated: do not use */
1957 ProcessXYMode_NotUsed9
, /* deprecated: do not use */
1958 ProcessXYMode_WriteCurveCoef
, /* deprecated: use CurveInfoMode_Coefficients */
1959 ProcessXYMode_WriteCurvePoints
, /* deprecated: use CurveInfoMode_RawData */
1960 END_ProcessXYMode_e
,
1961 ProcessXYMode_Invalid
= BadEnumValue
1967 CurveInfoMode_Coefficients
, /* ProcessXYMode_WriteCurveCoef */
1968 CurveInfoMode_RawData
, /* ProcessXYMode_WriteCurvePoints */
1969 CurveInfoMode_Macro
, /* ProcessXYMode_WriteCurveCoefMacro */
1970 END_CurveInfoMode_e
,
1971 CurveInfoMode_Invalid
= BadEnumValue
1974 /* BEGINREMOVEFROMADDON */
1977 ProcessLineMapMode_Draw
,
1978 ProcessLineMapMode_GetXYMinMax
,
1979 ProcessLineMapMode_GetDataMinMax
,
1980 ProcessLineMapMode_GetSinglePick
,
1981 ProcessLineMapMode_CheckOnlyForGroupPick
,
1982 ProcessLineMapMode_GetGroupPick
,
1983 ProcessLineMapMode_GetFirstValidDataPoint
,
1984 ProcessLineMapMode_GetNearestPoint
,
1985 ProcessLineMapMode_GetDependentValue
,
1986 ProcessLineMapMode_GetRSquaredGoodness
,
1987 ProcessLineMapMode_DisplayCurveCoef
,
1988 ProcessLineMapMode_WriteCurveCoef
,
1989 ProcessLineMapMode_WriteCurvePoints
,
1990 ProcessLineMapMode_InsertLabels
,
1991 ProcessLineMapMode_GetIndependentValue
,
1992 ProcessLineMapMode_WriteCurveCoefMacro
,
1993 END_ProcessLineMapMode_e
,
1994 ProcessLineMapMode_Invalid
= BadEnumValue
1995 } ProcessLineMapMode_e
;
1996 /* ENDREMOVEFROMADDON */
2003 StyleBase_Invalid
= BadEnumValue
2009 ReadDataOption_NewData
,
2010 ReadDataOption_AppendData
,
2011 ReadDataOption_ReplaceData
,
2012 END_ReadDataOption_e
,
2013 ReadDataOption_Invalid
= BadEnumValue
2016 #if defined EXPORT_DEPRECATED_INTERFACES_TO_ADK_ONLY
2019 * Please use \ref LabelType_e instead.
2023 NodeLabel_Index
, /* deprecated: use LabelType_Index */
2024 NodeLabel_VarValue
, /* deprecated: use LabelType_VarValue */
2025 NodeLabel_XAndYVarValue
, /* deprecated: use LabelType_XAndYVarValue */
2027 NodeLabel_Invalid
= BadEnumValue
2033 LabelType_Index
, /* NodeLabel_Index */
2034 LabelType_VarValue
, /* NodeLabel_VarValue */
2035 LabelType_XAndYVarValue
, /* NodeLabel_XAndYVarValue */
2037 LabelType_Invalid
= BadEnumValue
2041 #if defined EXPORT_DEPRECATED_INTERFACES_TO_ADK_ONLY
2044 * Please use \ref BorderAction_e instead.
2048 SubBoundaryEditOption_All
, /* deprecated: use BorderAction_AddAll */
2049 SubBoundaryEditOption_Add
, /* deprecated: use BorderAction_Add */
2050 SubBoundaryEditOption_Remove
, /* deprecated: use BorderAction_Remove */
2051 SubBoundaryEditOption_AddOnly
, /* deprecated: use BorderAction_AddOnly */
2052 END_SubBoundaryEditOption_e
,
2053 SubBoundaryEditOption_Invalid
= BadEnumValue
2054 } SubBoundaryEditOption_e
;
2059 BorderAction_AddAll
, /* SubBoundaryEditOption_All */
2060 BorderAction_Add
, /* SubBoundaryEditOption_Add */
2061 BorderAction_Remove
, /* SubBoundaryEditOption_Remove */
2062 BorderAction_AddOnly
, /* SubBoundaryEditOption_AddOnly */
2064 BorderAction_Invalid
= BadEnumValue
2070 PointerStyle_NotUsed1
,
2071 PointerStyle_NotUsed2
,
2072 PointerStyle_NotUsed3
,
2073 PointerStyle_AllDirections
,
2074 PointerStyle_NotUsed4
,
2075 PointerStyle_NotUsed5
,
2076 PointerStyle_NotUsed6
,
2077 PointerStyle_UpperLeftBracket
,
2078 PointerStyle_UpperRightBracket
,
2079 PointerStyle_LeftBracket
,
2080 PointerStyle_LowerLeftBracket
,
2081 PointerStyle_LowerRightBracket
,
2082 PointerStyle_RightBracket
,
2083 PointerStyle_BottomBracket
,
2084 PointerStyle_TopBracket
,
2085 PointerStyle_UpDown
,
2086 PointerStyle_LeftRight
,
2088 PointerStyle_Invalid
= BadEnumValue
2093 CursorStyle_Undefined
,
2094 CursorStyle_StandardArrow
,
2095 CursorStyle_AdjusterArrow
,
2096 CursorStyle_AllDirections
,
2100 CursorStyle_UpperLeftBracket
,
2101 CursorStyle_UpperRightBracket
,
2102 CursorStyle_LeftBracket
,
2103 CursorStyle_LowerLeftBracket
,
2104 CursorStyle_LowerRightBracket
,
2105 CursorStyle_RightBracket
,
2106 CursorStyle_BottomBracket
,
2107 CursorStyle_TopBracket
,
2109 CursorStyle_LeftRight
,
2110 CursorStyle_Waiting
,
2112 CursorStyle_Invalid
= BadEnumValue
2118 PickSubPosition_All
,
2119 PickSubPosition_Top
,
2120 PickSubPosition_Bottom
,
2121 PickSubPosition_Left
,
2122 PickSubPosition_Right
,
2123 PickSubPosition_TopLeft
,
2124 PickSubPosition_TopRight
,
2125 PickSubPosition_BottomLeft
,
2126 PickSubPosition_BottomRight
,
2127 PickSubPosition_BottomAndTop
,
2128 PickSubPosition_LeftAndRight
,
2129 END_PickSubPosition_e
,
2130 PickSubPosition_Invalid
= BadEnumValue
2131 } PickSubPosition_e
;
2135 TecEngInitReturnCode_Ok
,
2136 TecEngInitReturnCode_LicenseIsInvalid
,
2137 TecEngInitReturnCode_LicenseExpired
,
2138 TecEngInitReturnCode_InternalInitializationError
,
2139 END_TecEngInitReturnCode_e
,
2140 TecEngInitReturnCode_Invalid
= BadEnumValue
2141 } TecEngInitReturnCode_e
;
2145 GetValueReturnCode_Ok
,
2146 GetValueReturnCode_ResultTypeError
,
2147 GetValueReturnCode_SyntaxError
,
2148 GetValueReturnCode_ContextError
,
2149 GetValueReturnCode_DeprecatedError
,
2150 END_GetValueReturnCode_e
,
2151 GetValueReturnCode_Invalid
= BadEnumValue
,
2152 /* deprecated values */
2153 GetValue_Ok
= GetValueReturnCode_Ok
, /* deprecated */
2154 GetValue_ResultTypeError
= GetValueReturnCode_ResultTypeError
, /* deprecated */
2155 GetValue_SyntaxError
= GetValueReturnCode_SyntaxError
, /* deprecated */
2156 GetValue_ContextError
= GetValueReturnCode_ContextError
, /* deprecated */
2157 GetValue_DeprecatedError
= GetValueReturnCode_DeprecatedError
, /* deprecated */
2158 GetValue_Invalid
= GetValueReturnCode_Invalid
/* deprecated */
2159 } GetValueReturnCode_e
;
2163 SetValueReturnCode_Ok
,
2164 SetValueReturnCode_DuplicateValue
,
2165 SetValueReturnCode_InvalidCommandOption
,
2166 SetValueReturnCode_NoAttachedDatasetError
,
2167 SetValueReturnCode_NoAttachedFrameError
,
2168 SetValueReturnCode_NotAllowedInConfigError
,
2169 SetValueReturnCode_ValueRangeError
,
2170 SetValueReturnCode_ValueSyntaxError
,
2171 SetValueReturnCode_AssignOpError
,
2172 SetValueReturnCode_InvalidVarOrZone
,
2173 SetValueReturnCode_InternalMemoryError
,
2174 SetValueReturnCode_ContextError1
,
2175 SetValueReturnCode_ContextError2
,
2176 SetValueReturnCode_OnlyAllowedInConfigError
,
2177 SetValueReturnCode_FeatureNotAvailable
,
2178 END_SetValueReturnCode_e
,
2179 /* BEGINREMOVEFROMADDON */
2180 /* For now this value is only used in Tecplot code.
2181 * the value is here as an option for the future. */
2182 SetValueReturnCode_Ignored
= SetValueReturnCode_DuplicateValue
,
2183 /* ENDREMOVEFROMADDON */
2184 SetValueReturnCode_Invalid
= BadEnumValue
,
2185 /* deprecated values */
2186 SetValue_Ok
= SetValueReturnCode_Ok
, /* deprecated */
2187 SetValue_DuplicateValue
= SetValueReturnCode_DuplicateValue
, /* deprecated */
2188 SetValue_InvalidCommandOption
= SetValueReturnCode_InvalidCommandOption
, /* deprecated */
2189 SetValue_NoAttachedDatasetError
= SetValueReturnCode_NoAttachedDatasetError
, /* deprecated */
2190 SetValue_NoAttachedFrameError
= SetValueReturnCode_NoAttachedFrameError
, /* deprecated */
2191 SetValue_NotAllowedInConfigError
= SetValueReturnCode_NotAllowedInConfigError
, /* deprecated */
2192 SetValue_ValueRangeError
= SetValueReturnCode_ValueRangeError
, /* deprecated */
2193 SetValue_ValueSyntaxError
= SetValueReturnCode_ValueSyntaxError
, /* deprecated */
2194 SetValue_AssignOpError
= SetValueReturnCode_AssignOpError
, /* deprecated */
2195 SetValue_InvalidVarOrZone
= SetValueReturnCode_InvalidVarOrZone
, /* deprecated */
2196 SetValue_InternalMemoryError
= SetValueReturnCode_InternalMemoryError
, /* deprecated */
2197 SetValue_ContextError1
= SetValueReturnCode_ContextError1
, /* deprecated */
2198 SetValue_ContextError2
= SetValueReturnCode_ContextError2
, /* deprecated */
2199 SetValue_OnlyAllowedInConfigError
= SetValueReturnCode_OnlyAllowedInConfigError
, /* deprecated */
2200 SetValue_FeatureNotAvailable
= SetValueReturnCode_FeatureNotAvailable
, /* deprecated */
2201 /* BEGINREMOVEFROMADDON */
2202 SetValue_Ignored
= SetValueReturnCode_Ignored
, /* deprecated */
2203 /* ENDREMOVEFROMADDON */
2204 SetValue_Invalid
= SetValueReturnCode_Invalid
/* deprecated */
2205 } SetValueReturnCode_e
;
2210 ObjectAlign_LeftJustify
,
2211 ObjectAlign_RightJustify
,
2216 ObjectAlign_Invalid
= BadEnumValue
2221 * For 3D axis labels only.
2225 LabelAlignment_ByAngle
,
2226 LabelAlignment_AlongAxis
,
2227 LabelAlignment_PerpendicularToAxis
,
2228 END_LabelAlignment_e
,
2229 LabelAlignment_Invalid
= BadEnumValue
2230 } LabelAlignment_e
; /* <help> Label alignment for 3D axis labels only" */
2233 * View_SetMagnification added 02/24/03 so all plot types
2234 * can behave the same way "do a 'centered' magnifacation change".
2235 * Line plots will still accept View_Scale option and zoom towards
2236 * the corner so old macros/addons still work.
2243 View_Scale
, /* deprecated, Use SetMagnification */
2250 View_Push
, /* End of V9 enums */
2251 View_SetMagnification
,
2254 View_MakeCurrentViewNice
,
2255 View_AxisMakeCurrentValuesNice
,
2256 View_AxisResetToEntireCircle
,
2259 View_Invalid
= BadEnumValue
2266 WorkspaceView_FitSelectedFrames
,
2267 WorkspaceView_FitAllFrames
,
2268 WorkspaceView_FitPaper
,
2269 WorkspaceView_Maximize
,
2270 WorkspaceView_LastView
,
2272 WorkspaceView_Translate
,
2273 WorkspaceView_UnMaximize
,
2274 END_WorkspaceView_e
,
2275 WorkspaceView_Invalid
= BadEnumValue
2281 ArrowheadStyle_Plain
,
2282 ArrowheadStyle_Filled
,
2283 ArrowheadStyle_Hollow
,
2284 END_ArrowheadStyle_e
,
2285 ArrowheadStyle_Invalid
= BadEnumValue
,
2286 /* deprecated values */
2287 Arrowhead_Plain
= ArrowheadStyle_Plain
, /* deprecated */
2288 Arrowhead_Filled
= ArrowheadStyle_Filled
, /* deprecated */
2289 Arrowhead_Hollow
= ArrowheadStyle_Hollow
, /* deprecated */
2290 Arrowhead_Invalid
= ArrowheadStyle_Invalid
/* deprecated */
2296 ArrowheadAttachment_None
,
2297 ArrowheadAttachment_AtBeginning
,
2298 ArrowheadAttachment_AtEnd
,
2299 ArrowheadAttachment_AtBothEnds
,
2300 END_ArrowheadAttachment_e
,
2301 ArrowheadAttachment_Invalid
= BadEnumValue
,
2302 /* deprecated values */
2303 ArrowheadAttach_None
= ArrowheadAttachment_None
, /* deprecated */
2304 ArrowheadAttach_AtBeginning
= ArrowheadAttachment_AtBeginning
, /* deprecated */
2305 ArrowheadAttach_AtEnd
= ArrowheadAttachment_AtEnd
, /* deprecated */
2306 ArrowheadAttach_AtBothEnds
= ArrowheadAttachment_AtBothEnds
, /* deprecated */
2307 ArrowheadAttach_Invalid
= ArrowheadAttachment_Invalid
/* deprecated */
2308 } ArrowheadAttachment_e
;
2312 Clipping_ClipToViewport
,
2313 Clipping_ClipToFrame
,
2315 Clipping_Invalid
= BadEnumValue
2321 StatusInfo_Identify
,
2322 StatusInfo_Instruction
,
2324 StatusInfo_PercentDone
,
2326 StatusInfo_Invalid
= BadEnumValue
2330 #if defined EXPORT_DEPRECATED_INTERFACES_TO_ADK_ONLY
2333 * Please use \ref PlotType_e instead.
2337 FrameMode_Empty
, /* deprecated: use PlotType_Automatic */
2338 FrameMode_ThreeD
, /* deprecated: use PlotType_Cartesian3D */
2339 FrameMode_TwoD
, /* deprecated: use PlotType_Cartesian2D */
2340 FrameMode_XY
, /* deprecated: use PlotType_XYLine */
2341 FrameMode_Sketch
, /* deprecated: use PlotType_Sketch */
2343 FrameMode_Invalid
= BadEnumValue
,
2344 /* deprecated values */
2345 Frame_Empty
= FrameMode_Empty
, /* deprecated */
2346 Frame_ThreeD
= FrameMode_ThreeD
, /* deprecated */
2347 Frame_TwoD
= FrameMode_TwoD
, /* deprecated */
2348 Frame_XY
= FrameMode_XY
, /* deprecated */
2349 Frame_Sketch
= FrameMode_Sketch
, /* deprecated */
2350 Frame_Invalid
= FrameMode_Invalid
/* deprecated */
2357 PlotType_Automatic
, /* Frame_Empty */
2358 PlotType_Cartesian3D
, /* Frame_ThreeD */
2359 PlotType_Cartesian2D
, /* Frame_TwoD */
2360 PlotType_XYLine
, /* Frame_XY */
2361 PlotType_Sketch
, /* Frame_Sketch */
2364 PlotType_Invalid
= BadEnumValue
2368 #define VALID_PLOTTYPE(PlotType) ( VALID_ENUM((PlotType), PlotType_e) && \
2369 ((PlotType) != PlotType_Automatic) )
2370 #define VALID_LINEPLOT_PLOTTYPE(PlotType) ( (PlotType) == PlotType_XYLine || \
2371 (PlotType) == PlotType_PolarLine )
2372 #define VALID_FIELDPLOT_PLOTTYPE(PlotType) ( (PlotType) == PlotType_Cartesian2D || \
2373 (PlotType) == PlotType_Cartesian3D )
2374 #define PLOTTYPE_USES_FIELDZONES(PlotType) VALID_FIELDPLOT_PLOTTYPE((PlotType))
2375 #define PLOTTYPE_USES_LINEMAPS(PlotType) VALID_LINEPLOT_PLOTTYPE((PlotType))
2376 #define VALID_V9_PLOTTYPE(PlotType) ( (PlotType) == PlotType_Sketch || \
2377 (PlotType) == PlotType_XYLine || \
2378 (PlotType) == PlotType_Cartesian2D || \
2379 (PlotType) == PlotType_Cartesian3D )
2384 ContLineCreateMode_OneZonePerContourLevel
,
2385 ContLineCreateMode_OneZonePerIndependentPolyline
,
2386 END_ContLineCreateMode_e
,
2387 ContLineCreateMode_Invalid
= BadEnumValue
2388 } ContLineCreateMode_e
;
2396 PickObjects_ThreeDOrientationAxis
,
2399 PickObjects_ContourLegend
,
2400 PickObjects_ContourLabel
,
2401 PickObjects_ScatterLegend
,
2402 PickObjects_LineLegend
,
2403 PickObjects_ReferenceVector
,
2404 PickObjects_ReferenceScatterSymbol
,
2405 PickObjects_StreamtracePosition
,
2406 PickObjects_StreamtraceTermLine
,
2409 PickObjects_XYMapping
, /* deprecated: use PickObject_LineMapping */
2410 PickObjects_StreamtraceCOB
,
2411 PickObjects_SliceCOB
,
2412 PickObjects_IsoSurfaceCOB
,
2413 PickObjects_RGBLegend
,
2414 PickObjects_LineMapping
,
2416 PickObjects_Invalid
= BadEnumValue
,
2417 /* deprecated values */
2418 PickObject_None
= PickObjects_None
, /* deprecated */
2419 PickObject_Frame
= PickObjects_Frame
, /* deprecated */
2420 PickObject_Axis
= PickObjects_Axis
, /* deprecated */
2421 PickObject_3DOrientationAxis
= PickObjects_ThreeDOrientationAxis
, /* deprecated */
2422 PickObject_Geom
= PickObjects_Geom
, /* deprecated */
2423 PickObject_Text
= PickObjects_Text
, /* deprecated */
2424 PickObject_ContourLegend
= PickObjects_ContourLegend
, /* deprecated */
2425 PickObject_ContourLabel
= PickObjects_ContourLabel
, /* deprecated */
2426 PickObject_ScatterLegend
= PickObjects_ScatterLegend
, /* deprecated */
2427 PickObject_LineLegend
= PickObjects_LineLegend
, /* deprecated */
2428 PickObject_XYLegend
= PickObjects_LineLegend
, /* deprecated */
2429 PickObject_ReferenceVector
= PickObjects_ReferenceVector
, /* deprecated */
2430 PickObject_ReferenceScatterSymbol
= PickObjects_ReferenceScatterSymbol
, /* deprecated */
2431 PickObject_StreamtracePosition
= PickObjects_StreamtracePosition
, /* deprecated */
2432 PickObject_StreamtraceTermLine
= PickObjects_StreamtraceTermLine
, /* deprecated */
2433 PickObject_Paper
= PickObjects_Paper
, /* deprecated */
2434 PickObject_Zone
= PickObjects_Zone
, /* deprecated */
2435 PickObject_XYMapping
= PickObjects_XYMapping
, /* deprecated */
2436 PickObject_StreamtraceCOB
= PickObjects_StreamtraceCOB
, /* deprecated */
2437 PickObject_SliceCOB
= PickObjects_SliceCOB
, /* deprecated */
2438 PickObject_IsoSurfaceCOB
= PickObjects_IsoSurfaceCOB
, /* deprecated */
2439 PickObject_RGBLegend
= PickObjects_RGBLegend
, /* deprecated */
2440 PickObject_LineMapping
= PickObjects_LineMapping
, /* deprecated */
2441 PickObject_Invalid
= PickObjects_Invalid
/* deprecated */
2445 /* BEGINREMOVEFROMADDON */
2448 SingleEditState_NotEditing
,
2449 SingleEditState_ActivelyEditing
,
2450 SingleEditState_WasEditing
,
2451 END_SingleEditState_e
,
2452 EditingInvalid
= BadEnumValue
2453 } SingleEditState_e
;
2458 AxisSubObject_GridArea
,
2459 AxisSubObject_AxisLine
,
2460 AxisSubObject_Title
,
2461 END_AxisSubObject_e
,
2462 AxisSubObject_Invalid
= BadEnumValue
2467 AxisSubPosition_GridMinBorder
,
2468 AxisSubPosition_GridMaxBorder
,
2469 AxisSubPosition_MainAxisLine
,
2470 AxisSubPosition_BackAxisLine
,
2471 AxisSubPosition_PerpAxisLine
,
2472 AxisSubPosition_PerpBackAxisLine
,
2473 END_AxisSubPosition_e
,
2474 AxisSubPosition_Invalid
= BadEnumValue
,
2475 AxisSubPosition_2DStart
= AxisSubPosition_GridMinBorder
,
2476 AxisSubPosition_2DEnd
= AxisSubPosition_MainAxisLine
,
2477 AxisSubPosition_PolarStart
= AxisSubPosition_GridMinBorder
,
2478 AxisSubPosition_PolarEnd
= AxisSubPosition_PerpBackAxisLine
2479 } AxisSubPosition_e
;
2480 /* ENDREMOVEFROMADDON */
2483 * NOTE: The _NoOp value is not at the top so this
2484 * enumeration aligns with the old AltMouseButtonMode_e
2489 MouseButtonClick_Redraw
,
2490 MouseButtonClick_RevertToSelect
,
2491 MouseButtonClick_NoOp
,
2492 END_MouseButtonClick_e
,
2493 MouseButtonClick_Invalid
= BadEnumValue
2494 } MouseButtonClick_e
;
2499 MouseButtonDrag_NoOp
,
2500 MouseButtonDrag_ZoomPaper
,
2501 MouseButtonDrag_TranslatePaper
,
2502 MouseButtonDrag_ZoomData
,
2503 MouseButtonDrag_TranslateData
,
2504 MouseButtonDrag_RlrBallRtatData
,
2505 MouseButtonDrag_SpherRtatData
,
2506 MouseButtonDrag_XRotateData
,
2507 MouseButtonDrag_YRotateData
,
2508 MouseButtonDrag_ZRotateData
,
2509 MouseButtonDrag_TwistRotateData
,
2510 MouseButtonDrag_ZoomViewer
,
2511 MouseButtonDrag_TranslateViewer
,
2512 MouseButtonDrag_RlrBallRtatVwr
,
2513 MouseButtonDrag_SpherRotateVwr
,
2514 MouseButtonDrag_XRotateViewer
,
2515 MouseButtonDrag_YRotateViewer
,
2516 MouseButtonDrag_ZRotateViewer
,
2517 MouseButtonDrag_TwistRotateViewer
,
2518 END_MouseButtonDrag_e
,
2519 MouseButtonDrag_Invalid
= BadEnumValue
2520 } MouseButtonDrag_e
;
2523 /* BEGINREMOVEFROMADDON */
2526 MouseButtonClick_e ButtonClick
;
2527 MouseButtonDrag_e SimpleDrag
;
2528 MouseButtonDrag_e ControlledDrag
;
2529 MouseButtonDrag_e AltedDrag
;
2530 MouseButtonDrag_e ShiftedDrag
;
2531 MouseButtonDrag_e ControlAltedDrag
;
2532 MouseButtonDrag_e ControlShiftedDrag
;
2533 MouseButtonDrag_e AltShiftedDrag
;
2534 MouseButtonDrag_e ControlAltShiftedDrag
;
2535 } MouseButtonAction_s
;
2540 MouseButtonAction_s MiddleButton
;
2541 MouseButtonAction_s RightButton
;
2543 /* ENDREMOVEFROMADDON */
2546 typedef enum /* deprecated */
2548 AltMouseButtonMode_Regen
,
2549 AltMouseButtonMode_RevertToSelect
,
2550 END_AltMouseButtonMode_e
,
2551 AltMouseButtonMode_Invalid
= BadEnumValue
2552 } AltMouseButtonMode_e
;
2557 MouseButtonMode_NoMode
,
2558 MouseButtonMode_Select
,
2559 MouseButtonMode_Adjust
,
2560 MouseButtonMode_Zoom
,
2561 MouseButtonMode_Translate
,
2562 MouseButtonMode_Probe
,
2563 MouseButtonMode_Text
,
2564 MouseButtonMode_GeomPolyline
,
2565 MouseButtonMode_GeomSquare
,
2566 MouseButtonMode_GeomCircle
,
2567 MouseButtonMode_GeomRectangle
,
2568 MouseButtonMode_GeomEllipse
,
2569 MouseButtonMode_GeomSpline
,
2570 MouseButtonMode_CreateFrame
,
2571 MouseButtonMode_RotateSpherical
,
2572 MouseButtonMode_RotateRollerBall
,
2573 MouseButtonMode_RotateTwist
,
2574 MouseButtonMode_RotateXAxis
,
2575 MouseButtonMode_RotateYAxis
,
2576 MouseButtonMode_RotateZAxis
,
2577 MouseButtonMode_ContourLabel
,
2578 MouseButtonMode_ContourAdd
,
2579 MouseButtonMode_ContourDelete
,
2580 MouseButtonMode_StreamPoints
,
2581 MouseButtonMode_StreamEndLine
,
2582 MouseButtonMode_ExtractPoints
,
2583 MouseButtonMode_ExtractLine
,
2584 MouseButtonMode_CreateRectangularZone
,
2585 MouseButtonMode_CreateCircularZone
,
2586 MouseButtonMode_Slice
,
2587 MouseButtonMode_LightSource
,
2588 MouseButtonMode_User1
,
2589 MouseButtonMode_User2
,
2590 MouseButtonMode_User3
,
2591 MouseButtonMode_User4
,
2592 END_MouseButtonMode_e
,
2593 MouseButtonMode_Invalid
= BadEnumValue
,
2594 /* deprecated values */
2595 Mouse_NoMode
= MouseButtonMode_NoMode
, /* deprecated */
2596 Mouse_Select
= MouseButtonMode_Select
, /* deprecated */
2597 Mouse_Adjust
= MouseButtonMode_Adjust
, /* deprecated */
2598 Mouse_Zoom
= MouseButtonMode_Zoom
, /* deprecated */
2599 Mouse_Translate
= MouseButtonMode_Translate
, /* deprecated */
2600 Mouse_Probe
= MouseButtonMode_Probe
, /* deprecated */
2601 Mouse_Text
= MouseButtonMode_Text
, /* deprecated */
2602 Mouse_GeomPolyline
= MouseButtonMode_GeomPolyline
, /* deprecated */
2603 Mouse_GeomSquare
= MouseButtonMode_GeomSquare
, /* deprecated */
2604 Mouse_GeomCircle
= MouseButtonMode_GeomCircle
, /* deprecated */
2605 Mouse_GeomRectangle
= MouseButtonMode_GeomRectangle
, /* deprecated */
2606 Mouse_GeomEllipse
= MouseButtonMode_GeomEllipse
, /* deprecated */
2607 Mouse_GeomSpline
= MouseButtonMode_GeomSpline
, /* deprecated */
2608 Mouse_CreateFrame
= MouseButtonMode_CreateFrame
, /* deprecated */
2609 Mouse_RotateSpherical
= MouseButtonMode_RotateSpherical
, /* deprecated */
2610 Mouse_RotateRollerBall
= MouseButtonMode_RotateRollerBall
, /* deprecated */
2611 Mouse_RotateTwist
= MouseButtonMode_RotateTwist
, /* deprecated */
2612 Mouse_RotateXAxis
= MouseButtonMode_RotateXAxis
, /* deprecated */
2613 Mouse_RotateYAxis
= MouseButtonMode_RotateYAxis
, /* deprecated */
2614 Mouse_RotateZAxis
= MouseButtonMode_RotateZAxis
, /* deprecated */
2615 Mouse_ContourLabel
= MouseButtonMode_ContourLabel
, /* deprecated */
2616 Mouse_ContourAdd
= MouseButtonMode_ContourAdd
, /* deprecated */
2617 Mouse_ContourDelete
= MouseButtonMode_ContourDelete
, /* deprecated */
2618 Mouse_StreamPoints
= MouseButtonMode_StreamPoints
, /* deprecated */
2619 Mouse_StreamEndLine
= MouseButtonMode_StreamEndLine
, /* deprecated */
2620 Mouse_ExtractPoints
= MouseButtonMode_ExtractPoints
, /* deprecated */
2621 Mouse_ExtractLine
= MouseButtonMode_ExtractLine
, /* deprecated */
2622 Mouse_CreateRectangularZone
= MouseButtonMode_CreateRectangularZone
, /* deprecated */
2623 Mouse_CreateCircularZone
= MouseButtonMode_CreateCircularZone
, /* deprecated */
2624 Mouse_Slice
= MouseButtonMode_Slice
, /* deprecated */
2625 Mouse_User1
= MouseButtonMode_User1
, /* deprecated */
2626 Mouse_User2
= MouseButtonMode_User2
, /* deprecated */
2627 Mouse_User3
= MouseButtonMode_User3
, /* deprecated */
2628 Mouse_User4
= MouseButtonMode_User4
, /* deprecated */
2629 Mouse_Invalid
= MouseButtonMode_Invalid
/* deprecated */
2630 } MouseButtonMode_e
;
2635 DetailsButtonState_QuickEdit
,
2636 DetailsButtonState_ObjectDetails
,
2637 DetailsButtonState_ToolDetails
,
2638 END_DetailsButtonState_e
,
2639 DetailsButtonState_Invalid
= BadEnumValue
2640 } DetailsButtonState_e
;
2646 Event_ButtonRelease
,
2647 Event_ButtonDoublePress
,
2652 Event_Invalid
= BadEnumValue
2658 ObjectDrawMode_DrawFirst
,
2659 ObjectDrawMode_Move
,
2660 ObjectDrawMode_Remove
,
2661 ObjectDrawMode_Place
,
2662 END_ObjectDrawMode_e
,
2663 ObjectDrawMode_Invalid
= BadEnumValue
2669 ThreeDViewChangeDrawLevel_Full
,
2670 ThreeDViewChangeDrawLevel_Trace
,
2671 END_ThreeDViewChangeDrawLevel_e
,
2672 ThreeDViewChangeDrawLevel_Invalid
= BadEnumValue
2673 } ThreeDViewChangeDrawLevel_e
; /* <help> "ThreeDViewChangeDrawLevel is deprecated. Use PlotApproximateMode.\n"*/
2677 NonCurrentFrameRedrawLevel_Full
,
2678 NonCurrentFrameRedrawLevel_Trace
,
2679 END_NonCurrentFrameRedrawLevel_e
,
2680 NonCurrentFrameRedrawLevel_Invalid
= BadEnumValue
2681 } NonCurrentFrameRedrawLevel_e
; /* <help> "NonCurrentFrameRedrawLevel is deprecated. Use PlotApproximateMode.\n"*/
2685 * Enumerates the redraw reasons and is passed as an argument to registered
2686 * draw event callbacks.
2688 * - RedrawReason_UserReqRedrawActiveFrame:\n
2689 * The full draw event is in response to the "redraw" action function.
2691 * - RedrawReason_UserReqTraceActiveFrame:\n
2692 * The approximate draw event is in response to the "redraw" action function.
2694 * - RedrawReason_UserReqRedrawAllFrames:\n
2695 * The full draw event is in response to the "redraw all" action function.
2697 * - RedrawReason_UserReqTraceAllFrames:\n
2698 * The approximate draw event is in response to the "redraw all" action function.
2700 * - RedrawReason_InteractiveDataViewChange:\n
2701 * The draw event is in response to an interactive data view change such as
2702 * rotate, translate, zoom, etc.
2704 * - RedrawReason_InteractivePaperViewChange:\n
2705 * The draw event is in response to an interactive paper translate view or
2706 * paper zoom view change.
2708 * - RedrawReason_InteractiveStyleChange:\n
2709 * The draw event is in response to an interactive style changes such as
2710 * dragging a contour level or a slice.
2712 * - RedrawReason_Animation:\n
2713 * The draw event is in response to an animation.
2715 * - RedrawReason_AutoRedraw:\n
2716 * The draw event is in response to an auto redraw.
2718 * - RedrawReason_RedrawForcedViewUpdate:\n
2719 * The draw event is in response to forced view update when auto redraw is
2720 * off such as a view fit or movement of the frame.
2722 * - RedrawReason_RedrawForcedStyleUpdate:\n
2723 * The draw event is in response to forced view update when auto redraw is
2724 * off such as deleting a contour level.
2726 * - RedrawReason_PreFullRedrawTraceOfAllFrames:\n
2727 * The draw event is an approximate redraw done prior to a full redraw.
2729 * @sa TecUtilEventAddPreDrawCallback(), TecUtilEventAddPostDrawCallback()
2733 RedrawReason_UserReqRedrawActiveFrame
,
2734 RedrawReason_UserReqTraceActiveFrame
,
2735 RedrawReason_UserReqRedrawAllFrames
,
2736 RedrawReason_UserReqTraceAllFrames
,
2737 RedrawReason_InteractiveDataViewChange
,
2738 RedrawReason_InteractivePaperViewChange
,
2739 RedrawReason_InteractiveStyleChange
,
2740 RedrawReason_Animation
,
2741 RedrawReason_AutoRedraw
,
2742 RedrawReason_RedrawForcedViewUpdate
,
2743 RedrawReason_RedrawForcedStyleUpdate
,
2744 RedrawReason_PreFullRedrawTraceOfAllFrames
,
2746 RedrawReason_Invalid
= BadEnumValue
,
2747 RedrawReason_UserReqRedrawCurrentFrame
= RedrawReason_UserReqRedrawActiveFrame
,
2748 RedrawReason_UserReqTraceCurrentFrame
= RedrawReason_UserReqTraceActiveFrame
2753 RotationMode_XYZAxis
,
2754 RotationMode_Spherical
,
2755 RotationMode_RollerBall
,
2757 RotationMode_Invalid
= BadEnumValue
2769 RotateAxis_VertRollerBall
,
2770 RotateAxis_HorzRollerBall
,
2771 RotateAxis_AboutVector
,
2772 /* BEGINREMOVEFROMADDON */
2773 RotateAxis_DontCare
, /* internal use only */
2774 /* ENDREMOVEFROMADDON */
2776 RotateAxis_Invalid
= BadEnumValue
2781 RotateOriginLocation_DefinedOrigin
,
2782 RotateOriginLocation_Viewer
,
2783 END_RotateOriginLocation_e
,
2784 RotateOriginLocation_Invalid
= BadEnumValue
2785 } RotateOriginLocation_e
;
2788 * NOTE: This is only used with the $!Reset3DOrigin command.
2792 OriginResetLocation_DataCenter
,
2793 OriginResetLocation_ViewCenter
,
2794 END_OriginResetLocation_e
,
2795 OriginResetLocation_Invalid
= BadEnumValue
2796 } OriginResetLocation_e
;
2799 * NOTE: This is only used with the $!CreateSliceZoneFromPlane command.
2803 SliceSource_SurfaceZones
,
2804 SliceSource_VolumeZones
,
2805 SliceSource_SurfacesOfVolumeZones
,
2806 SliceSource_LinearZones
,
2808 SliceSource_Invalid
= BadEnumValue
2823 Input_TimeDateDouble
,
2824 Input_ElapsedTimeDouble
,
2826 Input_Invalid
= BadEnumValue
2834 PtSelection_NearestN
,
2835 PtSelection_OctantN
,
2837 PtSelection_Invalid
= BadEnumValue
2848 Drift_Invalid
= BadEnumValue
2853 /* atpoint is simple boundary condition.
2854 atpointb2 is better boundary condition.
2864 DerivPos_Invalid
= BadEnumValue
2865 } DerivPos_e
; /*<help>"atpoint is the simple boundary condition\n"*/
2866 /*<help>"atpointb2 is a better boundary condition"*/
2871 LinearInterpMode_DontChange
,
2872 LinearInterpMode_SetToConst
,
2873 END_LinearInterpMode_e
,
2874 LinearInterpMode_Invalid
= BadEnumValue
2875 } LinearInterpMode_e
;
2879 VolumeCellInterpolationMode_PiecewiseLinear
,
2880 VolumeCellInterpolationMode_TriLinear
,
2881 END_VolumeCellInterpolationMode_e
,
2882 VolumeCellInterpolationMode_Invalid
= BadEnumValue
2883 } VolumeCellInterpolationMode_e
;
2887 PolyCellInterpolationMode_UseCCValue
,
2888 PolyCellInterpolationMode_AverageNodes
,
2889 END_PolyCellInterpolationMode_e
,
2890 PolyCellInterpolationMode_Invalid
= BadEnumValue
2891 } PolyCellInterpolationMode_e
;
2895 ConstraintOp2Mode_UseVar
,
2896 ConstraintOp2Mode_UseConstant
,
2897 END_ConstraintOp2Mode_e
,
2898 ConstraintOp2Mode_Invalid
= BadEnumValue
2899 } ConstraintOp2Mode_e
;
2902 * Controls how data is loaded for interactive probe events.
2903 * DataProbeVarLoadMode_IncrementallyLoadAll will load as much data as possible within
2904 * load-on-demand time/space thresholds. DataProbeVarLoadMode_LoadRequiredVarsOnly will
2905 * load only the data necessary to complete the probe request.
2906 * DataProbeVarLoadMode_IncrementallyLoadAll is the default.
2910 DataProbeVarLoadMode_IncrementallyLoadAll
,
2911 DataProbeVarLoadMode_LoadRequiredVarsOnly
,
2912 END_DataProbeVarLoadMode_e
,
2913 DataProbeVarLoadMode_Invalid
= BadEnumValue
2914 } DataProbeVarLoadMode_e
;
2918 ValueBlankCellMode_AllCorners
,
2919 ValueBlankCellMode_AnyCorner
,
2920 ValueBlankCellMode_PrimaryValue
,
2921 END_ValueBlankCellMode_e
,
2922 ValueBlankCellMode_Invalid
= BadEnumValue
,
2923 /* deprecated values */
2924 ValueBlankCellMode_PrimaryCorner
= ValueBlankCellMode_PrimaryValue
2925 } ValueBlankCellMode_e
;
2929 * deprecated: ValueBlankMode_e enumeration will not be supported after
2930 * version 8. This API was retained for add-on developers
2931 * using the TecUtilStyleSetLowLevel API.
2935 ValueBlankMode_AndRule
,
2936 ValueBlankMode_OrRule
,
2937 ValueBlankMode_CornerRule
,
2938 END_ValueBlankMode_e
,
2939 ValueBlankMode_Invalid
= BadEnumValue
2940 } ValueBlankMode_e
; /*<help>"DEPRECATED: ValueBlankMode_e will not be supported after version 8"*/
2945 CellBlankedCond_NotBlanked
,
2946 CellBlankedCond_PartiallyBlanked
,
2947 CellBlankedCond_EntirelyBlanked
,
2948 CellBlankedCond_Uncertain
,
2949 END_CellBlankedCond_e
,
2950 CellBlankedCond_Invalid
= BadEnumValue
2951 } CellBlankedCond_e
;
2956 RelOp_LessThanOrEqual
,
2957 RelOp_GreaterThanOrEqual
,
2963 RelOp_Invalid
= BadEnumValue
2970 IJKBlankMode_BlankInterior
,
2971 IJKBlankMode_BlankExterior
,
2973 IJKBlankMode_Invalid
= BadEnumValue
2979 PlotApproximationMode_Automatic
,
2980 PlotApproximationMode_NonCurrentAlwaysApproximated
,
2981 PlotApproximationMode_AllFramesAlwaysApproximated
,
2982 END_PlotApproximationMode_e
,
2983 PlotApproximationMode_Invalid
= BadEnumValue
2984 } PlotApproximationMode_e
;
2988 SphereScatterRenderQuality_Low
,
2989 SphereScatterRenderQuality_Medium
,
2990 SphereScatterRenderQuality_High
,
2991 END_SphereScatterRenderQuality_e
,
2992 SphereScatterRenderQuality_Invalid
= BadEnumValue
2993 } SphereScatterRenderQuality_e
;
2996 * NOTE: FillPat_e is deprecated. It must be retained to maintain
2997 * backward compatibility with the TecUtil layer however.
2998 * This has been replaced by Translucency_e.
3003 Pattern_LowTranslucent
,
3004 Pattern_MedTranslucent
,
3005 Pattern_HighTranslucent
,
3007 Pattern_Invalid
= BadEnumValue
3008 } FillPat_e
; /*<help>"DEPRECATED: Replaced by Translucency_e"*/
3015 Translucency_Medium
,
3018 Translucency_Invalid
= BadEnumValue
3025 SunRaster_OldFormat
,
3027 SunRaster_ByteEncoded
,
3029 SunRaster_Invalid
= BadEnumValue
3035 BoundaryCondition_Fixed
,
3036 BoundaryCondition_ZeroGradient
,
3037 BoundaryCondition_Zero2nd
,
3038 END_BoundaryCondition_e
,
3039 BoundaryCondition_Invalid
= BadEnumValue
3040 } BoundaryCondition_e
;
3045 * In 2D: AxisMode_Independent and AxisMode_XYDependent are used;
3046 * in 3D: AxisMode_Independent, AxisMode_XYZDependent, and AxisMode_XYDependent are used.
3050 AxisMode_Independent
,
3051 AxisMode_XYZDependent
,
3052 AxisMode_XYDependent
,
3054 AxisMode_Invalid
= BadEnumValue
3055 } AxisMode_e
;/*<help>"In 2D AxisMode_Independent and AxisMode_XYDependent are used\n"*/
3056 /*<help>"In 3D AxisMode_Independent, "*/
3057 /*<help>"AxisMode_XYZDependent, and AxisMode_XYDependent are used."*/
3064 END_QuickColorMode_e
,
3065 Quick_Invalid
= BadEnumValue
3072 FillMode_UseSpecificColor
,
3073 FillMode_UseLineColor
,
3074 FillMode_UseBackgroundColor
,
3076 FillMode_Invalid
= BadEnumValue
3084 LinePattern_DashDot
,
3086 LinePattern_LongDash
,
3087 LinePattern_DashDotDot
,
3089 LinePattern_Invalid
= BadEnumValue
3100 Join_Invalid
= BadEnumValue
3111 Cap_Invalid
= BadEnumValue
3123 GeomForm_LineSegs3D
, /* deprecated: use GeomForm_LineSegs with CoordSys_Grid3D */
3126 GeomForm_Invalid
= BadEnumValue
,
3127 /* new value names */
3128 GeomType_LineSegs
= GeomForm_LineSegs
,
3129 GeomType_Rectangle
= GeomForm_Rectangle
,
3130 GeomType_Square
= GeomForm_Square
,
3131 GeomType_Circle
= GeomForm_Circle
,
3132 GeomType_Ellipse
= GeomForm_Ellipse
,
3133 GeomType_LineSegs3D
= GeomForm_LineSegs3D
, /* deprecated: use GeomType_LineSegs with CoordSys_Grid3D */
3134 GeomType_Image
= GeomForm_Image
,
3135 END_GeomType_e
= END_GeomForm_e
,
3136 GeomType_Invalid
= GeomForm_Invalid
3139 typedef GeomForm_e GeomType_e
;
3143 VariableDerivationMethod_Fast
,
3144 VariableDerivationMethod_Accurate
,
3145 END_VariableDerivationMethod_e
,
3146 VariableDerivationMethod_Invalid
= BadEnumValue
3147 } VariableDerivationMethod_e
;
3155 AuxDataType_Invalid
= BadEnumValue
3162 AuxDataLocation_Zone
,
3163 AuxDataLocation_DataSet
,
3164 AuxDataLocation_Frame
,
3165 AuxDataLocation_Var
,
3166 AuxDataLocation_LineMap
,
3167 AuxDataLocation_Page
,
3168 END_AuxDataLocation_e
,
3169 AuxDataLocation_Invalid
= BadEnumValue
3170 } AuxDataLocation_e
;
3173 /* Note: This replaces Element_e */
3177 ZoneType_FETriangle
,
3183 ZoneType_FEPolyhedron
,
3185 ZoneType_Invalid
= BadEnumValue
3198 ZoneOrder_Invalid
= BadEnumValue
3201 /* deprecated: replaced by ZoneType_e DataPacking_e */
3204 DataFormat_IJKBlock
,
3205 DataFormat_IJKPoint
,
3209 DataFormat_Invalid
= BadEnumValue
3217 DataPacking_Invalid
= BadEnumValue
3227 PD_LASERG
, /* deprecated */
3229 PD_WINDOWS
, /* Windows Print Driver */
3230 PD_WMF
, /* Windows MetaFile (used from Export only) */
3232 END_PrinterDriver_e
,
3233 PD_Invalid
= BadEnumValue
3244 END_EPSPreviewImage_e
,
3245 Image_Invalid
= BadEnumValue
3246 } EPSPreviewImage_e
;
3250 TIFFByteOrder_Intel
,
3251 TIFFByteOrder_Motorola
,
3252 END_TIFFByteOrder_e
,
3253 TIFFByteOrder_Invalid
= BadEnumValue
3258 JPEGEncoding_Standard
,
3259 JPEGEncoding_Progressive
,
3261 JPEGEncoding_Invalid
= BadEnumValue
3267 FlashImageType_Lossless
,
3268 FlashImageType_JPEG
,
3269 FlashImageType_Color256
,
3270 END_FlashImageType_e
,
3271 FlashImageType_Invalid
= BadEnumValue
,
3272 /* deprecated values */
3273 FlashImageType_256Color
= FlashImageType_Color256
3278 FlashCompressionType_BestSpeed
,
3279 FlashCompressionType_SmallestSize
,
3280 END_FlashCompressionType_e
,
3281 FlashCompressionType_Invalid
= BadEnumValue
3282 } FlashCompressionType_e
;
3287 ExportFormat_RasterMetafile
,
3290 ExportFormat_SunRaster
,
3291 ExportFormat_XWindows
,
3292 ExportFormat_PSImage
, /* deprecated */
3297 ExportFormat_LaserGraphics
, /* deprecated */
3298 ExportFormat_WindowsMetafile
,
3302 ExportFormat_Custom
, /* May be used in a future version */
3306 ExportFormat_TecplotViewer
,
3308 ExportFormat_Invalid
= BadEnumValue
3313 AVICompression_ColorPreserving
,
3314 AVICompression_LinePreserving
,
3315 AVICompression_LosslessUncompressed
,
3316 END_AVICompression_e
,
3317 AVICompression_Invalid
= BadEnumValue
3322 AnimationDest_Screen
,
3325 AnimationDest_Flash
,
3326 END_AnimationDest_e
,
3327 AnimationDest_Invalid
= BadEnumValue
3334 AnimationOperation_Forward
,
3335 AnimationOperation_Backward
,
3336 AnimationOperation_Loop
,
3337 AnimationOperation_Bounce
,
3338 END_AnimationOperation_e
,
3339 AnimationOperation_Invalid
= BadEnumValue
3340 } AnimationOperation_e
;
3344 AnimationStep_First
,
3345 AnimationStep_Second
,
3346 AnimationStep_Current
,
3347 AnimationStep_SecondToLast
,
3349 AnimationStep_Previous
,
3351 END_AnimationStep_e
,
3352 AnimationStep_Invalid
= BadEnumValue
3357 ZoneAnimationMode_StepByNumber
,
3358 ZoneAnimationMode_GroupStepByNumber
,
3359 ZoneAnimationMode_StepByTime
,
3360 END_ZoneAnimationMode_e
,
3361 ZoneAnimationMode_Invalid
= BadEnumValue
3362 } ZoneAnimationMode_e
;
3364 #if defined EXPORT_DEPRECATED_INTERFACES_TO_ADK_ONLY
3367 * Please use \ref ExportRegion_e instead.
3371 BitDumpRegion_CurrentFrame
,
3372 BitDumpRegion_AllFrames
,
3373 BitDumpRegion_WorkArea
,
3374 END_BitDumpRegion_e
,
3375 BitDumpRegion_Invalid
= BadEnumValue
3381 ExportRegion_CurrentFrame
,
3382 ExportRegion_AllFrames
,
3383 ExportRegion_WorkArea
,
3385 ExportRegion_Invalid
= BadEnumValue
3397 Paper_Invalid
= BadEnumValue
3404 PaperUnitSpacing_HalfCentimeter
,
3405 PaperUnitSpacing_OneCentimeter
,
3406 PaperUnitSpacing_TwoCentimeters
,
3407 PaperUnitSpacing_QuarterInch
,
3408 PaperUnitSpacing_HalfInch
,
3409 PaperUnitSpacing_OneInch
,
3410 PaperUnitSpacing_TenPoints
,
3411 PaperUnitSpacing_TwentyFourPoints
,
3412 PaperUnitSpacing_ThirtySixPoints
,
3413 PaperUnitSpacing_FiftyPoints
,
3414 PaperUnitSpacing_SeventyTwoPoints
,
3415 PaperUnitSpacing_OneTenthInch
,
3416 PaperUnitSpacing_OneTenthCentimeter
,
3417 END_PaperUnitSpacing_e
,
3418 PaperUnitSpacing_Invalid
= BadEnumValue
3419 } PaperUnitSpacing_e
;
3428 Palette_Invalid
= BadEnumValue
3434 PrintRenderType_Vector
,
3435 PrintRenderType_Image
,
3436 END_PrintRenderType_e
,
3437 PrintRenderType_Invalid
= BadEnumValue
3438 } PrintRenderType_e
;
3447 Units_AxisPercentage
,
3449 Units_Invalid
= BadEnumValue
3458 CoordScale_Invalid
= BadEnumValue
,
3459 /* old names for the same values */
3460 Scale_Linear
= CoordScale_Linear
,
3461 Scale_Log
= CoordScale_Log
,
3462 Scale_Invalid
= CoordScale_Invalid
3465 /* BEGINREMOVEFROMADDON */
3466 #define GetLog10(R) ( ((R) < SMALLDOUBLE) ? SMALLESTEXPONENT : ( ((R) > LARGEDOUBLE) ? LARGESTEXPONENT : log10((R)) ) )
3467 /* ENDREMOVEFROMADDON */
3473 CoordSys_FrameOffset
,
3479 CoordSys_Invalid
= BadEnumValue
3483 * NOTE: CoordSys_FrameOffset always is stored in inches internally.
3484 * in stylesheet this may be written in other units if
3485 * appropriate suffix is added.
3496 Scope_Invalid
= BadEnumValue
3506 TextAnchor_MidCenter
,
3507 TextAnchor_MidRight
,
3508 TextAnchor_HeadLeft
,
3509 TextAnchor_HeadCenter
,
3510 TextAnchor_HeadRight
,
3513 TextAnchor_Invalid
= BadEnumValue
3524 TextBox_Invalid
= BadEnumValue
3540 GeomShape_Octahedron
,
3543 GeomShape_Invalid
= BadEnumValue
3555 BasicSize_Invalid
= BadEnumValue
3561 * NOTE: LineForm_e is deprecated. It must be retained to maintain
3562 * backward compatibility with the TecUtil layer however.
3563 * This has been replaced by CurveType_e.
3572 LineForm_ParaSpline
,
3574 LineForm_Invalid
= BadEnumValue
3581 CurveType_PolynomialFit
,
3585 CurveType_ParaSpline
,
3588 CurveType_Invalid
= BadEnumValue
,
3589 CurveType_CurvFit
= CurveType_PolynomialFit
3598 Script_Invalid
= BadEnumValue
3612 Font_TimesItalicBold
,
3616 Font_Invalid
= BadEnumValue
3621 TwoDDrawOrder_ByZone
,
3622 TwoDDrawOrder_ByLayer
,
3623 END_TwoDDrawOrder_e
,
3624 TwoDDrawOrder_Invalid
= BadEnumValue
3629 DrawOrder_AfterData
,
3630 DrawOrder_BeforeData
,
3632 DrawOrder_Invalid
= BadEnumValue
3637 * NOTE: Streamtrace_TwoDLine is new. All 2D
3638 * streamtraces are assigned this value.
3642 Streamtrace_SurfaceLine
,
3643 Streamtrace_SurfaceRibbon
,
3644 Streamtrace_VolumeLine
,
3645 Streamtrace_VolumeRibbon
,
3646 Streamtrace_VolumeRod
,
3647 Streamtrace_TwoDLine
,
3649 Streamtrace_Invalid
= BadEnumValue
3660 StreamDir_Invalid
= BadEnumValue
3665 IsoSurfaceSelection_AllContourLevels
,
3666 IsoSurfaceSelection_OneSpecificValue
,
3667 IsoSurfaceSelection_TwoSpecificValues
,
3668 IsoSurfaceSelection_ThreeSpecificValues
,
3669 END_IsoSurfaceSelection_e
,
3670 IsoSurfaceSelection_Invalid
= BadEnumValue
3671 } IsoSurfaceSelection_e
;
3676 ValueLocation_CellCentered
,
3677 ValueLocation_Nodal
,
3678 END_ValueLocation_e
,
3679 ValueLocation_Invalid
= BadEnumValue
3684 FieldDataType_Reserved
, /* never use */
3685 FieldDataType_Float
,
3686 FieldDataType_Double
,
3687 FieldDataType_Int32
,
3688 FieldDataType_Int16
,
3691 END_FieldDataType_e
,
3692 FieldDataType_IJKFunction
, /* Not used yet */
3693 FieldDataType_Int64
, /* Not used yet */
3694 #if defined EXPORT_DEPRECATED_INTERFACES_TO_ADK_ONLY
3695 FieldDataType_LongInt
= FieldDataType_Int32
,
3696 FieldDataType_ShortInt
= FieldDataType_Int16
,
3698 FieldDataType_Invalid
= BadEnumValue
3701 #define VALID_FIELD_DATA_TYPE(FieldDataType) (VALID_ENUM((FieldDataType),FieldDataType_e) && \
3702 (FieldDataType)!=FieldDataType_Reserved)
3704 #if defined EXPORT_DEPRECATED_INTERFACES_TO_ADK_ONLY
3707 * Please use \ref MeshType_e instead.
3711 Mesh_Wireframe
, /* deprecated: use MeshType_Wireframe */
3712 Mesh_Overlay
, /* deprecated: use MeshType_Overlay */
3713 Mesh_HiddenLine
, /* deprecated: use MeshType_HiddenLine */
3715 Mesh_Invalid
= BadEnumValue
3721 MeshType_Wireframe
, /* Mesh_Wireframe */
3722 MeshType_Overlay
, /* Mesh_Overlay */
3723 MeshType_HiddenLine
, /* Mesh_HiddenLine */
3725 MeshType_Invalid
= BadEnumValue
3731 #if defined EXPORT_DEPRECATED_INTERFACES_TO_ADK_ONLY
3734 * Please use \ref ContourType_e instead.
3738 Contour_Lines
, /* deprecated: use ContourType_Lines */
3739 Contour_Flood
, /* deprecated: use ContourType_Flood */
3740 Contour_Overlay
, /* deprecated: use ContourType_Overlay */
3741 Contour_AverageCell
, /* deprecated: use ContourType_AverageCell */
3742 Contour_CornerCell
, /* deprecated: use ContourType_PrimaryValue */
3743 END_ContourPlotType_e
,
3744 Contour_Invalid
= BadEnumValue
3745 } ContourPlotType_e
;
3751 ContourType_Lines
, /* Contour_Lines */
3752 ContourType_Flood
, /* Contour_Flood */
3753 ContourType_Overlay
, /* Contour_Overlay */
3754 ContourType_AverageCell
, /* Contour_AverageCell */
3755 ContourType_PrimaryValue
, /* Contour_CornerCell */
3757 ContourType_Invalid
= BadEnumValue
3762 ContourColoring_RGB
,
3763 ContourColoring_Group1
,
3764 ContourColoring_Group2
,
3765 ContourColoring_Group3
,
3766 ContourColoring_Group4
,
3767 ContourColoring_Group5
,
3768 ContourColoring_Group6
,
3769 ContourColoring_Group7
,
3770 ContourColoring_Group8
,
3771 END_ContourColoring_e
,
3772 ContourColoring_Invalid
= BadEnumValue
3773 } ContourColoring_e
;
3775 #if defined EXPORT_DEPRECATED_INTERFACES_TO_ADK_ONLY
3778 * Please use \ref VectorType_e instead.
3782 Vector_TailAtPoint
, /* deprecated: use VectorType_TailAtPoint */
3783 Vector_HeadAtPoint
, /* deprecated: use VectorType_HeadAtPoint */
3784 Vector_MidAtPoint
, /* deprecated: use VectorType_MidAtPoint */
3785 Vector_HeadOnly
, /* deprecated: use VectorType_HeadOnly */
3786 END_VectorPlotType_e
,
3787 Vector_Invalid
= BadEnumValue
3794 VectorType_TailAtPoint
, /* Vector_TailAtPoint */
3795 VectorType_HeadAtPoint
, /* Vector_HeadAtPoint */
3796 VectorType_MidAtPoint
, /* Vector_MidAtPoint */
3797 VectorType_HeadOnly
, /* Vector_HeadOnly */
3799 VectorType_Invalid
= BadEnumValue
3804 * NOTE: ShadePlotType_e is deprecated. It must be retained to maintain
3805 * backward compatibility with the TecUtil layer however.
3806 * This has been replaced by LightingEffect_e.
3813 Shade_ColoredPaneled
,
3814 Shade_ColoredGouraud
,
3815 END_ShadePlotType_e
,
3816 Shade_Invalid
= BadEnumValue
3820 * NOTE: LightingEffect_None is deprecated. It must remain
3821 * in the list to allow macro processing of older
3822 * (i.e. early v9) macros.
3826 LightingEffect_Paneled
,
3827 LightingEffect_Gouraud
,
3828 LightingEffect_None
,
3829 END_LightingEffect_e
,
3830 LightingEffect_Invalid
= BadEnumValue
3839 IJKLines_Invalid
= BadEnumValue
,
3840 /* deprecated values */
3841 Lines_I
= IJKLines_I
, /* deprecated */
3842 Lines_J
= IJKLines_J
, /* deprecated */
3843 Lines_K
= IJKLines_K
, /* deprecated */
3844 Lines_Invalid
= IJKLines_Invalid
/* deprecated */
3850 IJKCellType_FacePlanes
,
3853 IJKCellType_Invalid
= BadEnumValue
3858 * Ver 6 used PlaneSet. Ver 7 uses CellType and Planes variables.
3860 * "PlaneSet" in version 6 vs. IJKPlanes in v7:
3862 * 'A' = AllPlanes CellType = IJKCellType_Volume
3863 * 'd','e','f','C' = ComboPlanes CellType = IJKCellType_Planes, IJKPlanes = depends on defC
3864 * 'F' = Faces Planes Only CellType = IJKCellType_FacePlanes
3865 * 'I' = I-Planes CellType = IJKCellType_Planes, IJKPlanes = IJKPlanes_I
3866 * 'J' = J-Planes CellType = IJKCellType_Planes, IJKPlanes = IJKPlanes_J
3867 * 'K' = K-Planes CellType = IJKCellType_Planes, IJKPlanes = IJKPlanes_K
3870 * NOTE: IJKPlanes_e is still used internally in tecplot (and in the TecUtil layer).
3871 * it has been relagated to communicating which planes of an IJK zone are in
3881 IJKPlanes_Face
, /* used on the panel heap */
3882 IJKPlanes_IJ
, /* deprecated */
3883 IJKPlanes_JK
, /* deprecated */
3884 IJKPlanes_IK
, /* deprecated */
3885 IJKPlanes_IJK
, /* deprecated */
3889 IJKPlanes_Invalid
= BadEnumValue
,
3890 /* deprecated values */
3891 Planes_I
= IJKPlanes_I
, /* deprecated */
3892 Planes_J
= IJKPlanes_J
, /* deprecated */
3893 Planes_K
= IJKPlanes_K
, /* deprecated */
3894 Planes_IJ
= IJKPlanes_IJ
, /* deprecated */
3895 Planes_JK
= IJKPlanes_JK
, /* deprecated */
3896 Planes_IK
= IJKPlanes_IK
, /* deprecated */
3897 Planes_IJK
= IJKPlanes_IJK
, /* deprecated */
3898 Planes_Face
= IJKPlanes_Face
, /* deprecated */
3899 Planes_Volume
= IJKPlanes_Volume
, /* deprecated */
3900 Planes_Unused
= IJKPlanes_Unused
, /* deprecated */
3901 Planes_Invalid
= IJKPlanes_Invalid
/* deprecated */
3908 SurfacesToPlot_BoundaryFaces
,
3909 SurfacesToPlot_ExposedCellFaces
,
3910 SurfacesToPlot_IPlanes
,
3911 SurfacesToPlot_JPlanes
,
3912 SurfacesToPlot_KPlanes
,
3913 SurfacesToPlot_IJPlanes
,
3914 SurfacesToPlot_JKPlanes
,
3915 SurfacesToPlot_IKPlanes
,
3916 SurfacesToPlot_IJKPlanes
,
3918 SurfacesToPlot_None
,
3919 END_SurfacesToPlot_e
,
3920 SurfacesToPlot_Invalid
= BadEnumValue
3925 PointsToPlot_SurfaceNodes
, /* was _SurfacesOnly */
3926 PointsToPlot_AllNodes
, /* was _All */
3927 PointsToPlot_SurfaceCellCenters
,
3928 PointsToPlot_AllCellCenters
,
3929 PointsToPlot_AllConnected
,
3931 #if defined EXPORT_DEPRECATED_INTERFACES_TO_ADK_ONLY
3932 PointsToPlot_SurfacesOnly
= PointsToPlot_SurfaceNodes
, /* deprecated */
3933 PointsToPlot_All
= PointsToPlot_AllNodes
, /* deprecated */
3935 PointsToPlot_Invalid
= BadEnumValue
3941 SliceSurface_XPlanes
,
3942 SliceSurface_YPlanes
,
3943 SliceSurface_ZPlanes
,
3944 SliceSurface_IPlanes
,
3945 SliceSurface_JPlanes
,
3946 SliceSurface_KPlanes
,
3948 SliceSurface_Invalid
= BadEnumValue
3955 ClipPlane_BelowPrimarySlice
,
3956 ClipPlane_AbovePrimarySlice
,
3958 ClipPlane_Invalid
= BadEnumValue
3966 Skip_Invalid
= BadEnumValue
3974 EdgeType_BordersAndCreases
,
3976 EdgeType_Invalid
= BadEnumValue
3979 #if defined EXPORT_DEPRECATED_INTERFACES_TO_ADK_ONLY
3982 * Please use \ref BorderLocation_e instead.
3986 Boundary_None
, /* deprecated: use BoundaryType_None */
3987 Boundary_Min
, /* deprecated: use BoundaryType_Min */
3988 Boundary_Max
, /* deprecated: use BoundaryType_Max */
3989 Boundary_Both
, /* deprecated: use BoundaryType_Both */
3990 END_BoundPlotType_e
,
3991 Boundary_Invalid
= BadEnumValue
3997 BoundaryType_None
, /* Boundary_None */
3998 BoundaryType_Min
, /* Boundary_Min */
3999 BoundaryType_Max
, /* Boundary_Max */
4000 BoundaryType_Both
, /* Boundary_Both */
4002 BoundaryType_Invalid
= BadEnumValue
4003 } BoundaryType_e
; /* deprecated */
4007 BorderLocation_None
, /* Boundary_None */
4008 BorderLocation_Min
, /* Boundary_Min */
4009 BorderLocation_Max
, /* Boundary_Max */
4010 BorderLocation_Both
, /* Boundary_Both */
4011 END_BorderLocation_e
,
4012 BorderLocation_Invalid
= BadEnumValue
4017 ContourColorMap_SmRainbow
,
4018 ContourColorMap_LgRainbow
,
4019 ContourColorMap_Modern
,
4020 ContourColorMap_GrayScale
,
4021 ContourColorMap_Wild
,
4022 ContourColorMap_UserDef
,
4023 ContourColorMap_TwoColor
,
4024 ContourColorMap_RawUserDef
,
4025 END_ContourColorMap_e
,
4026 ContourColorMap_Invalid
= BadEnumValue
,
4027 /* deprecated values */
4028 ColorMap_SmRainbow
= ContourColorMap_SmRainbow
, /* deprecated */
4029 ColorMap_LgRainbow
= ContourColorMap_LgRainbow
, /* deprecated */
4030 ColorMap_Modern
= ContourColorMap_Modern
, /* deprecated */
4031 ColorMap_GrayScale
= ContourColorMap_GrayScale
, /* deprecated */
4032 ColorMap_Wild
= ContourColorMap_Wild
, /* deprecated */
4033 ColorMap_UserDef
= ContourColorMap_UserDef
, /* deprecated */
4034 ColorMap_TwoColor
= ContourColorMap_TwoColor
, /* deprecated */
4035 ColorMap_RawUserDef
= ContourColorMap_RawUserDef
, /* deprecated */
4036 ColorMap_Invalid
= ContourColorMap_Invalid
/* deprecated */
4037 } ContourColorMap_e
;
4051 ErrorBar_Invalid
= BadEnumValue
4058 ContourLineMode_UseZoneLineType
,
4059 ContourLineMode_SkipToSolid
,
4060 ContourLineMode_DashNegative
,
4061 END_ContourLineMode_e
,
4062 ContourLineMode_Invalid
= BadEnumValue
4063 } ContourLineMode_e
;
4066 /* BEGINREMOVEFROMADDON */
4070 Panel_Cell
, /* FieldZone */
4071 Panel_Vector
, /* FieldZone */
4072 Panel_Scatter
, /* FieldZone */
4073 Panel_IJKBorderLine
, /* FieldZone IJK border lines */
4074 Panel_CellEdge
, /* FieldZone border lines and creases */
4075 Panel_FEBoundaryCell
, /* FieldZone */
4076 Panel_NodeLabel
, /* FieldZone */
4077 Panel_CellLabel
, /* FieldZone */
4078 Panel_StreamtraceCell
, /* Streamtrace COB */
4079 Panel_StreamtraceMarker
, /* StreamtraceMarker COB (Scatter Symbol) */
4080 Panel_StreamtraceArrowhead
, /* StreamtraceArrowhead COB (Vector) */
4081 Panel_IsoSurfaceCell
, /* IsoSurface COB */
4082 Panel_IsoSurfaceCellEdge
, /* IsoSurface COB border lines and creases (border lines and creases not currently used) */
4083 Panel_SliceCell
, /* Slice COB */
4084 Panel_SliceVector
, /* Slice COB */
4085 Panel_SliceIJKBorderLine
, /* Slice COB IJK border lines */
4086 Panel_SliceCellEdge
, /* Slice COB border lines and creases (creases not currently used) */
4087 Panel_Geom
, /* Misc */
4088 Panel_Text
, /* Misc */
4090 Panel_Invalid
= BadEnumValue
4092 /* ENDREMOVEFROMADDON */
4097 MessageBoxType_Error
,
4098 MessageBoxType_Warning
,
4099 MessageBoxType_Information
,
4100 MessageBoxType_Question
, /* Ok, Cancel buttons */
4101 MessageBoxType_YesNo
,
4102 MessageBoxType_YesNoCancel
,
4103 MessageBoxType_WarningOkCancel
,
4104 END_MessageBoxType_e
,
4105 MessageBoxType_Invalid
= BadEnumValue
,
4106 /* deprecated values */
4107 MessageBox_Error
= MessageBoxType_Error
, /* deprecated */
4108 MessageBox_Warning
= MessageBoxType_Warning
, /* deprecated */
4109 MessageBox_Information
= MessageBoxType_Information
, /* deprecated */
4110 MessageBox_Question
= MessageBoxType_Question
, /* deprecated */
4111 MessageBox_YesNo
= MessageBoxType_YesNo
, /* deprecated */
4112 MessageBox_YesNoCancel
= MessageBoxType_YesNoCancel
, /* deprecated */
4113 MessageBox_WarningOkCancel
= MessageBoxType_WarningOkCancel
, /* deprecated */
4114 MessageBox_Invalid
= MessageBoxType_Invalid
/* deprecated */
4120 MessageBoxReply_Yes
,
4122 MessageBoxReply_Cancel
,
4124 END_MessageBoxReply_e
,
4125 MessageBoxReply_Invalid
= BadEnumValue
4126 } MessageBoxReply_e
;
4130 NumberFormat_Integer
,
4131 NumberFormat_FixedFloat
,
4132 NumberFormat_Exponential
,
4133 NumberFormat_BestFloat
,
4134 NumberFormat_SuperScript
,
4135 NumberFormat_CustomLabel
,
4136 NumberFormat_LogSuperScript
,
4137 NumberFormat_RangeBestFloat
,
4138 NumberFormat_DynamicLabel
,
4139 NumberFormat_TimeDate
,
4141 NumberFormat_Invalid
= BadEnumValue
4144 /* For backward compatibility with v9- */
4145 typedef NumberFormat_e ValueFormat_e
;
4150 BackingStoreMode_QuickAndDirty
,
4151 BackingStoreMode_RealTimeUpdate
,
4152 BackingStoreMode_PeriodicUpdate
,
4153 END_BackingStoreMode_e
,
4154 BackingStoreMode_Invalid
= BadEnumValue
4155 } BackingStoreMode_e
;
4162 TickDirection_Centered
,
4163 END_TickDirection_e
,
4164 TickDirection_Invalid
= BadEnumValue
4167 /* This enumerated type is no longer used as of Tecplot V10. */
4170 AxisTitlePosition_Left
,
4171 AxisTitlePosition_Center
,
4172 AxisTitlePosition_Right
,
4173 END_AxisTitlePosition_e
,
4174 AxisTitlePosition_Invalid
= BadEnumValue
4175 } AxisTitlePosition_e
;
4179 AxisTitleMode_NoTitle
,
4180 AxisTitleMode_UseVarName
,
4181 AxisTitleMode_UseText
,
4182 END_AxisTitleMode_e
,
4183 AxisTitleMode_Invalid
= BadEnumValue
4188 AxisAlignment_WithViewport
,
4189 AxisAlignment_WithOpposingAxisValue
,
4190 AxisAlignment_WithGridMin
,
4191 AxisAlignment_WithGridMax
,
4192 AxisAlignment_WithSpecificAngle
,
4193 AxisAlignment_WithGridAreaTop
,
4194 AxisAlignment_WithGridAreaBottom
,
4195 AxisAlignment_WithGridAreaLeft
,
4196 AxisAlignment_WithGridAreaRight
,
4197 END_AxisAlignment_e
,
4198 AxisAlignment_Invalid
= BadEnumValue
4203 FunctionDependency_XIndependent
,
4204 FunctionDependency_YIndependent
,
4205 END_FunctionDependency_e
,
4206 FunctionDependency_Invalid
= BadEnumValue
,
4207 FunctionDependency_ThetaIndependent
= FunctionDependency_XIndependent
,
4208 FunctionDependency_RIndependent
= FunctionDependency_YIndependent
4209 } FunctionDependency_e
;
4217 LegendShow_Invalid
= BadEnumValue
4223 LineMapSort_IndependentVar
,
4224 LineMapSort_DependentVar
,
4225 LineMapSort_SpecificVar
,
4227 LineMapSort_Invalid
= BadEnumValue
4232 ContLegendLabelLocation_ContourLevels
,
4233 ContLegendLabelLocation_Increment
,
4234 ContLegendLabelLocation_ColorMapDivisions
,
4235 END_ContLegendLabelLocation_e
,
4236 ContLegendLabelLocation_Invalid
= BadEnumValue
4237 } ContLegendLabelLocation_e
;
4243 ThetaMode_Arbitrary
,
4245 ThetaMode_Invalid
= BadEnumValue
4250 Transform_PolarToRect
,
4251 Transform_SphericalToRect
,
4252 Transform_RectToPolar
,
4253 Transform_RectToSpherical
,
4255 Transform_Invalid
= BadEnumValue
4260 LaunchDialogMode_ModalSync
,
4261 LaunchDialogMode_Modeless
,
4262 LaunchDialogMode_ModalAsync
,
4263 END_LaunchDialogMode_e
,
4264 LaunchDialogMode_Invalid
= BadEnumValue
4265 } LaunchDialogMode_e
;
4270 SelectFileOption_ReadSingleFile
,
4271 SelectFileOption_ReadMultiFile
,
4272 SelectFileOption_AllowMultiFileRead
,
4273 SelectFileOption_WriteFile
,
4274 SelectFileOption_SelectDirectory
,
4275 END_SelectFileOption_e
,
4276 SelectFileOption_Invalid
= BadEnumValue
4277 } SelectFileOption_e
;
4281 BinaryFileVersion_Tecplot2006
,
4282 BinaryFileVersion_Tecplot2008
,
4283 BinaryFileVersion_Tecplot2009
,
4284 BinaryFileVersion_Current
,
4285 END_BinaryFileVersion_e
,
4286 BinaryFileVersion_Invalid
= BadEnumValue
4287 } BinaryFileVersion_e
;
4289 /* CURRENTLY NOT USED .... */
4292 ViewActionDrawMode_NoDraw
,
4293 ViewActionDrawMode_DrawTrace
,
4294 ViewActionDrawMode_DrawFull
,
4295 END_ViewActionDrawMode_e
,
4296 ViewActionDrawMode_Invalid
= BadEnumValue
4297 } ViewActionDrawMode_e
;
4304 PageAction_SetCurrentToNext
,
4305 PageAction_SetCurrentToPrev
,
4306 PageAction_SetCurrentByName
,
4307 PageAction_SetCurrentByUniqueID
,
4309 PageAction_Invalid
= BadEnumValue
4314 FrameAction_PushTop
,
4315 FrameAction_PopByNumber
,
4316 FrameAction_PopAtPosition
,
4317 FrameAction_DeleteActive
,
4318 FrameAction_FitAllToPaper
,
4319 FrameAction_PushByName
,
4320 FrameAction_PopByName
,
4321 FrameAction_PushByNumber
,
4322 FrameAction_ActivateTop
,
4323 FrameAction_ActivateNext
,
4324 FrameAction_ActivatePrevious
,
4325 FrameAction_ActivateAtPosition
,
4326 FrameAction_ActivateByName
,
4327 FrameAction_ActivateByNumber
,
4328 FrameAction_MoveToTopActive
,
4329 FrameAction_MoveToTopByName
,
4330 FrameAction_MoveToTopByNumber
,
4331 FrameAction_MoveToBottomActive
,
4332 FrameAction_MoveToBottomByName
,
4333 FrameAction_MoveToBottomByNumber
,
4335 FrameAction_Invalid
= BadEnumValue
,
4336 FrameAction_Pop
= FrameAction_PopByNumber
,
4337 FrameAction_Push
= FrameAction_PushByNumber
,
4338 FrameAction_DeleteTop
= FrameAction_DeleteActive
4343 DoubleBufferAction_On
,
4344 DoubleBufferAction_Off
,
4345 DoubleBufferAction_Swap
,
4346 END_DoubleBufferAction_e
,
4347 DoubleBufferAction_Invalid
= BadEnumValue
4348 } DoubleBufferAction_e
;
4351 * PickAction_CheckToAdd had the side effects of popping a frame that was selected
4352 * only if not collecting. Pick_AddAtPosition avoids this.
4356 PickAction_CheckToAdd
, /* deprecated: use Pick_AddAtPosition */
4358 PickAction_AddAllInRegion
,
4364 PickAction_PasteAtPosition
,
4369 PickAction_SetMouseMode
,
4370 PickAction_DeselectAll
,
4371 PickAction_AddZones
,
4372 PickAction_AddXYMaps
, /* deprecated: use PickAction_AddLineMaps */
4373 PickAction_AddLineMaps
,
4374 PickAction_AddAtPosition
,
4376 PickAction_Invalid
= BadEnumValue
4382 ContourLevelAction_Add
,
4383 ContourLevelAction_New
,
4384 ContourLevelAction_DeleteRange
,
4385 ContourLevelAction_Reset
,
4386 ContourLevelAction_ResetToNice
,
4387 ContourLevelAction_DeleteNearest
,
4388 END_ContourLevelAction_e
,
4389 ContourLevelAction_Invalid
= BadEnumValue
4390 } ContourLevelAction_e
;
4394 ContourLabelAction_Add
,
4395 ContourLabelAction_DeleteAll
,
4396 END_ContourLabelAction_e
,
4397 ContourLabelAction_Invalid
= BadEnumValue
4398 } ContourLabelAction_e
;
4402 StreamtraceAction_Add
,
4403 StreamtraceAction_DeleteAll
,
4404 StreamtraceAction_DeleteRange
,
4405 StreamtraceAction_SetTerminationLine
,
4406 StreamtraceAction_ResetDeltaTime
,
4407 END_StreamtraceAction_e
,
4408 StreamtraceAction_Invalid
= BadEnumValue
4409 } StreamtraceAction_e
;
4413 ColorMapControlAction_RedistributeControlPoints
,
4414 ColorMapControlAction_CopyCannedColorMap
,
4415 ColorMapControlAction_ResetToFactoryDefaults
,
4416 END_ColorMapControlAction_e
,
4417 ColorMapControlAction_Invalid
= BadEnumValue
4418 } ColorMapControlAction_e
;
4422 ColorMapDistribution_Continuous
,
4423 ColorMapDistribution_Banded
,
4424 END_ColorMapDistribution_e
,
4425 ColorMapDistribution_Invalid
= BadEnumValue
4426 } ColorMapDistribution_e
;
4435 RGBMode_Invalid
= BadEnumValue
4441 TecUtilErr_Undetermined
,
4443 TecUtilErr_Invalid
= BadEnumValue
4446 /* BEGINREMOVEFROMADDON */
4447 /* deprecated type from alpha/beta v10 */
4451 AxisShape_LineTwoDirections
,
4453 AxisShape_CrossOrBox
,
4455 AxisShape_Invalid
= BadEnumValue
4458 /* licensing enums : keep hidden */
4467 RunMode_Invalid
= BadEnumValue
4470 /* ENDREMOVEFROMADDON */
4472 typedef enum /* Custom exporter error message */
4474 ExportCustReturnCode_Ok
,
4475 ExportCustReturnCode_Failed
,
4476 ExportCustReturnCode_TecplotLocked
,
4477 ExportCustReturnCode_ExporterNotLoaded
,
4478 ExportCustReturnCode_ExportCallbackFailed
,
4479 ExportCustReturnCode_NotAnImageExporter
,
4480 ExportCustReturnCode_NotAFieldDataExporter
,
4481 END_ExportCustReturnCode_e
,
4482 ExportCustReturnCode_Invalid
= BadEnumValue
4483 } ExportCustReturnCode_e
;
4490 CZType_FieldDataZone
,
4491 CZType_FEBoundaryCOB
,
4492 CZType_IsoSurfaceCOB
,
4494 CZType_StreamtraceCOB
,
4495 CZType_StreamtraceMarkerCOB
,
4496 CZType_StreamtraceArrowheadCOB
,
4498 CZType_Invalid
= BadEnumValue
4505 FaceNeighborMode_LocalOneToOne
,
4506 FaceNeighborMode_LocalOneToMany
,
4507 FaceNeighborMode_GlobalOneToOne
,
4508 FaceNeighborMode_GlobalOneToMany
,
4509 END_FaceNeighborMode_e
,
4510 FaceNeighborMode_Invalid
= BadEnumValue
4511 } FaceNeighborMode_e
;
4515 * Page render destinations.
4519 PageRenderDest_None
,
4520 PageRenderDest_OnScreen
,
4521 PageRenderDest_OffScreen
,
4522 END_PageRenderDest_e
,
4523 PageRenderDest_Invalid
= BadEnumValue
4526 /* BEGINREMOVEFROMADDON */
4528 * Destination for all internal rendering (VDI/Gr) functions. For external
4529 * linkage we translate RenderDest_WorkArea to PageRenderDest_OnScreen,
4530 * RenderDest_OffscreenBitmap to PageRenderDest_OffScreen and
4531 * RenderDest_Invalid to PageRenderDest_None.
4535 RenderDest_WorkArea
, /* Do not move from start of screen entries */
4536 RenderDest_ExampleText
,
4537 RenderDest_ExampleLightSourcePosition
,
4538 RenderDest_ExampleColorMap
,
4539 RenderDest_ExampleBasicColor
, /* Do not move from end of screen entries */
4540 RenderDest_OffscreenBitmap
,
4541 RenderDest_Hardcopy
,
4543 RenderDest_Invalid
= BadEnumValue
,
4545 * These next two are optimizations to make the
4546 * RDT_IsScreen() macro as efficient as possible.
4548 RenderDest_FirstScreenEntry
= RenderDest_WorkArea
,
4549 RenderDest_LastScreenEntry
= RenderDest_ExampleBasicColor
4551 /* ENDREMOVEFROMADDON */
4559 Stipple_Invalid
= BadEnumValue
4566 DataFileType_Solution
,
4568 DataFileType_Invalid
= BadEnumValue
4573 ConditionAwakeReason_Signaled
,
4574 ConditionAwakeReason_TimedOut
,
4575 END_ConditionAwakeReason_e
,
4576 ConditionAwakeReason_Invalid
= BadEnumValue
4577 } ConditionAwakeReason_e
;
4579 /****************************************************************
4581 * STRUCTURE TYPEDEFS *
4583 ****************************************************************/
4586 * These are defined to work with pthreads, more work for WINAPI needed
4588 typedef struct _Mutex_a
* Mutex_pa
;
4590 typedef void*(STDCALL
*ThreadFunction_pf
)(ArbParam_t ThreadData
);
4592 typedef struct _Condition_a
* Condition_pa
;
4594 typedef struct _JobControl_s
* JobControl_pa
;
4596 typedef void (STDCALL
*ThreadPoolJob_pf
)(ArbParam_t JobData
);
4598 /* BEGINREMOVEFROMADDON */
4599 #if defined TECPLOTKERNEL
4600 /* CORE SOURCE CODE REMOVED */
4601 #if defined USE_OOSTYLE
4603 #endif /* TECPLOTKERNEL */
4604 /* ENDREMOVEFROMADDON */
4606 typedef struct _StringList_s
*StringList_pa
;
4607 typedef struct _Menu_s
*Menu_pa
;
4608 /* BEGINREMOVEFROMADDON */
4609 typedef struct _ArrayList_s
*ArrayList_pa
;
4610 /* ENDREMOVEFROMADDON */
4614 ImageResizeFilter_Texture
,
4615 ImageResizeFilter_Box
,
4616 ImageResizeFilter_Lanczos2
,
4617 ImageResizeFilter_Lanczos3
,
4618 ImageResizeFilter_Triangle
,
4619 ImageResizeFilter_Bell
,
4620 ImageResizeFilter_BSpline
,
4621 ImageResizeFilter_Cubic
,
4622 ImageResizeFilter_Mitchell
,
4623 ImageResizeFilter_Gaussian
,
4624 END_ImageResizeFilter_e
,
4625 ImageResizeFilter_Invalid
= BadEnumValue
4626 } ImageResizeFilter_e
;
4634 VarStatus_NotLoaded
,
4636 VarStatus_Invalid
= BadEnumValue
4641 /* BEGINREMOVEFROMADDON */
4643 /* here until GR and GRHW layer can be rearranged. */
4644 #if defined TECPLOTKERNEL
4645 /* CORE SOURCE CODE REMOVED */
4646 # if !defined NO_ASSERTS
4648 #endif /* TECPLOTKERNEL */
4650 /* ENDREMOVEFROMADDON */
4652 typedef struct _Set_a
*Set_pa
;
4661 /* BEGINREMOVEFROMADDON */
4663 typedef struct _Generic3Var_s
4670 typedef struct _ThetaR_s
4677 * This union is designed to allow different plottypes
4678 * to access the same values by different names. In
4679 * C++ we could use member access functions, or we
4680 * could have used macros, but instead we use this
4681 * union. NOTE: This only works if all the structures
4682 * have the same alignment.
4684 typedef union _AnchorPos_u
4686 Generic3Var_s Generic
;
4691 typedef struct _DataFileInfo_s
4694 char *TempBinaryFName
;
4695 DataFileType_e FileType
;
4696 FileOffset_t DataFileOffset
;
4697 StringList_pa VarName
;
4698 EntIndex_t NumZones
;
4700 double SolutionFileTime
;
4701 struct _DataFileInfo_s
*NextFile
;
4704 typedef struct _StylesheetIOFlags_s
4706 Boolean_t IncludePlotStyle
;
4707 Boolean_t IncludeFieldAndMapStyle
; /* Only used for undo */
4708 Boolean_t IncludeUniqueIDs
; /* Only used for undo */
4709 Boolean_t IncludeText
;
4710 Boolean_t IncludeGeom
;
4711 Boolean_t IncludeGeomImageData
;
4712 Boolean_t IncludeAuxData
;
4713 Boolean_t IncludeStreamPositions
;
4714 Boolean_t IncludeContourLevels
;
4715 Boolean_t IncludeFactoryDefaults
; /* Only used when writing */
4716 Boolean_t CompressStyleCommands
; /* Only used when writing */
4717 Boolean_t MergeStyle
; /* Only used when reading */
4718 Boolean_t IncludeFrameSizeAndPosition
; /* Only used when reading */
4719 Boolean_t UseRelativePaths
;
4720 } StylesheetIOFlags_s
;
4727 Boolean_t Show
; /* power switch */
4729 Boolean_t ShowContour
;
4730 Boolean_t ShowShade
;
4731 Boolean_t UseLightingEffect
;
4732 Boolean_t UseTranslucency
;
4733 } IsoSurfaceLayers_s
;
4739 Boolean_t Show
; /* power switch */
4741 Boolean_t ShowContour
;
4742 Boolean_t ShowVector
;
4743 Boolean_t ShowShade
;
4745 Boolean_t UseLightingEffect
;
4746 Boolean_t UseTranslucency
;
4753 Boolean_t Show
; /* power switch */
4754 Boolean_t ShowPaths
;
4755 Boolean_t ShowDashes
;
4756 Boolean_t ShowArrowheads
;
4758 Boolean_t ShowContour
;
4759 Boolean_t ShowShade
;
4760 Boolean_t ShowMarkers
;
4761 Boolean_t UseLightingEffect
;
4762 Boolean_t UseTranslucency
;
4763 } StreamtraceLayers_s
;
4769 #if 0 /* in the future we may add a main power switch */
4770 Boolean_t Show
; /* power switch */
4772 TwoDDrawOrder_e TwoDDrawOrder
;
4774 Boolean_t ShowContour
;
4775 Boolean_t ShowVector
;
4776 Boolean_t ShowScatter
;
4777 Boolean_t ShowShade
;
4779 Boolean_t UseLightingEffect
;
4780 Boolean_t UseTranslucency
;
4784 * General purpose field layers structure used for low level drawing code only.
4785 * SetupXxxx is responsible for populating this general field layers structure
4786 * from the specific layer structures above for CZInfo.
4791 Boolean_t ShowContour
;
4792 Boolean_t ShowVector
;
4793 Boolean_t ShowScatter
;
4794 Boolean_t ShowShade
;
4796 Boolean_t UseLightingEffect
;
4797 Boolean_t UseTranslucency
;
4802 typedef struct _LinePlotLayers_s
4804 #if 0 /* in the future we may add a main power switch */
4805 Boolean_t Show
; /* power switch */
4807 Boolean_t ShowLines
;
4808 Boolean_t ShowSymbols
;
4809 Boolean_t ShowBarCharts
;
4810 Boolean_t ShowErrorBars
;
4814 typedef union _InterfaceAdjust_u
4818 } InterfaceAdjust_u
;
4820 typedef Boolean_t (*SuffixModifier_pf
)(TP_IN_OUT
double* Value
,
4821 const char* Suffix
);
4823 typedef struct _InputSpecs_s
4828 InterfaceAdjust_u InterfaceAdjust
;
4829 SuffixModifier_pf SuffixModifier
;
4833 typedef struct _RGB_s
4841 typedef struct _ControlPoint_s
4843 double ColorMapFraction
;
4849 typedef struct _ColorMapBand_s
4851 short NumControlPoints
;
4852 ControlPoint_s ControlPoint
[MaxColorMapControlPoints
];
4856 typedef struct _EventAction_s
4866 Boolean_t IsShifted
;
4868 Boolean_t IsControlled
;
4869 Boolean_t WasShiftedOnButtonPress
;
4870 Boolean_t WasAltedOnButtonPress
;
4871 Boolean_t WasControlledOnButtonPress
;
4874 typedef struct _MacroCmd_s
4876 LString_t MacroLine
;
4877 struct _MacroCmd_s
*NextCmd
;
4881 typedef struct _IntegerRect_s
4890 typedef struct _Rect_s
4898 typedef struct _XY_s
4904 typedef struct _IJKSkip_s
4915 * NOTE ON RANGES (Ent and Index)
4917 * Min, Max and Skip all use the following assignment logic:
4920 * -1 = mxindex value, (X[mxindex-1] in c)
4921 * -n = mxindex-n+1 value (X[mxindex+n] in c)
4922 * n = n+1 value (X[n] in c)
4927 * 2/28/95: NOTE: EntRange_s is no longer used but may be
4931 typedef struct _EntRange_s
4939 typedef struct _IndexRange_s
4947 #if defined TECPLOTKERNEL
4948 /* CORE SOURCE CODE REMOVED */
4949 #if defined (THREED)
4951 #endif /* TECPLOTKERNEL */
4953 typedef struct _TextShape_s
4960 #define AsciiShapeFontIsGreek(S) (((S)->UseBaseFont == FALSE) && ((S)->FontOverride == Font_Greek))
4961 #define AsciiShapeFontIsMath(S) (((S)->UseBaseFont == FALSE) && ((S)->FontOverride == Font_Math))
4962 #define AsciiShapeFontIsUserDefined(S) (((S)->UseBaseFont == FALSE) && ((S)->FontOverride == Font_UserDefined))
4967 Boolean_t UseBaseFont
; /* (Default = TRUE) */
4968 Font_e FontOverride
;/* (Default = Font_Math)*/
4972 typedef struct _SymbolShape_s
4974 GeomShape_e GeomShape
;
4976 AsciiShape_s AsciiShape
;
4982 /* added temporarily so Windows makelibtec works */
4987 /* ENDREMOVEFROMADDON */
4989 typedef struct _AddOnList_a
*AddOn_pa
;
4991 typedef struct _NodeMap_a
*NodeMap_pa
;
4993 /* BEGINREMOVEFROMADDON */
4994 typedef struct _StylePointState_a
*StylePointState_pa
;
4995 typedef struct _DataElementState_a
*DataElementState_pa
;
4996 typedef struct _StyleElementState_a
*StyleElementState_pa
;
4997 typedef struct _NormalCache_a
*NormalCache_pa
;
4998 /* ENDREMOVEFROMADDON */
5001 #define INVALID_INDEX (-1)
5003 /* used to indicate that no neighboring element or zone exists */
5004 #define NO_NEIGHBORING_ELEMENT (-1)
5005 #define NO_NEIGHBORING_ZONE (-1)
5007 typedef struct _FaceNeighbor_a
*FaceNeighbor_pa
;
5011 typedef struct _FaceMap_a
*FaceMap_pa
;
5015 typedef struct _ElemToFaceMap_a
*ElemToFaceMap_pa
;
5019 typedef struct _NodeToElemMap_a
*NodeToElemMap_pa
;
5021 /* BEGINREMOVEFROMADDON */
5024 * Enumerates the face neighbor array members to make indexed members
5029 FaceNeighborMemberArray_CellFaceNbrs
,
5030 FaceNeighborMemberArray_BndryConnectNbrsCompObscure
,
5031 FaceNeighborMemberArray_BndryConnectFaceToCellsMap
,
5032 FaceNeighborMemberArray_BndryConnectIsPerfectNbr
,
5033 FaceNeighborMemberArray_BndryConnectCellList
,
5034 FaceNeighborMemberArray_BndryConnectZoneList
,
5035 END_FaceNeighborMemberArray_e
,
5036 FaceNeighborMemberArray_Invalid
= BadEnumValue
5037 } FaceNeighborMemberArray_e
;
5039 int const FaceNeighborNumMemberArrays
= (int)END_FaceNeighborMemberArray_e
;
5042 * Enumerates the face map's array members to make indexed members
5047 FaceMapMemberArray_FaceNodeOffsets
,
5048 FaceMapMemberArray_FaceNodes
,
5049 FaceMapMemberArray_FaceLeftElems
,
5050 FaceMapMemberArray_FaceRightElems
,
5051 FaceMapMemberArray_FaceBndryItemOffsets
,
5052 FaceMapMemberArray_FaceBndryItemElems
,
5053 FaceMapMemberArray_FaceBndryItemElemZones
,
5054 END_FaceMapMemberArray_e
,
5055 FaceMapMemberArray_Invalid
= BadEnumValue
5056 } FaceMapMemberArray_e
;
5058 const int FaceMapNumMemberArrays
= (int)END_FaceMapMemberArray_e
;
5061 * Enumerates the element to face map's array members to make indexed members
5066 ElemToFaceMapMemberArray_ElemFaceOffsets
,
5067 ElemToFaceMapMemberArray_ElemFaces
,
5068 END_ElemToFaceMapMemberArray_e
,
5069 ElemToFaceMapMemberArray_Invalid
= BadEnumValue
5070 } ElemToFaceMapMemberArray_e
;
5072 const int ElemToFaceMapNumMemberArrays
= (int)END_ElemToFaceMapMemberArray_e
;
5075 * Enumerates the element map's array members to make indexed members
5080 NodeToElemMapMemberArray_NodeElemOffsets
,
5081 NodeToElemMapMemberArray_NodeElems
,
5082 END_NodeToElemMapMemberArray_e
,
5083 NodeToElemMapMemberArray_Invalid
= BadEnumValue
5084 } NodeToElemMapMemberArray_e
;
5086 const int NodeToElemMapNumMemberArrays
= (int)END_NodeToElemMapMemberArray_e
;
5088 /* ENDREMOVEFROMADDON */
5091 typedef struct _FieldData_a
*FieldData_pa
;
5095 typedef struct _AuxData_s
*AuxData_pa
;
5099 * Enumerates the data value structure of a variable in a data file.
5100 * For all but ordered cell centered data the classic, classic padded and
5101 * classic plus formats are identical. All values are laid out contiguously
5102 * in the file. The number of values written depends upon the value location:
5105 * The number of values equals the number of data points.
5106 * - FE cell centered:\n
5107 * The number of values equals the number of elements.
5108 * - Ordered nodal:\n
5109 * The number of values equals the number of data points.
5110 * - Ordered cell centered:\n
5111 * There are three formats:
5112 * -# Classic (binary version < 103):\n
5113 * Classic is a compressed format of ordered cell centered data in
5114 * that it does not include ghost cells. The cell index of each cell
5115 * does not correspond to the lowest corner point index of each cell
5116 * as it does internally in Tecplot.\n
5117 * The number of values in the data file is calculated as follows:
5119 * NumValues = MAX(IMax-1,1) * MAX(JMax-1,1) * MAX(KMax-1,1);
5121 * Where IMax, JMax, and KMax are the maximum point dimensions of the
5123 * -# Classic padded (binary version < 104):\n
5124 * Classic padded is an intermediary format that was available only
5125 * within Tecplot, Inc. The cell centered data includes the ghost cells
5126 * and each cell index corresponds to the lowest corner point index of
5128 * The number of values in the data file (including ghost cells) is
5129 * calculated as follows:
5131 * NumValues = IMax * JMax * KMax;
5133 * Where IMax, JMax, and KMax are the maximum point dimensions of the
5134 * zone. The contents of the ghost cells is undefined and should not
5136 * -# Classic plus (binary version >= 104):\n
5137 * Classic plus is similar to classic padded except that it does not
5138 * include the ghost cells of the slowest moving index greater than
5140 * The number of values in the data file (including ghost cells) is
5141 * calculated as follows:
5147 * // decrement the max index of the slowest moving index greater than 1
5150 * else if (JMax > 1)
5152 * else if (IMax > 1)
5155 * NumValues = FinalIMax * FinalJMax * FinalKMax;
5157 * Where IMax, JMax, and KMax are the maximum point dimensions of the
5158 * zone. The contents of the ghost cells is undefined and should not
5163 DataValueStructure_Classic
,
5164 DataValueStructure_ClassicPadded
,
5165 DataValueStructure_ClassicPlus
,
5166 END_DataValueStructure_e
,
5167 /* BEGINREMOVEFROMADDON */
5168 DataValueStructure_Latest
= (END_DataValueStructure_e
- 1),
5169 /* ENDREMOVEFROMADDON */
5170 DataValueStructure_Invalid
= BadEnumValue
5171 } DataValueStructure_e
;
5174 * Enumerates the data node structure of a node map in a data file. The classic
5175 * format uses 1 based nodes while the classic plus format uses zero based
5180 DataNodeStructure_Classic
, /* ones based node maps */
5181 DataNodeStructure_ClassicPlus
, /* zero based node maps */
5182 END_DataNodeStructure_e
,
5183 DataNodeStructure_Invalid
= BadEnumValue
5184 } DataNodeStructure_e
;
5187 * Enumerates the variable locking modes. The \ref VarLockMode_ValueChange mode
5188 * prevents modification of the values in a variable but permits deletion, and
5189 * the \ref VarLockMode_Delete mode prevents deletion of a varaible but permits
5194 VarLockMode_ValueChange
,
5197 VarLockMode_Invalid
= BadEnumValue
5202 FieldMapMode_UseStrandID
,
5203 FieldMapMode_UseZoneSet
,
5205 FieldMapMode_Invalid
= BadEnumValue
5210 UnloadStrategy_Auto
,
5211 UnloadStrategy_NeverUnload
,
5212 UnloadStrategy_MinimizeMemoryUse
,
5213 END_UnloadStrategy_e
,
5214 UnloadStrategy_Invalid
= BadEnumValue
5217 /* BEGINREMOVEFROMADDON */
5223 ColorIndex_t PresetZoneColor
;
5224 Boolean_t IsInBlockFormat
;
5228 * Note: For FE Data, NumPtsI = Number of data points.
5229 * NumPtsJ = Number of elements.
5230 * NumPtsK = Number of points per element.
5233 typedef struct _ZoneSpec_s
5235 UniqueID_t UniqueID
;
5237 EntIndex_t ParentZone
;
5239 double SolutionTime
;
5240 LgIndex_t NumPtsI
; // ...NumDataPts
5241 LgIndex_t NumPtsJ
; // ...NumElements
5242 LgIndex_t NumPtsK
; // ...NumPtsPerElem or NumFaces
5243 LgIndex_t ICellDim
; // ...currently not used
5244 LgIndex_t JCellDim
; // ...currently not used
5245 LgIndex_t KCellDim
; // ...currently not used
5247 ZoneLoadInfo_s ZoneLoadInfo
;
5249 Boolean_t BuildZoneOptInfo
;
5251 /* classic data only */
5252 FaceNeighborMode_e FNMode
;
5253 Boolean_t FNAreCellFaceNbrsSupplied
; // ...meaning we don't need to update them
5255 /* polytope data only */
5256 LgIndex_t NumFaceNodes
;
5257 LgIndex_t NumFaceBndryFaces
;
5258 LgIndex_t NumFaceBndryItems
;
5263 #if defined TECPLOTKERNEL
5264 /* CORE SOURCE CODE REMOVED */
5265 #endif /* TECPLOTKERNEL */
5267 typedef struct _GenericImage_a
*GenericImage_pa
;
5269 typedef struct _TextBox_s
5271 TextBox_e BoxType
; /* Used to be textbox */
5272 double Margin
; /* Used to be textboxmargin */
5273 double LineThickness
; /* Used to be textboxmargin */
5274 ColorIndex_t BColor
; /* Used to be textboxcolor */
5275 ColorIndex_t FillBColor
; /* Used to be textboxfillcolor */
5279 typedef struct _Text_s
5281 UniqueID_t UniqueID
; /* Not used yet */
5282 AnchorPos_u AnchorPos
;
5283 CoordSys_e PositionCoordSys
;
5285 Boolean_t AttachToZone
; /* New */
5286 ColorIndex_t BColor
; /* Used to be TextColor */
5287 TextShape_s TextShape
;
5288 TextBox_s Box
; /* Box items used to be here*/
5289 double Angle
; /* NOTE: short in v6, now in rad */
5290 TextAnchor_e Anchor
; /* New */
5291 double LineSpacing
; /* New */
5293 char *MacroFunctionCommand
;
5294 Clipping_e Clipping
;
5296 struct _Text_s
*NextText
;
5297 struct _Text_s
*PrevText
;
5301 typedef struct _GenericGeomData_s
5303 FieldData_pa V1Base
;
5304 FieldData_pa V2Base
;
5305 FieldData_pa V3Base
;
5306 } GenericGeomData_s
;
5308 typedef struct _PolarGeomData_s
5310 FieldData_pa ThetaBase
;
5314 typedef struct _CartesianGeomData_s
5319 } CartesianGeomData_s
;
5322 * This union is designed to allow different plottypes
5323 * to access the same values by different names. In
5324 * C++ we could use member access functions, or we
5325 * could have used macros, but instead we use this
5326 * union. NOTE: This only works if all the structures
5327 * have the same alignment.
5329 typedef union _GeomData_u
5331 GenericGeomData_s Generic
;
5332 CartesianGeomData_s XYZ
;
5333 PolarGeomData_s ThetaR
;
5336 typedef struct _Geom_s
5338 UniqueID_t UniqueID
;
5339 GeomType_e GeomType
;
5340 CoordSys_e PositionCoordSys
;
5341 AnchorPos_u AnchorPos
;
5342 Boolean_t AttachToZone
;
5344 ColorIndex_t BColor
;
5346 ColorIndex_t FillBColor
;
5347 LinePattern_e LinePattern
;
5348 double PatternLength
;
5349 double LineThickness
;
5351 DrawOrder_e DrawOrder
;
5352 Clipping_e Clipping
;
5353 FieldDataType_e DataType
;
5354 char *MacroFunctionCommand
;
5355 ArrowheadStyle_e ArrowheadStyle
;
5356 ArrowheadAttachment_e ArrowheadAttachment
;
5357 double ArrowheadSize
;
5358 double ArrowheadAngle
;
5359 SmInteger_t NumEllipsePts
;
5360 char *ImageFileName
;
5361 LgIndex_t ImageNumber
; /* used only to locate images within .lpk files */
5362 Boolean_t MaintainAspectRatio
;
5363 double PixelAspectRatio
; /* VerticalPixelsPerHorizontalPixel */
5364 SmInteger_t NumSegments
;
5365 SegPtsArray_t NumSegPts
;
5366 GeomData_u GeomData
;
5367 ImageResizeFilter_e ImageResizeFilter
;
5368 /* Internal Scratch */
5369 GenericImage_pa _ImageData
;
5370 struct _Geom_s
*_NextGeom
;
5371 struct _Geom_s
*_PrevGeom
;
5375 typedef struct _Text_s
*Text_pa
;
5376 typedef struct _Geom_s
*Geom_pa
;
5379 #if defined TECPLOTKERNEL
5380 /* CORE SOURCE CODE REMOVED */
5381 #if defined USE_OOSTYLE
5383 #if defined USE_OOSTYLE
5385 #endif /* TECPLOTKERNEL */
5387 /* ENDREMOVEFROMADDON */
5388 /* - NO DOXYGEN COMMENT GENERATION -
5389 * Page creation callback is responsible for creating a RenderHandler for the page and
5390 * calling @ref TecEngPageCreateNew(ArbParam_t RenderHandle)
5392 * The RenderHandler type can be anything, for example,a pointer to a class instance that will
5393 * be responsible for handling requests from the engine to perform operations on
5396 * @param PageConstructionHints a string list of construction hints that can be used for deciding
5397 * how the page should be displayed in an application's UI. The construction hints could have been
5398 * restored from a saved layout file or passed to @ref TecUtilPageCreateNew function.
5400 * @param RegistrationClientData
5401 * Client data that was registered with the callback.
5403 * @return TRUE if page create request was handled and TecEngPageCreateNew() returned TRUE.
5405 * @sa TecEngPageCreateRegisterCallback, TecEngPageCreateNew
5410 typedef Boolean_t (STDCALL
*PageCreateCallback_pf
)(StringList_pa PageConstructionHints
,
5411 ArbParam_t RegistrationClientData
);
5413 /* - NO DOXYGEN COMMENT GENERATION -
5414 * Page destruction callback responsible for destroying a page.
5416 * @param PageClientData
5417 * Data associated with a page that was returned from the PageCreateCallback_pf
5418 * callback function. You will get a different value for each page.
5420 * @param RegistrationClientData
5421 * Data associated with the registration of this function. This will always return
5422 * the value supplied in the original registration of this function.
5424 * @sa TecEngPageDestroyRegisterCallback, PageCreateCallback_pf
5429 typedef void (STDCALL
*PageDestroyCallback_pf
)(ArbParam_t PageClientData
,
5430 ArbParam_t RegistrationClientData
);
5432 /* - NO DOXYGEN COMMENT GENERATION -
5433 * Callback responsible for informing the parent application of a new current page.
5434 * Note that this could be done via a state change monitor but a more secure method
5435 * is needed as state changes may be shut down from time to time.
5437 * @param PageClientData
5438 * Data associated with a page that was returned from the PageCreateCallback_pf
5439 * callback function. You will get a different value for each page.
5441 * @param RegistrationClientData
5442 * Data associated with the registration of this function. This will always return
5443 * the value supplied in the original registration of this function.
5448 typedef void (STDCALL
*PageNewCurrentCallback_pf
)(ArbParam_t PageClientData
,
5449 ArbParam_t RegistrationClientData
);
5451 /* - NO DOXYGEN COMMENT GENERATION -
5452 * Callback responsible for creation of an offscreen image.
5454 * @param RegistrationClientData
5455 * Data associated with the registration of this function. This will always return
5456 * the value supplied in the original registration of this function.
5458 * @param ImageHandle handle to a newly created image. This is an output parameter.
5460 * @return TRUE if an offscreen image was created successfully.
5465 typedef Boolean_t (STDCALL
*OffscreenImageCreateCallback_pf
)(ScreenDim_t Width
,
5467 ArbParam_t RegistrationClientData
,
5468 TP_OUT ArbParam_t
* ImageHandle
);
5470 /* - NO DOXYGEN COMMENT GENERATION -
5471 * Callback responsible for destruction of an offscreen image.
5473 * @param ImageHandle handle to an offscreen image to be destroyed.
5475 * @param RegistrationClientData
5476 * Data associated with the registration of this function. This will always return
5477 * the value supplied in the original registration of this function.
5482 typedef void (STDCALL
*OffscreenImageDestroyCallback_pf
)(ArbParam_t ImageHandle
,
5483 ArbParam_t RegistrationClientData
);
5485 /* - NO DOXYGEN COMMENT GENERATION -
5486 * Callback responsible for returning RGB values for a row.
5488 * @param ImageHandle
5489 * Handle to an off-screen image from which RGB values to be retrieved.
5492 * Row for which RGB values to be retrieved.
5495 * Array to receive the red byte values for the specified Row. The number of values in
5496 * the array must equal the width of the image. The array address is maintained by the
5497 * Tecplot Engine until the image is destroyed however it is reused for each invocation
5501 * Array to receive the green byte values for the specified Row. The number of values in
5502 * the array must equal the width of the image. The array address is maintained by the
5503 * Tecplot Engine until the image is destroyed however it is reused for each invocation
5507 * Array to receive the blue byte values for the specified Row. The number of values in
5508 * the array must equal the width of the image. The array address is maintained by the
5509 * Tecplot Engine until the image is destroyed however it is reused for each invocation
5512 * @param RegistrationClientData
5513 * Data associated with the registration of this function. This will always return
5514 * the value supplied in the original registration of this function.
5516 * @return TRUE if successful, FALSE otherwise.
5521 typedef Boolean_t (STDCALL
*OffscreenImageGetRGBRowCallback_pf
)(ArbParam_t ImageHandle
,
5523 ArbParam_t RegistrationClientData
,
5524 TP_ARRAY_OUT Byte_t
* RedArray
,
5525 TP_ARRAY_OUT Byte_t
* GreenArray
,
5526 TP_ARRAY_OUT Byte_t
* BlueArray
);
5529 /* - NO DOXYGEN COMMENT GENERATION -
5530 * Callback responsible for printing an image on the specified printer DC
5532 * @param PrintDC a device context of a printer on which the printing should be performed.
5534 * @param ImageHandle handle to an image to print.
5536 * @param Palette specifies if an image should be printed as a color or monochrome image.
5538 * @param RegistrationClientData
5539 * Data associated with the registration of this function. This will always return
5540 * the value supplied in the original registration of this function.
5542 * @return TRUE if the printing operation was successfull.
5547 typedef Boolean_t (STDCALL
*WinPrintImageCallback_pf
)(HDC PrintDC
,
5548 ArbParam_t ImageHandle
,
5550 ArbParam_t RegistrationClientData
);
5555 /* - NO DOXYGEN COMMENT GENERATION -
5556 * Callback responsible for providing a printer context.
5558 * @param RegistrationClientData
5559 * Data associated with the registration of this function. This will always return
5560 * the value supplied in the original registration of this function.
5562 * @return HDC context of the destination printer.
5567 typedef HDC(STDCALL
*WinPrinterGetContextCallback_pf
)(ArbParam_t RegistrationClientData
);
5571 /* - NO DOXYGEN COMMENT GENERATION -
5572 * Render destination callback responsible for switching the render destination
5573 * of the OpenGL drawing state when requested by the Tecplot engine.
5578 * @param PageRenderDest
5579 * Enumeration of page render destination of interest.
5581 * @param RenderDestClientData
5582 * Data associated with a render destination, such as returned from the PageCreateCallback_pf or
5583 * OffscreenImageCreate_pf callback functions.
5585 * @param RegistrationClientData
5586 * Data associated with the registration of this function. This will always return
5587 * the value supplied in the original registration of this function.
5590 * TRUE if render destination was set successfully. FALSE, otherwise.
5592 * @sa TecEngRenderDestRegisterCallback
5594 typedef Boolean_t (STDCALL
*RenderDestCallback_pf
)(PageRenderDest_e PageRenderDest
,
5595 ArbParam_t RenderDestClientData
,
5596 ArbParam_t RegistrationClientData
);
5598 /* - NO DOXYGEN COMMENT GENERATION -
5599 * Render query callback responsible for informing Tecplot if the page
5600 * associated with the PageClientData should be rendered into.
5605 * @param PageClientData
5606 * Data associated with a page that was returned from the
5607 * PageCreateCallback_pf callback function.
5608 * @param RegistrationClientData
5609 * Data associated with the registration of this function. This will always
5610 * return the value supplied in the original registration of this function.
5614 * TRUE if Tecplot should render to the page identified by the
5615 * PageClientData, FALSE otherwise.
5617 * @sa TecEngRenderQueryRegisterCallback
5619 typedef Boolean_t (STDCALL
*RenderQueryCallback_pf
)(ArbParam_t PageClientData
,
5620 ArbParam_t RegistrationClientData
);
5621 /* - NO DOXYGEN COMMENT GENERATION -
5622 * Render destination size callback responsible for returning the size of the
5623 * specified render destination when requested by the Tecplot engine.
5628 * @param PageClientData
5629 * Data associated with a page that was returned from the
5630 * PageCreateCallback_pf callback function.
5631 * @param RegistrationClientData
5632 * Client data that was registered with the callback.
5634 * Pointer who's contents should receive the width of the current render
5637 * Pointer who's contents should receive the height of the current render
5640 * @sa TecEngRenderDestSizeRegisterCallback
5642 typedef void (STDCALL
*RenderDestSizeCallback_pf
)(ArbParam_t PageClientData
,
5643 ArbParam_t RegistrationClientData
,
5644 TP_OUT LgIndex_t
* Width
,
5645 TP_OUT LgIndex_t
* Height
);
5647 /* - NO DOXYGEN COMMENT GENERATION -
5648 * Callback responsible for swapping the front and back buffers for the current
5649 * OpenGL drawing state's render destination when requested by the Tecplot
5655 * @param RegistrationClientData
5656 * Client data that was registered with the callback.
5658 * @sa TecUtilpBuffersRegisterCallback
5660 typedef void (STDCALL
*SwapBuffersCallback_pf
)(ArbParam_t RegistrationClientData
);
5663 /* - NO DOXYGEN COMMENT GENERATION -
5664 * Callback responsible for querying of key states.
5669 * @param RegistrationClientData
5670 * Client data that was registered with the callback.
5671 * @param IsShiftKeyDown
5672 * Boolean pointer. If non-NULL, set the boolean to TRUE if the Shift key is
5673 * down or FALSE if it is up.
5674 * @param IsAltKeyDown
5675 * Boolean pointer. If non-NULL, set the boolean to TRUE if the Alt key is
5676 * down or FALSE if it is up.
5677 * @param IsCntrlKeyDown
5678 * Boolean pointer. If non-NULL, set the boolean to TRUE if the Cntrl key is
5679 * down or FALSE if it is up.
5681 * @sa TecEngKeyStateRegisterCallback
5683 typedef void (STDCALL
*KeyStateCallback_pf
)(ArbParam_t RegistrationClientData
,
5684 TP_OUT Boolean_t
* IsShiftKeyDown
,
5685 TP_OUT Boolean_t
* IsAltKeyDown
,
5686 TP_OUT Boolean_t
* IsCntrlKeyDown
);
5688 /* - NO DOXYGEN COMMENT GENERATION -
5689 * Callback responsible for querying of a mouse button state.
5695 * Mouse button number to query. Button numbers start at one.
5696 * @param RegistrationClientData
5697 * Client data that was registered with the callback.
5700 * TRUE if the specified mouse button is down, FALSE otherwise.
5702 * @sa TecEngMouseButtonStateRegisterCallback
5704 typedef Boolean_t (STDCALL
*MouseButtonStateCallback_pf
)(int Button
,
5705 ArbParam_t RegistrationClientData
);
5707 /* - NO DOXYGEN COMMENT GENERATION -
5708 * Callback responsible for setting wait cursor when requested by the kernel
5714 * TRUE if the kernel is requesting that the wait cursor be activated.
5715 * FALSE if the kernel is requesting that the wait cursor be deactivated.
5716 * @param RegistractionClientData
5717 * Client data that was registered with the callback.
5719 * @sa TecEngWaitCursorStateRegisterCallback
5721 typedef void (STDCALL
*WaitCursorStateCallback_pf
)(Boolean_t Activate
,
5722 ArbParam_t RegistrationClientData
);
5724 /* - NO DOXYGEN COMMENT GENERATION -
5725 * Callback responsible for setting cursor style when requested by the kernel
5730 * @param CursorStyle
5731 * The cursor style which the kernel is requesting.
5732 * @param RenderHandle
5733 * Handle to page where new cursor shape is being set.
5734 * @param RegistractionClientData
5735 * Client data that was registered with the callback.
5737 * @sa TecEngBaseCursorStyleRegisterCallback
5739 typedef void (STDCALL
*BaseCursorStyleCallback_pf
)(CursorStyle_e CursorStyle
,
5740 ArbParam_t RenderHandle
,
5741 ArbParam_t RegistrationClientData
);
5743 /* - NO DOXYGEN COMMENT GENERATION -
5744 * Callback responsible for processing events when the Tecplot engine is busy
5745 * peforming a requested operation. This callback will be called at regular
5746 * intervals to repair the interface and if required check for interrupts. Very
5747 * little work should be done by this function.
5752 * @param RegistrationClientData
5753 * Client data that was registered with the callback.
5755 * @sa TecEngProcessBusyEventsRegisterCallback, TecUtilInterrupt
5757 typedef void (STDCALL
*ProcessBusyEventsCallback_pf
)(ArbParam_t RegistrationClientData
);
5759 /* - NO DOXYGEN COMMENT GENERATION -
5760 * Callback responsible for launching a dialog.
5765 * @param RegistrationClientData
5766 * Client data that was registered with this launch dialog callback.
5769 * TRUE if the dialog was launched, FALSE if it could not be launched
5772 * @sa TecUtilDialogLaunch, TecUtilDialogDrop
5774 typedef Boolean_t (STDCALL
*DialogLaunchCallback_pf
)(ArbParam_t RegistrationClientData
);
5776 /* - NO DOXYGEN COMMENT GENERATION -
5777 * Callback responsible for dropping a dialog.
5782 * @param RegistrationClientData
5783 * Client data that was registered with this drop dialog callback.
5785 * @sa TecUtilDialogLaunch, TecUtilDialogDrop
5787 typedef void (STDCALL
*DialogDropCallback_pf
)(ArbParam_t RegistrationClientData
);
5789 /* - NO DOXYGEN COMMENT GENERATION -
5790 * Callback responsible for querying of the physical display's horizontal and
5791 * vertical dot pitch.
5796 * @param RegistrationClientData
5797 * Client data that was registered with the callback.
5799 * Pointer who's contents should receive the physical display's horizontal
5800 * dot pitch in terms of the number of dots per centimeter.
5802 * Pointer who's contents should receive the physical display's vertical
5803 * dot pitch in terms of the number of dots per centimeter.
5805 * @sa TecEngDotPitchRegisterCallback
5807 typedef void (STDCALL
*DotPitchCallback_pf
)(ArbParam_t RegistrationClientData
,
5808 TP_OUT
double* IDotsPerCm
,
5809 TP_OUT
double* JDotsPerCm
);
5811 /* - NO DOXYGEN COMMENT GENERATION -
5812 * Callback responsible for querying of the physical display's width and
5818 * @param RegistrationClientData
5819 * Client data that was registered with the callback.
5820 * @param WidthInPixels
5821 * Pointer who's contents should receive the physical display's width
5822 * in pixels. NULL may be passed.
5823 * @param HeightInPixels
5824 * Pointer who's contents should receive the physical display's height
5825 * in pixels. NULL may be passed.
5827 * @sa TecEngScreenSizeRegisterCallback
5829 typedef void (STDCALL
*ScreenSizeCallback_pf
)(ArbParam_t RegistrationClientData
,
5830 TP_OUT
int* WidthInPixels
,
5831 TP_OUT
int* HeightInPixels
);
5833 /* - NO DOXYGEN COMMENT GENERATION -
5834 * Callback responsible for displaying a message box dialog and returning the
5840 * @param MessageString
5841 * Message string to display in the dialog.
5842 * @param MessageBoxType
5843 * Type of message box to display.
5844 * @param RegistrationClientData
5845 * Client data that was registered with the callback.
5848 * Result of user's response to the dialog.
5850 * @sa TecEngDialogMessageBoxRegisterCallback
5852 typedef MessageBoxReply_e(STDCALL
*DialogMessageBoxCallback_pf
)(const char* MessageString
,
5853 MessageBoxType_e MessageBoxType
,
5854 ArbParam_t RegistrationClientData
);
5856 /* - NO DOXYGEN COMMENT GENERATION -
5857 * Callback responsible for displaying a status line
5862 * @param StatusString
5863 * Message string to display in the dialog.
5865 * @param RegistrationClientData
5866 * Client data that was registered with the callback.
5868 * @sa TecEngStatusLineRegisterCallback
5870 typedef void (STDCALL
*StatusLineCallback_pf
)(const char* StatusString
,
5871 ArbParam_t RegistrationClientData
);
5873 /* - NO DOXYGEN COMMENT GENERATION -
5874 * Callback that will be called with the updated progress status.
5879 * @param ProgressStatus
5880 * Percentage of the progress.
5882 * @param RegistrationClientData
5883 * Client data that was registered with the callback.
5885 * @sa TecEngProgressMonitorRegisterCallback
5887 typedef void (STDCALL
*ProgressMonitorCallback_pf
)(int ProgressStatus
,
5888 ArbParam_t RegistrationClientData
);
5889 /* - NO DOXYGEN COMMENT GENERATION -
5890 * Callback that will be called with Tecplot Engine is about to perform a lengthy operation.
5891 * The client that registers such the callback may present a user with a progress bar,
5892 * if the ShowProgressBar argument is TRUE, and a stop button that would interrupt the operation by
5893 * calling TecUtilInterrupt().
5897 * @param ShowProgressBar
5898 * Boolean indicating if the progress steps can be monitored for an operation. If TRUE, Tecplot Engine will be calling
5899 * the registered ProgressMonitorCallback_pf function with the updated progress status.
5901 * @param IsInterruptible
5902 * Boolean indicating if the operation can be interrupted before completion.
5904 * @param RegistrationClientData
5905 * Client data that was registered with the callback.
5907 * @sa TecEngProgressMonitorRegisterCallback
5909 typedef void (STDCALL
*ProgressMonitorStartCallback_pf
)(Boolean_t ShowProgressBar
,
5910 Boolean_t IsInterruptible
,
5911 ArbParam_t RegistrationClientData
);
5912 /* - NO DOXYGEN COMMENT GENERATION -
5913 * Callback tht will be called with Tecplot Engine has finished performing a lengthy operation.
5914 * At this point, client may hide progress bar that was shown during handling of ProgressMonitorStartCallback callback and
5915 * disable or hide the stop button.
5919 * @param RegistrationClientData
5920 * Client data that was registered with the callback.
5922 * @sa TecEngProgressMonitorRegisterCallback
5924 typedef void (STDCALL
*ProgressMonitorFinishCallback_pf
)(ArbParam_t RegistrationClientData
);
5926 /*********************************************************
5928 *********************************************************/
5930 * This is called when a registered timer fires.
5933 * Unix and Linux versions of Tecplot currently do not fire timer events when
5934 * Tecplot is running in batch mode (with the -b flag). This behavior
5935 * limitation is subject to change.
5938 * Arbitrary client data.
5941 * Return TRUE if the timer should be reinstated. Return FALSE
5942 * to stop subsequent callbacks.
5946 * INTEGER*4 FUNCTION MyAddOnTimerCallback(
5948 * POINTER (ClientDataPtr,DummyClientData)
5951 typedef Boolean_t (STDCALL
*AddOnTimerCallback_pf
)(ArbParam_t ClientData
);
5953 /* - NO DOXYGEN COMMENT GENERATION -
5954 * Callback that will be called when Tecplot Engine has requested an event timer to be created.
5956 * @since 12.0.1.5642
5959 * ClientData that should be sent in the callback.
5961 * @param TimerCallback
5962 * Callback to fire when the timer interval has expired.
5965 * The time (in milliseconds) after which the timer callback should be called.
5967 * @param RegistrationClientData
5968 * Client data that was registered via TecEngTimerRegisterCallback.
5971 * Return TRUE if the timer was successfully created, FALSE if not.
5973 typedef Boolean_t (STDCALL
*TimerCallback_pf
)(AddOnTimerCallback_pf TimerCallback
,
5974 ArbParam_t ClientData
,
5976 ArbParam_t RegistrationClientData
);
5979 * This function is called when the user activates a menu item
5980 * added via TecUtilMenuInsertOption or TecUtilMenuInsertToggle.
5982 * @param RegistrationClientData
5983 * Arbitrary client data.
5985 typedef void (STDCALL
*MenuActivateCallback_pf
)(ArbParam_t RegistrationClientData
);
5988 * This function is called when the a menu is deleted.
5990 * @param RegistrationClientData
5991 * Arbitrary client data.
5993 typedef void (STDCALL
*MenuDeleteCallback_pf
)(ArbParam_t RegistrationClientData
);
5996 * This function is called to determine the sensitivity for a menu item (option,
5997 * toggle or submenu).
5999 * @param RegistrationClientData
6000 * Arbitrary client data.
6003 * Return TRUE if the menu item should be sensitive to user input,
6004 * or FALSE if it should be insensitive to user input (gray).
6006 typedef Boolean_t (STDCALL
*MenuGetSensitivityCallback_pf
)(ArbParam_t RegistrationClientData
);
6009 * This function is called to determine the checked state for a toggle menu item.
6011 * @param RegistrationClientData
6012 * Arbitrary client data.
6015 * Return TRUE if the toggle should be checked,
6016 * or FALSE if it should be unchecked.
6018 typedef Boolean_t (STDCALL
*MenuGetToggleStateCallback_pf
)(ArbParam_t RegistrationClientData
);
6022 * This function is called when the user performs a probe event.
6024 * @param IsNearestPoint
6025 * This is TRUE if the previous probe event was a nearest point probe.
6026 * This is FALSE if it was an interpolated probe.
6029 * SUBROUTINE MyProbeDestinationCallback(
6031 * INTEGER*4 IsNearestPoint
6034 typedef void (STDCALL
*ProbeDestination_pf
)(Boolean_t IsNearestPoint
);
6038 * This function type called when a probe callback is installed via
6039 * TecUtilProbeInstallCallbackX.
6041 * @param WasSuccessful
6042 * This is TRUE if the previous probe event was successful.
6043 * This is FALSE if it was the probe failed. Probe events may fail if the
6044 * user probes in a region of the plot that contains no data.
6046 * @param IsNearestPoint
6047 * This is TRUE if the previous probe event was a nearest point probe.
6048 * This is FALSE if it was an interpolated probe.
6051 * Arbitrary client data.
6054 typedef void (STDCALL
*ProbeDestinationX_pf
)(Boolean_t WasSuccessful
,
6055 Boolean_t IsNearestPoint
,
6056 ArbParam_t ClientData
);
6060 * DynamicMenu Functions are called upon a user selecting
6061 * a menu item added via TecUtilMenuAddOption.
6064 * SUBROUTINE MyDynamicMenuCallback()
6067 typedef void (STDCALL
*DynamicMenuCallback_pf
)(void);
6070 * This callback signature is used to perform redraw events.
6075 * @param RedrawReason
6076 * An enumerated value describing the reason for the re-draw event.
6078 * Client data that was registered with the callback.
6081 * TRUE if successfull, FALSE otherwise.
6084 * INTEGER*4 FUNCTION DrawEventCallback(
6087 * INTEGER*4 RedrawReason
6088 * POINTER (ClientDataPtr,ClientData)
6091 * @sa TecUtilEventAddPreDrawCallback(), TecUtilEventAddPostDrawCallback()
6093 typedef Boolean_t (STDCALL
*DrawEventCallback_pf
)(RedrawReason_e RedrawReason
,
6094 ArbParam_t ClientData
);
6098 * Compares two strings from a list string. Note that either string may be NULL
6099 * as StringLists allow for NULL elements.
6102 * String to compare against String2.
6104 * String to compare against String1.
6106 * Contextual information that was passed to the 'StringListSort' function.
6109 * - A value less than zero if String1 is less than String2.
6110 * - A value of zero if String1 is equal to String2.
6111 * - A value greater than zero if String1 is greater than String2.
6113 typedef int (STDCALL
*StringListStringComparator_pf
)(const char* String1
,
6114 const char* String2
,
6115 ArbParam_t ClientData
);
6118 * Gets a value at the specified point index using, if necessary, the private
6119 * client data retrieved from the field data handle.
6122 * This callback is called asynchronously. This callback should NOT
6123 * lock/unlock Tecplot.
6129 * Field data handle for which to set the value. This
6130 * FieldValueGetFunction_pf must have been retrieved from this field data
6131 * handle via TecUtilDataValueRefGetGetFunc.
6134 * Zero-based index into the field data.
6137 * Value for that index, always passed as a double precision floating-point
6138 * value regardless of the data type of the field data handle.
6140 * @sa TecUtilDataValueCustomLOD(), TecUtilDataValueGetClientData()
6142 typedef double(STDCALL
*FieldValueGetFunction_pf
)(const FieldData_pa FD
,
6146 * Sets a value at the specified index using the private client data retrieved
6147 * from the field data handle.
6150 * This callback is called asynchronously. This callback should NOT
6151 * lock/unlock Tecplot.
6157 * Field data handle for which to set the value. This
6158 * FieldValueSetFunction_pf must have been retrieved from this field data
6159 * handle via TecUtilDataValueRefGetSetFunc.
6162 * Zero-based index into the field data.
6165 * New value for that index, always passed as a double precision
6166 * floating-point value regardless of the data type of the field data handle.
6168 * @sa TecUtilDataValueCustomLOD(), TecUtilDataValueGetClientData()
6170 typedef void (STDCALL
*FieldValueSetFunction_pf
)(FieldData_pa FD
,
6175 * Callback responsible for loading the specified variable for Tecplot using
6176 * the private client data retrieved from the field data handle.
6179 * This callback is called asynchronously. With the exception of calls to
6180 * modify the field data all calls back to Tecplot through the TecUtil layer
6181 * should be limited to queries.
6187 * Field data handle of the variable load.
6190 * TRUE if the variable was loaded, FALSE if unable to do so.
6195 * char *DataFileName;
6197 * LgIndex_t NumValues;
6198 * ... other information needed to load variable data
6199 * } MyVariableClientData_s;
6201 * Boolean_t STDCALL MyVariableLoader(FieldData_pa FieldData)
6203 * REQUIRE(VALID_REF(FieldData));
6205 * MyVariableClientData_s *MyClientData = (MyVariableClientData_s *)TecUtilDataValueGetClientData(FieldData);
6207 * // open the data file
6208 * FILE *MyDataFile = fopen(MyClientData->DataFileName, "rb");
6209 * Boolean_t IsOk = (MyDataFile != NULL);
6211 * // seek to the place in the file where the variable data is located
6212 * IsOk = IsOk && (fseek(MyDataFile, MyClientData->SeekOffset, SEEK_SET) == 0);
6215 * // load the data into the variable's field data
6216 * IsOk = ReadMyDataInfoVariable(MyDataFile, MyClientData, FieldData);
6220 * if (MyDataFile != NULL)
6221 * fclose(MyDataFile);
6223 * ENSURE(VALID_BOOLEAN(IsOk));
6228 * @sa TecUtilDataValueCustomLOD(), TecUtilDataValueGetClientData()
6230 typedef Boolean_t (STDCALL
*LoadOnDemandVarLoad_pf
)(FieldData_pa FieldData
);
6233 * Callback responsible for performing private actions associated with a
6234 * variable being unloaded using the private client data retrieved from the
6235 * field data handle. Whenever possible the callback should honor Tecplot's
6236 * request to unload the variable by returning TRUE. This callback is
6237 * responsible for performing private actions associated with a variable being
6240 * Most add-ons should simply supply NULL for this callback thereby instructing
6241 * Tecplot to handle the unloading (and subsequent reloading) of the variable
6242 * without the intervention of the add-on.
6245 * This callback is called asynchronously. All calls back to Tecplot through
6246 * the TecUtil layer should be limited to queries.
6252 * Field data handle of the variable Tecplot wants to unload.
6257 * char *DataFileName;
6259 * LgIndex_t NumValues;
6260 * ... other information needed to load variable data
6261 * } MyVariableClientData_s;
6263 * Boolean_t STDCALL MyVariableUnload(FieldData_pa FieldData)
6265 * REQUIRE(VALID_REF(FieldData));
6267 * // We don't have any private data to cleanup (i.e in addition to the
6268 * // private client data which we don't cleanup here) so all we have to do
6269 * // is return TRUE or FALSE letting Tecplot know that it can or can not
6270 * // unload the variable.
6271 * Boolean_t Result = TRUE; // ...tell Tecplot to go ahead and unload the variable
6273 * ENSURE(VALID_BOOLEAN(Result));
6279 * TRUE if the variable can be unloaded, FALSE otherwise. The add-on should
6280 * if at all possible honor the request to unload the variable. Most add-ons
6281 * should return TRUE.
6283 * @sa TecUtilDataValueCustomLOD(), TecUtilDataValueGetClientData()
6285 typedef Boolean_t (STDCALL
*LoadOnDemandVarUnload_pf
)(FieldData_pa FieldData
);
6288 * Callback responsible for performing private actions associated with a
6289 * variable being cleaned up using the private client data retrieved from the
6290 * field data handle. Most add-ons will need to register this callback in order
6291 * to cleanup privately allocated client data.
6294 * This callback is called asynchronously. All calls back to Tecplot through
6295 * the TecUtil layer should be limited to queries.
6301 * Field data handle of the variable being cleaned up.
6306 * char *DataFileName;
6308 * LgIndex_t NumValues;
6309 * ... other information needed to load variable data
6310 * } MyVariableClientData_s;
6312 * void STDCALL MyVariableCleanup(FieldData_pa FieldData)
6314 * REQUIRE(VALID_REF(FieldData));
6316 * MyVariableClientData_s *MyClientData = (MyVariableClientData_s *)TecUtilDataValueGetClientData(FieldData);
6318 * // cleanup privately allocated resources
6319 * free(MyClientData->DataFileName);
6320 * free(MyClientData);
6324 * @sa TecUtilDataValueCustomLOD(), TecUtilDataValueGetClientData()
6326 typedef void (STDCALL
*LoadOnDemandVarCleanup_pf
)(FieldData_pa FieldData
);
6329 * Callback responsible for loading the specified node mapping for Tecplot
6330 * using the private client data retrieved from the node mapping handle.
6333 * This callback is called asynchronously. With the exception of calls to
6334 * modify the node mapping, all calls back to Tecplot through the TecUtil
6335 * layer should be limited to queries.
6341 * Handle of the node mapping.
6344 * TRUE if the node mapping was loaded, FALSE if unable to do so.
6349 * char *DataFileName;
6351 * ... other information needed to load node map data
6352 * } MyNodeMapClientData_s;
6354 * Boolean_t STDCALL MyNodeMapLoader(NodeMap_pa NodeMap)
6356 * REQUIRE(VALID_REF(NodeMap));
6358 * MyNodeMapClientData_s *MyClientData =
6359 * (MyNodeMapClientData_s *)TecUtilDataNodeGetClientData(NodeMap);
6361 * // open the data file
6362 * FILE *MyDataFile = fopen(MyClientData->DataFileName, "rb");
6363 * Boolean_t IsOk = (MyDataFile != NULL);
6365 * // seek to the place in the file where the node map data is located
6366 * IsOk = IsOk && (fseek(MyDataFile, MyClientData->SeekOffset, SEEK_SET) == 0);
6369 * // load the data into the zone's node map
6370 * IsOk = ReadMyNodeMapDataIntoZone(MyDataFile, MyClientData, NodeMap);
6374 * if (MyDataFile != NULL)
6375 * fclose(MyDataFile);
6377 * ENSURE(VALID_BOOLEAN(IsOk));
6382 * @sa TecUtilDataNodeCustomLOD(), TecUtilDataNodeGetClientData()
6384 typedef Boolean_t (STDCALL
*LoadOnDemandNodeMapLoad_pf
)(NodeMap_pa NodeMap
);
6387 * Callback responsible for performing private actions associated with a
6388 * node mapping being unloaded using the private client data retrieved from the
6389 * node mapping handle. Whenever possible the callback should honor Tecplot's
6390 * request to unload the node mapping by returning TRUE.
6392 * Most add-ons should simply supply NULL for this callback thereby instructing
6393 * Tecplot to handle the unloading (and subsequent reloading) of the node mapping
6394 * without the intervention of the add-on.
6397 * This callback is called asynchronously. All calls back to Tecplot through
6398 * the TecUtil layer should be limited to queries.
6404 * Node mapping handle of the node mapping Tecplot wants to unload.
6407 * Boolean_t STDCALL MyNodeMapUnload(NodeMap_pa NodeMap)
6409 * REQUIRE(VALID_REF(NodeMap));
6411 * // We don't have any private data to cleanup (i.e in addition to the
6412 * // private client data which we don't cleanup here) so all we have to do
6413 * // is return TRUE or FALSE letting Tecplot know that it can or can not
6414 * // unload the variable.
6415 * Boolean_t Result = TRUE; // ...tell Tecplot to go ahead and unload the node mapping
6417 * ENSURE(VALID_BOOLEAN(Result));
6423 * TRUE if the node mapping can be unloaded, FALSE otherwise. The add-on should
6424 * if at all possible honor the request to unload the node mapping. Most add-ons
6425 * should return TRUE.
6427 * @sa TecUtilDataNodeCustomLOD(), TecUtilDataNodeGetClientData()
6429 typedef Boolean_t (STDCALL
*LoadOnDemandNodeMapUnload_pf
)(NodeMap_pa NodeMap
);
6432 * Callback responsible for performing private actions associated with a
6433 * node mapping being cleaned up using the private client data retrieved from the
6434 * node mapping handle. Most add-ons will need to register this callback in order
6435 * to cleanup privately allocated client data.
6438 * This callback is called asynchronously. All calls back to Tecplot through
6439 * the TecUtil layer should be limited to queries.
6445 * Node Mapping data handle of the node mapping being cleaned up.
6450 * char *DataFileName;
6452 * ... other information needed to load node map data
6453 * } MyNodeMapClientData_s;
6455 * void STDCALL MyNodeMapCleanup(NodeMap_pa NodeMap)
6457 * REQUIRE(VALID_REF(NodeMap));
6459 * MyNodeMapClientData_s *MyClientData = (MyNodeMapClientData_s *)TecUtilDataNodeGetClientData(NodeMap);
6461 * // cleanup privately allocated resources
6462 * free(MyClientData->DataFileName);
6463 * free(MyClientData);
6467 * @sa TecUtilDataNodeCustomLOD(), TecUtilDataNodeGetClientData()
6469 typedef void (STDCALL
*LoadOnDemandNodeMapCleanup_pf
)(NodeMap_pa NodeMap
);
6472 * Callback responsible for loading the specified face neighbor for Tecplot
6473 * using the private client data retrieved from the face neighbor handle.
6476 * This callback is called asynchronously. With the exception of calls to
6477 * modify the face neighbors, all calls back to Tecplot through the TecUtil
6478 * layer should be limited to queries.
6483 * @param FaceNeighbor
6484 * Handle of the face neighbors.
6487 * TRUE if the face neighbors was loaded, FALSE if unable to do so.
6492 * char *DataFileName;
6494 * ...other information needed to load face neighbor data
6495 * } MyFaceNeighborClientData_s;
6497 * Boolean_t STDCALL MyFaceNeighborLoader(FaceNeighbor_pa FaceNeighbor)
6499 * REQUIRE(VALID_REF(FaceNeighbor));
6501 * MyFaceNeighborClientData_s *MyClientData =
6502 * (MyFaceNeighborClientData_s*)TecUtilDataFaceNbrGetClientData(FaceNeighbor);
6504 * // open the data file
6505 * FILE *MyDataFile = fopen(MyClientData->DataFileName, "rb");
6506 * Boolean_t IsOk = (MyDataFile != NULL);
6508 * // seek to the place in the file where the face neighbor data is located
6509 * IsOk = IsOk && (fseek(MyDataFile, MyClientData->SeekOffset, SEEK_SET) == 0);
6512 * // load the data into the zone's face neighbor
6513 * IsOk = ReadMyFaceNeighborDataIntoZone(MyDataFile, MyClientData, FaceNeighbor);
6517 * if (MyDataFile != NULL)
6518 * fclose(MyDataFile);
6520 * ENSURE(VALID_BOOLEAN(IsOk));
6525 * @sa TecUtilDataFaceNbrCustomLOD(), TecUtilDataFaceNbrGetClientData()
6527 typedef Boolean_t (STDCALL
*LoadOnDemandFaceNeighborLoad_pf
)(FaceNeighbor_pa FaceNeighbor
);
6530 * Callback responsible for performing private actions associated with a
6531 * face neighbors being unloaded using the private client data retrieved from
6532 * the face neighbor handle. Whenever possible the callback should honor
6533 * Tecplot's request to unload the face neighbors by returning TRUE.
6535 * Most add-ons should simply supply NULL for this callback thereby instructing
6536 * Tecplot to handle the unloading (and subsequent reloading) of the face
6537 * neighbors without the intervention of the add-on.
6540 * This callback is called asynchronously. All calls back to Tecplot through
6541 * the TecUtil layer should be limited to queries.
6546 * @param FaceNeighbor
6547 * Face neighbor handle of the face neighbors Tecplot wants to unload.
6550 * Boolean_t STDCALL MyFaceNeighborUnload(FaceNeighbor_pa FaceNeighbor)
6552 * REQUIRE(VALID_REF(FaceNeighbor));
6554 * // We don't have any private data to cleanup (i.e in addition to the
6555 * // private client data which we don't cleanup here) so all we have to do
6556 * // is return TRUE or FALSE letting Tecplot know that it can or can not
6557 * // unload the variable.
6558 * Boolean_t Result = TRUE; // ...tell Tecplot to go ahead and unload the face neighbors
6560 * ENSURE(VALID_BOOLEAN(Result));
6566 * TRUE if the face neighbors can be unloaded, FALSE otherwise. The add-on
6567 * should if at all possible honor the request to unload the face neighbors.
6568 * Most add-ons should return TRUE.
6570 * @sa TecUtilDataFaceNbrCustomLOD(), TecUtilDataFaceNbrGetClientData()
6572 typedef Boolean_t (STDCALL
*LoadOnDemandFaceNeighborUnload_pf
)(FaceNeighbor_pa FaceNeighbor
);
6575 * Callback responsible for performing private actions associated with a face
6576 * neighbors being cleaned up using the private client data retrieved from the
6577 * face neighbor handle. Most add-ons will need to register this callback in
6578 * order to cleanup privately allocated client data.
6581 * This callback is called asynchronously. All calls back to Tecplot through
6582 * the TecUtil layer should be limited to queries.
6587 * @param FaceNeighbor
6588 * Face neighbor data handle of the Face neighbors being cleaned up.
6593 * char *DataFileName;
6595 * ... other information needed to load face neighbor data
6596 * } MyFaceNeighborClientData_s;
6598 * void STDCALL MyFaceNeighborCleanup(FaceNeighbor_pa FaceNeighbor)
6600 * REQUIRE(VALID_REF(FaceNeighbor));
6602 * MyFaceNeighborClientData_s *MyClientData = (MyFaceNeighborClientData_s *)TecUtilDataFaceNbrGetClientData(FaceNeighbor);
6604 * // cleanup privately allocated resources
6605 * free(MyClientData->DataFileName);
6606 * free(MyClientData);
6610 * @sa TecUtilDataFaceNbrCustomLOD(), TecUtilDataFaceNbrGetClientData()
6612 typedef void (STDCALL
*LoadOnDemandFaceNeighborCleanup_pf
)(FaceNeighbor_pa FaceNeighbor
);
6615 * Callback responsible for loading the specified face mapping for Tecplot
6616 * using the private client data retrieved from the face mapping handle.
6619 * This callback is called asynchronously. With the exception of calls to
6620 * modify the face mapping, all calls back to Tecplot through the TecUtil
6621 * layer should be limited to queries.
6627 * Handle of the face mapping.
6630 * TRUE if the face mapping was loaded, FALSE if unable to do so.
6635 * char *DataFileName;
6637 * ... other information needed to load face map data
6638 * } MyFaceMapClientData_s;
6640 * Boolean_t STDCALL MyFaceMapLoader(FaceMap_pa FaceMap)
6642 * REQUIRE(VALID_REF(FaceMap));
6644 * MyFaceMapClientData_s *MyClientData =
6645 * (MyFaceMapClientData_s *)TecUtilDataFaceMapGetClientData(FaceMap);
6647 * // open the data file
6648 * FILE *MyDataFile = fopen(MyClientData->DataFileName, "rb");
6649 * Boolean_t IsOk = (MyDataFile != NULL);
6651 * // seek to the place in the file where the face map data is located
6652 * IsOk = IsOk && (fseek(MyDataFile, MyClientData->SeekOffset, SEEK_SET) == 0);
6655 * // load the data into the zone's face map
6656 * IsOk = ReadMyFaceMapDataIntoZone(MyDataFile, MyClientData, FaceMap);
6660 * if (MyDataFile != NULL)
6661 * fclose(MyDataFile);
6663 * ENSURE(VALID_BOOLEAN(IsOk));
6668 * @sa TecUtilDataFaceMapCustomLOD(), TecUtilDataFaceMapGetClientData()
6670 typedef Boolean_t (STDCALL
*LoadOnDemandFaceMapLoad_pf
)(FaceMap_pa FaceMap
);
6673 * Callback responsible for performing private actions associated with a
6674 * face mapping being unloaded using the private client data retrieved from the
6675 * face mapping handle. Whenever possible the callback should honor Tecplot's
6676 * request to unload the face mapping by returning TRUE.
6678 * Most add-ons should simply supply NULL for this callback thereby instructing
6679 * Tecplot to handle the unloading (and subsequent reloading) of the face mapping
6680 * without the intervention of the add-on.
6683 * This callback is called asynchronously. All calls back to Tecplot through
6684 * the TecUtil layer should be limited to queries.
6690 * Face mapping handle of the face mapping Tecplot wants to unload.
6693 * Boolean_t STDCALL MyFaceMapUnload(FaceMap_pa FaceMap)
6695 * REQUIRE(VALID_REF(FaceMap));
6697 * // We don't have any private data to cleanup (i.e in addition to the
6698 * // private client data which we don't cleanup here) so all we have to do
6699 * // is return TRUE or FALSE letting Tecplot know that it can or can not
6700 * // unload the variable.
6701 * Boolean_t Result = TRUE; // ...tell Tecplot to go ahead and unload the face mapping
6703 * ENSURE(VALID_BOOLEAN(Result));
6709 * TRUE if the face mapping can be unloaded, FALSE otherwise. The add-on should
6710 * if at all possible honor the request to unload the face mapping. Most add-ons
6711 * should return TRUE.
6713 * @sa TecUtilDataFaceMapCustomLOD(), TecUtilDataFaceMapGetClientData()
6715 typedef Boolean_t (STDCALL
*LoadOnDemandFaceMapUnload_pf
)(FaceMap_pa FaceMap
);
6718 * Callback responsible for performing private actions associated with a
6719 * face mapping being cleaned up using the private client data retrieved from the
6720 * face mapping handle. Most add-ons will need to register this callback in order
6721 * to cleanup privately allocated client data.
6724 * This callback is called asynchronously. All calls back to Tecplot through
6725 * the TecUtil layer should be limited to queries.
6731 * Face Mapping data handle of the face mapping being cleaned up.
6736 * char *DataFileName;
6738 * ... other information needed to load face map data
6739 * } MyFaceMapClientData_s;
6741 * void STDCALL MyFaceMapCleanup(FaceMap_pa FaceMap)
6743 * REQUIRE(VALID_REF(FaceMap));
6745 * MyFaceMapClientData_s *MyClientData = (MyFaceMapClientData_s *)TecUtilDataFaceMapGetClientData(FaceMap);
6747 * // cleanup privately allocated resources
6748 * free(MyClientData->DataFileName);
6749 * free(MyClientData);
6753 * @sa TecUtilDataFaceMapCustomLOD(), TecUtilDataFaceMapGetClientData()
6755 typedef void (STDCALL
*LoadOnDemandFaceMapCleanup_pf
)(FaceMap_pa FaceMap
);
6759 * ExtractDestination functions are called upon successful completion of an
6760 * extract polyline or extract discrete points operation.
6763 * Number of points extracted.
6766 * Double precision array of X-Coordinates of the extracted polyline.
6769 * Double precision array of Y-Coordinates of the extracted polyline.
6772 * INTEGER*4 FUNCTION MyExtractDestinationCallback(
6781 typedef void (STDCALL
*ExtractDestination_pf
)(LgIndex_t NumPts
,
6788 * SelectFileOptionsCallback Functions are called when the
6789 * "Options" button is pressed in the modal file selection
6793 * SUBROUTINE MySelectFileOptionsCallback()
6796 typedef void (STDCALL
*SelectFileOptionsCallback_pf
)(void);
6802 * Post data load instruction callback for "Converter-Plus" addons.
6804 * @param PreviousInstructions
6805 * The previous set of instructions used by the converter.
6807 * @param PreviousRawData
6808 * The previous raw data associated with the instructions.
6810 * @param PreviousZones
6811 * Set of zones loaded with the previous instructions.
6814 * SUBROUTINE MyConverterPostReadCallback(
6815 * & PreviousInstructions,
6816 * & PreviousRawData,
6818 * CHARACTER*(*) CommandString
6819 * CHARACTER*(*) ErrMsgString
6820 * POINTER (PreviousZones,DummyPreviousZonesData)
6824 typedef void (STDCALL
*ConverterPostReadCallback_pf
)(const char* PreviousInstructions
,
6825 const char* PreviousRawData
,
6826 const Set_pa PreviousZones
);
6830 * Callback registered by your addon to convert a foreign datafile into a
6831 * Tecplot Binary datafile format.
6834 * Return TRUE if the conversion is successful. Otherwise return FALSE.
6835 * If FALSE is returned then *MessageString is assumed to contain an error
6839 * Name of the original foreign data file to be converted.
6841 * @param TempBinFName
6842 * Name of the temporary binary datafile that is created (by your converter).
6844 * @param MessageString
6845 * Reference to a string. If an error occurs during conversion allocate space
6846 * for an error message and copy the message string into that allocated
6847 * space otherwise be sure to assign *MessageString to NULL. If
6848 * *MessageString is non NULL Tecplot will release the allocated memory when
6852 * INTEGER*4 FUNCTION MyDataSetConverterCallback(
6856 * CHARACTER*(*) DataFName
6857 * CHARACTER*(*) TempBinFName
6858 * CHARACTER*(*) MessageString
6862 typedef Boolean_t (STDCALL
*DataSetConverter_pf
)(char* DataFName
,
6864 TP_GIVES
char** MessageString
);
6873 * Callback registered by your addon to process foreign loader instructions.
6874 * When called, it must parse the supplied instructions and load the data into Tecplot.
6877 * Return TRUE if the data is loaded successfully. Otherwise, FALSE.
6879 * @param Instructions
6880 * This contains all of the instructions needed to load the data.
6884 * INTEGER*4 FUNCTION MyDataSetLoaderCallback(
6886 * POINTER (Instructions,DummyInstructionsData)
6889 typedef Boolean_t (STDCALL
*DataSetLoader_pf
)(StringList_pa Instructions
);
6896 * Callback used to provide the ability to override data loader instructions
6897 * while processing a layout.
6900 * Return TRUE if the instructions are successfully replaced or left alone.
6901 * Return FALSE if the user cancels the operation.
6903 * @param Instructions
6904 * The original instructions needed to load the data.
6907 * INTEGER*4 FUNCTION MyDataSetLoaderInstOverCallback(
6909 * POINTER (Instructions,DummyInstructionsData)
6913 typedef Boolean_t (STDCALL
*DataSetLoaderInstructionOverride_pf
)(StringList_pa Instructions
);
6918 * Callback used to assign extended curve settings.
6919 * This is called when the user presses the "Curve Settings"
6920 * button in the mapping style dialog.
6923 * Set of line maps currently selected.
6924 * @param SelectedLineMapSettings
6925 * A string list of the curve settings for the Line-maps that are selected in the
6926 * Line mappings dialog.
6929 * SUBROUTINE MyGetCurveSettingsCallback(
6931 * & SelectedLineMapSettings)
6932 * POINTER (LineMapSet,DummyLineMapData)
6933 * POINTER (SelectedLineMapSettings,DummyLineMapSettings)
6936 typedef void (STDCALL
*GetCurveSettingsCallback_pf
)(Set_pa LineMapSet
,
6937 StringList_pa SelectedLineMapSettings
);
6943 * Callback function that returns an abbreviated version of the curve settings
6944 * for a particular Line Map for display in the Line Mappings dialog.
6947 * The map number that is currently being operated on.
6948 * @param CurveSettings
6949 * The string that Tecplot maintains which contains the extended curve fit
6950 * settings for the current Line-map. This argument may be NULL indicating
6951 * that defaults should be used.
6952 * @param AbbreviatedSettings
6953 * The short form of the CurveSettings that is allocated and returned from
6954 * your function and used by Tecplot. This must be allocated by the addon
6955 * using TecUtilStringAlloc().
6958 * SUBROUTINE MyGetAbrevSettingsStringCallback(
6961 * & AbbreviatedSettings),
6963 * CHARACTER*(*) CurveSettings
6964 * CHARACTER*(*) AbbreviatedSettings
6967 typedef void (STDCALL
*GetAbbreviatedSettingsStringCallback_pf
)(EntIndex_t LineMap
,
6968 char* CurveSettings
,
6969 TP_GIVES
char** AbbreviatedSettings
);
6975 * This function returns a string (CurveInfoString) for Tecplot to display
6976 * information about a particular curve in the curve info dialog.
6979 * The handle to the raw field data of the independent variable.
6981 * The handle to the raw field data of the dependent variable.
6982 * @param IndVCoordScale
6983 * An enumerated variable whose values are Scale_linear when the independent variable
6984 * axis has a linear scale and Scale_log when it has a log scale.
6985 * @param DepVCoordScale
6986 * An enumerated variable whose values are Scale_linear when the dependent variable axis
6987 * has a linear scale and Scale_log when it has a log scale.
6989 * number of raw field data values.
6991 * The map number that is currently being operated on.
6992 * @param CurveSettings
6993 * The curve settings string for the current Line-map. This argument may be
6994 * NULL indicating that defaults should be used.
6995 * @param CurveInfoString
6996 * The string that is allocated and returned by your function and be
6997 * presented in the Data/XY-Plot Curve Info dialog. The CurveInfoString must
6998 * be allocated by the addon using TecUtilStringAlloc().
7001 * Return TRUE if the curve info string can be generated, otherwise FALSE.
7004 * INTEGER*4 FUNCTION MyGetCurveInfoStringCallback(
7012 * & CurveInfoString)
7013 * POINTER (RawIndV,DummyRawIndVData)
7014 * POINTER (RawDepV,DummyRawDepVData)
7015 * INTEGER*4 IndVCoordScale
7016 * INTEGER*4 DepVCoordScale
7017 * INTEGER*4 NumRawPts
7019 * CHARACTER*(*) CurveSettings
7020 * CHARACTER*(*) CurveInfoString
7023 typedef Boolean_t (STDCALL
*GetCurveInfoStringCallback_pf
)(FieldData_pa RawIndV
,
7024 FieldData_pa RawDepV
,
7025 CoordScale_e IndVCoordScale
,
7026 CoordScale_e DepVCoordScale
,
7027 LgIndex_t NumRawPts
,
7029 char* CurveSettings
,
7030 TP_GIVES
char** CurveInfoString
);
7033 * Callback function used to calculate data points for an extended curve fit.
7036 * Return TRUE if the curve can be calculated, otherwise FALSE.
7039 * The handle to the raw field data of the independent variable.
7041 * The handle to the raw field data of the dependent variable.
7042 * @param IndVCoordScale
7043 * An enumerated variable whose values are Scale_linear when the independent variable
7044 * axis has a linear scale and Scale_log when it has a log scale.
7045 * @param DepVCoordScale
7046 * An enumerated variable whose values are Scale_linear when the dependent variable axis
7047 * has a linear scale and Scale_log when it has a log scale.
7049 * number of raw field data values.
7050 * @param NumCurvePts
7051 * The number of points that will construct the curve fit.
7053 * The line map to operated on.
7054 * @param CurveSettings
7055 * The curve settings string for the current Line-map. This argument may be
7056 * NULL indicating that defaults should be used.
7057 * @param IndCurveValues
7058 * A pre-allocated array of size NumCurvePts which the addon will populate with
7059 * the independent values for the curve fit
7060 * @param DepCurveValues.
7061 * A pre-allocated array of size NumCurvePts which the add-on will populate
7062 * with the dependent values for the curve fit.
7065 * INTEGER*4 FUNCTION MyGetLinePlotDataPointsCallback(
7076 * POINTER (RawIndV,DummyRawIndVData)
7077 * POINTER (RawDepV,DummyRawDepVData)
7078 * INTEGER*4 IndVCoordScale
7079 * INTEGER*4 DepVCoordScale
7080 * INTEGER*4 NumRawPts
7081 * INTEGER*4 NumCurvePts
7083 * CHARACTER*(*) CurveSettings
7084 * REAL*8 IndCurveValues()
7085 * REAL*8 DepCurveValues()
7088 typedef Boolean_t (STDCALL
*GetLinePlotDataPointsCallback_pf
)(FieldData_pa RawIndV
,
7089 FieldData_pa RawDepV
,
7090 CoordScale_e IndVCoordScale
,
7091 CoordScale_e DepVCoordScale
,
7092 LgIndex_t NumRawPts
,
7093 LgIndex_t NumCurvePts
,
7095 char* CurveSettings
,
7096 TP_OUT
double* IndCurveValues
,
7097 TP_OUT
double* DepCurveValues
);
7098 #if defined EXPORT_DEPRECATED_INTERFACES_TO_ADK_ONLY
7101 * Please use \ref GetLinePlotDataPointsCallback_pf instead.
7103 typedef GetLinePlotDataPointsCallback_pf GetXYDataPointsCallback_pf
;
7110 * A Callback function used to obtain an interpolated dependent value for an
7111 * extended curve fit given an independent value.
7114 * Return TRUE if it is possible to obtain the interpolated value, otherwise FALSE.
7117 * handle to the raw field data of the independent variable.
7119 * The handle to the raw field data of the dependent variable.
7120 * @param IndVCoordScale
7121 * An enumerated variable whose values are Scale_linear when the independent variable
7122 * axis has a linear scale and Scale_log when it has a log scale.
7123 * @param DepVCoordScale
7124 * An enumerated variable whose values are Scale_linear when the dependent variable axis
7125 * has a linear scale and Scale_log when it has a log scale.
7127 * The number of field data values.
7128 * @param NumCurvePts
7129 * The number of points used to construct the curve fit.
7131 * The line map number currently being operated on.
7132 * @param CurveSettings
7133 * The curve settings string for the current Line-map. This argument may be
7134 * NULL indicating that defaults should be used.
7135 * @param ProbeIndValue
7136 * The independent value location of the probe (supplied).
7137 * @param ProbeDepValue
7138 * Reference to the calculated dependent value location of the probe.
7141 * INTEGER*4 FUNCTION MyGetProbeValueCallback(
7150 * & CurveInfoString,
7153 * POINTER (RawIndV,DummyRawIndVData)
7154 * POINTER (RawDepV,DummyRawDepVData)
7155 * INTEGER*4 IndVCoordScale
7156 * INTEGER*4 DepVCoordScale
7157 * INTEGER*4 NumRawPts
7158 * INTEGER*4 NumCurvePts
7159 * INTEGER*4 LineMapNum
7160 * CHARACTER*(*) CurveSettings
7161 * REAL*8 ProbeIndValue
7162 * REAL*8 ProbeDepValue
7166 typedef Boolean_t (STDCALL
*GetProbeValueCallback_pf
)(FieldData_pa RawIndV
,
7167 FieldData_pa RawDepV
,
7168 CoordScale_e IndVCoordScale
,
7169 CoordScale_e DepVCoordScale
,
7170 LgIndex_t NumRawPts
,
7171 LgIndex_t NumCurvePts
,
7172 EntIndex_t LineMapNum
,
7173 char* CurveSettings
,
7174 double ProbeIndValue
,
7175 TP_OUT
double* ProbeDepValue
);
7180 typedef Boolean_t (STDCALL
*PreTranslateMessage_pf
)(MSG
*pMsg
);
7185 * Callback function pointer for providing a Dynamic Axis labels.
7189 * Value that corresponds to a tick label that will be drwan.
7192 * Convenience storage of user client data.
7194 * @param LabelString
7195 * Output label for the tick mark.
7196 * This must be allocated by the addon using TecUtilStringAlloc().
7199 * Returns TRUE if the LabelString has been successfully allocated.
7200 * Otherwise, FALSE is returned.
7202 typedef Boolean_t (STDCALL
*DynamicLabelCallback_pf
)(double Value
,
7203 ArbParam_t ClientData
,
7204 TP_GIVES
char** LabelString
);
7207 * This is called when Tecplot is idle.
7210 * Tecplot is never idle when running in batch mode (with the -b flag).
7213 * Arbitrary client data.
7216 * INTEGER*4 FUNCTION MyOnIdleCallback(
7218 * POINTER (ClientDataPtr,DummyClientData)
7222 typedef void (STDCALL
*OnIdleCallback_pf
)(ArbParam_t ClientData
);
7225 * Callback responsible for executing the specified script file.
7230 * @param ScriptFileName
7231 * Relative or absolute file name of the script to execute. If the path
7232 * is relative it is relative to the current working directory.
7234 * Client data registered with the callback.
7237 * TRUE if the script executed successfully, FALSE otherwise.
7239 * @sa TecUtilScriptExecRegisterCallback
7241 typedef Boolean_t (STDCALL
*ScriptExecCallback_pf
)(const char *ScriptFileName
,
7242 ArbParam_t ClientData
);
7244 /* BEGINREMOVEFROMADDON */
7245 #if defined TECPLOTKERNEL
7246 /* CORE SOURCE CODE REMOVED */
7249 #if !defined NO_ASSERTS
7253 #if !defined (MSWIN)
7255 #if defined Q_MAINMODULE
7260 #endif /* TECPLOTKERNEL */
7262 #if defined TECPLOTKERNEL
7263 /* CORE SOURCE CODE REMOVED */
7264 #endif /* TECPLOTKERNEL */
7267 /* ENDREMOVEFROMADDON */
7268 struct _ViewState_a
;
7269 typedef struct _ViewState_a
*SavedView_pa
, *ViewState_pa
;
7272 #endif /* _GLOBAL_H */