80 #ifndef vtkMPASReader_h
81 #define vtkMPASReader_h
83 #include "vtkIONetCDFModule.h"
105 vtkSetFilePathMacro(FileName);
106 vtkGetFilePathMacro(FileName);
113 vtkGetMacro(MaximumCells,
int);
120 vtkGetMacro(MaximumPoints,
int);
127 virtual int GetNumberOfCellVars();
128 virtual int GetNumberOfPointVars();
146 vtkSetMacro(UseDimensionedArrayNames,
bool);
147 vtkGetMacro(UseDimensionedArrayNames,
bool);
148 vtkBooleanMacro(UseDimensionedArrayNames,
bool);
157 int GetNumberOfPointArrays();
158 const char* GetPointArrayName(
int index);
159 int GetPointArrayStatus(
const char*
name);
160 void SetPointArrayStatus(
const char*
name,
int status);
161 void DisableAllPointArrays();
162 void EnableAllPointArrays();
165 int GetNumberOfCellArrays();
166 const char* GetCellArrayName(
int index);
167 int GetCellArrayStatus(
const char*
name);
168 void SetCellArrayStatus(
const char*
name,
int status);
169 void DisableAllCellArrays();
170 void EnableAllCellArrays();
184 int GetDimensionCurrentIndex(
const std::string& dim);
185 void SetDimensionCurrentIndex(
const std::string& dim,
int idx);
203 void SetVerticalLevel(
int level);
204 int GetVerticalLevel();
207 vtkGetVector2Macro(VerticalLevelRange,
int);
209 vtkSetMacro(LayerThickness,
int);
210 vtkGetMacro(LayerThickness,
int);
211 vtkGetVector2Macro(LayerThicknessRange,
int);
213 void SetCenterLon(
int val);
214 vtkGetVector2Macro(CenterLonRange,
int);
216 vtkSetMacro(ProjectLatLon,
bool);
217 vtkGetMacro(ProjectLatLon,
bool);
219 vtkSetMacro(IsAtmosphere,
bool);
220 vtkGetMacro(IsAtmosphere,
bool);
222 vtkSetMacro(IsZeroCentered,
bool);
223 vtkGetMacro(IsZeroCentered,
bool);
225 vtkSetMacro(ShowMultilayerView,
bool);
226 vtkGetMacro(ShowMultilayerView,
bool);
231 static int CanReadFile(
VTK_FILEPATH const char* filename);
238 void ReleaseNcData();
252 static void SelectionCallback(
253 vtkObject* caller,
unsigned long eid,
void* clientdata,
void* calldata);
263 void UpdateDimensions(
bool force =
false);
266 int VerticalLevelRange[2];
269 int LayerThicknessRange[2];
272 int CenterLonRange[2];
321 int GetNcVars(
const char* cellDimName,
const char* pointDimName);
322 int ReadAndOutputGrid();
323 int BuildVarArrays();
324 int AllocSphericalGeometry();
325 int AllocProjectedGeometry();
326 int AllocPlanarGeometry();
328 int AddMirrorPoint(
int index,
double dividerX,
double offset);
330 int EliminateXWrap();
Wrapper around std::string to keep symbols short.
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