39 #ifndef vtkMPASReader_h
40 #define vtkMPASReader_h
42 #include "vtkIONetCDFModule.h"
47 VTK_ABI_NAMESPACE_BEGIN
64 vtkSetFilePathMacro(FileName);
65 vtkGetFilePathMacro(FileName);
72 vtkGetMacro(MaximumCells,
int);
79 vtkGetMacro(MaximumPoints,
int);
86 virtual int GetNumberOfCellVars();
87 virtual int GetNumberOfPointVars();
105 vtkSetMacro(UseDimensionedArrayNames,
bool);
106 vtkGetMacro(UseDimensionedArrayNames,
bool);
107 vtkBooleanMacro(UseDimensionedArrayNames,
bool);
116 int GetNumberOfPointArrays();
117 const char* GetPointArrayName(
int index);
118 int GetPointArrayStatus(
const char*
name);
119 void SetPointArrayStatus(
const char*
name,
int status);
120 void DisableAllPointArrays();
121 void EnableAllPointArrays();
124 int GetNumberOfCellArrays();
125 const char* GetCellArrayName(
int index);
126 int GetCellArrayStatus(
const char*
name);
127 void SetCellArrayStatus(
const char*
name,
int status);
128 void DisableAllCellArrays();
129 void EnableAllCellArrays();
143 int GetDimensionCurrentIndex(
const std::string& dim);
144 void SetDimensionCurrentIndex(
const std::string& dim,
int idx);
162 void SetVerticalLevel(
int level);
163 int GetVerticalLevel();
166 vtkGetVector2Macro(VerticalLevelRange,
int);
168 vtkSetMacro(LayerThickness,
int);
169 vtkGetMacro(LayerThickness,
int);
170 vtkGetVector2Macro(LayerThicknessRange,
int);
172 void SetCenterLon(
int val);
173 vtkGetVector2Macro(CenterLonRange,
int);
175 vtkSetMacro(ProjectLatLon,
bool);
176 vtkGetMacro(ProjectLatLon,
bool);
178 vtkSetMacro(IsAtmosphere,
bool);
179 vtkGetMacro(IsAtmosphere,
bool);
181 vtkSetMacro(IsZeroCentered,
bool);
182 vtkGetMacro(IsZeroCentered,
bool);
184 vtkSetMacro(ShowMultilayerView,
bool);
185 vtkGetMacro(ShowMultilayerView,
bool);
190 static int CanReadFile(
VTK_FILEPATH const char* filename);
197 void ReleaseNcData();
211 static void SelectionCallback(
212 vtkObject* caller,
unsigned long eid,
void* clientdata,
void* calldata);
222 void UpdateDimensions(
bool force =
false);
225 int VerticalLevelRange[2];
228 int LayerThicknessRange[2];
231 int CenterLonRange[2];
280 int GetNcVars(
const char* cellDimName,
const char* pointDimName);
281 int ReadAndOutputGrid();
282 int BuildVarArrays();
283 int AllocSphericalGeometry();
284 int AllocProjectedGeometry();
285 int AllocPlanarGeometry();
287 int AddMirrorPoint(
int index,
double dividerX,
double offset);
289 int EliminateXWrap();
317 VTK_ABI_NAMESPACE_END
virtual int RequestData(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
This is called by the superclass.
abstract base class for most VTK objects
vtkTypeUInt32 vtkMTimeType
static vtkUnstructuredGridAlgorithm * New()
a vtkAbstractArray subclass for strings
virtual int RequestInformation(vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
vtkDataArraySelection * PointDataArraySelection
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, etc.
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.
Superclass for algorithms that produce only unstructured grid as output.
std::string VerticalDimension
int GetCellType(const Ioss::ElementTopology *topology)
Returns VTK celltype for a Ioss topology element.
size_t MaximumNVertLevels
vtkCallbackCommand * SelectionObserver
vtkUnstructuredGrid * GetOutput()
Get the output data object for a port on this algorithm.
vtkDataArraySelection * CellDataArraySelection