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

Go to the source code of this file.

Classes

class  vsmc::internal::HDF5LoadDataPtr< T >
 
class  vsmc::internal::HDF5StoreDataPtr< T >
 

Namespaces

 vsmc
 
 vsmc::internal
 

Functions

template<typename >
inline::hid_t vsmc::hdf5io_datatype ()
 HDF5 data type. More...
 
template<>
inline::hid_t vsmc::hdf5io_datatype< char > ()
 HDF5 data type specialization for char. More...
 
template<>
inline::hid_t vsmc::hdf5io_datatype< double > ()
 HDF5 data type specialization for double. More...
 
template<>
inline::hid_t vsmc::hdf5io_datatype< float > ()
 HDF5 data type specialization for float. More...
 
template<>
inline::hid_t vsmc::hdf5io_datatype< int > ()
 HDF5 data type specialization for int. More...
 
template<>
inline::hid_t vsmc::hdf5io_datatype< long > ()
 HDF5 data type specialization for long. More...
 
template<>
inline::hid_t vsmc::hdf5io_datatype< long double > ()
 HDF5 data type specialization for long double. More...
 
template<>
inline::hid_t vsmc::hdf5io_datatype< long long > ()
 HDF5 data type specialization for long long. More...
 
template<>
inline::hid_t vsmc::hdf5io_datatype< short > ()
 HDF5 data type specialization for short. More...
 
template<>
inline::hid_t vsmc::hdf5io_datatype< signed char > ()
 HDF5 data type specialization for signed char. More...
 
template<>
inline::hid_t vsmc::hdf5io_datatype< unsigned char > ()
 HDF5 data type specialization for unsigned char. More...
 
template<>
inline::hid_t vsmc::hdf5io_datatype< unsigned int > ()
 HDF5 data type specialization for unsigned int. More...
 
template<>
inline::hid_t vsmc::hdf5io_datatype< unsigned long > ()
 HDF5 data type specialization for unsigned long. More...
 
template<>
inline::hid_t vsmc::hdf5io_datatype< unsigned long long > ()
 HDF5 data type specialization for unsigned long. More...
 
template<>
inline::hid_t vsmc::hdf5io_datatype< unsigned short > ()
 HDF5 data type specialization for unsigned short. More...
 
template<MatrixLayout >
void vsmc::internal::hdf5io_matrix_dim (std::size_t, std::size_t,::hsize_t *)
 
template<>
void vsmc::internal::hdf5io_matrix_dim< ColMajor > (std::size_t nrow, std::size_t ncol,::hsize_t *dim)
 
template<>
void vsmc::internal::hdf5io_matrix_dim< RowMajor > (std::size_t nrow, std::size_t ncol,::hsize_t *dim)
 
template<typename T , typename OutputIter >
OutputIter vsmc::hdf5load (const std::string &file_name, const std::string &data_name, OutputIter first)
 Load raw data in the HDF5 format. More...
 
inline::hsize_t vsmc::hdf5size (const std::string &file_name, const std::string &data_name)
 Get the number of bytes of the data in the HDF5 format. More...
 
template<typename T >
void vsmc::hdf5store (const Sampler< T > &sampler, const std::string &file_name, const std::string &data_name, bool append=false)
 Store a Sampler in the HDF5 format. More...
 
template<MatrixLayout Layout, std::size_t Dim, typename T >
void vsmc::hdf5store (const StateMatrix< Layout, Dim, T > &state, const std::string &file_name, const std::string &data_name, bool append=false)
 Store a StateMatrix in the HDF5 format. More...
 
template<MatrixLayout Layout, typename T , std::size_t StateSize, typename RealType , typename ID >
void vsmc::hdf5store (const StateCL< StateSize, RealType, ID > &state, const std::string &file_name, const std::string &data_name, bool append=false)
 Store a StateCL in the HDF5 format. More...
 
template<typename T >
void vsmc::hdf5store (const Particle< T > &particle, const std::string &file_name, const std::string &data_name, bool append=false)
 Store a Particle in the HDF5 format. More...
 
template<MatrixLayout Layout, typename T , typename U >
void vsmc::hdf5store (const Particle< U > &particle, const std::string &file_name, const std::string &data_name, bool append=false)
 Store a Particle with StateCL value type in the HDF5 format. More...
 
template<typename IntType >
bool vsmc::internal::hdf5store_int (std::size_t n, IntType *r, std::false_type)
 
template<typename IntType >
bool vsmc::internal::hdf5store_int (std::size_t n, IntType *r, std::true_type)
 
template<typename T , typename InputIterIter , typename SInputIter >
void vsmc::hdf5store_list (std::size_t nrow, std::size_t ncol, const std::string &file_name, const std::string &data_name, InputIterIter first, SInputIter sfirst, bool append=false)
 Store a list in the HDF5 format from an iterator to iterators. More...
 
template<typename SInputIter , typename InputIter , typename... InputIters>
void vsmc::hdf5store_list (std::size_t nrow, const std::string &file_name, const std::string &data_name, const std::tuple< InputIter, InputIters... > &first, SInputIter sfirst, bool append=false)
 Store a list in the HDF5 format from tuple of iterators. More...
 
void vsmc::hdf5store_list_empty (const std::string &file_name, const std::string &data_name, bool append=false)
 Create an empty list. More...
 
template<typename T , typename InputIter >
void vsmc::hdf5store_list_insert (std::size_t N, const std::string &file_name, const std::string &data_name, InputIter first, const std::string &vname)
 Insert a variable into an existing list saved in HDF5 format. More...
 
template<typename InputIter , typename... InputIters>
void vsmc::internal::hdf5store_list_insert_tuple (std::size_t nrow, const std::string &file_name, const std::string &data_name, const std::tuple< InputIter, InputIters... > &first, const std::string *sptr, std::integral_constant< std::size_t, 0 >)
 
template<typename InputIter , typename... InputIters, std::size_t Pos>
void vsmc::internal::hdf5store_list_insert_tuple (std::size_t nrow, const std::string &file_name, const std::string &data_name, const std::tuple< InputIter, InputIters... > &first, const std::string *sptr, std::integral_constant< std::size_t, Pos >)
 
template<MatrixLayout Layout, typename T , typename InputIter >
InputIter vsmc::hdf5store_matrix (std::size_t nrow, std::size_t ncol, const std::string &file_name, const std::string &data_name, InputIter first, bool append=false)
 Store a matrix in the HDF5 format from an input iterator. More...
 
void vsmc::hdf5store_new (const std::string &file_name)
 Create a new HDF5 file for store data. More...