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

The write side of the HDF5 transport. More...

#include <HDF5AnalysisAdaptor.h>

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

Public Member Functions

 senseiTypeMacro (HDF5AnalysisAdaptor, AnalysisAdaptor)
 
void PrintSelf (ostream &os, svtkIndent indent) override
 prints the current object state. More...
 
bool Execute (DataAdaptor *data, DataAdaptor **) override
 Triggers I/O and processing on the receiving side. More...
 
int Finalize () override
 Flushes and closes all open streams and files. More...
 
Run time configuration
void SetMaxBufferSize (unsigned int size)
 Sets the maximum buffer allocated by HDF5 in MB takes affect on first Execute. More...
 
void SetStreamName (const std::string &filename)
 Set the filename. The default value is "no.file". More...
 
void SetStreaming (bool streamOption)
 Enables HDF5 streaming. More...
 
void SetCollective (bool s)
 Enables MPI collective I/O. More...
 
std::string GetFileName () const
 
int SetDataRequirements (const DataRequirements &reqs)
 data requirements tell the adaptor what to push if none are given then all data is pushed. More...
 
int AddDataRequirement (const std::string &meshName, int association, const std::vector< std::string > &arrays)
 
- 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 HDF5AnalysisAdaptorNew ()
 creates a new instance. More...
 

Protected Member Functions

bool InitializeHDF5 ()
 
- Protected Member Functions inherited from sensei::AnalysisAdaptor
 AnalysisAdaptor (const AnalysisAdaptor &)=delete
 
void operator= (const AnalysisAdaptor &)=delete
 

Protected Attributes

unsigned int MaxBufferSize
 
sensei::DataRequirements Requirements
 
std::string m_FileName
 
bool m_DoStreaming = false
 
bool m_Collective = false
 
- Protected Attributes inherited from sensei::AnalysisAdaptor
MPI_Comm Comm
 
int Verbose
 
int DeviceId
 
int DevicesPerNode
 
int DevicesToUse
 
int DeviceStart
 
int DeviceStride
 
int Asynchronous
 

Additional Inherited Members

- Public Types inherited from sensei::AnalysisAdaptor
enum  { DEVICE_HOST =-1, DEVICE_AUTO =-2 }
 values controling device selection More...
 

Detailed Description

The write side of the HDF5 transport.

Member Function Documentation

◆ Execute()

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

Triggers I/O and processing on the receiving side.

Implements sensei::AnalysisAdaptor.

◆ Finalize()

int sensei::HDF5AnalysisAdaptor::Finalize ( )
overridevirtual

Flushes and closes all open streams and files.

Reimplemented from sensei::AnalysisAdaptor.

◆ New()

static HDF5AnalysisAdaptor* sensei::HDF5AnalysisAdaptor::New ( )
static

creates a new instance.

◆ PrintSelf()

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

prints the current object state.

◆ SetCollective()

void sensei::HDF5AnalysisAdaptor::SetCollective ( bool  s)
inline

Enables MPI collective I/O.

◆ SetDataRequirements()

int sensei::HDF5AnalysisAdaptor::SetDataRequirements ( const DataRequirements reqs)

data requirements tell the adaptor what to push if none are given then all data is pushed.

◆ SetMaxBufferSize()

void sensei::HDF5AnalysisAdaptor::SetMaxBufferSize ( unsigned int  size)
inline

Sets the maximum buffer allocated by HDF5 in MB takes affect on first Execute.

◆ SetStreaming()

void sensei::HDF5AnalysisAdaptor::SetStreaming ( bool  streamOption)
inline

Enables HDF5 streaming.

◆ SetStreamName()

void sensei::HDF5AnalysisAdaptor::SetStreamName ( const std::string &  filename)
inline

Set the filename. The default value is "no.file".


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