77 #ifndef vtkMPASReader_h 78 #define vtkMPASReader_h 80 #include "vtkIONetCDFModule.h" 83 #include "vtk_netcdfcpp_fwd.h" 104 vtkSetStringMacro(FileName);
112 vtkGetMacro(MaximumCells,
int);
119 vtkGetMacro(MaximumPoints,
int);
126 virtual int GetNumberOfCellVars();
127 virtual int GetNumberOfPointVars();
146 vtkGetMacro(UseDimensionedArrayNames,
bool)
156 int GetNumberOfPointArrays();
157 const char* GetPointArrayName(
int index);
158 int GetPointArrayStatus(
const char*
name);
159 void SetPointArrayStatus(
const char*
name,
int status);
160 void DisableAllPointArrays();
161 void EnableAllPointArrays();
164 int GetNumberOfCellArrays();
165 const char* GetCellArrayName(
int index);
166 int GetCellArrayStatus(
const char*
name);
167 void SetCellArrayStatus(
const char*
name,
int status);
168 void DisableAllCellArrays();
169 void EnableAllCellArrays();
180 int GetNumberOfDimensions();
183 int GetDimensionCurrentIndex(
const std::string &dim);
184 void SetDimensionCurrentIndex(
const std::string &dim,
int idx);
202 void SetVerticalLevel(
int level);
203 int GetVerticalLevel();
206 vtkGetVector2Macro(VerticalLevelRange,
int)
209 vtkGetMacro(LayerThickness,
int)
210 vtkGetVector2Macro(LayerThicknessRange,
int)
212 void SetCenterLon(
int val);
213 vtkGetVector2Macro(CenterLonRange,
int)
216 vtkGetMacro(ProjectLatLon,
bool)
219 vtkGetMacro(IsAtmosphere,
bool)
222 vtkGetMacro(IsZeroCentered,
bool)
225 vtkGetMacro(ShowMultilayerView,
bool)
230 static int CanReadFile(
const char *filename);
237 void ReleaseNcData();
242 int NumberOfTimeSteps;
254 static
void SelectionCallback(
vtkObject* caller,
unsigned long eid,
255 void* clientdata,
void* calldata);
265 void UpdateDimensions(
bool force = false);
267 std::
string VerticalDimension;
268 int VerticalLevelRange[2];
271 int LayerThicknessRange[2];
274 int CenterLonRange[2];
323 int GetNcVars(
const char* cellDimName,
const char* pointDimName);
324 int ReadAndOutputGrid();
325 int BuildVarArrays();
326 int AllocSphericalGeometry();
327 int AllocProjectedGeometry();
328 int AllocPlanarGeometry();
330 int AddMirrorPoint(
int index,
double dividerX,
double offset);
332 int EliminateXWrap();
335 unsigned char GetCellType();
344 bool ValidateDimensions(NcVar *var,
bool silent,
int ndims, ...);
349 long GetCursorForDimension(
const NcDim *dim);
354 size_t GetCountForDimension(
const NcDim *dim);
361 long InitializeDimension(
const NcDim *dim);
385 static int NcTypeToVtkType(
int ncType);
388 vtkIdType ComputeNumberOfTuples(NcVar *ncVar);
390 template <
typename ValueType>
391 bool LoadDataArray(NcVar *ncVar,
vtkDataArray *array,
bool resize =
true);
393 template <
typename ValueType>
394 int LoadPointVarDataImpl(NcVar *ncVar,
vtkDataArray *array);
396 template <
typename ValueType>
397 int LoadCellVarDataImpl(NcVar *ncVar,
vtkDataArray *array);
Wrapper around std::string to keep symbols short.
abstract base class for most VTK objects
vtkTypeUInt32 vtkMTimeType
static vtkUnstructuredGridAlgorithm * New()
a vtkAbstractArray subclass for strings
Read an MPAS netCDF file.
dynamic, self-adjusting array of double
bool UseDimensionedArrayNames
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
supports function callbacks
a simple class to control print indentation
Store on/off settings for data arrays for a vtkSource.
dataset represents arbitrary combinations of all possible cell types
abstract superclass for arrays of numeric data
virtual vtkMTimeType GetMTime()
Return this object's modified time.
vtkGetStringMacro(ExtensionsString)
Returns a string listing all available extensions.
Superclass for algorithms that produce only unstructured grid as output.
vtkSetMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
vtkBooleanMacro(IgnoreDriverBugs, bool)
When set known driver bugs are ignored during driver feature detection.
vtkUnstructuredGrid * GetOutput()
Get the output data object for a port on this algorithm.