HDF5 C++ API Reference Manual

- Main Page
- Namespaces
- Classes
- Files
- Examples

- File List
- File Members

# H5DcreatProp.h

Go to the documentation of this file.

    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 _H5DSCreatPropList_H
    00018 #define _H5DSCreatPropList_H
    00019
    00020 #ifndef H5_NO_NAMESPACE
    00021 namespace H5 {
    00022 #endif
    00023
    00024 class H5_DLLCPP DSetCreatPropList : public PropList {
    00025    public:
    00026         // Default dataset creation property list.
    00027         static const DSetCreatPropList DEFAULT;
    00028
    00029         // Creates a dataset creation property list.
    00030         DSetCreatPropList();
    00031
    00032         // Queries whether all the filters set in this property list are
    00033         // available currently.
    00034         bool allFiltersAvail() const;
    00035
    00036         // Get space allocation time for this property.
    00037         H5D_alloc_time_t getAllocTime() const;
    00038
    00039         // Set space allocation time for dataset during creation.
    00040         void setAllocTime(H5D_alloc_time_t alloc_time) const;
    00041
    00042         // Retrieves the size of the chunks used to store a chunked layout dataset.
    00043         int getChunk( int max_ndims, hsize_t* dim ) const;
    00044
    00045         // Sets the size of the chunks used to store a chunked layout dataset.
    00046         void setChunk( int ndims, const hsize_t* dim ) const;
    00047
    00048         // Returns information about an external file.
    00049         void getExternal( unsigned idx, size_t name_size, char* name, off_t& offset, hsize_t& size ) const;
    00050
    00051         // Returns the number of external files for a dataset.
    00052         int getExternalCount() const;
    00053
    00054         // Gets fill value writing time.
    00055         H5D_fill_time_t getFillTime() const;
    00056
    00057         // Sets fill value writing time for dataset.
    00058         void setFillTime(H5D_fill_time_t fill_time) const;
    00059
    00060         // Retrieves a dataset fill value.
    00061         void getFillValue( const DataType& fvalue_type, void* value ) const;
    00062
    00063         // Sets a dataset fill value.
    00064         void setFillValue( const DataType& fvalue_type, const void* value ) const;
    00065
    00066         // Returns information about a filter in a pipeline.
    00067         H5Z_filter_t getFilter(int filter_number, unsigned int& flags, size_t& cd_nelmts, unsigned int* cd_values, size_t namelen, char name[]) const;
    00068
    00069         // Returns information about a filter in a pipeline given the filter id.
    00070         void getFilterById(H5Z_filter_t filter_id, unsigned int &flags, size_t &cd_nelmts, unsigned int* cd_values, size_t namelen, char name[]) const;
    00071
    00072         // Gets the layout of the raw data storage of the data that uses this
    00073         // property list.
    00074         H5D_layout_t getLayout() const;
    00075
    00076         // Sets the type of storage used to store the raw data for the
    00077         // dataset that uses this property list.
    00078         void setLayout(H5D_layout_t layout) const;
    00079
    00080         // Returns the number of filters in the pipeline.
    00081         int getNfilters() const;
    00082
    00083         // Checks if fill value has been defined for this property.
    00084         H5D_fill_value_t isFillValueDefined() const;
    00085
    00086         // Modifies the specified filter.
    00087         void modifyFilter( H5Z_filter_t filter_id, unsigned int flags, size_t cd_nelmts, const unsigned int cd_values[] ) const;
    00088
    00089         // Remove one or all filters from the filter pipeline.
    00090         void removeFilter( H5Z_filter_t filter_id) const;
    00091
    00092         // Sets compression method and compression level.
    00093         void setDeflate( int level ) const;
    00094
    00095         // Adds an external file to the list of external files.
    00096         void setExternal( const char* name, off_t offset, hsize_t size ) const;
    00097
    00098         // Adds a filter to the filter pipeline.
    00099         void setFilter( H5Z_filter_t filter, unsigned int flags = 0, size_t cd_nelmts = 0, const unsigned int cd_values[] = NULL) const;
    00100
    00101         // Sets Fletcher32 checksum of EDC for this property list.
    00102         void setFletcher32() const;
    00103
    00104         // Sets method of the shuffle filter.
    00105         void setShuffle() const;
    00106
    00107         // Sets SZIP compression method.
    00108         void setSzip(unsigned int options_mask, unsigned int pixels_per_block) const;
    00109
    00110         // Returns this class name
    00111         virtual H5std_string fromClass () const { return("DSetCreatPropList"); }
    00112
    00113         // Copy constructor: creates a copy of a DSetCreatPropList object.
    00114         DSetCreatPropList(const DSetCreatPropList& orig);
    00115
    00116         // Creates a copy of an existing dataset creation property list
    00117         // using the property list id.
    00118         DSetCreatPropList(const hid_t plist_id);
    00119
    00120         // Noop destructor.
    00121         virtual ~DSetCreatPropList();
    00122 };
    00123 #ifndef H5_NO_NAMESPACE
    00124 }
    00125 #endif
    00126 #endif