vSMC  v3.0.0
Scalable Monte Carlo
Classes | Namespaces | Macros | Functions
hdf5.hpp File Reference
#include <vsmc/internal/common.hpp>
#include <hdf5.h>

Go to the source code of this file.

Classes

class  vsmc::internal::HDF5DataSet
 
class  vsmc::internal::HDF5DataSpace
 
class  vsmc::internal::HDF5DataType
 
class  vsmc::internal::HDF5File
 
class  vsmc::internal::HDF5Group
 
class  vsmc::internal::HDF5ID< Derived >
 
class  vsmc::internal::HDF5StoreDataPtr< T >
 

Namespaces

 vsmc
 
 vsmc::internal
 

Macros

#define VSMC_DEFINE_HDF5TYPE(CPPName, CName)
 

Functions

inline::hid_t vsmc::internal::hdf5_datafile (const std::string &filename, bool append, bool read_only)
 
template<typename >
inline::hid_t vsmc::hdf5_datatype ()
 HDF5 data type. More...
 
template<>
inline::hid_t vsmc::hdf5_datatype< char > ()
 HDF5 data type specialization for char. More...
 
template<>
inline::hid_t vsmc::hdf5_datatype< double > ()
 HDF5 data type specialization for double. More...
 
template<>
inline::hid_t vsmc::hdf5_datatype< float > ()
 HDF5 data type specialization for float. More...
 
template<>
inline::hid_t vsmc::hdf5_datatype< int > ()
 HDF5 data type specialization for int. More...
 
template<>
inline::hid_t vsmc::hdf5_datatype< long > ()
 HDF5 data type specialization for long. More...
 
template<>
inline::hid_t vsmc::hdf5_datatype< long double > ()
 HDF5 data type specialization for long double. More...
 
template<>
inline::hid_t vsmc::hdf5_datatype< long long > ()
 HDF5 data type specialization for long long. More...
 
template<>
inline::hid_t vsmc::hdf5_datatype< short > ()
 HDF5 data type specialization for short. More...
 
template<>
inline::hid_t vsmc::hdf5_datatype< signed char > ()
 HDF5 data type specialization for signed char. More...
 
template<>
inline::hid_t vsmc::hdf5_datatype< unsigned char > ()
 HDF5 data type specialization for unsigned char. More...
 
template<>
inline::hid_t vsmc::hdf5_datatype< unsigned int > ()
 HDF5 data type specialization for unsigned int. More...
 
template<>
inline::hid_t vsmc::hdf5_datatype< unsigned long > ()
 HDF5 data type specialization for unsigned long. More...
 
template<>
inline::hid_t vsmc::hdf5_datatype< unsigned long long > ()
 HDF5 data type specialization for unsigned long. More...
 
template<>
inline::hid_t vsmc::hdf5_datatype< unsigned short > ()
 HDF5 data type specialization for unsigned short. More...
 
void vsmc::internal::hdf5_dim (MatrixLayout layout, std::size_t nrow, std::size_t ncol,::hsize_t *dim)
 
template<typename IntType >
bool vsmc::internal::hdf5_use_int (std::size_t n, IntType *r, std::false_type)
 
template<typename IntType >
bool vsmc::internal::hdf5_use_int (std::size_t n, IntType *r, std::true_type)
 
template<typename OutputIter >
OutputIter vsmc::hdf5load (const std::string &filename, const std::string &dataname, OutputIter first)
 Load HDF5 data. More...
 
template<typename T >
Vector< T > vsmc::hdf5load (const std::string &filename, const std::string &dataname)
 Load HDF5 data. More...
 
std::size_t vsmc::hdf5load_size (const std::string &filename, const std::string &dataname)
 The number of elements in HDF5 data. More...
 
void vsmc::hdf5store (const std::string &filename)
 Create a new HDF5 file. More...
 
void vsmc::hdf5store (const std::string &filename, const std::string dataname, bool append)
 Create a new HDF5 group. More...
 
template<typename InputIter >
void vsmc::hdf5store (std::size_t N, InputIter first, const std::string &filename, const std::string &dataname, bool append)
 Store one dimensional vector. More...
 
template<typename T , typename Alloc >
void vsmc::hdf5store (const std::vector< T, Alloc > &vector, const std::string &filename, const std::string &dataname, bool append)
 Store one dimensional vector. More...
 
template<typename InputIter >
void vsmc::hdf5store (MatrixLayout layout, std::size_t nrow, std::size_t ncol, InputIter first, const std::string &filename, const std::string &dataname, bool append)
 Store a matrix in the HDF5 format from an input iterator. More...
 
template<MatrixLayout Layout, std::size_t Dim, typename T >
void vsmc::hdf5store (const StateMatrix< Layout, Dim, T > &state_matrix, const std::string &filename, const std::string &dataname, bool append)
 Store a StateMatrix in the HDF5 format. More...
 
template<typename T >
void vsmc::hdf5store (const Particle< T > &particle, const std::string &filename, const std::string &dataname, bool append)
 Store a Particle in the HDF5 format. More...
 
template<typename T >
void vsmc::hdf5store (const Monitor< T > &monitor, const std::string &filename, const std::string &dataname, bool append)
 Store a Monitor in the HDF5 format. More...
 
template<typename T >
void vsmc::hdf5store (const Sampler< T > &sampler, const std::string &filename, const std::string &dataname, bool append)
 Store a Sampler in the HDF5 format. More...
 

Macro Definition Documentation

#define VSMC_DEFINE_HDF5TYPE (   CPPName,
  CName 
)
Value:
class HDF5##CPPName : public HDF5ID<HDF5##CPPName> \
{ \
public: \
HDF5##CPPName(::hid_t id) : HDF5ID<HDF5##CPPName>(id) {} \
\
static void close(::hid_t id) { ::H5##CName##close(id); } \
};

Definition at line 48 of file hdf5.hpp.