VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkEnSightGoldReader.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00039 #ifndef __vtkEnSightGoldReader_h 00040 #define __vtkEnSightGoldReader_h 00041 00042 #include "vtkEnSightReader.h" 00043 00044 00045 class vtkMultiBlockDataSet; 00046 00047 class VTK_IO_EXPORT vtkEnSightGoldReader : public vtkEnSightReader 00048 { 00049 public: 00050 static vtkEnSightGoldReader *New(); 00051 vtkTypeMacro(vtkEnSightGoldReader, vtkEnSightReader); 00052 virtual void PrintSelf(ostream& os, vtkIndent indent); 00053 00054 protected: 00055 vtkEnSightGoldReader(); 00056 ~vtkEnSightGoldReader(); 00057 00059 00061 virtual int ReadGeometryFile(const char* fileName, int timeStep, 00062 vtkMultiBlockDataSet *output); 00064 00066 00068 virtual int ReadMeasuredGeometryFile(const char* fileName, int timeStep, 00069 vtkMultiBlockDataSet *output); 00071 00073 00076 virtual int ReadScalarsPerNode(const char* fileName, const char* description, 00077 int timeStep, vtkMultiBlockDataSet *output, 00078 int measured = 0, 00079 int numberOfComponents = 1, 00080 int component = 0); 00082 00084 00086 virtual int ReadVectorsPerNode(const char* fileName, const char* description, 00087 int timeStep, vtkMultiBlockDataSet *output, 00088 int measured = 0); 00090 00092 00094 virtual int ReadTensorsPerNode(const char* fileName, const char* description, 00095 int timeStep, vtkMultiBlockDataSet *output); 00097 00099 00102 virtual int ReadScalarsPerElement(const char* fileName, const char* description, 00103 int timeStep, vtkMultiBlockDataSet *output, 00104 int numberOfComponents = 1, 00105 int component = 0); 00107 00109 00111 virtual int ReadVectorsPerElement(const char* fileName, const char* description, 00112 int timeStep, vtkMultiBlockDataSet *output); 00114 00116 00118 virtual int ReadTensorsPerElement(const char* fileName, const char* description, 00119 int timeStep, vtkMultiBlockDataSet *output); 00121 00123 00126 virtual int CreateUnstructuredGridOutput(int partId, 00127 char line[256], 00128 const char* name, 00129 vtkMultiBlockDataSet *output); 00131 00133 00135 virtual int CreateStructuredGridOutput(int partId, 00136 char line[256], 00137 const char* name, 00138 vtkMultiBlockDataSet *output); 00140 00142 00144 int CreateRectilinearGridOutput(int partId, char line[256], const char* name, 00145 vtkMultiBlockDataSet *output); 00147 00149 00151 int CreateImageDataOutput(int partId, char line[256], const char* name, 00152 vtkMultiBlockDataSet *output); 00154 00156 00157 vtkSetStringMacro(GeometryFileName); 00158 vtkGetStringMacro(GeometryFileName); 00160 00162 00163 vtkSetStringMacro(MeasuredFileName); 00164 vtkGetStringMacro(MeasuredFileName); 00166 00168 00169 vtkSetStringMacro(MatchFileName); 00170 vtkGetStringMacro(MatchFileName); 00172 00175 int CheckForUndefOrPartial(const char *line); 00176 00177 int NodeIdsListed; 00178 int ElementIdsListed; 00179 00180 //BTX 00181 class UndefPartialInternal; 00183 00184 UndefPartialInternal* UndefPartial; 00185 //ETX 00187 00188 //BTX 00189 class FileOffsetMapInternal; 00190 FileOffsetMapInternal *FileOffsets; 00191 //ETX 00192 00193 private: 00194 vtkEnSightGoldReader(const vtkEnSightGoldReader&); // Not implemented. 00195 void operator=(const vtkEnSightGoldReader&); // Not implemented. 00196 }; 00197 00198 #endif