h5gt 0.2.0
C++ wrapper for HDF5 library (based on HighFive project)
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | Protected Member Functions | Friends | List of all members
h5gt::DataType Class Reference

HDF5 Data Type. More...

#include <H5DataType.hpp>

Inheritance diagram for h5gt::DataType:
h5gt::Object h5gt::AtomicType< T > h5gt::AtomicType< FixedLenStringArray< StrLen > > h5gt::AtomicType< char[StrLen]> h5gt::CompoundType h5gt::EnumType< T >

Public Member Functions

virtual bool isTypeEqual (const DataType &other) const
 isTypeEqual Unlike == operator this only checks if the data types are equal and do not check if they belong It is virtual as checking compound type is something different
 
DataTypeClass getClass () const
 Return the fundamental type.
 
size_t getSize () const
 Returns the length (in bytes) of this type elements.
 
std::string string () const
 Returns a friendly description of the type (e.g. Float32)
 
bool isVariableStr () const
 Returns whether the type is a variable-length string.
 
bool isFixedLenStr () const
 Returns whether the type is a fixed-length string.
 
bool empty () const noexcept
 Check the DataType was default constructed. Such value might represent auto-detection of the datatype from a buffer.
 
bool isReference () const
 Returns whether the type is a Reference.
 
bool operator== (const DataType &other) const
 operator == Check if objects reside in the same file and equal to each other
 
bool operator!= (const DataType &other) const
 
- Public Member Functions inherited from h5gt::Object
void flush (bool globalScope=true)
 flush
 
bool isValid () const noexcept
 isValid
 
hid_t getId (const bool &increaseRefCount=false) const noexcept
 getId
 
std::string getFileName () const
 
std::string getPath () const
 return the path to the current group, dataset, datatype or attribute's holder
 
int getIdRefCount () const noexcept
 
ObjectInfo getObjectInfo () const
 Retrieve several infos about the current object (address, dates, etc)
 
ObjectType getObjectType () const
 Gets the fundamental type of the object (dataset, group, etc)
 

Static Public Member Functions

static DataType FromId (const hid_t &id, const bool &increaseRefCount=false)
 

Protected Member Functions

 DataType (const Object &obj)
 
 Object ()
 
 Object (const Object &other)
 
 Object (Object &&other) noexcept
 
 Object (const hid_t &)
 
 Object (const hid_t &, const ObjectType &, const bool &)
 
- Protected Member Functions inherited from h5gt::Object
 Object (const Object &other)
 
 Object (Object &&other) noexcept
 
 Object (const hid_t &)
 
 Object (const hid_t &, const ObjectType &, const bool &)
 
LinkInfo _getLinkInfo (const std::string &objPath) const
 getLinkInfo retrieve link info from an object with 'objPath'. This object must reside in the same container as current one.
 
std::string _unpackSoftLink (const std::string &objName) const
 
std::string _unpackExternalLink (const std::string &objName, std::string &fileName_out) const
 
void _unlink (const std::string &obj_name) const
 
Objectoperator= (const Object &other)
 
bool operator== (const Object &other) const
 When coparing objects h5gt::File must be open.
 

Friends

class Attribute
 
class File
 
class Group
 
class DataSet
 
class NodeTraits< File >
 
class NodeTraits< Group >
 

Additional Inherited Members

- Protected Attributes inherited from h5gt::Object
hid_t _hid
 

Detailed Description

HDF5 Data Type.

Member Function Documentation

◆ getSize()

size_t h5gt::DataType::getSize ( ) const
inline

Returns the length (in bytes) of this type elements.

Notice that the size of variable length sequences may have limited applicability given that it refers to the size of the control structure. For info see https://support.hdfgroup.org/HDF5/doc/RM/RM_H5T.html#Datatype-GetSize

◆ isTypeEqual()

bool h5gt::DataType::isTypeEqual ( const DataType & other) const
inlinevirtual

isTypeEqual Unlike == operator this only checks if the data types are equal and do not check if they belong It is virtual as checking compound type is something different

if the type is var lengh then H5Tequal doesn't work: https://forum.hdfgroup.org/t/reading-compound-datasets-recursively/6846/7?u=kerim.khemraev

◆ operator==()

bool h5gt::DataType::operator== ( const DataType & other) const
inline

operator == Check if objects reside in the same file and equal to each other

Parameters
other
Returns

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