VTK
dox/IO/vtkSESAMEReader.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkSESAMEReader.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 =========================================================================*/
00027 #ifndef __vtkSESAMEReader_h
00028 #define __vtkSESAMEReader_h
00029 
00030 #include <vtkRectilinearGridSource.h>
00031 
00032 class vtkIntArray;
00033 
00034 class VTK_IO_EXPORT vtkSESAMEReader : public vtkRectilinearGridSource
00035 {
00036 public:
00037   static vtkSESAMEReader *New();
00038   vtkTypeMacro(vtkSESAMEReader, vtkRectilinearGridSource);
00039   
00040   void PrintSelf(ostream& os, vtkIndent indent);
00041 
00043   void SetFileName(const char* file);
00045   const char* GetFileName();
00046   
00048   int IsValidFile();
00049   
00051   int GetNumberOfTableIds();
00052 
00054   int* GetTableIds();
00055 
00057   vtkIntArray* GetTableIdsAsArray();
00058 
00060   void SetTable(int tableId);
00062   int GetTable();
00063 
00065   int GetNumberOfTableArrayNames();
00066 
00068 
00069   int GetNumberOfTableArrays()
00070     { return this->GetNumberOfTableArrayNames(); }
00072 
00073   const char* GetTableArrayName(int index);
00074 
00076 
00077   void SetTableArrayStatus(const char* name, int flag);
00078   int GetTableArrayStatus(const char* name);
00080 
00081 protected:
00082   
00083   vtkSESAMEReader();
00084   virtual ~vtkSESAMEReader();
00085  
00086   //BTX 
00087   class MyInternal;
00088   MyInternal* Internal;
00089   //ETX 
00090 
00091   int OpenFile();
00092   void CloseFile();
00093   void Execute();
00094   void ExecuteInformation();
00095   
00096   int ReadTableValueLine ( float *v1, float *v2, float *v3,
00097       float *v4, float *v5);
00098   int JumpToTable( int tableID );
00099 
00100   void ReadTable(); 
00101 
00102 private:
00103   vtkSESAMEReader(const vtkSESAMEReader&);  // Not implemented.
00104   void operator=(const vtkSESAMEReader&);  // Not implemented.
00105 
00106 };
00107 
00108 #endif