SENSEI
A frame work for generic in situ analytics
sensei::CatalystAnalysisAdaptor Class Reference

An adaptor that invokes ParaView Catalyst. More...

#include <CatalystAnalysisAdaptor.h>

Inheritance diagram for sensei::CatalystAnalysisAdaptor:
[legend]
Collaboration diagram for sensei::CatalystAnalysisAdaptor:
[legend]

Public Member Functions

 senseiTypeMacro (CatalystAnalysisAdaptor, AnalysisAdaptor)
 
void PrintSelf (ostream &os, svtkIndent indent) override
 prints the current adaptor state. More...
 
virtual void AddPluginXML (const std::string &fileName)
 Add a plugin xml. More...
 
bool Execute (DataAdaptor *data, DataAdaptor **) override
 Invoke in situ processing using Catalyst. More...
 
int Finalize () override
 Shuts ParaView catalyst down. More...
 
Run time configuration
virtual void AddPipeline (vtkCPPipeline *pipeline)
 Add a vtkCPPipeline subclass to the global Catalyst Co-Processor. More...
 
virtual void AddPythonScriptPipeline (const std::string &fileName, const std::string &resultProducer, const std::string &steerableSourceType, const std::string &resultMesh, int versionHint=2)
 Adds a pipeline defined in a Catalyst python script. More...
 
int SetFrequency (unsigned int frequency)
 Control how frequently the in situ processing occurs. More...
 
- Public Member Functions inherited from sensei::AnalysisAdaptor
 senseiBaseTypeMacro (AnalysisAdaptor, svtkObjectBase)
 
void PrintSelf (ostream &os, svtkIndent indent) override
 Prints the current state of the adaptor. More...
 
virtual int SetCommunicator (MPI_Comm comm)
 Set the MPI communicator to be used by the adaptor. More...
 
MPI_Comm GetCommunicator ()
 returns the MPI communicator to be used for all communication More...
 
virtual void SetVerbose (int val)
 Set the level of verbosity of console output. More...
 
virtual int GetVerbose ()
 Get the level of verbosity of console output. More...
 
virtual void SetAsynchronous (int val)
 When set the analysis should buffer the simulation data and run in the background returning to the simulation immediately. More...
 
virtual int GetAsynchronous ()
 Get asynchronous mode. More...
 
virtual void SetDeviceId (int val)
 Set the device that the analysis should run on. More...
 
virtual int GetDeviceId ()
 Get the device that the analysis should run on. More...
 
virtual void SetDevicesToUse (int val)
 Set the number of devices to use per node. More...
 
virtual int GetDevicesToUse ()
 Get the number of devices to use per node. More...
 
virtual void SetDeviceStart (int val)
 Set the first on node device to use in automatic device selection. More...
 
virtual int GetDeviceStart ()
 Get the first device to use. More...
 
virtual void SetDeviceStride (int val)
 Set the number of devices to skip in automatic device selection. More...
 
virtual int GetDeviceStride ()
 Get the number of devices to skip. More...
 

Static Public Member Functions

static CatalystAnalysisAdaptorNew ()
 creates a new instance More...
 

Protected Member Functions

void Initialize ()
 
int DescribeData (int timeStep, double time, const std::vector< MeshMetadataPtr > &metadata, vtkCPDataDescription *dataDesc)
 
int SelectData (DataAdaptor *dataAdaptor, const std::vector< MeshMetadataPtr > &reqs, vtkCPDataDescription *dataDesc)
 
int SetWholeExtent (svtkDataObject *dobj, vtkCPInputDataDescription *desc)
 
- Protected Member Functions inherited from sensei::AnalysisAdaptor
 AnalysisAdaptor (const AnalysisAdaptor &)=delete
 
void operator= (const AnalysisAdaptor &)=delete
 

Additional Inherited Members

- Public Types inherited from sensei::AnalysisAdaptor
enum  { DEVICE_HOST =-1, DEVICE_AUTO =-2 }
 values controling device selection More...
 
- Protected Attributes inherited from sensei::AnalysisAdaptor
MPI_Comm Comm
 
int Verbose
 
int DeviceId
 
int DevicesPerNode
 
int DevicesToUse
 
int DeviceStart
 
int DeviceStride
 
int Asynchronous
 

Detailed Description

An adaptor that invokes ParaView Catalyst.

The adaptor is configured via a ParaView generated Catalyst Python script. See AddPythonScriptPipeline.

Member Function Documentation

◆ AddPipeline()

virtual void sensei::CatalystAnalysisAdaptor::AddPipeline ( vtkCPPipeline *  pipeline)
virtual

Add a vtkCPPipeline subclass to the global Catalyst Co-Processor.

This is a manual configuration method and can be used for pipelines hard wired with compiled C++ code. This is the high performance bare metal method. A run time defined Catalyst Python script may also be used. See AddPythonScriptPipeline.

◆ AddPluginXML()

virtual void sensei::CatalystAnalysisAdaptor::AddPluginXML ( const std::string &  fileName)
virtual

Add a plugin xml.

Adds a plugin XML which can add new proxy definitions.

◆ AddPythonScriptPipeline()

virtual void sensei::CatalystAnalysisAdaptor::AddPythonScriptPipeline ( const std::string &  fileName,
const std::string &  resultProducer,
const std::string &  steerableSourceType,
const std::string &  resultMesh,
int  versionHint = 2 
)
virtual

Adds a pipeline defined in a Catalyst python script.

The Catalyst Python script can be automatically generated using the ParaView GUI on a representative dataset. The sensei::VTKPosthocIO and sensei::VTKAmrWriter can be used to obtain such data. If ParaView is unable to determine the version of the Script, if will default to the given version.

◆ Execute()

bool sensei::CatalystAnalysisAdaptor::Execute ( DataAdaptor data,
DataAdaptor **   
)
overridevirtual

Invoke in situ processing using Catalyst.

Implements sensei::AnalysisAdaptor.

◆ Finalize()

int sensei::CatalystAnalysisAdaptor::Finalize ( )
overridevirtual

Shuts ParaView catalyst down.

Reimplemented from sensei::AnalysisAdaptor.

◆ New()

static CatalystAnalysisAdaptor* sensei::CatalystAnalysisAdaptor::New ( )
static

creates a new instance

◆ PrintSelf()

void sensei::CatalystAnalysisAdaptor::PrintSelf ( ostream &  os,
svtkIndent  indent 
)
override

prints the current adaptor state.

◆ SetFrequency()

int sensei::CatalystAnalysisAdaptor::SetFrequency ( unsigned int  frequency)

Control how frequently the in situ processing occurs.


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