openPMD-api
Public Member Functions | Protected Attributes | List of all members
openPMD::ParallelADIOS1IOHandlerImpl Class Reference
Inheritance diagram for openPMD::ParallelADIOS1IOHandlerImpl:
Inheritance graph
[legend]
Collaboration diagram for openPMD::ParallelADIOS1IOHandlerImpl:
Collaboration graph
[legend]

Public Member Functions

 ParallelADIOS1IOHandlerImpl (AbstractIOHandler *, json::TracingJSON, MPI_Comm)
 
virtual void init ()
 
std::future< void > flush ()
 
virtual int64_t open_write (Writable *)
 
virtual ADIOS_FILE * open_read (std::string const &name)
 
int64_t initialize_group (std::string const &name)
 
- Public Member Functions inherited from openPMD::CommonADIOS1IOHandlerImpl< ParallelADIOS1IOHandlerImpl >
void createFile (Writable *, Parameter< Operation::CREATE_FILE > const &) override
 Create a new file in physical storage, possibly overriding an existing file. More...
 
void checkFile (Writable *, Parameter< Operation::CHECK_FILE > &) override
 Check if the file specified by the parameter is already present on disk. More...
 
void createPath (Writable *, Parameter< Operation::CREATE_PATH > const &) override
 Create all necessary groups for a path, possibly recursively. More...
 
void createDataset (Writable *, Parameter< Operation::CREATE_DATASET > const &) override
 Create a new dataset of given type, extent and storage properties. More...
 
void extendDataset (Writable *, Parameter< Operation::EXTEND_DATASET > const &) override
 Increase the extent of an existing dataset. More...
 
void openFile (Writable *, Parameter< Operation::OPEN_FILE > &) override
 Open an existing file assuming it conforms to openPMD. More...
 
void closeFile (Writable *, Parameter< Operation::CLOSE_FILE > const &) override
 Close the file corresponding with the writable and release file handles. More...
 
void availableChunks (Writable *, Parameter< Operation::AVAILABLE_CHUNKS > &) override
 Report chunks that are available for loading from the dataset represented by this writable. More...
 
void openPath (Writable *, Parameter< Operation::OPEN_PATH > const &) override
 Open all contained groups in a path, possibly recursively. More...
 
void openDataset (Writable *, Parameter< Operation::OPEN_DATASET > &) override
 Open an existing dataset and determine its datatype and extent. More...
 
void deleteFile (Writable *, Parameter< Operation::DELETE_FILE > const &) override
 Delete an existing file from physical storage. More...
 
void deletePath (Writable *, Parameter< Operation::DELETE_PATH > const &) override
 Delete all objects within an existing path. More...
 
void deleteDataset (Writable *, Parameter< Operation::DELETE_DATASET > const &) override
 Delete an existing dataset. More...
 
void deleteAttribute (Writable *, Parameter< Operation::DELETE_ATT > const &) override
 Delete an existing attribute. More...
 
void writeDataset (Writable *, Parameter< Operation::WRITE_DATASET > &) override
 Write a chunk of data into an existing dataset. More...
 
void writeAttribute (Writable *, Parameter< Operation::WRITE_ATT > const &) override
 Create a single attribute and fill the value, possibly overwriting an existing attribute. More...
 
void readDataset (Writable *, Parameter< Operation::READ_DATASET > &) override
 Read a chunk of data from an existing dataset. More...
 
void readAttribute (Writable *, Parameter< Operation::READ_ATT > &) override
 Read the value of an existing attribute. More...
 
void listPaths (Writable *, Parameter< Operation::LIST_PATHS > &) override
 List all paths/sub-groups inside a group, non-recursively. More...
 
void listDatasets (Writable *, Parameter< Operation::LIST_DATASETS > &) override
 List all datasets inside a group, non-recursively. More...
 
void listAttributes (Writable *, Parameter< Operation::LIST_ATTS > &) override
 List all attributes associated with an object. More...
 
void deregister (Writable *, Parameter< Operation::DEREGISTER > const &) override
 Notify the backend that the Writable has been / will be deallocated. More...
 
void close (int64_t)
 
void close (ADIOS_FILE *)
 
void flush_attribute (int64_t group, std::string const &name, Attribute const &)
 
- Public Member Functions inherited from openPMD::AbstractIOHandlerImpl
 AbstractIOHandlerImpl (AbstractIOHandler *handler)
 
std::future< void > flush ()
 
virtual void advance (Writable *, Parameter< Operation::ADVANCE > &parameters)
 Advance the file/stream that this writable belongs to. More...
 
virtual void closePath (Writable *, Parameter< Operation::CLOSE_PATH > const &)
 Close an openPMD group. More...
 
virtual void getBufferView (Writable *, Parameter< Operation::GET_BUFFER_VIEW > &parameters)
 Get a view into a dataset buffer that can be filled by a user. More...
 
void keepSynchronous (Writable *, Parameter< Operation::KEEP_SYNCHRONOUS > param)
 Treat the current Writable as equivalent to that in the parameter object. More...
 

Protected Attributes

MPI_Comm m_mpiComm
 
MPI_Info m_mpiInfo
 
- Protected Attributes inherited from openPMD::CommonADIOS1IOHandlerImpl< ParallelADIOS1IOHandlerImpl >
ADIOS_READ_METHOD m_readMethod
 
std::unordered_map< Writable *, std::shared_ptr< std::string > > m_filePaths
 
std::unordered_map< std::shared_ptr< std::string >, int64_t > m_groups
 
std::unordered_map< std::shared_ptr< std::string >, bool > m_existsOnDisk
 
std::unordered_map< std::shared_ptr< std::string >, int64_t > m_openWriteFileHandles
 
std::unordered_map< std::shared_ptr< std::string >, ADIOS_FILE *> m_openReadFileHandles
 
std::unordered_map< ADIOS_FILE *, std::vector< ScheduledRead > > m_scheduledReads
 
std::unordered_map< int64_t, std::unordered_map< std::string, Attribute > > m_attributeWrites
 
std::string m_defaultTransform
 

Additional Inherited Members

- Public Attributes inherited from openPMD::AbstractIOHandlerImpl
AbstractIOHandlerm_handler
 
- Protected Member Functions inherited from openPMD::CommonADIOS1IOHandlerImpl< ParallelADIOS1IOHandlerImpl >
 CommonADIOS1IOHandlerImpl (Args &&...args)
 
int64_t GetFileHandle (Writable *)
 Call this function to get adios file id for a Writable. More...
 
void initJson (json::TracingJSON)
 

Member Function Documentation

◆ init()

void openPMD::ParallelADIOS1IOHandlerImpl::init ( )
virtual
Todo:
ADIOS_READ_METHOD_BP_AGGREGATE

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