vtkSLACReader Class Reference

#include <vtkSLACReader.h>

Inheritance diagram for vtkSLACReader:

Inheritance graph
[legend]
Collaboration diagram for vtkSLACReader:

Collaboration graph
[legend]

List of all members.


Detailed Description

A reader for a data format used by Omega3p, Tau3p, and several other tools used at the Standford Linear Accelerator Center (SLAC). The underlying format uses netCDF to store arrays, but also imposes several conventions to form an unstructured grid of elements.

Tests:
vtkSLACReader (Tests)

Definition at line 49 of file vtkSLACReader.h.


Public Types

enum  { SURFACE_OUTPUT = 0, VOLUME_OUTPUT = 1, NUM_OUTPUTS = 2 }
typedef
vtkMultiBlockDataSetAlgorithm 
Superclass

Public Member Functions

virtual const char * GetClassName ()
virtual int IsA (const char *type)
virtual void PrintSelf (ostream &os, vtkIndent indent)
virtual char * GetMeshFileName ()
virtual void SetMeshFileName (const char *)
virtual void AddModeFileName (const char *fname)
virtual void RemoveAllModeFileNames ()
virtual unsigned int GetNumberOfModeFileNames ()
virtual const char * GetModeFileName (unsigned int idx)
virtual int GetReadInternalVolume ()
virtual void SetReadInternalVolume (int)
virtual void ReadInternalVolumeOn ()
virtual void ReadInternalVolumeOff ()
virtual int GetReadExternalSurface ()
virtual void SetReadExternalSurface (int)
virtual void ReadExternalSurfaceOn ()
virtual void ReadExternalSurfaceOff ()
virtual int GetReadMidpoints ()
virtual void SetReadMidpoints (int)
virtual void ReadMidpointsOn ()
virtual void ReadMidpointsOff ()
virtual int GetNumberOfVariableArrays ()
virtual const char * GetVariableArrayName (int idx)
virtual int GetVariableArrayStatus (const char *name)
virtual void SetVariableArrayStatus (const char *name, int status)

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkSLACReaderSafeDownCast (vtkObject *o)
static vtkSLACReaderNew ()
static int CanReadFile (const char *filename)
static vtkInformationIntegerKeyIS_INTERNAL_VOLUME ()
static vtkInformationIntegerKeyIS_EXTERNAL_SURFACE ()
static
vtkInformationObjectBaseKey
POINTS ()
static
vtkInformationObjectBaseKey
POINT_DATA ()

Protected Types

enum  { NumPerTetInt = 5, NumPerTetExt = 9 }

Protected Member Functions

 vtkSLACReader ()
 ~vtkSLACReader ()
virtual int RequestInformation (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
virtual int RequestData (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
virtual int CheckTetrahedraWinding (int meshFD)
virtual vtkSmartPointer
< vtkDataArray
ReadPointDataArray (int ncFD, int varId)
virtual int ReadFieldData (int modeFD, vtkMultiBlockDataSet *output)
virtual int MeshUpToDate ()
virtual vtkIdType GetNumTuplesInVariable (int ncFD, int varId, int expectedNumComponents)
virtual int ReadConnectivity (int meshFD, vtkMultiBlockDataSet *surfaceOutput, vtkMultiBlockDataSet *volumeOutput)
virtual int ReadTetrahedronInteriorArray (int meshFD, vtkIdTypeArray *connectivity)
virtual int ReadTetrahedronExteriorArray (int meshFD, vtkIdTypeArray *connectivity)
virtual int ReadCoordinates (int meshFD, vtkMultiBlockDataSet *output)
virtual int ReadMidpointCoordinates (int meshFD, vtkMultiBlockDataSet *output, MidpointCoordinateMap &map)
virtual int ReadMidpointData (int meshFD, vtkMultiBlockDataSet *output, MidpointIdMap &map)
virtual int RestoreMeshCache (vtkMultiBlockDataSet *surfaceOutput, vtkMultiBlockDataSet *volumeOutput, vtkMultiBlockDataSet *compositeOutput)
virtual int InterpolateMidpointData (vtkMultiBlockDataSet *output, MidpointIdMap &map)

Static Protected Member Functions

static void SelectionModifiedCallback (vtkObject *caller, unsigned long eid, void *clientdata, void *calldata)

Protected Attributes

vtkInternal * Internal
char * MeshFileName
int ReadInternalVolume
int ReadExternalSurface
int ReadMidpoints
bool ReadModeData
bool TimeStepModes
vtkTimeStamp MeshReadTime
bool FrequencyModes
double Frequency
double Phase

Friends

class vtkInternal

Classes

class  EdgeEndpoints
class  MidpointCoordinateMap
class  MidpointCoordinates
class  MidpointIdMap

Member Typedef Documentation

Reimplemented from vtkMultiBlockDataSetAlgorithm.

Reimplemented in vtkPSLACReader.

Definition at line 52 of file vtkSLACReader.h.


Member Enumeration Documentation

anonymous enum

Enumerator:
SURFACE_OUTPUT 
VOLUME_OUTPUT 
NUM_OUTPUTS 

Definition at line 170 of file vtkSLACReader.h.

anonymous enum [protected]

Helpful constants equal to the amount of identifiers per tet.

Enumerator:
NumPerTetInt 
NumPerTetExt 

Definition at line 267 of file vtkSLACReader.h.


Constructor & Destructor Documentation

vtkSLACReader::vtkSLACReader (  )  [protected]

vtkSLACReader::~vtkSLACReader (  )  [protected]


Member Function Documentation

virtual const char* vtkSLACReader::GetClassName (  )  [virtual]

Reimplemented from vtkMultiBlockDataSetAlgorithm.

Reimplemented in vtkPSLACReader.

static int vtkSLACReader::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 vtkMultiBlockDataSetAlgorithm.

Reimplemented in vtkPSLACReader.

virtual int vtkSLACReader::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 vtkMultiBlockDataSetAlgorithm.

Reimplemented in vtkPSLACReader.

static vtkSLACReader* vtkSLACReader::SafeDownCast ( vtkObject o  )  [static]

Reimplemented from vtkMultiBlockDataSetAlgorithm.

Reimplemented in vtkPSLACReader.

static vtkSLACReader* vtkSLACReader::New (  )  [static]

Create an object with Debug turned off, modified time initialized to zero, and reference counting on.

Reimplemented from vtkMultiBlockDataSetAlgorithm.

Reimplemented in vtkPSLACReader.

virtual void vtkSLACReader::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 vtkMultiBlockDataSetAlgorithm.

Reimplemented in vtkPSLACReader.

virtual char* vtkSLACReader::GetMeshFileName (  )  [virtual]

virtual void vtkSLACReader::SetMeshFileName ( const char *   )  [virtual]

virtual void vtkSLACReader::AddModeFileName ( const char *  fname  )  [virtual]

There may be one mode file (usually for actual modes) or multiple mode files (which usually actually represent time series). These methods set and clear the list of mode files (which can be a single mode file).

virtual void vtkSLACReader::RemoveAllModeFileNames (  )  [virtual]

There may be one mode file (usually for actual modes) or multiple mode files (which usually actually represent time series). These methods set and clear the list of mode files (which can be a single mode file).

virtual unsigned int vtkSLACReader::GetNumberOfModeFileNames (  )  [virtual]

There may be one mode file (usually for actual modes) or multiple mode files (which usually actually represent time series). These methods set and clear the list of mode files (which can be a single mode file).

virtual const char* vtkSLACReader::GetModeFileName ( unsigned int  idx  )  [virtual]

There may be one mode file (usually for actual modes) or multiple mode files (which usually actually represent time series). These methods set and clear the list of mode files (which can be a single mode file).

virtual int vtkSLACReader::GetReadInternalVolume (  )  [virtual]

If on, reads the internal volume of the data set. Set to off by default.

virtual void vtkSLACReader::SetReadInternalVolume ( int   )  [virtual]

If on, reads the internal volume of the data set. Set to off by default.

virtual void vtkSLACReader::ReadInternalVolumeOn (  )  [virtual]

If on, reads the internal volume of the data set. Set to off by default.

virtual void vtkSLACReader::ReadInternalVolumeOff (  )  [virtual]

If on, reads the internal volume of the data set. Set to off by default.

virtual int vtkSLACReader::GetReadExternalSurface (  )  [virtual]

If on, reads the external surfaces of the data set. Set to on by default.

virtual void vtkSLACReader::SetReadExternalSurface ( int   )  [virtual]

If on, reads the external surfaces of the data set. Set to on by default.

virtual void vtkSLACReader::ReadExternalSurfaceOn (  )  [virtual]

If on, reads the external surfaces of the data set. Set to on by default.

virtual void vtkSLACReader::ReadExternalSurfaceOff (  )  [virtual]

If on, reads the external surfaces of the data set. Set to on by default.

virtual int vtkSLACReader::GetReadMidpoints (  )  [virtual]

If on, reads midpoint information for external surfaces and builds quadratic surface triangles. Set to on by default.

virtual void vtkSLACReader::SetReadMidpoints ( int   )  [virtual]

If on, reads midpoint information for external surfaces and builds quadratic surface triangles. Set to on by default.

virtual void vtkSLACReader::ReadMidpointsOn (  )  [virtual]

If on, reads midpoint information for external surfaces and builds quadratic surface triangles. Set to on by default.

virtual void vtkSLACReader::ReadMidpointsOff (  )  [virtual]

If on, reads midpoint information for external surfaces and builds quadratic surface triangles. Set to on by default.

virtual int vtkSLACReader::GetNumberOfVariableArrays (  )  [virtual]

Variable array selection.

virtual const char* vtkSLACReader::GetVariableArrayName ( int  idx  )  [virtual]

Variable array selection.

virtual int vtkSLACReader::GetVariableArrayStatus ( const char *  name  )  [virtual]

Variable array selection.

virtual void vtkSLACReader::SetVariableArrayStatus ( const char *  name,
int  status 
) [virtual]

Variable array selection.

static int vtkSLACReader::CanReadFile ( const char *  filename  )  [static]

Returns true if the given file can be read by this reader.

static vtkInformationIntegerKey* vtkSLACReader::IS_INTERNAL_VOLUME (  )  [static]

This key is attached to the metadata information of all data sets in the output that are part of the internal volume.

static vtkInformationIntegerKey* vtkSLACReader::IS_EXTERNAL_SURFACE (  )  [static]

This key is attached to the metadata information of all data sets in the output that are part of the external surface.

static vtkInformationObjectBaseKey* vtkSLACReader::POINTS (  )  [static]

All the data sets stored in the multiblock output share the same point data. For convienience, the point coordinates (vtkPoints) and point data (vtkPointData) are saved under these keys in the vtkInformation of the output data set.

static vtkInformationObjectBaseKey* vtkSLACReader::POINT_DATA (  )  [static]

All the data sets stored in the multiblock output share the same point data. For convienience, the point coordinates (vtkPoints) and point data (vtkPointData) are saved under these keys in the vtkInformation of the output data set.

virtual int vtkSLACReader::RequestInformation ( vtkInformation ,
vtkInformationVector **  ,
vtkInformationVector  
) [protected, virtual]

This is called by the superclass. This is the method you should override.

Reimplemented from vtkMultiBlockDataSetAlgorithm.

Reimplemented in vtkPSLACReader.

virtual int vtkSLACReader::RequestData ( vtkInformation ,
vtkInformationVector **  ,
vtkInformationVector  
) [protected, virtual]

This is called by the superclass. This is the method you should override.

Reimplemented from vtkMultiBlockDataSetAlgorithm.

Reimplemented in vtkPSLACReader.

static void vtkSLACReader::SelectionModifiedCallback ( vtkObject caller,
unsigned long  eid,
void *  clientdata,
void *  calldata 
) [static, protected]

Callback registered with the VariableArraySelection.

virtual vtkIdType vtkSLACReader::GetNumTuplesInVariable ( int  ncFD,
int  varId,
int  expectedNumComponents 
) [protected, virtual]

Convenience function that checks the dimensions of a 2D netCDF array that is supposed to be a set of tuples. It makes sure that the number of dimensions is expected and that the number of components in each tuple agree with what is expected. It then returns the number of tuples. An error is emitted and 0 is returned if the checks fail.

virtual int vtkSLACReader::CheckTetrahedraWinding ( int  meshFD  )  [protected, virtual]

Checks the winding of the tetrahedra in the mesh file. Returns 1 if the winding conforms to VTK, 0 if the winding needs to be corrected.

Reimplemented in vtkPSLACReader.

virtual int vtkSLACReader::ReadConnectivity ( int  meshFD,
vtkMultiBlockDataSet surfaceOutput,
vtkMultiBlockDataSet volumeOutput 
) [protected, virtual]

Read the connectivity information from the mesh file. Returns 1 on success, 0 on failure.

Reimplemented in vtkPSLACReader.

virtual int vtkSLACReader::ReadTetrahedronInteriorArray ( int  meshFD,
vtkIdTypeArray connectivity 
) [protected, virtual]

Reads tetrahedron connectivity arrays. Called by ReadConnectivity.

Reimplemented in vtkPSLACReader.

virtual int vtkSLACReader::ReadTetrahedronExteriorArray ( int  meshFD,
vtkIdTypeArray connectivity 
) [protected, virtual]

Reads tetrahedron connectivity arrays. Called by ReadConnectivity.

Reimplemented in vtkPSLACReader.

virtual vtkSmartPointer<vtkDataArray> vtkSLACReader::ReadPointDataArray ( int  ncFD,
int  varId 
) [protected, virtual]

Reads point data arrays. Called by ReadCoordinates and ReadFieldData.

Reimplemented in vtkPSLACReader.

virtual int vtkSLACReader::ReadCoordinates ( int  meshFD,
vtkMultiBlockDataSet output 
) [protected, virtual]

Read in the point coordinate data from the mesh file. Returns 1 on success, 0 on failure.

Reimplemented in vtkPSLACReader.

virtual int vtkSLACReader::ReadMidpointCoordinates ( int  meshFD,
vtkMultiBlockDataSet output,
MidpointCoordinateMap map 
) [protected, virtual]

Reads in the midpoint coordinate data from the mesh file and returns a map from edges to midpoints. This method is called by ReadMidpointData. Returns 1 on success, 0 on failure.

Reimplemented in vtkPSLACReader.

virtual int vtkSLACReader::ReadMidpointData ( int  meshFD,
vtkMultiBlockDataSet output,
MidpointIdMap map 
) [protected, virtual]

Read in the midpoint data from the mesh file. Returns 1 on success, 0 on failure. Also fills a midpoint id map that will be passed into InterpolateMidpointFieldData.

Reimplemented in vtkPSLACReader.

virtual int vtkSLACReader::RestoreMeshCache ( vtkMultiBlockDataSet surfaceOutput,
vtkMultiBlockDataSet volumeOutput,
vtkMultiBlockDataSet compositeOutput 
) [protected, virtual]

Instead of reading data from the mesh file, restore the data from the previous mesh file read.

Reimplemented in vtkPSLACReader.

virtual int vtkSLACReader::ReadFieldData ( int  modeFD,
vtkMultiBlockDataSet output 
) [protected, virtual]

Read in the field data from the mode file. Returns 1 on success, 0 on failure.

Reimplemented in vtkPSLACReader.

virtual int vtkSLACReader::InterpolateMidpointData ( vtkMultiBlockDataSet output,
MidpointIdMap map 
) [protected, virtual]

Takes the data read on the fields and interpolates data for the midpoints. map is the same map that was created in ReadMidpointData.

virtual int vtkSLACReader::MeshUpToDate (  )  [protected, virtual]

Returns 1 if the mesh is up to date, 0 if the mesh needs to be read from disk.

Reimplemented in vtkPSLACReader.


Friends And Related Function Documentation

friend class vtkInternal [friend]

Definition at line 187 of file vtkSLACReader.h.


Member Data Documentation

vtkInternal* vtkSLACReader::Internal [protected]

Reimplemented in vtkPSLACReader.

Definition at line 182 of file vtkSLACReader.h.

char* vtkSLACReader::MeshFileName [protected]

Definition at line 189 of file vtkSLACReader.h.

Definition at line 191 of file vtkSLACReader.h.

Definition at line 192 of file vtkSLACReader.h.

Definition at line 193 of file vtkSLACReader.h.

bool vtkSLACReader::ReadModeData [protected]

True if reading from a proper mode file. Set in RequestInformation.

Definition at line 196 of file vtkSLACReader.h.

bool vtkSLACReader::TimeStepModes [protected]

True if "mode" files are a sequence of time steps.

Definition at line 199 of file vtkSLACReader.h.

True if mode files describe vibrating fields.

Definition at line 203 of file vtkSLACReader.h.

double vtkSLACReader::Frequency [protected]

True if mode files describe vibrating fields.

Definition at line 207 of file vtkSLACReader.h.

double vtkSLACReader::Phase [protected]

True if mode files describe vibrating fields.

Definition at line 210 of file vtkSLACReader.h.

A time stamp for the last time the mesh file was read. This is used to determine whether the mesh needs to be read in again or if we just need to read the mode data.

Definition at line 383 of file vtkSLACReader.h.


The documentation for this class was generated from the following file:

Generated on Mon Sep 27 18:50:13 2010 for VTK by  doxygen 1.5.6