Nektar++
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Member Functions | List of all members
Nektar::LibUtilities::H5::CompoundDataType Class Reference

#include <H5.h>

Inheritance diagram for Nektar::LibUtilities::H5::CompoundDataType:
[legend]

Public Member Functions

void Add (std::string name, size_t offset, hid_t type)
 
void AddString (std::string name, size_t offset, size_t size)
 
- Public Member Functions inherited from Nektar::LibUtilities::H5::DataType
DataTypeSharedPtr Copy () const
 
- Public Member Functions inherited from Nektar::LibUtilities::H5::Object
void Close ()
 
hid_t GetId () const
 
 operator hid_t () const
 

Static Public Member Functions

static CompoundDataTypeSharedPtr Create (size_t sz)
 
- Static Public Member Functions inherited from Nektar::LibUtilities::H5::DataType
static DataTypeSharedPtr String (size_t len=0)
 
template<class T >
static DataTypeSharedPtr OfObject (const T &obj)
 

Protected Member Functions

void v_Close () override
 
- Protected Member Functions inherited from Nektar::LibUtilities::H5::DataType
void v_Close () override
 
 DataType (hid_t id)
 
- Protected Member Functions inherited from Nektar::LibUtilities::H5::Object
 Object ()
 
 Object (hid_t id)
 
virtual ~Object ()
 
virtual void v_Close ()=0
 

Private Member Functions

 CompoundDataType (hid_t)
 

Additional Inherited Members

- Protected Attributes inherited from Nektar::LibUtilities::H5::Object
hid_t m_Id
 

Detailed Description

Definition at line 408 of file H5.h.

Constructor & Destructor Documentation

◆ CompoundDataType()

Nektar::LibUtilities::H5::CompoundDataType::CompoundDataType ( hid_t  id)
private

Definition at line 560 of file H5.cpp.

560 : DataType(id)
561{
562}

Referenced by Create().

Member Function Documentation

◆ Add()

void Nektar::LibUtilities::H5::CompoundDataType::Add ( std::string  name,
size_t  offset,
hid_t  type 
)
inline

Definition at line 413 of file H5.h.

414 {
415 H5Tinsert(m_Id, name.c_str(), offset, type);
416 }

References Nektar::LibUtilities::H5::Object::m_Id, and CellMLToNektar.pycml::name.

◆ AddString()

void Nektar::LibUtilities::H5::CompoundDataType::AddString ( std::string  name,
size_t  offset,
size_t  size 
)
inline

Definition at line 417 of file H5.h.

418 {
419 hid_t strtype = H5Tcopy(H5T_C_S1);
420 H5Tset_size(strtype, size);
421 H5Tinsert(m_Id, name.c_str(), offset, strtype);
422 }

References Nektar::LibUtilities::H5::Object::m_Id, and CellMLToNektar.pycml::name.

◆ Create()

CompoundDataTypeSharedPtr Nektar::LibUtilities::H5::CompoundDataType::Create ( size_t  sz)
static

Definition at line 554 of file H5.cpp.

555{
556 return std::shared_ptr<CompoundDataType>(
557 new CompoundDataType(H5Tcreate(H5T_COMPOUND, sz)));
558}

References CompoundDataType().

◆ v_Close()

void Nektar::LibUtilities::H5::CompoundDataType::v_Close ( )
overrideprotectedvirtual

Reimplemented from Nektar::LibUtilities::H5::DataType.

Definition at line 529 of file H5.cpp.

530{
531 H5_CALL(H5Tclose, (m_Id));
532 m_Id = H5I_INVALID_HID;
533}
#define H5_CALL(func, args)
Definition: H5.h:58

References H5_CALL, and Nektar::LibUtilities::H5::Object::m_Id.