36 #ifndef vtkNetCDFCFReader_h
37 #define vtkNetCDFCFReader_h
39 #include "vtkIONetCDFModule.h"
80 vtkGetMacro(VerticalScale,
double);
81 vtkSetMacro(VerticalScale,
double);
82 vtkGetMacro(VerticalBias,
double);
83 vtkSetMacro(VerticalBias,
double);
94 vtkGetMacro(OutputType,
int);
95 virtual void SetOutputType(
int type);
106 static int CanReadFile(
VTK_FILEPATH const char* filename);
142 const char*
GetName()
const {
return this->Name.c_str(); }
168 int LoadMetaData(
int ncFD);
170 class vtkDimensionInfoVector;
171 friend class vtkDimensionInfoVector;
189 return this->LongitudeCoordinates;
193 return this->LatitudeCoordinates;
206 int LoadCoordinateVariable(
int ncFD,
int varId,
vtkDoubleArray* coords);
207 int LoadBoundsVariable(
int ncFD,
int varId,
vtkDoubleArray* coords);
208 int LoadUnstructuredBoundsVariable(
int ncFD,
int varId,
vtkDoubleArray* coords);
211 class vtkDependentDimensionInfoVector;
212 friend class vtkDependentDimensionInfoVector;
224 virtual void IdentifySphericalCoordinates(
225 vtkIntArray* dimensions,
int& longitudeDim,
int& latitudeDim,
int& verticalDim);
237 COORDS_SPHERICAL_PSIDED_CELLS
245 CoordinateTypesEnum CoordinateType(
vtkIntArray* dimensions);
257 void ExtentForDimensionsAndPiece(
258 int pieceNumber,
int numberOfPieces,
int ghostLevels,
int extent[6]);
269 void AddRectilinearCoordinates(
vtkImageData* imageOutput);
302 void AddUnstructuredRectilinearCoordinates(
304 void AddUnstructuredSphericalCoordinates(
313 #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 ...
int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
vtkSmartPointer< vtkDoubleArray > LatitudeCoordinates
void SetOutputTypeToStructured()
Set/get the data type of the output.
#define VTK_RECTILINEAR_GRID
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...
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
int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
int RequestDataObject(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) override
This is called by the superclass.
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
vtkTypeBool SphericalCoordinates
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...
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
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
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