Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound 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 =========================================================================*/
00051 #ifndef __vtkEnSight6BinaryReader_h
00052 #define __vtkEnSight6BinaryReader_h
00053 
00054 #include "vtkEnSightReader.h"
00055 
00056 class vtkIdTypeArray;
00057 class vtkPoints;
00058 
00059 class VTK_IO_EXPORT vtkEnSight6BinaryReader : public vtkEnSightReader
00060 {
00061 public:
00062   static vtkEnSight6BinaryReader *New();
00063   vtkTypeRevisionMacro(vtkEnSight6BinaryReader, vtkEnSightReader);
00064   virtual void PrintSelf(ostream& os, vtkIndent indent);
00065   
00066 protected:
00067   vtkEnSight6BinaryReader();
00068   ~vtkEnSight6BinaryReader();
00069   
00072   virtual int ReadGeometryFile(char* fileName, int timeStep);
00073 
00076   virtual int ReadMeasuredGeometryFile(char* fileName, int timeStep);
00077 
00079 
00083   virtual int ReadScalarsPerNode(char* fileName, char* description,
00084                                  int timeStep, int measured = 0,
00085                                  int numberOfComponents = 1,
00086                                  int component = 0);
00088   
00090 
00092   virtual int ReadVectorsPerNode(char* fileName, char* description,
00093                                  int timeStep, int measured = 0);
00095 
00097 
00099   virtual int ReadTensorsPerNode(char* fileName, char* description,
00100                                  int timeStep);
00102 
00104 
00108   virtual int ReadScalarsPerElement(char* fileName, char* description,
00109                                     int timeStep, int numberOfComponents = 1,
00110                                     int component = 0);
00112 
00114 
00116   virtual int ReadVectorsPerElement(char* fileName, char* description,
00117                                     int timeStep);
00119 
00121 
00123   virtual int ReadTensorsPerElement(char* fileName, char* description,
00124                                     int timeStep);
00126 
00129   virtual int CreateUnstructuredGridOutput(int partId, char line[256]);
00130   
00133   virtual int CreateStructuredGridOutput(int partId, char line[256]);
00134   
00137   int ReadLine(char result[80]);
00138 
00141   int ReadInt(int *result);
00142 
00145   int ReadIntArray(int *result, int numInts);
00146 
00149   int ReadFloatArray(float *result, int numFloats);
00150 
00152 
00153   void SkipTimeStep();
00154   int SkipStructuredGrid(char line[256]);
00155   int SkipUnstructuredGrid(char line[256]);
00157   
00158   // global list of points for the unstructured parts of the model
00159   int NumberOfUnstructuredPoints;
00160   vtkPoints* UnstructuredPoints;
00161   vtkIdTypeArray* UnstructuredNodeIds; // matching of node ids to point ids
00162   
00163   int ElementIdsListed;
00164   
00165   FILE *IFile;
00166 private:
00167   vtkEnSight6BinaryReader(const vtkEnSight6BinaryReader&);  // Not implemented.
00168   void operator=(const vtkEnSight6BinaryReader&);  // Not implemented.
00169 };
00170 
00171 #endif