77 #ifndef vtkMPASReader_h 78 #define vtkMPASReader_h 80 #include "vtkIONetCDFModule.h" 83 #include "vtk_netcdfcpp_fwd.h" 104 vtkSetStringMacro(FileName);
105 vtkGetStringMacro(FileName);
112 vtkGetMacro(MaximumCells,
int);
119 vtkGetMacro(MaximumPoints,
int);
126 virtual int GetNumberOfCellVars();
127 virtual int GetNumberOfPointVars();
145 vtkSetMacro(UseDimensionedArrayNames,
bool)
146 vtkGetMacro(UseDimensionedArrayNames,
bool)
147 vtkBooleanMacro(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)
208 vtkSetMacro(LayerThickness,
int)
209 vtkGetMacro(LayerThickness,
int)
210 vtkGetVector2Macro(LayerThicknessRange,
int)
212 void SetCenterLon(
int val);
213 vtkGetVector2Macro(CenterLonRange,
int)
215 vtkSetMacro(ProjectLatLon,
bool)
216 vtkGetMacro(ProjectLatLon,
bool)
218 vtkSetMacro(IsAtmosphere,
bool)
219 vtkGetMacro(IsAtmosphere,
bool)
221 vtkSetMacro(IsZeroCentered,
bool)
222 vtkGetMacro(IsZeroCentered,
bool)
224 vtkSetMacro(ShowMultilayerView,
bool)
225 vtkGetMacro(ShowMultilayerView,
bool)
230 static int CanReadFile(
const char *filename);
237 void ReleaseNcData();
254 static void SelectionCallback(
vtkObject* caller,
unsigned long eid,
255 void* clientdata,
void* calldata);
265 void UpdateDimensions(
bool force =
false);
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.
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 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.
Superclass for algorithms that produce only unstructured grid as output.
std::string VerticalDimension
vtkCallbackCommand * SelectionObserver
vtkUnstructuredGrid * GetOutput()
Get the output data object for a port on this algorithm.
vtkDataArraySelection * CellDataArraySelection