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

#include <H5.h>

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

Public Member Functions

 PList ()
 
 ~PList () override
 
void SetChunk (const std::vector< hsize_t > &dims)
 
void SetDeflate (const unsigned level=1)
 
void SetMpio (CommSharedPtr comm)
 
void SetDxMpioCollective ()
 
void SetDxMpioIndependent ()
 
- Public Member Functions inherited from Nektar::LibUtilities::H5::Object
void Close ()
 
hid_t GetId () const
 
 operator hid_t () const
 

Static Public Member Functions

static PListSharedPtr Default ()
 Default options. More...
 
static PListSharedPtr ObjectCreate ()
 Properties for object creation. More...
 
static PListSharedPtr FileCreate ()
 Properties for file creation. More...
 
static PListSharedPtr FileAccess ()
 Properties for file access. More...
 
static PListSharedPtr DatasetCreate ()
 Properties for dataset creation. More...
 
static PListSharedPtr DatasetAccess ()
 Properties for dataset access. More...
 
static PListSharedPtr DatasetXfer ()
 Properties for raw data transfer. More...
 
static PListSharedPtr FileMount ()
 Properties for file mounting. More...
 
static PListSharedPtr GroupCreate ()
 Properties for group creation. More...
 
static PListSharedPtr GroupAccess ()
 Properties for group access. More...
 
static PListSharedPtr DatatypeCreate ()
 Properties for datatype creation. More...
 
static PListSharedPtr DatatypeAccess ()
 Properties for datatype access. More...
 
static PListSharedPtr StringCreate ()
 Properties for character encoding when encoding strings or object names. More...
 
static PListSharedPtr AttributeCreate ()
 Properties for attribute creation. More...
 
static PListSharedPtr ObjectCopy ()
 Properties governing the object copying process. More...
 
static PListSharedPtr LinkCreate ()
 Properties governing link creation. More...
 
static PListSharedPtr LinkAccess ()
 Properties governing link traversal when accessing objects. More...
 

Protected Member Functions

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

Private Member Functions

 PList (hid_t cls)
 

Additional Inherited Members

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

Detailed Description

Definition at line 122 of file H5.h.

Constructor & Destructor Documentation

◆ PList() [1/2]

Nektar::LibUtilities::H5::PList::PList ( )

◆ ~PList()

Nektar::LibUtilities::H5::PList::~PList ( )
override

Definition at line 62 of file H5.cpp.

63{
64 Close();
65}

References Nektar::LibUtilities::H5::Object::Close().

◆ PList() [2/2]

Nektar::LibUtilities::H5::PList::PList ( hid_t  cls)
private

Definition at line 58 of file H5.cpp.

58 : Object()
59{
60 H5_CONSTRUCT(m_Id, H5Pcreate, (cls));
61}
#define H5_CONSTRUCT(ans, func, args)
Definition: H5.h:50

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

Member Function Documentation

◆ AttributeCreate()

PListSharedPtr Nektar::LibUtilities::H5::PList::AttributeCreate ( )
static

Properties for attribute creation.

Definition at line 151 of file H5.cpp.

152{
153 return PListSharedPtr(new PList(H5P_ATTRIBUTE_CREATE));
154}
std::shared_ptr< PList > PListSharedPtr
Definition: H5.h:92

References PList().

◆ DatasetAccess()

PListSharedPtr Nektar::LibUtilities::H5::PList::DatasetAccess ( )
static

Properties for dataset access.

Definition at line 103 of file H5.cpp.

104{
105 return PListSharedPtr(new PList(H5P_DATASET_ACCESS));
106}

References PList().

◆ DatasetCreate()

PListSharedPtr Nektar::LibUtilities::H5::PList::DatasetCreate ( )
static

Properties for dataset creation.

Definition at line 97 of file H5.cpp.

98{
99 return PListSharedPtr(new PList(H5P_DATASET_CREATE));
100}

References PList().

◆ DatasetXfer()

PListSharedPtr Nektar::LibUtilities::H5::PList::DatasetXfer ( )
static

Properties for raw data transfer.

Definition at line 109 of file H5.cpp.

110{
111 return PListSharedPtr(new PList(H5P_DATASET_XFER));
112}

References PList().

Referenced by Nektar::LibUtilities::FieldIOHdf5::v_Import(), and Nektar::LibUtilities::FieldIOHdf5::v_Write().

◆ DatatypeAccess()

PListSharedPtr Nektar::LibUtilities::H5::PList::DatatypeAccess ( )
static

Properties for datatype access.

Definition at line 139 of file H5.cpp.

140{
141 return PListSharedPtr(new PList(H5P_DATATYPE_ACCESS));
142}

References PList().

◆ DatatypeCreate()

PListSharedPtr Nektar::LibUtilities::H5::PList::DatatypeCreate ( )
static

Properties for datatype creation.

Definition at line 133 of file H5.cpp.

134{
135 return PListSharedPtr(new PList(H5P_DATATYPE_CREATE));
136}

References PList().

◆ Default()

PListSharedPtr Nektar::LibUtilities::H5::PList::Default ( )
static

◆ FileAccess()

PListSharedPtr Nektar::LibUtilities::H5::PList::FileAccess ( )
static

Properties for file access.

Definition at line 91 of file H5.cpp.

92{
93 return PListSharedPtr(new PList(H5P_FILE_ACCESS));
94}

References PList().

Referenced by Nektar::LibUtilities::FieldIOHdf5::v_Import(), and Nektar::LibUtilities::FieldIOHdf5::v_Write().

◆ FileCreate()

PListSharedPtr Nektar::LibUtilities::H5::PList::FileCreate ( )
static

Properties for file creation.

Definition at line 85 of file H5.cpp.

86{
87 return PListSharedPtr(new PList(H5P_FILE_CREATE));
88}

References PList().

◆ FileMount()

PListSharedPtr Nektar::LibUtilities::H5::PList::FileMount ( )
static

Properties for file mounting.

Definition at line 115 of file H5.cpp.

116{
117 return PListSharedPtr(new PList(H5P_FILE_MOUNT));
118}

References PList().

◆ GroupAccess()

PListSharedPtr Nektar::LibUtilities::H5::PList::GroupAccess ( )
static

Properties for group access.

Definition at line 127 of file H5.cpp.

128{
129 return PListSharedPtr(new PList(H5P_GROUP_ACCESS));
130}

References PList().

◆ GroupCreate()

PListSharedPtr Nektar::LibUtilities::H5::PList::GroupCreate ( )
static

Properties for group creation.

Definition at line 121 of file H5.cpp.

122{
123 return PListSharedPtr(new PList(H5P_GROUP_CREATE));
124}

References PList().

◆ LinkAccess()

PListSharedPtr Nektar::LibUtilities::H5::PList::LinkAccess ( )
static

Properties governing link traversal when accessing objects.

Definition at line 169 of file H5.cpp.

170{
171 return PListSharedPtr(new PList(H5P_LINK_ACCESS));
172}

References PList().

◆ LinkCreate()

PListSharedPtr Nektar::LibUtilities::H5::PList::LinkCreate ( )
static

Properties governing link creation.

Definition at line 163 of file H5.cpp.

164{
165 return PListSharedPtr(new PList(H5P_LINK_CREATE));
166}

References PList().

◆ ObjectCopy()

PListSharedPtr Nektar::LibUtilities::H5::PList::ObjectCopy ( )
static

Properties governing the object copying process.

Definition at line 157 of file H5.cpp.

158{
159 return PListSharedPtr(new PList(H5P_OBJECT_COPY));
160}

References PList().

◆ ObjectCreate()

PListSharedPtr Nektar::LibUtilities::H5::PList::ObjectCreate ( )
static

Properties for object creation.

Definition at line 79 of file H5.cpp.

80{
81 return PListSharedPtr(new PList(H5P_OBJECT_CREATE));
82}

References PList().

◆ SetChunk()

void Nektar::LibUtilities::H5::PList::SetChunk ( const std::vector< hsize_t > &  dims)

Definition at line 173 of file H5.cpp.

174{
175 H5_CALL(H5Pset_chunk, (m_Id, dims.size(), &dims[0]));
176}
#define H5_CALL(func, args)
Definition: H5.h:58

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

◆ SetDeflate()

void Nektar::LibUtilities::H5::PList::SetDeflate ( const unsigned  level = 1)

Definition at line 177 of file H5.cpp.

178{
179 H5_CALL(H5Pset_deflate, (m_Id, level));
180}

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

◆ SetDxMpioCollective()

void Nektar::LibUtilities::H5::PList::SetDxMpioCollective ( )

Definition at line 199 of file H5.cpp.

200{
201 ASSERTL0(false, "Trying to use parallel HDF5 without MPI!");
202}
#define ASSERTL0(condition, msg)
Definition: ErrorUtil.hpp:208

References ASSERTL0.

◆ SetDxMpioIndependent()

void Nektar::LibUtilities::H5::PList::SetDxMpioIndependent ( )

Definition at line 203 of file H5.cpp.

204{
205 ASSERTL0(false, "Trying to use parallel HDF5 without MPI!");
206}

References ASSERTL0.

◆ SetMpio()

void Nektar::LibUtilities::H5::PList::SetMpio ( CommSharedPtr  comm)

Definition at line 207 of file H5.cpp.

208{
209 ASSERTL0(false, "Trying to use parallel HDF5 without MPI!");
210}

References ASSERTL0.

◆ StringCreate()

PListSharedPtr Nektar::LibUtilities::H5::PList::StringCreate ( )
static

Properties for character encoding when encoding strings or object names.

Definition at line 145 of file H5.cpp.

146{
147 return PListSharedPtr(new PList(H5P_STRING_CREATE));
148}

References PList().

◆ v_Close()

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

Implements Nektar::LibUtilities::H5::Object.

Definition at line 66 of file H5.cpp.

67{
68 H5_CALL(H5Pclose, (m_Id));
69 m_Id = H5I_INVALID_HID;
70}

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