VTK
|
read NetCDF files in parallel with MPI .Author Ross Miller 03.14.2011 More...
#include <vtkPNetCDFPOPReader.h>
Public Types | |
typedef vtkRectilinearGridAlgorithm | Superclass |
Public Member Functions | |
virtual const char * | GetClassName () |
virtual int | IsA (const char *type) |
void | PrintSelf (ostream &os, vtkIndent indent) |
void | SetReaderRanks (vtkIdList *) |
void | SetNumberOfReaderProcesses (int number) |
virtual void | SetFileName (const char *) |
virtual char * | GetFileName () |
virtual void | SetStride (int, int, int) |
virtual void | SetStride (int[3]) |
virtual int * | GetStride () |
virtual void | GetStride (int &, int &, int &) |
virtual void | GetStride (int[3]) |
virtual int | GetNumberOfVariableArrays () |
virtual const char * | GetVariableArrayName (int idx) |
virtual int | GetVariableArrayStatus (const char *name) |
virtual void | SetVariableArrayStatus (const char *name, int status) |
virtual vtkMPIController * | GetController () |
void | SetController (vtkMPIController *controller) |
Static Public Member Functions | |
static int | IsTypeOf (const char *type) |
static vtkPNetCDFPOPReader * | SafeDownCast (vtkObject *o) |
static vtkPNetCDFPOPReader * | New () |
Protected Member Functions | |
vtkPNetCDFPOPReader () | |
~vtkPNetCDFPOPReader () | |
int | RequestData (vtkInformation *, vtkInformationVector **, vtkInformationVector *) |
virtual int | RequestInformation (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector) |
void | AssignRoundRobin (int numReaders, vtkIdList *readerRanks) |
int | ReadAndSend (vtkInformation *outInfo, int varID) |
int | ReaderForDepth (unsigned depth) |
bool | IsReaderRank () |
bool | IsFirstReaderRank () |
virtual void | SetOpenedFileName (const char *) |
Static Protected Member Functions | |
static void | SelectionModifiedCallback (vtkObject *caller, unsigned long eid, void *clientdata, void *calldata) |
static void | EventCallback (vtkObject *caller, unsigned long eid, void *clientdata, void *calldata) |
Protected Attributes | |
vtkCallbackCommand * | SelectionObserver |
char * | FileName |
char * | OpenedFileName |
int | NCDFFD |
int | Stride [3] |
vtkMPIController * | Controller |
read NetCDF files in parallel with MPI .Author Ross Miller 03.14.2011
vtkNetCDFPOPReader is a source object that reads NetCDF files. It should be able to read most any NetCDF file that wants to output a rectilinear grid. The ordering of the variables is changed such that the NetCDF x, y, z directions correspond to the vtkRectilinearGrid z, y, x directions, respectively. The striding is done with respect to the vtkRectilinearGrid ordering. Additionally, the z coordinates of the vtkRectilinearGrid are negated so that the first slice/plane has the highest z-value and the last slice/plane has the lowest z-value.
Definition at line 40 of file vtkPNetCDFPOPReader.h.
Reimplemented from vtkRectilinearGridAlgorithm.
Definition at line 43 of file vtkPNetCDFPOPReader.h.
vtkPNetCDFPOPReader::vtkPNetCDFPOPReader | ( | ) | [protected] |
vtkPNetCDFPOPReader::~vtkPNetCDFPOPReader | ( | ) | [protected] |
virtual const char* vtkPNetCDFPOPReader::GetClassName | ( | ) | [virtual] |
Reimplemented from vtkRectilinearGridAlgorithm.
static int vtkPNetCDFPOPReader::IsTypeOf | ( | const char * | name | ) | [static] |
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkRectilinearGridAlgorithm.
virtual int vtkPNetCDFPOPReader::IsA | ( | const char * | name | ) | [virtual] |
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeMacro found in vtkSetGet.h.
Reimplemented from vtkRectilinearGridAlgorithm.
static vtkPNetCDFPOPReader* vtkPNetCDFPOPReader::SafeDownCast | ( | vtkObject * | o | ) | [static] |
Reimplemented from vtkRectilinearGridAlgorithm.
static vtkPNetCDFPOPReader* vtkPNetCDFPOPReader::New | ( | ) | [static] |
Create an object with Debug turned off, modified time initialized to zero, and reference counting on.
Reimplemented from vtkRectilinearGridAlgorithm.
void vtkPNetCDFPOPReader::PrintSelf | ( | ostream & | os, |
vtkIndent | indent | ||
) | [virtual] |
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use Print() instead) but used in the hierarchical print process to combine the output of several classes.
Reimplemented from vtkRectilinearGridAlgorithm.
virtual void vtkPNetCDFPOPReader::SetFileName | ( | const char * | ) | [virtual] |
The file to open
virtual char* vtkPNetCDFPOPReader::GetFileName | ( | ) | [virtual] |
The file to open
Enable subsampling in i,j and k dimensions in the vtkRectilinearGrid
virtual void vtkPNetCDFPOPReader::SetStride | ( | int | [3] | ) | [virtual] |
Enable subsampling in i,j and k dimensions in the vtkRectilinearGrid
virtual int* vtkPNetCDFPOPReader::GetStride | ( | ) | [virtual] |
Enable subsampling in i,j and k dimensions in the vtkRectilinearGrid
Enable subsampling in i,j and k dimensions in the vtkRectilinearGrid
virtual void vtkPNetCDFPOPReader::GetStride | ( | int | [3] | ) | [virtual] |
Enable subsampling in i,j and k dimensions in the vtkRectilinearGrid
virtual int vtkPNetCDFPOPReader::GetNumberOfVariableArrays | ( | ) | [virtual] |
Variable array selection.
virtual const char* vtkPNetCDFPOPReader::GetVariableArrayName | ( | int | idx | ) | [virtual] |
Variable array selection.
virtual int vtkPNetCDFPOPReader::GetVariableArrayStatus | ( | const char * | name | ) | [virtual] |
Variable array selection.
virtual void vtkPNetCDFPOPReader::SetVariableArrayStatus | ( | const char * | name, |
int | status | ||
) | [virtual] |
Variable array selection.
virtual vtkMPIController* vtkPNetCDFPOPReader::GetController | ( | ) | [virtual] |
Set/Get the vtkMultiProcessController which will handle communications for the parallel rendering. Added by RGM.
void vtkPNetCDFPOPReader::SetController | ( | vtkMPIController * | controller | ) |
Set/Get the vtkMultiProcessController which will handle communications for the parallel rendering. Added by RGM.
void vtkPNetCDFPOPReader::SetReaderRanks | ( | vtkIdList * | ) |
Set the list of processes that will actually open the file.
void vtkPNetCDFPOPReader::SetNumberOfReaderProcesses | ( | int | number | ) |
Set the number of processes that will actually read the file. If this is less than 1 it will be set to 1 and if it is greater than the number of processes in the communicator than it will be set to the number of processes in the communicator. The reader processes will be set in a round robin fashion (e.g. if number = 5 and number of processes = 14 then processes 0, 3, 6, 9, and 12 will be the reader processes.
int vtkPNetCDFPOPReader::RequestData | ( | vtkInformation * | request, |
vtkInformationVector ** | inputVector, | ||
vtkInformationVector * | outputVector | ||
) | [protected, virtual] |
This is called by the superclass. This is the method you should override.
Reimplemented from vtkRectilinearGridAlgorithm.
virtual int vtkPNetCDFPOPReader::RequestInformation | ( | vtkInformation * | request, |
vtkInformationVector ** | inputVector, | ||
vtkInformationVector * | outputVector | ||
) | [protected, virtual] |
Reimplemented from vtkRectilinearGridAlgorithm.
Given the number of processes that should be assigned as reader processes, generate a list of ranks of those processes in a round robin fashion.
int vtkPNetCDFPOPReader::ReadAndSend | ( | vtkInformation * | outInfo, |
int | varID | ||
) | [protected] |
Helper function for RequestData: Reads part of the netCDF file and sends sub-arrays to all ranks that need that data
int vtkPNetCDFPOPReader::ReaderForDepth | ( | unsigned | depth | ) | [protected] |
Returns the MPI rank of the process that should read the specified depth
bool vtkPNetCDFPOPReader::IsReaderRank | ( | ) | [protected] |
bool vtkPNetCDFPOPReader::IsFirstReaderRank | ( | ) | [protected] |
static void vtkPNetCDFPOPReader::SelectionModifiedCallback | ( | vtkObject * | caller, |
unsigned long | eid, | ||
void * | clientdata, | ||
void * | calldata | ||
) | [static, protected] |
static void vtkPNetCDFPOPReader::EventCallback | ( | vtkObject * | caller, |
unsigned long | eid, | ||
void * | clientdata, | ||
void * | calldata | ||
) | [static, protected] |
virtual void vtkPNetCDFPOPReader::SetOpenedFileName | ( | const char * | ) | [protected, virtual] |
vtkCallbackCommand* vtkPNetCDFPOPReader::SelectionObserver [protected] |
Definition at line 122 of file vtkPNetCDFPOPReader.h.
char* vtkPNetCDFPOPReader::FileName [protected] |
Definition at line 124 of file vtkPNetCDFPOPReader.h.
char* vtkPNetCDFPOPReader::OpenedFileName [protected] |
Definition at line 125 of file vtkPNetCDFPOPReader.h.
int vtkPNetCDFPOPReader::NCDFFD [protected] |
Definition at line 126 of file vtkPNetCDFPOPReader.h.
int vtkPNetCDFPOPReader::Stride[3] [protected] |
Definition at line 130 of file vtkPNetCDFPOPReader.h.
vtkMPIController* vtkPNetCDFPOPReader::Controller [protected] |
Definition at line 132 of file vtkPNetCDFPOPReader.h.