My Project  1.10.11
H5FcreatProp.h
1 // C++ informative line for the emacs editor: -*- C++ -*-
2 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
3  * Copyright by The HDF Group. *
4  * All rights reserved. *
5  * *
6  * This file is part of HDF5. The full HDF5 copyright notice, including *
7  * terms governing use, modification, and redistribution, is contained in *
8  * the COPYING file, which can be found at the root of the source code *
9  * distribution tree, or in https://www.hdfgroup.org/licenses. *
10  * If you do not have access to either file, you may request a copy from *
11  * help@hdfgroup.org. *
12  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13 
14 #ifndef H5FileCreatPropList_H
15 #define H5FileCreatPropList_H
16 
17 namespace H5 {
18 
23 // Inheritance: PropList -> IdComponent
24 class H5_DLLCPP FileCreatPropList : public PropList {
25  public:
27  static const FileCreatPropList &DEFAULT;
28 
29  // Creates a file create property list.
31 
32 #ifndef H5_NO_DEPRECATED_SYMBOLS
33  // Retrieves version information for various parts of a file.
34  void getVersion(unsigned &super, unsigned &freelist, unsigned &stab, unsigned &shhdr) const;
35 #endif /* H5_NO_DEPRECATED_SYMBOLS */
36 
37  // Sets the userblock size field of a file creation property list.
38  void setUserblock(hsize_t size) const;
39 
40  // Gets the size of a user block in this file creation property list.
41  hsize_t getUserblock() const;
42 
43  // Retrieves the size-of address and size quantities stored in a
44  // file according to this file creation property list.
45  void getSizes(size_t &sizeof_addr, size_t &sizeof_size) const;
46 
47  // Sets file size-of addresses and sizes.
48  void setSizes(size_t sizeof_addr = 4, size_t sizeof_size = 4) const;
49 
50  // Retrieves the size of the symbol table B-tree 1/2 rank and the
51  // symbol table leaf node 1/2 size.
52  void getSymk(unsigned &int_nodes_k, unsigned &leaf_nodes_k) const;
53 
54  // Sets the size of parameters used to control the symbol table nodes.
55  void setSymk(unsigned int_nodes_k, unsigned leaf_nodes_k) const;
56 
57  // Returns the 1/2 rank of an indexed storage B-tree.
58  unsigned getIstorek() const;
59 
60  // Sets the size of parameter used to control the B-trees for
61  // indexing chunked datasets.
62  void setIstorek(unsigned ik) const;
63 
64  // Sets the strategy and the threshold value that the library will
65  // will employ in managing file space.
66  void setFileSpaceStrategy(H5F_fspace_strategy_t strategy, hbool_t persist, hsize_t threshold) const;
67 
68  // Returns the strategy that the library uses in managing file space.
69  void getFileSpaceStrategy(H5F_fspace_strategy_t &strategy, hbool_t &persist, hsize_t &threshold) const;
70 
71  // Sets the file space page size for paged aggregation.
72  void setFileSpacePagesize(hsize_t fsp_psize) const;
73 
74  // Returns the threshold value that the library uses in tracking free
75  // space sections.
76  hsize_t getFileSpacePagesize() const;
77 
79  virtual H5std_string
80  fromClass() const
81  {
82  return ("FileCreatPropList");
83  }
84 
85  // Copy constructor: same as the original FileCreatPropList.
87 
88  // Creates a copy of an existing file create property list
89  // using the property list id.
90  FileCreatPropList(const hid_t plist_id);
91 
92  // Noop destructor
93  virtual ~FileCreatPropList();
94 
95 #ifndef DOXYGEN_SHOULD_SKIP_THIS
96 
97  // Deletes the global constant, should only be used by the library
98  static void deleteConstants();
99 
100  private:
101  static FileCreatPropList *DEFAULT_;
102 
103  // Creates the global constant, should only be used by the library
104  static FileCreatPropList *getConstant();
105 
106 #endif // DOXYGEN_SHOULD_SKIP_THIS
107 
108 }; // end of FileCreatPropList
109 } // namespace H5
110 
111 #endif // H5FileCreatPropList_H
H5::FileCreatPropList::setFileSpacePagesize
void setFileSpacePagesize(hsize_t fsp_psize) const
Sets the file space page size for paged aggregation.
Definition: H5FcreatProp.cpp:350
H5::PropListIException
Definition: H5Exception.h:123
H5::FileCreatPropList::getVersion
void getVersion(unsigned &super, unsigned &freelist, unsigned &stab, unsigned &shhdr) const
Retrieves version information for various parts of a file.
Definition: H5FcreatProp.cpp:126
H5::FileCreatPropList::getUserblock
hsize_t getUserblock() const
Returns the user block size of this file creation property list.
Definition: H5FcreatProp.cpp:162
H5::FileCreatPropList::setSymk
void setSymk(unsigned int_nodes_k, unsigned leaf_nodes_k) const
Sets the size of parameters used to control the symbol table nodes.
Definition: H5FcreatProp.cpp:223
H5::FileCreatPropList::setSizes
void setSizes(size_t sizeof_addr=4, size_t sizeof_size=4) const
Sets the byte size of the offsets and lengths used to address objects in an HDF5 file.
Definition: H5FcreatProp.cpp:185
H5::FileCreatPropList::setIstorek
void setIstorek(unsigned ik) const
Sets the size of the parameter used to control the B-trees for indexing chunked datasets.
Definition: H5FcreatProp.cpp:263
H5::FileCreatPropList::setFileSpaceStrategy
void setFileSpaceStrategy(H5F_fspace_strategy_t strategy, hbool_t persist, hsize_t threshold) const
Sets the strategy and the threshold value that the library will employ in managing file space.
Definition: H5FcreatProp.cpp:311
H5::FileCreatPropList::getFileSpaceStrategy
void getFileSpaceStrategy(H5F_fspace_strategy_t &strategy, hbool_t &persist, hsize_t &threshold) const
Retrieves the strategy, persist, and threshold that the library uses in managing file space.
Definition: H5FcreatProp.cpp:332
H5::FileCreatPropList
Class FileCreatPropList inherits from PropList and provides wrappers for the HDF5 file create propert...
Definition: H5FcreatProp.h:24
H5::FileCreatPropList::FileCreatPropList
FileCreatPropList()
Default constructor: Creates a file create property list.
Definition: H5FcreatProp.cpp:86
H5::FileCreatPropList::getIstorek
unsigned getIstorek() const
Returns the 1/2 rank of an indexed storage B-tree.
Definition: H5FcreatProp.cpp:282
H5::FileCreatPropList::getFileSpacePagesize
hsize_t getFileSpacePagesize() const
Returns the file space page size for aggregating small metadata or raw data.
Definition: H5FcreatProp.cpp:368
H5::FileCreatPropList::~FileCreatPropList
virtual ~FileCreatPropList()
Noop destructor.
Definition: H5FcreatProp.cpp:384
H5::FileCreatPropList::DEFAULT
static const FileCreatPropList & DEFAULT
Default file creation property list.
Definition: H5FcreatProp.h:27
H5::FileCreatPropList::getSizes
void getSizes(size_t &sizeof_addr, size_t &sizeof_size) const
Retrieves the size of the offsets and lengths used in an HDF5 file.
Definition: H5FcreatProp.cpp:202
H5::FileCreatPropList::getSymk
void getSymk(unsigned &int_nodes_k, unsigned &leaf_nodes_k) const
Retrieves the size of the symbol table B-tree 1/2 rank and the symbol table leaf node 1/2 size.
Definition: H5FcreatProp.cpp:243
H5
Definition: H5AbstractDs.cpp:33
H5::FileCreatPropList::fromClass
virtual H5std_string fromClass() const
Returns this class name.
Definition: H5FcreatProp.h:80
H5::FileCreatPropList::setUserblock
void setUserblock(hsize_t size) const
Sets the user block size field of this file creation property list.
Definition: H5FcreatProp.cpp:146
H5::PropList
Class PropList inherits from IdComponent and provides wrappers for the HDF5 generic property list.
Definition: H5PropList.h:24


The HDF Group Help Desk:
  Copyright by The HDF Group