Main Page | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

IO/vtkEnSight6BinaryReader.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkEnSight6BinaryReader.h,v $
00005   Language:  C++
00006 
00007   Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 
00008   All rights reserved.
00009   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00010 
00011      This software is distributed WITHOUT ANY WARRANTY; without even 
00012      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
00013      PURPOSE.  See the above copyright notice for more information.
00014 
00015 =========================================================================*/
00053 #ifndef __vtkEnSight6BinaryReader_h
00054 #define __vtkEnSight6BinaryReader_h
00055 
00056 #include "vtkEnSightReader.h"
00057 
00058 class vtkIdTypeArray;
00059 class vtkPoints;
00060 
00061 class VTK_IO_EXPORT vtkEnSight6BinaryReader : public vtkEnSightReader
00062 {
00063 public:
00064   static vtkEnSight6BinaryReader *New();
00065   vtkTypeRevisionMacro(vtkEnSight6BinaryReader, vtkEnSightReader);
00066   virtual void PrintSelf(ostream& os, vtkIndent indent);
00067   
00068 protected:
00069   vtkEnSight6BinaryReader();
00070   ~vtkEnSight6BinaryReader();
00071   
00074   virtual int ReadGeometryFile(char* fileName, int timeStep);
00075 
00078   virtual int ReadMeasuredGeometryFile(char* fileName, int timeStep);
00079 
00081 
00085   virtual int ReadScalarsPerNode(char* fileName, char* description,
00086                                  int timeStep, int measured = 0,
00087                                  int numberOfComponents = 1,
00088                                  int component = 0);
00090   
00092 
00094   virtual int ReadVectorsPerNode(char* fileName, char* description,
00095                                  int timeStep, int measured = 0);
00097 
00099 
00101   virtual int ReadTensorsPerNode(char* fileName, char* description,
00102                                  int timeStep);
00104 
00106 
00110   virtual int ReadScalarsPerElement(char* fileName, char* description,
00111                                     int timeStep, int numberOfComponents = 1,
00112                                     int component = 0);
00114 
00116 
00118   virtual int ReadVectorsPerElement(char* fileName, char* description,
00119                                     int timeStep);
00121 
00123 
00125   virtual int ReadTensorsPerElement(char* fileName, char* description,
00126                                     int timeStep);
00128 
00131   virtual int CreateUnstructuredGridOutput(int partId, char line[256]);
00132   
00135   virtual int CreateStructuredGridOutput(int partId, char line[256]);
00136   
00139   int ReadLine(char result[80]);
00140 
00143   int ReadInt(int *result);
00144 
00147   int ReadIntArray(int *result, int numInts);
00148 
00151   int ReadFloatArray(float *result, int numFloats);
00152 
00154 
00155   void SkipTimeStep();
00156   int SkipStructuredGrid(char line[256]);
00157   int SkipUnstructuredGrid(char line[256]);
00159   
00160   // global list of points for the unstructured parts of the model
00161   int NumberOfUnstructuredPoints;
00162   vtkPoints* UnstructuredPoints;
00163   vtkIdTypeArray* UnstructuredNodeIds; // matching of node ids to point ids
00164   
00165   int ElementIdsListed;
00166   
00167   FILE *IFile;
00168 private:
00169   vtkEnSight6BinaryReader(const vtkEnSight6BinaryReader&);  // Not implemented.
00170   void operator=(const vtkEnSight6BinaryReader&);  // Not implemented.
00171 };
00172 
00173 #endif