36 #ifndef vtkNetCDFCFReader_h
37 #define vtkNetCDFCFReader_h
39 #include "vtkIONetCDFModule.h"
63 vtkGetMacro(SphericalCoordinates,
int);
80 vtkGetMacro(VerticalScale,
double);
82 vtkGetMacro(VerticalBias,
double);
94 vtkGetMacro(OutputType,
int);
95 virtual void SetOutputType(
int type);
108 static int CanReadFile(
const char *filename);
146 const char *
GetName()
const {
return this->Name.c_str(); }
161 return this->SpecialVariables;
172 int LoadMetaData(
int ncFD);
174 class vtkDimensionInfoVector;
175 friend class vtkDimensionInfoVector;
187 return this->GridDimensions;
190 return this->LongitudeCoordinates;
193 return this->LatitudeCoordinates;
196 return this->SpecialVariables;
207 int LoadCoordinateVariable(
int ncFD,
int varId,
vtkDoubleArray *coords);
208 int LoadBoundsVariable(
int ncFD,
int varId,
vtkDoubleArray *coords);
209 int LoadUnstructuredBoundsVariable(
int ncFD,
int varId,
213 class vtkDependentDimensionInfoVector;
214 friend class vtkDependentDimensionInfoVector;
226 virtual void IdentifySphericalCoordinates(
vtkIntArray *dimensions,
240 COORDS_SPHERICAL_PSIDED_CELLS
248 CoordinateTypesEnum CoordinateType(
vtkIntArray *dimensions);
260 void ExtentForDimensionsAndPiece(
int pieceNumber,
274 void AddRectilinearCoordinates(
vtkImageData *imageOutput);
312 void AddUnstructuredRectilinearCoordinates(
315 void AddUnstructuredSphericalCoordinates(
326 #endif //vtkNetCDFCFReader_h
vtkDependentDimensionInfo()
Wrapper around std::string to keep symbols short.
vtkSmartPointer< vtkDoubleArray > Coordinates
vtkSmartPointer< vtkDoubleArray > GetCoordinates()
a dataset that is topologically regular with variable spacing in the three coordinate directions ...
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
vtkSmartPointer< vtkDoubleArray > LatitudeCoordinates
void SetOutputTypeToStructured()
Set/get the data type of the output.
#define VTK_RECTILINEAR_GRID
virtual void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
Reads netCDF files that follow the CF convention.
abstract class to specify dataset behavior
virtual bool DimensionsAreForPointData(vtkIntArray *vtkNotUsed(dimensions))
Called internally to determine whether a variable with the given set of dimensions should be loaded a...
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
vtkDimensionInfoVector * DimensionInfo
vtkSmartPointer< vtkStringArray > SpecialVariables
void SetOutputTypeToUnstructured()
Set/get the data type of the output.
bool GetCellsUnstructured() const
UnitsEnum GetUnits() const
void SetOutputTypeToImage()
Set/get the data type of the output.
virtual int ReadMetaData(int ncFD)
Reads meta data and populates ivars.
A superclass for reading netCDF files.
dynamic, self-adjusting array of double
dynamic, self-adjusting array of int
void SetOutputTypeToAutomatic()
Set/get the data type of the output.
static vtkNetCDFReader * New()
virtual void GetUpdateExtentForOutput(vtkDataSet *output, int extent[6])
Retrieves the update extent for the output object.
a simple class to control print indentation
double GetSpacing() const
vtkSmartPointer< vtkDoubleArray > GetLatitudeCoordinates() const
topologically and geometrically regular array of data
dataset represents arbitrary combinations of all possible cell types
vtkSmartPointer< vtkStringArray > GetSpecialVariables() const
virtual int IsTimeDimension(int ncFD, int dimId)
Determines whether the given variable is a time dimension.
vtkSmartPointer< vtkStringArray > SpecialVariables
vtkSmartPointer< vtkDoubleArray > GetBounds()
virtual vtkSmartPointer< vtkDoubleArray > GetTimeValues(int ncFD, int dimId)
Given a dimension already determined to be a time dimension (via a call to IsTimeDimension) returns a...
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
bool GetHasBounds() const
bool GetHasRegularSpacing() const
vtkSmartPointer< vtkDoubleArray > LongitudeCoordinates
vtkDependentDimensionInfoVector * DependentDimensionInfo
topologically regular array of data
void SetOutputTypeToRectilinear()
Set/get the data type of the output.
vtkSmartPointer< vtkDoubleArray > GetLongitudeCoordinates() const
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
const char * GetName() const
vtkSmartPointer< vtkDoubleArray > Bounds
vtkSmartPointer< vtkIntArray > GridDimensions
#define VTK_STRUCTURED_GRID
represent and manipulate 3D points
#define VTK_UNSTRUCTURED_GRID
vtkSmartPointer< vtkStringArray > GetSpecialVariables() const
vtkSmartPointer< vtkIntArray > GetGridDimensions() const
virtual int RequestDataObject(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.