Public Types | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Friends | List of all members
HighFive::DataSpace Class Reference

#include <H5DataSpace.hpp>

Inheritance diagram for HighFive::DataSpace:
Inheritance graph
[legend]

Public Types

enum  DataspaceType { datascape_scalar, datascape_null }
 dataspace type More...
 

Public Member Functions

DataSpace clone () const
 
template<typename IT , typename = typename std::enable_if<!std::is_integral<IT>::value,IT>::type>
 DataSpace (const IT begin, const IT end)
 
 DataSpace (const std::vector< size_t > &dims)
 
 DataSpace (const std::vector< size_t > &dims, const std::vector< size_t > &maxdims)
 Create a resizable N-dimensional dataspace \params dims Initial size of dataspace \params maxdims Maximum size of the dataspace. More...
 
 DataSpace (DataspaceType dtype)
 DataSpace create a scalar dataspace or a null dataset. More...
 
template<typename... Args>
 DataSpace (size_t dim1, Args... dims)
 
 DataSpace (std::initializer_list< size_t > items)
 
std::vector< size_t > getDimensions () const
 getDimensions More...
 
std::vector< size_t > getMaxDimensions () const
 getMaxDimensions More...
 
size_t getNumberDimensions () const
 getNumberDimensions More...
 
- Public Member Functions inherited from HighFive::Object
hid_t getId () const
 getId More...
 
bool isValid () const
 isValid More...
 
 ~Object ()
 

Static Public Member Functions

template<typename ScalarValue >
static DataSpace From (const ScalarValue &scalar_value)
 
template<typename Value , std::size_t N>
static DataSpace From (const std::array< Value, N > &)
 Currently only supports 1D std::array. More...
 
template<typename Value >
static DataSpace From (const std::vector< Value > &vec)
 

Static Public Attributes

static const size_t UNLIMITED = SIZE_MAX
 

Protected Member Functions

 DataSpace ()
 
- Protected Member Functions inherited from HighFive::Object
 Object ()
 
 Object (const Object &other)
 
Objectoperator= (const Object &other)
 

Friends

class Attribute
 
class DataSet
 
class File
 

Additional Inherited Members

- Protected Attributes inherited from HighFive::Object
hid_t _hid
 

Detailed Description

Definition at line 30 of file H5DataSpace.hpp.

Member Enumeration Documentation

◆ DataspaceType

dataspace type

Enumerator
datascape_scalar 
datascape_null 

Definition at line 36 of file H5DataSpace.hpp.

Constructor & Destructor Documentation

◆ DataSpace() [1/7]

HighFive::DataSpace::DataSpace ( const std::vector< size_t > &  dims)
inlineexplicit

create a dataspace of N-dimensions Each dimension is configured this way size(dim1) = vec[0] size(dim2) = vec[1] etc...

Definition at line 25 of file H5Dataspace_misc.hpp.

◆ DataSpace() [2/7]

HighFive::DataSpace::DataSpace ( std::initializer_list< size_t >  items)
inlineexplicit

Make sure that DataSpace({1,2,3}) works on GCC. This is the shortcut form of the vector initalizer, but one some compilers (gcc) this does not resolve correctly without this constructor.

Definition at line 28 of file H5Dataspace_misc.hpp.

◆ DataSpace() [3/7]

template<typename... Args>
HighFive::DataSpace::DataSpace ( size_t  dim1,
Args...  dims 
)
inlineexplicit

Allow directly listing 1 or more dimensions to initialize, that is, DataSpace(1,2) means DataSpace(std::vector<size_t>{1,2}).

Definition at line 32 of file H5Dataspace_misc.hpp.

◆ DataSpace() [4/7]

template<class IT , typename >
HighFive::DataSpace::DataSpace ( const IT  begin,
const IT  end 
)
inline

Create a dataspace from an iterator pair

Explicitly disable DataSpace(int_like, int_like) from trying to use this constructor

Definition at line 37 of file H5Dataspace_misc.hpp.

◆ DataSpace() [5/7]

HighFive::DataSpace::DataSpace ( const std::vector< size_t > &  dims,
const std::vector< size_t > &  maxdims 
)
inlineexplicit

Create a resizable N-dimensional dataspace \params dims Initial size of dataspace \params maxdims Maximum size of the dataspace.

Definition at line 46 of file H5Dataspace_misc.hpp.

◆ DataSpace() [6/7]

HighFive::DataSpace::DataSpace ( DataSpace::DataspaceType  dtype)
inlineexplicit

DataSpace create a scalar dataspace or a null dataset.

Definition at line 66 of file H5Dataspace_misc.hpp.

◆ DataSpace() [7/7]

HighFive::DataSpace::DataSpace ( )
inlineexplicitprotected

Definition at line 85 of file H5Dataspace_misc.hpp.

Member Function Documentation

◆ clone()

DataSpace HighFive::DataSpace::clone ( ) const
inline

Create a new DataSpace with a different id available for modifications

Definition at line 87 of file H5Dataspace_misc.hpp.

◆ From() [1/3]

template<typename ScalarValue >
DataSpace HighFive::DataSpace::From ( const ScalarValue &  scalar_value)
inlinestatic

Create a dataspace matching a single element of a basic type supported type are integrals (int,long), floating points (float,double) and std::string

Definition at line 130 of file H5Dataspace_misc.hpp.

◆ From() [2/3]

template<typename Value , std::size_t N>
DataSpace HighFive::DataSpace::From ( const std::array< Value, N > &  )
inlinestatic

Currently only supports 1D std::array.

Create a dataspace matching the container dimensions for a std::array.

Definition at line 160 of file H5Dataspace_misc.hpp.

◆ From() [3/3]

template<typename Value >
DataSpace HighFive::DataSpace::From ( const std::vector< Value > &  vec)
inlinestatic

Create a dataspace matching the container dimensions and size Supported Containers are:

  • vector of fundamental types
  • vector of std::string
  • boost::multi_array (with H5_USE_BOOST defined)

Definition at line 154 of file H5Dataspace_misc.hpp.

◆ getDimensions()

std::vector< size_t > HighFive::DataSpace::getDimensions ( ) const
inline

getDimensions

Returns
return a vector of N-element, each element is the size of the associated dataset dimension

Definition at line 104 of file H5Dataspace_misc.hpp.

◆ getMaxDimensions()

std::vector< size_t > HighFive::DataSpace::getMaxDimensions ( ) const
inline

getMaxDimensions

Returns
return a vector of N-element, each element is the size of the associated dataset maximum dimension

Definition at line 116 of file H5Dataspace_misc.hpp.

◆ getNumberDimensions()

size_t HighFive::DataSpace::getNumberDimensions ( ) const
inline

getNumberDimensions

Returns
the number of dimensions in the current dataspace

Definition at line 95 of file H5Dataspace_misc.hpp.

Friends And Related Function Documentation

◆ Attribute

friend class Attribute
friend

Definition at line 128 of file H5DataSpace.hpp.

◆ DataSet

friend class DataSet
friend

Definition at line 130 of file H5DataSpace.hpp.

◆ File

friend class File
friend

Definition at line 129 of file H5DataSpace.hpp.

Member Data Documentation

◆ UNLIMITED

const size_t HighFive::DataSpace::UNLIMITED = SIZE_MAX
static

Definition at line 33 of file H5DataSpace.hpp.


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


lvr2
Author(s): Thomas Wiemann , Sebastian Pütz , Alexander Mock , Lars Kiesow , Lukas Kalbertodt , Tristan Igelbrink , Johan M. von Behren , Dominik Feldschnieders , Alexander Löhr
autogenerated on Wed Mar 2 2022 00:37:26