HDF5 C++ API Reference Manual |
00001 // C++ informative line for the emacs editor: -*- C++ -*- 00002 /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * 00003 * Copyright by The HDF Group. * 00004 * Copyright by the Board of Trustees of the University of Illinois. * 00005 * All rights reserved. * 00006 * * 00007 * This file is part of HDF5. The full HDF5 copyright notice, including * 00008 * terms governing use, modification, and redistribution, is contained in * 00009 * the files COPYING and Copyright.html. COPYING can be found at the root * 00010 * of the source code distribution tree; Copyright.html can be found at the * 00011 * root level of an installed copy of the electronic HDF5 document set and * 00012 * is linked from the top-level documents page. It can also be found at * 00013 * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have * 00014 * access to either file, you may request a copy from help@hdfgroup.org. * 00015 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */ 00016 00017 #ifndef _H5FileCreatPropList_H 00018 #define _H5FileCreatPropList_H 00019 00020 #ifndef H5_NO_NAMESPACE 00021 namespace H5 { 00022 #endif 00023 00024 // class for file access properties 00025 class H5_DLLCPP FileCreatPropList : public PropList { 00026 public: 00027 // Default file creation property list. 00028 static const FileCreatPropList DEFAULT; 00029 00030 // Creates a file create property list. 00031 FileCreatPropList(); 00032 00033 // Retrieves version information for various parts of a file. 00034 void getVersion( unsigned& super, unsigned& freelist, unsigned& stab, unsigned& shhdr ) const; 00035 00036 // Sets the userblock size field of a file creation property list. 00037 void setUserblock( hsize_t size ) const; 00038 00039 // Gets the size of a user block in this file creation property list. 00040 hsize_t getUserblock() const; 00041 00042 // Retrieves the size-of address and size quantities stored in a 00043 // file according to this file creation property list. 00044 void getSizes( size_t& sizeof_addr, size_t& sizeof_size ) const; 00045 00046 // Sets file size-of addresses and sizes. 00047 void setSizes( size_t sizeof_addr = 4, size_t sizeof_size = 4 ) const; 00048 00049 #ifdef H5_WANT_H5_V1_4_COMPAT 00050 // Retrieves the size of the symbol table B-tree 1/2 rank and the 00051 // symbol table leaf node 1/2 size. 00052 void getSymk( int& int_nodes_k, int& leaf_nodes_k ) const; 00053 00054 // Sets the size of parameters used to control the symbol table nodes. 00055 void setSymk( int int_nodes_k, int leaf_nodes_k ) const; 00056 #else /* H5_WANT_H5_V1_4_COMPAT */ 00057 // Retrieves the size of the symbol table B-tree 1/2 rank and the 00058 // symbol table leaf node 1/2 size. 00059 void getSymk( unsigned& int_nodes_k, unsigned& leaf_nodes_k ) const; 00060 00061 // Sets the size of parameters used to control the symbol table nodes. 00062 void setSymk( unsigned int_nodes_k, unsigned leaf_nodes_k ) const; 00063 #endif /* H5_WANT_H5_V1_4_COMPAT */ 00064 00065 // Returns the 1/2 rank of an indexed storage B-tree. 00066 unsigned getIstorek() const; 00067 00068 // Sets the size of parameter used to control the B-trees for 00069 // indexing chunked datasets. 00070 void setIstorek( unsigned ik ) const; 00071 00072 // Returns this class name 00073 virtual H5std_string fromClass () const { return("FileCreatPropList"); } 00074 00075 // Copy constructor: creates a copy of a FileCreatPropList object. 00076 FileCreatPropList(const FileCreatPropList& orig); 00077 00078 // Creates a copy of an existing file create property list 00079 // using the property list id. 00080 FileCreatPropList (const hid_t plist_id); 00081 00082 // Noop destructor 00083 virtual ~FileCreatPropList(); 00084 }; 00085 #ifndef H5_NO_NAMESPACE 00086 } 00087 #endif 00088 #endif