HDF5 C++ API Reference Manual

- Main Page
- Namespaces
- Classes
- Files
- Examples

- File List
- File Members

# H5FloatType.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 _H5FloatType_H
    00018 #define _H5FloatType_H
    00019
    00020 #ifndef H5_NO_NAMESPACE
    00021 namespace H5 {
    00022 #endif
    00023
    00024 class H5_DLLCPP FloatType : public AtomType {
    00025    public:
    00026         // Creates a floating-point type using a predefined type
    00027         FloatType( const PredType& pred_type );
    00028
    00029         // Gets the floating-point datatype of the specified dataset
    00030         FloatType( const DataSet& dataset );
    00031
    00032         // Retrieves the exponent bias of a floating-point type.
    00033         size_t getEbias() const;
    00034
    00035         // Sets the exponent bias of a floating-point type.
    00036         void setEbias( size_t ebias ) const;
    00037
    00038         // Retrieves floating point datatype bit field information.
    00039         void getFields( size_t& spos, size_t& epos, size_t& esize, size_t& mpos, size_t& msize ) const;
    00040
    00041         // Sets locations and sizes of floating point bit fields.
    00042         void setFields( size_t spos, size_t epos, size_t esize, size_t mpos, size_t msize ) const;
    00043
    00044         // Retrieves the internal padding type for unused bits in floating-point datatypes.
    00045         H5T_pad_t getInpad( H5std_string& pad_string ) const;
    00046
    00047         // Fills unused internal floating point bits.
    00048         void setInpad( H5T_pad_t inpad ) const;
    00049
    00050         // Retrieves mantissa normalization of a floating-point datatype.
    00051         H5T_norm_t getNorm( H5std_string& norm_string ) const;
    00052
    00053         // Sets the mantissa normalization of a floating-point datatype.
    00054         void setNorm( H5T_norm_t norm ) const;
    00055
    00056         // Returns this class name
    00057         virtual H5std_string fromClass () const { return("FloatType"); }
    00058
    00059         // Default constructor
    00060         FloatType();
    00061
    00062         // Creates a floating-point datatype using an existing id
    00063         FloatType( const hid_t existing_id );
    00064
    00065         // Copy constructor: makes a copy of the original FloatType object.
    00066         FloatType( const FloatType& original );
    00067
    00068         // Noop destructor.
    00069         virtual ~FloatType();
    00070 };
    00071 #ifndef H5_NO_NAMESPACE
    00072 }
    00073 #endif
    00074 #endif