1 /* 2 * DATAUTIL.h : COPYRIGHT (C)1987-2002 Tecplot, Inc. 3 * ALL RIGHTS RESERVED 4 * 5 * NOTE: THIS MODULE NOW IS PART OF THE TECPLOT SOURCE 6 * ONLY EDIT THIS IN THE MAIN TECPLOT SOURCE DIRECTORY. 7 * 8 * 9 */ 10 #ifndef DATAUTIL_H 11 #define DATAUTIL_H 12 #define DATAUTIL_VERSION 61 13 14 #if defined MAKEARCHIVE 15 extern void InitInputSpecs(void); 16 #endif 17 18 19 /* 20 * 21 * Read a binary tecplot datafile. 22 * 23 * @param GetHeaderInfoOnly 24 * Return only the header info from the datafile. 25 * 26 * @param FName 27 * Name of the file to read. 28 * 29 * @param IVersion 30 * Returns version of the input file. 31 * 32 * @param DataSetTitle 33 * Allocates space for and returns dataset title. 34 * 35 * @param NumZones 36 * Returns the number of zones. 37 * 38 * @param NumVars 39 * Returns the number of variables. 40 * 41 * @param VarNames 42 * Allocates space for and returns the var names. 43 * 44 * @param ZoneNames 45 * Allocates space for and returns the zone names. 46 * 47 * @param NumPtsI, NumPtsJ, NumPtsK 48 * Zone dimensions loaded into LgIndex_t arrays. 49 * 50 * @param ZoneNames 51 * Zone types loaded into ZoneType_e array. 52 * 53 * @param UserRec 54 * Allocates space for and returns the user records. 55 * 56 * @param DatasetAuxData 57 * Allocates space for and returns Dataset Auxiliary Data. This must be 58 * deallocated with AuxDataDealloc. 59 * 60 * @param RawDataspaceAllocated 61 * Only used if GetHeaderInfoOnly is FALSE. TRUE = calling program has alloced space for 62 * the raw data. FALSE= let ReadTec allocate space for the raw data. 63 * 64 * @param NodeMap 65 * Finite Element connectivity information. ReadTec 66 * will allocate the space for you if RawDataspaceAllocated is FALSE. 67 * 68 * @param VDataBase 69 * Raw field data loaded into double arrays. ReadTec 70 * will allocate the space for you if RawDataspaceAllocated is 71 * FALSE. If RawDataspaceAllocated is TRUE then ReadTec will 72 * only load the arrays that have non NULL addresses. 73 * 74 */ 75 LIBFUNCTION Boolean_t STDCALL ReadTec(Boolean_t GetHeaderInfoOnly, 76 char *FName, 77 short *IVersion, 78 char **DataSetTitle, 79 EntIndex_t *NumZones, 80 EntIndex_t *NumVars, 81 StringList_pa *VarNames, 82 StringList_pa *ZoneNames, 83 LgIndex_t **NumPtsI, 84 LgIndex_t **NumPtsJ, 85 LgIndex_t **NumPtsK, 86 ZoneType_e **ZoneType, 87 StringList_pa *UserRec, 88 AuxData_pa *DatasetAuxData, 89 Boolean_t RawDataspaceAllocated, 90 NodeMap_t ***NodeMap, 91 double ***VDataBase); 92 93 LIBFUNCTION void * STDCALL TecAlloc(size_t size); 94 95 LIBFUNCTION void STDCALL TecFree(void *ptr); 96 97 98 #endif /* !DATAUTIL_H */ 99