VTK
Classes | Public Types | Public Member Functions | Static Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes
vtkPParticleTracerBase Class Reference

#include <vtkPParticleTracerBase.h>

Inheritance diagram for vtkPParticleTracerBase:
Inheritance graph
[legend]
Collaboration diagram for vtkPParticleTracerBase:
Collaboration graph
[legend]

List of all members.

Classes

struct  RemoteParticleInfo

Public Types

typedef vtkParticleTracerBase Superclass

Public Member Functions

virtual int IsA (const char *type)
vtkPParticleTracerBase * NewInstance () const
void PrintSelf (ostream &os, vtkIndent indent)
virtual void SetController (vtkMultiProcessController *controller)
virtual vtkMultiProcessController * GetController ()

Static Public Member Functions

static int IsTypeOf (const char *type)
static vtkPParticleTracerBase * SafeDownCast (vtkObjectBase *o)

Protected Types

typedef std::vector
< RemoteParticleInfo > 
RemoteParticleVector

Protected Member Functions

virtual vtkObjectBase * NewInstanceInternal () const
 vtkPParticleTracerBase ()
 ~vtkPParticleTracerBase ()
virtual int RequestUpdateExtent (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
virtual int RequestData (vtkInformation *request, vtkInformationVector **inputVector, vtkInformationVector *outputVector)
virtual vtkPolyData * Execute (vtkInformationVector **inputVector)
virtual bool SendParticleToAnotherProcess (vtkParticleTracerBaseNamespace::ParticleInformation &info, vtkParticleTracerBaseNamespace::ParticleInformation &previous, vtkPointData *)
virtual void SendReceiveParticles (RemoteParticleVector &outofdomain, RemoteParticleVector &received)
void UpdateParticleListFromOtherProcesses ()
virtual bool IsPointDataValid (vtkDataObject *input)
virtual void AssignSeedsToProcessors (double time, vtkDataSet *source, int sourceID, int ptId, vtkParticleTracerBaseNamespace::ParticleVector &localSeedPoints, int &localAssignedCount)
virtual void AssignUniqueIds (vtkParticleTracerBaseNamespace::ParticleVector &localSeedPoints)

Protected Attributes

vtkMultiProcessController * Controller
RemoteParticleVector MPISendList
RemoteParticleVector Tail

Detailed Description

Definition at line 38 of file vtkPParticleTracerBase.h.


Member Typedef Documentation

Reimplemented from vtkParticleTracerBase.

Reimplemented in vtkPParticleTracer, vtkPStreaklineFilter, and vtkPParticlePathFilter.

Definition at line 41 of file vtkPParticleTracerBase.h.

Definition at line 59 of file vtkPParticleTracerBase.h.


Constructor & Destructor Documentation


Member Function Documentation

static int vtkPParticleTracerBase::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 vtkParticleTracerBase.

Reimplemented in vtkPParticleTracer, vtkPStreaklineFilter, and vtkPParticlePathFilter.

virtual int vtkPParticleTracerBase::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 vtkParticleTracerBase.

Reimplemented in vtkPParticleTracer, vtkPStreaklineFilter, and vtkPParticlePathFilter.

virtual vtkObjectBase* vtkPParticleTracerBase::NewInstanceInternal ( ) const [protected, virtual]
void vtkPParticleTracerBase::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 vtkParticleTracerBase.

Reimplemented in vtkPParticleTracer, vtkPStreaklineFilter, and vtkPParticlePathFilter.

virtual void vtkPParticleTracerBase::SetController ( vtkMultiProcessController *  controller) [virtual]

Set/Get the controller used when sending particles between processes The controller must be an instance of vtkMPIController.

Set/Get the controller used when sending particles between processes The controller must be an instance of vtkMPIController.

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

Reimplemented from vtkParticleTracerBase.

virtual int vtkPParticleTracerBase::RequestData ( vtkInformation *  request,
vtkInformationVector **  inputVector,
vtkInformationVector *  outputVector 
) [protected, virtual]

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

Reimplemented from vtkParticleTracerBase.

virtual vtkPolyData* vtkPParticleTracerBase::Execute ( vtkInformationVector **  inputVector) [protected, virtual]

Reimplemented from vtkParticleTracerBase.

Reimplemented from vtkParticleTracerBase.

virtual void vtkPParticleTracerBase::AssignSeedsToProcessors ( double  time,
vtkDataSet *  source,
int  sourceID,
int  ptId,
vtkParticleTracerBaseNamespace::ParticleVector &  localSeedPoints,
int &  localAssignedCount 
) [protected, virtual]

all the injection/seed points according to which processor they belong to. This saves us retesting at every injection time providing 1) The volumes are static, 2) the seed points are static If either are non static, then this step is skipped.

Reimplemented from vtkParticleTracerBase.

virtual void vtkPParticleTracerBase::AssignUniqueIds ( vtkParticleTracerBaseNamespace::ParticleVector &  localSeedPoints) [protected, virtual]

give each one a uniqu ID. We need to use MPI to find out who is using which numbers.

Reimplemented from vtkParticleTracerBase.

virtual void vtkPParticleTracerBase::SendReceiveParticles ( RemoteParticleVector &  outofdomain,
RemoteParticleVector &  received 
) [protected, virtual]

this is used during classification of seed points and also between iterations of the main loop as particles leave each processor domain

this is used during classification of seed points and also between iterations of the main loop as particles leave each processor domain

Reimplemented from vtkParticleTracerBase.

virtual bool vtkPParticleTracerBase::IsPointDataValid ( vtkDataObject *  input) [protected, virtual]

Method that checks that the input arrays are ordered the same on all data sets. This needs to be true for all blocks in a composite data set as well as across all processes.

Reimplemented from vtkParticleTracerBase.


Member Data Documentation

Definition at line 118 of file vtkPParticleTracerBase.h.

Definition at line 121 of file vtkPParticleTracerBase.h.

Definition at line 123 of file vtkPParticleTracerBase.h.


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