HDF5 C++ API  1.10.0-patch1 currently under development
H5FcreatProp.h
1 // C++ informative line for the emacs editor: -*- C++ -*-
2 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
3  * Copyright by The HDF Group. *
4  * Copyright by the Board of Trustees of the University of Illinois. *
5  * All rights reserved. *
6  * *
7  * This file is part of HDF5. The full HDF5 copyright notice, including *
8  * terms governing use, modification, and redistribution, is contained in *
9  * the files COPYING and Copyright.html. COPYING can be found at the root *
10  * of the source code distribution tree; Copyright.html can be found at the *
11  * root level of an installed copy of the electronic HDF5 document set and *
12  * is linked from the top-level documents page. It can also be found at *
13  * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
14  * access to either file, you may request a copy from help@hdfgroup.org. *
15  * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
16 
17 #ifndef __H5FileCreatPropList_H
18 #define __H5FileCreatPropList_H
19 
20 #ifndef H5_NO_NAMESPACE
21 namespace H5 {
22 #endif
23 
25 class H5_DLLCPP FileCreatPropList : public PropList {
26  public:
28  static const FileCreatPropList& DEFAULT;
29 
30  // Creates a file create property list.
32 
33 #ifndef H5_NO_DEPRECATED_SYMBOLS
34  // Retrieves version information for various parts of a file.
35  void getVersion( unsigned& super, unsigned& freelist, unsigned& stab, unsigned& shhdr ) const;
36 #endif /* H5_NO_DEPRECATED_SYMBOLS */
37 
38  // Sets the userblock size field of a file creation property list.
39  void setUserblock( hsize_t size ) const;
40 
41  // Gets the size of a user block in this file creation property list.
42  hsize_t getUserblock() const;
43 
44  // Retrieves the size-of address and size quantities stored in a
45  // file according to this file creation property list.
46  void getSizes( size_t& sizeof_addr, size_t& sizeof_size ) const;
47 
48  // Sets file size-of addresses and sizes.
49  void setSizes( size_t sizeof_addr = 4, size_t sizeof_size = 4 ) const;
50 
51  // Retrieves the size of the symbol table B-tree 1/2 rank and the
52  // symbol table leaf node 1/2 size.
53  void getSymk( unsigned& int_nodes_k, unsigned& leaf_nodes_k ) const;
54 
55  // Sets the size of parameters used to control the symbol table nodes.
56  void setSymk( unsigned int_nodes_k, unsigned leaf_nodes_k ) const;
57 
58  // Returns the 1/2 rank of an indexed storage B-tree.
59  unsigned getIstorek() const;
60 
61  // Sets the size of parameter used to control the B-trees for
62  // indexing chunked datasets.
63  void setIstorek( unsigned ik ) const;
64 
66  virtual H5std_string fromClass () const { return("FileCreatPropList"); }
67 
68  // Copy constructor: creates a copy of a FileCreatPropList object.
70 
71  // Creates a copy of an existing file create property list
72  // using the property list id.
73  FileCreatPropList (const hid_t plist_id);
74 
75  // Noop destructor
76  virtual ~FileCreatPropList();
77 
78 #ifndef DOXYGEN_SHOULD_SKIP_THIS
79 
80  // Deletes the global constant, should only be used by the library
81  static void deleteConstants();
82 
83  private:
84  static FileCreatPropList* DEFAULT_;
85 
86  // Creates the global constant, should only be used by the library
87  static FileCreatPropList* getConstant();
88 
89 #endif // DOXYGEN_SHOULD_SKIP_THIS
90 
91 };
92 #ifndef H5_NO_NAMESPACE
93 }
94 #endif
95 #endif // __H5FileCreatPropList_H
Definition: H5AbstractDs.cpp:31
static const FileCreatPropList & DEFAULT
Default file creation property list.
Definition: H5FcreatProp.h:28
virtual H5std_string fromClass() const
Returns this class name.
Definition: H5FcreatProp.h:66
Class FileCreatPropList represents the HDF5 file create property list.
Definition: H5FcreatProp.h:25
Class PropList provides operations for generic property lists.
Definition: H5PropList.h:25


The HDF Group Help Desk:
  Copyright by The HDF Group
and the Board of Trustees of the University of Illinois