VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkNetCDFCAMReader.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 =========================================================================*/ 00031 #ifndef __vtkNetCDFCAMReader_h 00032 #define __vtkNetCDFCAMReader_h 00033 00034 #include "vtkUnstructuredGridAlgorithm.h" 00035 00036 class NcFile; 00037 00038 class VTK_IO_EXPORT vtkNetCDFCAMReader : public vtkUnstructuredGridAlgorithm 00039 { 00040 public: 00041 static vtkNetCDFCAMReader *New(); 00042 vtkTypeMacro(vtkNetCDFCAMReader,vtkUnstructuredGridAlgorithm); 00043 void PrintSelf(ostream& os, vtkIndent indent); 00044 00049 static int CanReadFile(const char* fileName); 00050 00051 void SetFileName(const char* fileName); 00052 vtkGetStringMacro(FileName); 00053 00054 void SetConnectivityFileName(const char* fileName); 00055 vtkGetStringMacro(ConnectivityFileName); 00056 00058 00064 vtkSetMacro(SingleLevel, int); 00065 vtkGetMacro(SingleLevel, int); 00067 00069 00072 vtkSetMacro(CellLayerRight, int); 00073 vtkGetMacro(CellLayerRight, int); 00075 00076 protected: 00077 vtkNetCDFCAMReader(); 00078 ~vtkNetCDFCAMReader(); 00079 00080 int RequestInformation(vtkInformation*, vtkInformationVector**, 00081 vtkInformationVector*); 00082 00083 virtual int RequestData(vtkInformation *, vtkInformationVector **, 00084 vtkInformationVector *); 00085 00086 virtual int RequestUpdateExtent(vtkInformation *, vtkInformationVector **, 00087 vtkInformationVector *); 00088 00089 private: 00090 vtkNetCDFCAMReader(const vtkNetCDFCAMReader&); // Not implemented. 00091 void operator=(const vtkNetCDFCAMReader&); // Not implemented. 00092 00094 00096 char* FileName; 00097 char* CurrentFileName; 00098 vtkSetStringMacro(CurrentFileName); 00100 00102 00103 char* ConnectivityFileName; 00104 char* CurrentConnectivityFileName; 00105 vtkSetStringMacro(CurrentConnectivityFileName); 00107 00108 int SingleLevel; 00109 00110 int CellLayerRight; 00111 00112 double * TimeSteps; 00113 00114 long NumberOfTimeSteps; 00115 00117 00119 NcFile* PointsFile; 00120 NcFile* ConnectivityFile; 00121 }; 00123 00124 #endif