28 #ifndef CASA_MULTIHDF5_H
29 #define CASA_MULTIHDF5_H
123 virtual void fsync();
133 virtual void close();
Class to combine multiple files in a single HDF5 file.
long long Int64
Define the extra non-standard types used by Casacore (like proposed uSize, Size)
A class representing an HDF5 file.
MultiHDF5(const String &name, ByteIO::OpenOption, Int blockSize=0)
Open or create a MultiHDF5 with the given name.
virtual void readBlock(MultiFileInfo &info, Int64 blknr, void *buffer)
Read a data block.
Abstract base class to combine multiple files in a single one.
virtual void reopenRW()
Reopen the underlying file for read/write access.
const vector< MultiFileInfo > & info() const
Get the info object (for test purposes mainly).
Helper class for MultiFileBase containing info per internal file.
virtual void writeHeader()
Write the header info.
virtual void fsync()
Fsync the file (i.e., force the data to be physically written).
virtual ~MultiHDF5()
The destructor flushes and closes the file.
virtual void readHeader(Bool always=True)
Read the header info.
virtual void doAddFile(MultiFileInfo &)
Do the class-specific actions on adding a file.
bool Bool
Define the standard types used by Casacore.
OpenOption
Define the possible ByteIO open options.
Int64 blockSize() const
Get the block size used.
virtual void close()
Flush and close the file.
String: the storage and methods of handling collections of characters.
virtual void flushFile()
Flush the file itself.
virtual void doDeleteFile(MultiFileInfo &)
Do the class-specific actions on deleting a file.
virtual void writeBlock(MultiFileInfo &info, Int64 blknr, const void *buffer)
Write a data block.
virtual void extend(MultiFileInfo &info, Int64 lastblk)
Extend the virtual file to fit lastblk.