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 =========================================================================*/
00041 #ifndef __vtkEnSight6BinaryReader_h
00042 #define __vtkEnSight6BinaryReader_h
00043 
00044 #include "vtkEnSightReader.h"
00045 
00046 class vtkIdTypeArray;
00047 class vtkPoints;
00048 
00049 class VTK_IO_EXPORT vtkEnSight6BinaryReader : public vtkEnSightReader
00050 {
00051 public:
00052   static vtkEnSight6BinaryReader *New();
00053   vtkTypeRevisionMacro(vtkEnSight6BinaryReader, vtkEnSightReader);
00054   virtual void PrintSelf(ostream& os, vtkIndent indent);
00055   
00056 protected:
00057   vtkEnSight6BinaryReader();
00058   ~vtkEnSight6BinaryReader();
00059   
00062   virtual int ReadGeometryFile(char* fileName, int timeStep);
00063 
00066   virtual int ReadMeasuredGeometryFile(char* fileName, int timeStep);
00067 
00069 
00073   virtual int ReadScalarsPerNode(char* fileName, char* description,
00074                                  int timeStep, int measured = 0,
00075                                  int numberOfComponents = 1,
00076                                  int component = 0);
00078   
00080 
00082   virtual int ReadVectorsPerNode(char* fileName, char* description,
00083                                  int timeStep, int measured = 0);
00085 
00087 
00089   virtual int ReadTensorsPerNode(char* fileName, char* description,
00090                                  int timeStep);
00092 
00094 
00098   virtual int ReadScalarsPerElement(char* fileName, char* description,
00099                                     int timeStep, int numberOfComponents = 1,
00100                                     int component = 0);
00102 
00104 
00106   virtual int ReadVectorsPerElement(char* fileName, char* description,
00107                                     int timeStep);
00109 
00111 
00113   virtual int ReadTensorsPerElement(char* fileName, char* description,
00114                                     int timeStep);
00116 
00119   virtual int CreateUnstructuredGridOutput(int partId, char line[256]);
00120   
00123   virtual int CreateStructuredGridOutput(int partId, char line[256]);
00124   
00127   int ReadLine(char result[80]);
00128 
00131   int ReadInt(int *result);
00132 
00135   int ReadIntArray(int *result, int numInts);
00136 
00139   int ReadFloatArray(float *result, int numFloats);
00140 
00142 
00143   void SkipTimeStep();
00144   int SkipStructuredGrid(char line[256]);
00145   int SkipUnstructuredGrid(char line[256]);
00147   
00148   // global list of points for the unstructured parts of the model
00149   int NumberOfUnstructuredPoints;
00150   vtkPoints* UnstructuredPoints;
00151   vtkIdTypeArray* UnstructuredNodeIds; // matching of node ids to point ids
00152   
00153   int ElementIdsListed;
00154   
00155   FILE *IFile;
00156 private:
00157   vtkEnSight6BinaryReader(const vtkEnSight6BinaryReader&);  // Not implemented.
00158   void operator=(const vtkEnSight6BinaryReader&);  // Not implemented.
00159 };
00160 
00161 #endif