29 #ifndef ADIOS2STMANIMPL_H
30 #define ADIOS2STMANIMPL_H
39 class Adios2StManColumn;
47 std::string engineType,
48 std::map<std::string, std::string> engineParams,
49 std::vector<std::map<std::string, std::string>> transportParams,
50 std::vector<std::map<std::string, std::string>> operatorParams);
66 const String &aDataTypeID);
69 const String &aDataTypeID);
72 const String &aDataTypeID);
75 const String &aDataTypeID);
126 #endif // ADIOS2STMANIMPL_H
std::shared_ptr< adios2::IO > itsAdiosIO
DataManager * clone() const
std::shared_ptr< adios2::ADIOS > itsAdios
uInt ncolumn() const
Get the nr of columns in this data manager (can be zero).
AipsIO is the object persistency mechanism of Casacore.
Abstract base class for a column in a data manager.
String fileName() const
Compose a unique filename from the table name and sequence number.
void create64(rownr_t aNrRows)
DataManagerColumn * makeDirArrColumn(const String &aName, int aDataType, const String &aDataTypeID)
DataManagerColumn * makeIndArrColumn(const String &aName, int aDataType, const String &aDataTypeID)
static constexpr const char * SPEC_FIELD_OPERATOR_PARAMS
The name of the specification field for the ADIOS2 operator parameters.
DataManagerColumn * makeScalarColumn(const String &aName, int aDataType, const String &aDataTypeID)
std::string itsAdiosXmlFile
The ADIOS2 XML configuration file.
Bool flush(AipsIO &ios, Bool doFsync)
A hierarchical collection of named fields of various types.
bool Bool
Define the standard types used by Casacore.
static constexpr const char * SPEC_FIELD_TRANSPORT_PARAMS
The name of the specification field for the ADIOS2 transport parameters.
static constexpr const char * SPEC_FIELD_XML_FILE
The name of the specification field for the ADIOS2 XML configuration file.
std::shared_ptr< adios2::Engine > itsAdiosEngine
static constexpr const char * DATA_MANAGER_TYPE
The type of this storage manager.
void addRow64(rownr_t aNrRows)
A drop-in replacement for Block<T*>.
String dataManagerName() const
std::vector< adios2::Params > itsAdiosOperatorParamsVec
Parameters for the ADIOS2 operators (compressors)
uInt64 rownr_t
Define the type of a row number in a table.
static constexpr const char * SPEC_FIELD_ENGINE_PARAMS
The name of the specification field for the ADIOS2 engine parameters.
Abstract base class for a data manager.
Record dataManagerSpec() const
static constexpr const char * SPEC_FIELD_ENGINE_TYPE
The name of the specification field for the ADIOS2 engine type.
String: the storage and methods of handling collections of characters.
adios2::Params itsAdiosEngineParams
Parameters for the ADIOS2 engine.
static DataManager * makeObject(const String &aDataManType, const Record &spec)
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)
DataManagerColumn * makeColumnCommon(const String &aName, int aDataType, const String &aDataTypeID)
std::string itsAdiosEngineType
The ADIOS2 Engine type.
std::vector< adios2::Params > itsAdiosTransportParamsVec
Parameters for the ADIOS2 transports.
String dataManagerType() const
static MPI_Comm itsMpiComm
MPI communicator to be used by all instances of this storage manager.
PtrBlock< Adios2StManColumn * > itsColumnPtrBlk
rownr_t resync64(rownr_t aRowNr)
rownr_t open64(rownr_t aRowNr, AipsIO &ios)