VTK
dox/IO/EnSight/vtkEnSightGoldReader.h
Go to the documentation of this file.
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 "vtkIOEnSightModule.h" // For export macro
00043 #include "vtkEnSightReader.h"
00044 
00045 
00046 class vtkMultiBlockDataSet;
00047 
00048 class VTKIOENSIGHT_EXPORT vtkEnSightGoldReader : public vtkEnSightReader
00049 {
00050 public:
00051   static vtkEnSightGoldReader *New();
00052   vtkTypeMacro(vtkEnSightGoldReader, vtkEnSightReader);
00053   virtual void PrintSelf(ostream& os, vtkIndent indent);
00054 
00055 protected:
00056   vtkEnSightGoldReader();
00057   ~vtkEnSightGoldReader();
00058 
00060 
00062   virtual int ReadGeometryFile(const char* fileName, int timeStep,
00063     vtkMultiBlockDataSet *output);
00065 
00067 
00069   virtual int ReadMeasuredGeometryFile(const char* fileName, int timeStep,
00070     vtkMultiBlockDataSet *output);
00072 
00074 
00077   virtual int ReadScalarsPerNode(const char* fileName, const char* description,
00078     int timeStep, vtkMultiBlockDataSet *output,
00079     int measured = 0,
00080     int numberOfComponents = 1,
00081     int component = 0);
00083 
00085 
00087   virtual int ReadVectorsPerNode(const char* fileName, const char* description,
00088     int timeStep, vtkMultiBlockDataSet *output,
00089     int measured = 0);
00091 
00093 
00095   virtual int ReadTensorsPerNode(const char* fileName, const char* description,
00096     int timeStep, vtkMultiBlockDataSet *output);
00098 
00100 
00103   virtual int ReadScalarsPerElement(const char* fileName, const char* description,
00104     int timeStep, vtkMultiBlockDataSet *output,
00105     int numberOfComponents = 1,
00106     int component = 0);
00108 
00110 
00112   virtual int ReadVectorsPerElement(const char* fileName, const char* description,
00113     int timeStep, vtkMultiBlockDataSet *output);
00115 
00117 
00119   virtual int ReadTensorsPerElement(const char* fileName, const char* description,
00120     int timeStep, vtkMultiBlockDataSet *output);
00122 
00124 
00127   virtual int CreateUnstructuredGridOutput(int partId,
00128     char line[256],
00129     const char* name,
00130     vtkMultiBlockDataSet *output);
00132 
00134 
00136   virtual int CreateStructuredGridOutput(int partId,
00137     char line[256],
00138     const char* name,
00139     vtkMultiBlockDataSet *output);
00141 
00143 
00145   int CreateRectilinearGridOutput(int partId, char line[256], const char* name,
00146     vtkMultiBlockDataSet *output);
00148 
00150 
00152   int CreateImageDataOutput(int partId, char line[256], const char* name,
00153     vtkMultiBlockDataSet *output);
00155 
00157 
00158   vtkSetStringMacro(GeometryFileName);
00159   vtkGetStringMacro(GeometryFileName);
00161 
00163 
00164   vtkSetStringMacro(MeasuredFileName);
00165   vtkGetStringMacro(MeasuredFileName);
00167 
00169 
00170   vtkSetStringMacro(MatchFileName);
00171   vtkGetStringMacro(MatchFileName);
00173 
00176   int CheckForUndefOrPartial(const char *line);
00177 
00178   int NodeIdsListed;
00179   int ElementIdsListed;
00180 
00181   //BTX
00182   class UndefPartialInternal;
00184 
00185   UndefPartialInternal* UndefPartial;
00186   //ETX
00188 
00189   //BTX
00190   class FileOffsetMapInternal;
00191   FileOffsetMapInternal *FileOffsets;
00192   //ETX
00193 
00194 private:
00195   vtkEnSightGoldReader(const vtkEnSightGoldReader&);  // Not implemented.
00196   void operator=(const vtkEnSightGoldReader&);  // Not implemented.
00197 };
00198 
00199 #endif