casacore
Public Member Functions | Static Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
casacore::Adios2StMan::impl Class Reference

#include <Adios2StManImpl.h>

Public Member Functions

 impl (Adios2StMan &parent, MPI_Comm mpiComm, std::string engineType, std::map< std::string, std::string > engineParams, std::vector< std::map< std::string, std::string >> transportParams, std::vector< std::map< std::string, std::string >> operatorParams)
 
 impl (Adios2StMan &parent, std::string xmlFile, MPI_Comm mpiComm)
 
 ~impl ()
 
void checkMPI () const
 
DataManagerclone () const
 
String dataManagerType () const
 
String dataManagerName () const
 
void create64 (rownr_t aNrRows)
 
rownr_t open64 (rownr_t aRowNr, AipsIO &ios)
 
rownr_t resync64 (rownr_t aRowNr)
 
Bool flush (AipsIO &ios, Bool doFsync)
 
DataManagerColumnmakeColumnCommon (const String &aName, int aDataType, const String &aDataTypeID)
 
DataManagerColumnmakeScalarColumn (const String &aName, int aDataType, const String &aDataTypeID)
 
DataManagerColumnmakeDirArrColumn (const String &aName, int aDataType, const String &aDataTypeID)
 
DataManagerColumnmakeIndArrColumn (const String &aName, int aDataType, const String &aDataTypeID)
 
void deleteManager ()
 
void addRow64 (rownr_t aNrRows)
 
Record dataManagerSpec () const
 
rownr_t getNrRows ()
 

Static Public Member Functions

static DataManagermakeObject (const String &aDataManType, const Record &spec)
 

Private Member Functions

uInt ncolumn () const
 
String fileName () const
 

Private Attributes

Adios2StManparent
 
String itsDataManName
 
rownr_t itsRows
 
PtrBlock< Adios2StManColumn * > itsColumnPtrBlk
 
std::shared_ptr< adios2::ADIOS > itsAdios
 
std::shared_ptr< adios2::IO > itsAdiosIO
 
std::shared_ptr< adios2::Engine > itsAdiosEngine
 
std::string itsAdiosXmlFile
 The ADIOS2 XML configuration file. More...
 
std::string itsAdiosEngineType
 The ADIOS2 Engine type. More...
 
adios2::Params itsAdiosEngineParams
 Parameters for the ADIOS2 engine. More...
 
std::vector< adios2::Params > itsAdiosTransportParamsVec
 Parameters for the ADIOS2 transports. More...
 
std::vector< adios2::Params > itsAdiosOperatorParamsVec
 Parameters for the ADIOS2 operators (compressors) More...
 

Static Private Attributes

static MPI_Comm itsMpiComm
 MPI communicator to be used by all instances of this storage manager. More...
 
static constexpr const char * DATA_MANAGER_TYPE
 The type of this storage manager. More...
 
static constexpr const char * SPEC_FIELD_XML_FILE
 The name of the specification field for the ADIOS2 XML configuration file. More...
 
static constexpr const char * SPEC_FIELD_ENGINE_TYPE
 The name of the specification field for the ADIOS2 engine type. More...
 
static constexpr const char * SPEC_FIELD_ENGINE_PARAMS
 The name of the specification field for the ADIOS2 engine parameters. More...
 
static constexpr const char * SPEC_FIELD_TRANSPORT_PARAMS
 The name of the specification field for the ADIOS2 transport parameters. More...
 
static constexpr const char * SPEC_FIELD_OPERATOR_PARAMS
 The name of the specification field for the ADIOS2 operator parameters. More...
 

Detailed Description

Definition at line 41 of file Adios2StManImpl.h.

Constructor & Destructor Documentation

◆ impl() [1/2]

casacore::Adios2StMan::impl::impl ( Adios2StMan parent,
MPI_Comm  mpiComm,
std::string  engineType,
std::map< std::string, std::string >  engineParams,
std::vector< std::map< std::string, std::string >>  transportParams,
std::vector< std::map< std::string, std::string >>  operatorParams 
)

◆ impl() [2/2]

casacore::Adios2StMan::impl::impl ( Adios2StMan parent,
std::string  xmlFile,
MPI_Comm  mpiComm 
)

◆ ~impl()

casacore::Adios2StMan::impl::~impl ( )

Member Function Documentation

◆ addRow64()

void casacore::Adios2StMan::impl::addRow64 ( rownr_t  aNrRows)

◆ checkMPI()

void casacore::Adios2StMan::impl::checkMPI ( ) const

◆ clone()

DataManager* casacore::Adios2StMan::impl::clone ( ) const

◆ create64()

void casacore::Adios2StMan::impl::create64 ( rownr_t  aNrRows)

◆ dataManagerName()

String casacore::Adios2StMan::impl::dataManagerName ( ) const

◆ dataManagerSpec()

Record casacore::Adios2StMan::impl::dataManagerSpec ( ) const

◆ dataManagerType()

String casacore::Adios2StMan::impl::dataManagerType ( ) const

◆ deleteManager()

void casacore::Adios2StMan::impl::deleteManager ( )

◆ fileName()

String casacore::Adios2StMan::impl::fileName ( ) const
inlineprivate

Definition at line 121 of file Adios2StManImpl.h.

References casacore::DataManager::fileName(), and parent.

◆ flush()

Bool casacore::Adios2StMan::impl::flush ( AipsIO ios,
Bool  doFsync 
)

◆ getNrRows()

rownr_t casacore::Adios2StMan::impl::getNrRows ( )

◆ makeColumnCommon()

DataManagerColumn* casacore::Adios2StMan::impl::makeColumnCommon ( const String aName,
int  aDataType,
const String aDataTypeID 
)

◆ makeDirArrColumn()

DataManagerColumn* casacore::Adios2StMan::impl::makeDirArrColumn ( const String aName,
int  aDataType,
const String aDataTypeID 
)

◆ makeIndArrColumn()

DataManagerColumn* casacore::Adios2StMan::impl::makeIndArrColumn ( const String aName,
int  aDataType,
const String aDataTypeID 
)

◆ makeObject()

static DataManager* casacore::Adios2StMan::impl::makeObject ( const String aDataManType,
const Record spec 
)
static

◆ makeScalarColumn()

DataManagerColumn* casacore::Adios2StMan::impl::makeScalarColumn ( const String aName,
int  aDataType,
const String aDataTypeID 
)

◆ ncolumn()

uInt casacore::Adios2StMan::impl::ncolumn ( ) const
inlineprivate

Definition at line 120 of file Adios2StManImpl.h.

References casacore::DataManager::ncolumn(), and parent.

◆ open64()

rownr_t casacore::Adios2StMan::impl::open64 ( rownr_t  aRowNr,
AipsIO ios 
)

◆ resync64()

rownr_t casacore::Adios2StMan::impl::resync64 ( rownr_t  aRowNr)

Member Data Documentation

◆ DATA_MANAGER_TYPE

constexpr const char* casacore::Adios2StMan::impl::DATA_MANAGER_TYPE
staticconstexprprivate

The type of this storage manager.

Definition at line 108 of file Adios2StManImpl.h.

◆ itsAdios

std::shared_ptr<adios2::ADIOS> casacore::Adios2StMan::impl::itsAdios
private

Definition at line 89 of file Adios2StManImpl.h.

◆ itsAdiosEngine

std::shared_ptr<adios2::Engine> casacore::Adios2StMan::impl::itsAdiosEngine
private

Definition at line 91 of file Adios2StManImpl.h.

◆ itsAdiosEngineParams

adios2::Params casacore::Adios2StMan::impl::itsAdiosEngineParams
private

Parameters for the ADIOS2 engine.

Definition at line 101 of file Adios2StManImpl.h.

◆ itsAdiosEngineType

std::string casacore::Adios2StMan::impl::itsAdiosEngineType
private

The ADIOS2 Engine type.

Definition at line 99 of file Adios2StManImpl.h.

◆ itsAdiosIO

std::shared_ptr<adios2::IO> casacore::Adios2StMan::impl::itsAdiosIO
private

Definition at line 90 of file Adios2StManImpl.h.

◆ itsAdiosOperatorParamsVec

std::vector<adios2::Params> casacore::Adios2StMan::impl::itsAdiosOperatorParamsVec
private

Parameters for the ADIOS2 operators (compressors)

Definition at line 105 of file Adios2StManImpl.h.

◆ itsAdiosTransportParamsVec

std::vector<adios2::Params> casacore::Adios2StMan::impl::itsAdiosTransportParamsVec
private

Parameters for the ADIOS2 transports.

Definition at line 103 of file Adios2StManImpl.h.

◆ itsAdiosXmlFile

std::string casacore::Adios2StMan::impl::itsAdiosXmlFile
private

The ADIOS2 XML configuration file.

Definition at line 97 of file Adios2StManImpl.h.

◆ itsColumnPtrBlk

PtrBlock<Adios2StManColumn *> casacore::Adios2StMan::impl::itsColumnPtrBlk
private

Definition at line 87 of file Adios2StManImpl.h.

◆ itsDataManName

String casacore::Adios2StMan::impl::itsDataManName
private

Definition at line 85 of file Adios2StManImpl.h.

◆ itsMpiComm

MPI_Comm casacore::Adios2StMan::impl::itsMpiComm
staticprivate

MPI communicator to be used by all instances of this storage manager.

Definition at line 94 of file Adios2StManImpl.h.

◆ itsRows

rownr_t casacore::Adios2StMan::impl::itsRows
private

Definition at line 86 of file Adios2StManImpl.h.

◆ parent

Adios2StMan& casacore::Adios2StMan::impl::parent
private

Definition at line 84 of file Adios2StManImpl.h.

Referenced by fileName(), and ncolumn().

◆ SPEC_FIELD_ENGINE_PARAMS

constexpr const char* casacore::Adios2StMan::impl::SPEC_FIELD_ENGINE_PARAMS
staticconstexprprivate

The name of the specification field for the ADIOS2 engine parameters.

Definition at line 114 of file Adios2StManImpl.h.

◆ SPEC_FIELD_ENGINE_TYPE

constexpr const char* casacore::Adios2StMan::impl::SPEC_FIELD_ENGINE_TYPE
staticconstexprprivate

The name of the specification field for the ADIOS2 engine type.

Definition at line 112 of file Adios2StManImpl.h.

◆ SPEC_FIELD_OPERATOR_PARAMS

constexpr const char* casacore::Adios2StMan::impl::SPEC_FIELD_OPERATOR_PARAMS
staticconstexprprivate

The name of the specification field for the ADIOS2 operator parameters.

Definition at line 118 of file Adios2StManImpl.h.

◆ SPEC_FIELD_TRANSPORT_PARAMS

constexpr const char* casacore::Adios2StMan::impl::SPEC_FIELD_TRANSPORT_PARAMS
staticconstexprprivate

The name of the specification field for the ADIOS2 transport parameters.

Definition at line 116 of file Adios2StManImpl.h.

◆ SPEC_FIELD_XML_FILE

constexpr const char* casacore::Adios2StMan::impl::SPEC_FIELD_XML_FILE
staticconstexprprivate

The name of the specification field for the ADIOS2 XML configuration file.

Definition at line 110 of file Adios2StManImpl.h.


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