h5cpp  0.3.3
A modern C++ wrapper for the HDF5 C library
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
Classes | Typedefs | Enumerations | Functions
hdf5::file Namespace Reference

Classes

class  Driver
 abstract class for file drivers More...
 
class  File
 
class  MemoryDriver
 memory file driver More...
 
class  PosixDriver
 

Typedefs

using AccessFlagsBase = std::underlying_type< AccessFlags >::type
 
using SearchFlagsBase = std::underlying_type< SearchFlags >::type
 
using ScopeBase = std::underlying_type< Scope >::type
 

Enumerations

enum  DriverID : unsigned { DriverID::ePosix = 1, DriverID::eDirect = 2, DriverID::eMemory = 3, DriverID::eMPI = 4 }
 enumeration to determine the file driver More...
 
enum  AccessFlags : unsigned { AccessFlags::TRUNCATE = 0x0002, AccessFlags::EXCLUSIVE = 0x0004, AccessFlags::READWRITE = 0x0001, AccessFlags::READONLY = 0x0000 }
 flags controlling file opening and creation More...
 
enum  SearchFlags : unsigned int {
  SearchFlags::FILE = H5F_OBJ_FILE, SearchFlags::DATASET = H5F_OBJ_DATASET, SearchFlags::GROUP = H5F_OBJ_GROUP, SearchFlags::DATATYPE = H5F_OBJ_DATATYPE,
  SearchFlags::ATTRIBUTE = H5F_OBJ_ATTR, SearchFlags::ALL = H5F_OBJ_ALL, SearchFlags::LOCAL = H5F_OBJ_LOCAL
}
 flags controlling object search in a file More...
 
enum  Scope : std::underlying_type< H5F_scope_t >::type { Scope::LOCAL = H5F_SCOPE_LOCAL, Scope::GLOBAL = H5F_SCOPE_GLOBAL }
 file scope More...
 

Functions

DLL_EXPORT File create (const boost::filesystem::path &path, AccessFlags flags=AccessFlags::EXCLUSIVE, const property::FileCreationList &fcpl=property::FileCreationList(), const property::FileAccessList &fapl=property::FileAccessList())
 create a new file More...
 
DLL_EXPORT File create (const boost::filesystem::path &path, AccessFlagsBase flags, const property::FileCreationList &fcpl=property::FileCreationList(), const property::FileAccessList &fapl=property::FileAccessList())
 
DLL_EXPORT File open (const boost::filesystem::path &path, AccessFlags flags=AccessFlags::READONLY, const property::FileAccessList &fapl=property::FileAccessList())
 open an existing file More...
 
DLL_EXPORT File open (const boost::filesystem::path &path, AccessFlagsBase flags, const property::FileAccessList &fapl=property::FileAccessList())
 
DLL_EXPORT bool is_hdf5_file (const boost::filesystem::path &path)
 check if the file reference by the path is an HDF5 file More...
 
DLL_EXPORT std::ostream & operator<< (std::ostream &stream, const AccessFlags &flags)
 
DLL_EXPORT AccessFlagsBase operator| (const AccessFlags &lhs, const AccessFlags &rhs)
 
DLL_EXPORT AccessFlagsBase operator| (const AccessFlagsBase &lhs, const AccessFlags &rhs)
 
DLL_EXPORT AccessFlagsBase operator| (const AccessFlags &lhs, const AccessFlagsBase &rhs)
 
DLL_EXPORT std::ostream & operator<< (std::ostream &stream, const SearchFlags &flags)
 
DLL_EXPORT SearchFlagsBase operator| (const SearchFlags &lhs, const SearchFlags &rhs)
 
DLL_EXPORT SearchFlagsBase operator| (const SearchFlags &lhs, const SearchFlagsBase &rhs)
 
DLL_EXPORT SearchFlagsBase operator| (const SearchFlagsBase &lhs, const SearchFlags &rhs)
 
DLL_EXPORT std::ostream & operator<< (std::ostream &stream, const Scope &scope)
 

Typedef Documentation

◆ AccessFlagsBase

using hdf5::file::AccessFlagsBase = typedef std::underlying_type<AccessFlags>::type

◆ ScopeBase

using hdf5::file::ScopeBase = typedef std::underlying_type<Scope>::type

◆ SearchFlagsBase

using hdf5::file::SearchFlagsBase = typedef std::underlying_type<SearchFlags>::type

Enumeration Type Documentation

◆ AccessFlags

enum hdf5::file::AccessFlags : unsigned
strong
Enumerator
TRUNCATE 
EXCLUSIVE 
READWRITE 
READONLY 

◆ DriverID

enum hdf5::file::DriverID : unsigned
strong
Enumerator
ePosix 
eDirect 
eMemory 
eMPI 

◆ Scope

enum hdf5::file::Scope : std::underlying_type< H5F_scope_t >::type
strong
Enumerator
LOCAL 
GLOBAL 

◆ SearchFlags

enum hdf5::file::SearchFlags : unsigned int
strong
Enumerator
FILE 
DATASET 
GROUP 
DATATYPE 
ATTRIBUTE 
ALL 
LOCAL 

Function Documentation

◆ create() [1/2]

DLL_EXPORT File hdf5::file::create ( const boost::filesystem::path &  path,
AccessFlags  flags = AccessFlags::EXCLUSIVE,
const property::FileCreationList fcpl = property::FileCreationList(),
const property::FileAccessList fapl = property::FileAccessList() 
)
Parameters
paththe path to the new file
flagsHDF5 file creation flags
fcplreference to a file creation property list
faplreference to a file access property list
Exceptions
std::runtime_errorin case of a failure
Returns
new instance of File
See also
AccessFlags
FileCreationList
FileAccessList

◆ create() [2/2]

DLL_EXPORT File hdf5::file::create ( const boost::filesystem::path &  path,
AccessFlagsBase  flags,
const property::FileCreationList fcpl = property::FileCreationList(),
const property::FileAccessList fapl = property::FileAccessList() 
)

◆ is_hdf5_file()

DLL_EXPORT bool hdf5::file::is_hdf5_file ( const boost::filesystem::path &  path)
Parameters
pathreference to the files path
Exceptions
std::runtime_errorin case of a failure
Returns
true if the path references an HDF5 file, false otherwise

◆ open() [1/2]

DLL_EXPORT File hdf5::file::open ( const boost::filesystem::path &  path,
AccessFlags  flags = AccessFlags::READONLY,
const property::FileAccessList fapl = property::FileAccessList() 
)
Parameters
paththe path to the file to open
flagsfile open flags
faplreference to a file access property list
Exceptions
std::runtime_errorin case of a failure
Returns
a new File instance
See also
AccessFlags
FileAccessList

◆ open() [2/2]

DLL_EXPORT File hdf5::file::open ( const boost::filesystem::path &  path,
AccessFlagsBase  flags,
const property::FileAccessList fapl = property::FileAccessList() 
)

◆ operator<<() [1/3]

DLL_EXPORT std::ostream& hdf5::file::operator<< ( std::ostream &  stream,
const AccessFlags flags 
)

◆ operator<<() [2/3]

DLL_EXPORT std::ostream& hdf5::file::operator<< ( std::ostream &  stream,
const SearchFlags flags 
)

◆ operator<<() [3/3]

DLL_EXPORT std::ostream& hdf5::file::operator<< ( std::ostream &  stream,
const Scope scope 
)

◆ operator|() [1/6]

DLL_EXPORT AccessFlagsBase hdf5::file::operator| ( const AccessFlags lhs,
const AccessFlags rhs 
)

◆ operator|() [2/6]

DLL_EXPORT AccessFlagsBase hdf5::file::operator| ( const AccessFlagsBase lhs,
const AccessFlags rhs 
)

◆ operator|() [3/6]

DLL_EXPORT AccessFlagsBase hdf5::file::operator| ( const AccessFlags lhs,
const AccessFlagsBase rhs 
)

◆ operator|() [4/6]

DLL_EXPORT SearchFlagsBase hdf5::file::operator| ( const SearchFlags lhs,
const SearchFlags rhs 
)

◆ operator|() [5/6]

DLL_EXPORT SearchFlagsBase hdf5::file::operator| ( const SearchFlags lhs,
const SearchFlagsBase rhs 
)

◆ operator|() [6/6]

DLL_EXPORT SearchFlagsBase hdf5::file::operator| ( const SearchFlagsBase lhs,
const SearchFlags rhs 
)