[H5r-commits] r79 - / windows/i386/include windows/x64/include
noreply at r-forge.r-project.org
noreply at r-forge.r-project.org
Thu Mar 29 09:12:14 CEST 2012
Author: mjhsieh
Date: 2012-03-29 09:12:14 +0200 (Thu, 29 Mar 2012)
New Revision: 79
Added:
cleanup
windows/i386/include/H5AbstractDs.h
windows/i386/include/H5ArrayType.h
windows/i386/include/H5AtomType.h
windows/i386/include/H5Attribute.h
windows/i386/include/H5Classes.h
windows/i386/include/H5CommonFG.h
windows/i386/include/H5CompType.h
windows/i386/include/H5Cpp.h
windows/i386/include/H5CppDoc.h
windows/i386/include/H5DataSet.h
windows/i386/include/H5DataSpace.h
windows/i386/include/H5DataType.h
windows/i386/include/H5DcreatProp.h
windows/i386/include/H5DxferProp.h
windows/i386/include/H5EnumType.h
windows/i386/include/H5Exception.h
windows/i386/include/H5FaccProp.h
windows/i386/include/H5FcreatProp.h
windows/i386/include/H5File.h
windows/i386/include/H5FloatType.h
windows/i386/include/H5Group.h
windows/i386/include/H5IdComponent.h
windows/i386/include/H5Include.h
windows/i386/include/H5IntType.h
windows/i386/include/H5Library.h
windows/i386/include/H5Object.h
windows/i386/include/H5PacketTable.h
windows/i386/include/H5PredType.h
windows/i386/include/H5PropList.h
windows/i386/include/H5StrType.h
windows/i386/include/H5VarLenType.h
windows/i386/include/H5f90i.h
windows/i386/include/H5f90i_gen.h
windows/x64/include/H5AbstractDs.h
windows/x64/include/H5ArrayType.h
windows/x64/include/H5AtomType.h
windows/x64/include/H5Attribute.h
windows/x64/include/H5Classes.h
windows/x64/include/H5CommonFG.h
windows/x64/include/H5CompType.h
windows/x64/include/H5Cpp.h
windows/x64/include/H5CppDoc.h
windows/x64/include/H5DataSet.h
windows/x64/include/H5DataSpace.h
windows/x64/include/H5DataType.h
windows/x64/include/H5DcreatProp.h
windows/x64/include/H5DxferProp.h
windows/x64/include/H5EnumType.h
windows/x64/include/H5Exception.h
windows/x64/include/H5FaccProp.h
windows/x64/include/H5FcreatProp.h
windows/x64/include/H5File.h
windows/x64/include/H5FloatType.h
windows/x64/include/H5Group.h
windows/x64/include/H5IdComponent.h
windows/x64/include/H5Include.h
windows/x64/include/H5IntType.h
windows/x64/include/H5Library.h
windows/x64/include/H5Object.h
windows/x64/include/H5PacketTable.h
windows/x64/include/H5PredType.h
windows/x64/include/H5PropList.h
windows/x64/include/H5StrType.h
windows/x64/include/H5VarLenType.h
windows/x64/include/H5f90i.h
windows/x64/include/H5f90i_gen.h
Modified:
windows/i386/include/H5FDlog.h
windows/i386/include/H5Fpublic.h
windows/i386/include/H5Ppublic.h
windows/i386/include/H5api_adpt.h
windows/i386/include/H5pubconf.h
windows/i386/include/H5public.h
windows/x64/include/H5FDlog.h
windows/x64/include/H5Fpublic.h
windows/x64/include/H5Ppublic.h
windows/x64/include/H5api_adpt.h
windows/x64/include/H5pubconf.h
windows/x64/include/H5public.h
Log:
The new windows packages are built with Rtools + hdf5-1.8.8/szlib/libz
static libraries on i386 and x86_64 platform, tested with:
"R CMD check h5r" as well as "make -C h5r/test all"
on both architecture.
Beware that hdf5-1.8.8 32bit windows version mtime() might not work.
Added: cleanup
===================================================================
--- cleanup (rev 0)
+++ cleanup 2012-03-29 07:12:14 UTC (rev 79)
@@ -0,0 +1,3 @@
+#!/bin/sh
+rm -f src/h5_wrap.o src/h5_debug.o \
+ src/h5r.dll src/h5r.so
Property changes on: cleanup
___________________________________________________________________
Added: svn:executable
+ *
Added: windows/i386/include/H5AbstractDs.h
===================================================================
--- windows/i386/include/H5AbstractDs.h (rev 0)
+++ windows/i386/include/H5AbstractDs.h 2012-03-29 07:12:14 UTC (rev 79)
@@ -0,0 +1,91 @@
+// C++ informative line for the emacs editor: -*- C++ -*-
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Copyright by The HDF Group. *
+ * Copyright by the Board of Trustees of the University of Illinois. *
+ * All rights reserved. *
+ * *
+ * This file is part of HDF5. The full HDF5 copyright notice, including *
+ * terms governing use, modification, and redistribution, is contained in *
+ * the files COPYING and Copyright.html. COPYING can be found at the root *
+ * of the source code distribution tree; Copyright.html can be found at the *
+ * root level of an installed copy of the electronic HDF5 document set and *
+ * is linked from the top-level documents page. It can also be found at *
+ * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+ * access to either file, you may request a copy from help at hdfgroup.org. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+
+// Class AbstractDs is an abstract base class, from which Attribute and
+// DataSet inherit. It provides the services that are common to both
+// Attribute and DataSet. It also inherits from H5Object and passes down
+// the services that H5Object provides.
+
+#ifndef _AbstractDs_H
+#define _AbstractDs_H
+
+#ifndef H5_NO_NAMESPACE
+namespace H5 {
+#endif
+
+class ArrayType;
+class CompType;
+class EnumType;
+class FloatType;
+class IntType;
+class StrType;
+class VarLenType;
+class H5_DLLCPP AbstractDs {
+ public:
+ // Gets a copy the datatype of that this abstract dataset uses.
+ // Note that this datatype is a generic one and can only be accessed
+ // via generic member functions, i.e., member functions belong
+ // to DataType. To get specific datatype, i.e. EnumType, FloatType,
+ // etc..., use the specific functions, that follow, instead.
+ DataType getDataType() const;
+
+ // Gets a copy of the specific datatype of this abstract dataset.
+ ArrayType getArrayType() const;
+ CompType getCompType() const;
+ EnumType getEnumType() const;
+ IntType getIntType() const;
+ FloatType getFloatType() const;
+ StrType getStrType() const;
+ VarLenType getVarLenType() const;
+
+ // Gets the size in memory of this abstract dataset.
+ virtual size_t getInMemDataSize() const = 0;
+
+ // Gets the dataspace of this abstract dataset - pure virtual.
+ virtual DataSpace getSpace() const = 0;
+
+ // Gets the class of the datatype that is used by this abstract
+ // dataset.
+ H5T_class_t getTypeClass() const;
+
+ // Returns the amount of storage size required for this abstract
+ // dataset - pure virtual.
+ virtual hsize_t getStorageSize() const = 0;
+
+ // Returns this class name
+ virtual H5std_string fromClass() const = 0;
+
+ // Copy constructor
+ AbstractDs( const AbstractDs& original );
+
+ // Destructor
+ virtual ~AbstractDs();
+
+ protected:
+ // Default constructor
+ AbstractDs();
+
+ // Constructor that takes an attribute id or a dataset id.
+ AbstractDs( const hid_t ds_id );
+
+ private:
+ // This member function is implemented by DataSet and Attribute.
+ virtual hid_t p_get_type() const = 0;
+};
+#ifndef H5_NO_NAMESPACE
+}
+#endif
+#endif // _AbstractDs_H
Added: windows/i386/include/H5ArrayType.h
===================================================================
--- windows/i386/include/H5ArrayType.h (rev 0)
+++ windows/i386/include/H5ArrayType.h 2012-03-29 07:12:14 UTC (rev 79)
@@ -0,0 +1,62 @@
+// C++ informative line for the emacs editor: -*- C++ -*-
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Copyright by The HDF Group. *
+ * Copyright by the Board of Trustees of the University of Illinois. *
+ * All rights reserved. *
+ * *
+ * This file is part of HDF5. The full HDF5 copyright notice, including *
+ * terms governing use, modification, and redistribution, is contained in *
+ * the files COPYING and Copyright.html. COPYING can be found at the root *
+ * of the source code distribution tree; Copyright.html can be found at the *
+ * root level of an installed copy of the electronic HDF5 document set and *
+ * is linked from the top-level documents page. It can also be found at *
+ * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+ * access to either file, you may request a copy from help at hdfgroup.org. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+
+// Class ArrayType inherits from DataType and provides wrappers for the
+// HDF5 C's Array Datatypes.
+
+#ifndef _H5ArrayType_H
+#define _H5ArrayType_H
+
+#ifndef H5_NO_NAMESPACE
+namespace H5 {
+#endif
+
+class H5_DLLCPP ArrayType : public DataType {
+ public:
+ // Constructor that creates a new array data type based on the
+ // specified base type.
+ ArrayType(const DataType& base_type, int ndims, const hsize_t* dims);
+
+ // Returns the number of dimensions of this array datatype.
+ int getArrayNDims();
+
+ // Returns the sizes of dimensions of this array datatype.
+ int getArrayDims(hsize_t* dims);
+
+ ///\brief Returns this class name
+ virtual H5std_string fromClass () const { return("ArrayType"); }
+
+ // Copy constructor: makes copy of the original object.
+ ArrayType( const ArrayType& original );
+
+ // Constructor that takes an existing id
+ ArrayType( const hid_t existing_id );
+
+ // Noop destructor
+ virtual ~ArrayType();
+
+ protected:
+ // Default constructor
+ ArrayType();
+
+ private:
+ int rank; // Rank of the array
+ hsize_t* dimensions; // Sizes of the array dimensions
+};
+#ifndef H5_NO_NAMESPACE
+}
+#endif
+#endif
Added: windows/i386/include/H5AtomType.h
===================================================================
--- windows/i386/include/H5AtomType.h (rev 0)
+++ windows/i386/include/H5AtomType.h 2012-03-29 07:12:14 UTC (rev 79)
@@ -0,0 +1,81 @@
+// C++ informative line for the emacs editor: -*- C++ -*-
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Copyright by The HDF Group. *
+ * Copyright by the Board of Trustees of the University of Illinois. *
+ * All rights reserved. *
+ * *
+ * This file is part of HDF5. The full HDF5 copyright notice, including *
+ * terms governing use, modification, and redistribution, is contained in *
+ * the files COPYING and Copyright.html. COPYING can be found at the root *
+ * of the source code distribution tree; Copyright.html can be found at the *
+ * root level of an installed copy of the electronic HDF5 document set and *
+ * is linked from the top-level documents page. It can also be found at *
+ * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+ * access to either file, you may request a copy from help at hdfgroup.org. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+
+// Class AtomType is a base class, from which IntType, FloatType, StrType,
+// and PredType inherit. It provides the services that are common to these
+// subclasses. It also inherits from DataType and passes down the
+// services that are common to all the datatypes.
+
+#ifndef _H5AtomType_H
+#define _H5AtomType_H
+
+#ifndef H5_NO_NAMESPACE
+namespace H5 {
+#endif
+
+class H5_DLLCPP AtomType : public DataType {
+ public:
+ // Returns the byte order of an atomic datatype.
+ H5T_order_t getOrder() const;
+ H5T_order_t getOrder( H5std_string& order_string ) const;
+
+ // Sets the byte ordering of an atomic datatype.
+ void setOrder( H5T_order_t order ) const;
+
+ // Retrieves the bit offset of the first significant bit.
+ // 12/05/00 - changed return type to int from size_t - C API
+ int getOffset() const;
+
+ // Sets the bit offset of the first significant bit.
+ void setOffset( size_t offset ) const;
+
+ // Retrieves the padding type of the least and most-significant bit padding.
+ void getPad( H5T_pad_t& lsb, H5T_pad_t& msb ) const;
+
+ // Sets the least and most-significant bits padding types
+ void setPad( H5T_pad_t lsb, H5T_pad_t msb ) const;
+
+ // Returns the precision of an atomic datatype.
+ size_t getPrecision() const;
+
+ // Sets the precision of an atomic datatype.
+ void setPrecision( size_t precision ) const;
+
+ // Sets the total size for an atomic datatype.
+ void setSize( size_t size ) const;
+
+ ///\brief Returns this class name
+ virtual H5std_string fromClass () const { return("AtomType"); }
+
+ // Copy constructor - makes copy of the original object
+ AtomType( const AtomType& original );
+
+ // Noop destructor
+ virtual ~AtomType();
+
+ protected:
+#ifndef DOXYGEN_SHOULD_SKIP_THIS
+ // Default constructor
+ AtomType();
+
+ // Constructor that takes an existing id
+ AtomType( const hid_t existing_id );
+#endif // DOXYGEN_SHOULD_SKIP_THIS
+};
+#ifndef H5_NO_NAMESPACE
+}
+#endif
+#endif
Added: windows/i386/include/H5Attribute.h
===================================================================
--- windows/i386/include/H5Attribute.h (rev 0)
+++ windows/i386/include/H5Attribute.h 2012-03-29 07:12:14 UTC (rev 79)
@@ -0,0 +1,98 @@
+// C++ informative line for the emacs editor: -*- C++ -*-
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Copyright by The HDF Group. *
+ * Copyright by the Board of Trustees of the University of Illinois. *
+ * All rights reserved. *
+ * *
+ * This file is part of HDF5. The full HDF5 copyright notice, including *
+ * terms governing use, modification, and redistribution, is contained in *
+ * the files COPYING and Copyright.html. COPYING can be found at the root *
+ * of the source code distribution tree; Copyright.html can be found at the *
+ * root level of an installed copy of the electronic HDF5 document set and *
+ * is linked from the top-level documents page. It can also be found at *
+ * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+ * access to either file, you may request a copy from help at hdfgroup.org. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+
+#ifndef _H5Attribute_H
+#define _H5Attribute_H
+
+#ifndef H5_NO_NAMESPACE
+namespace H5 {
+#endif
+
+class H5_DLLCPP Attribute : public AbstractDs, public IdComponent {
+ public:
+ // Closes this attribute.
+ virtual void close();
+
+ // Gets the name of the file, in which this attribute belongs.
+ H5std_string getFileName() const;
+
+ // Gets the name of this attribute.
+ ssize_t getName( size_t buf_size, H5std_string& attr_name ) const;
+ H5std_string getName( size_t buf_size ) const; // returns name, not its length
+ H5std_string getName() const; // returns name, no argument
+
+ // Gets a copy of the dataspace for this attribute.
+ virtual DataSpace getSpace() const;
+
+ // Returns the amount of storage size required for this attribute.
+ virtual hsize_t getStorageSize() const;
+
+ // Returns the in memory size of this attribute's data.
+ virtual size_t getInMemDataSize() const;
+
+ // Reads data from this attribute.
+ void read( const DataType& mem_type, void *buf ) const;
+ void read( const DataType& mem_type, H5std_string& strg ) const;
+
+ // Writes data to this attribute.
+ void write(const DataType& mem_type, const void *buf ) const;
+ void write(const DataType& mem_type, const H5std_string& strg ) const;
+
+ ///\brief Returns this class name
+ virtual H5std_string fromClass () const { return("Attribute"); }
+
+ // Creates a copy of an existing attribute using the attribute id
+ Attribute( const hid_t attr_id );
+
+ // Copy constructor: makes a copy of an existing Attribute object.
+ Attribute( const Attribute& original );
+
+ // Default constructor
+ Attribute();
+
+ // Gets the attribute id.
+ virtual hid_t getId() const;
+
+ // Destructor: properly terminates access to this attribute.
+ virtual ~Attribute();
+
+ protected:
+ // Sets the attribute id.
+ virtual void p_setId(const hid_t new_id);
+
+ private:
+ hid_t id; // HDF5 attribute id
+
+ // This function contains the common code that is used by
+ // getTypeClass and various API functions getXxxType
+ // defined in AbstractDs for generic datatype and specific
+ // sub-types
+ virtual hid_t p_get_type() const;
+
+ // Reads variable or fixed len strings from this attribute.
+ void p_read_variable_len(const DataType& mem_type, H5std_string& strg) const;
+ void p_read_fixed_len(const DataType& mem_type, H5std_string& strg) const;
+
+ // do not inherit H5Object::iterateAttrs
+ int iterateAttrs() { return 0; }
+
+ // do not inherit H5Object::renameAttr
+ void renameAttr() {}
+};
+#ifndef H5_NO_NAMESPACE
+}
+#endif
+#endif
Added: windows/i386/include/H5Classes.h
===================================================================
--- windows/i386/include/H5Classes.h (rev 0)
+++ windows/i386/include/H5Classes.h 2012-03-29 07:12:14 UTC (rev 79)
@@ -0,0 +1,51 @@
+// C++ informative line for the emacs editor: -*- C++ -*-
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Copyright by The HDF Group. *
+ * Copyright by the Board of Trustees of the University of Illinois. *
+ * All rights reserved. *
+ * *
+ * This file is part of HDF5. The full HDF5 copyright notice, including *
+ * terms governing use, modification, and redistribution, is contained in *
+ * the files COPYING and Copyright.html. COPYING can be found at the root *
+ * of the source code distribution tree; Copyright.html can be found at the *
+ * root level of an installed copy of the electronic HDF5 document set and *
+ * is linked from the top-level documents page. It can also be found at *
+ * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+ * access to either file, you may request a copy from help at hdfgroup.org. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+
+#ifndef _H5Classes_H
+#define _H5Classes_H
+
+#ifndef H5_NO_NAMESPACE
+namespace H5 {
+#endif
+ class Exception;
+ class IdComponent;
+ class H5Object;
+ class PropList;
+ class FileCreatPropList;
+ class FileAccPropList;
+ class DSetCreatPropList;
+ class DSetMemXferPropList;
+ class DTypePropList;
+ class DataType;
+ class DataSpace;
+ class AtomType;
+ class PredType;
+ class EnumType;
+ class IntType;
+ class FloatType;
+ class StrType;
+ class CompType;
+ //class RefType;
+ class AbstractDs;
+ class DataSet;
+ class Group;
+ class H5File;
+ class Attribute;
+ class H5Library;
+#ifndef H5_NO_NAMESPACE
+}
+#endif
+#endif
Added: windows/i386/include/H5CommonFG.h
===================================================================
--- windows/i386/include/H5CommonFG.h (rev 0)
+++ windows/i386/include/H5CommonFG.h 2012-03-29 07:12:14 UTC (rev 79)
@@ -0,0 +1,172 @@
+// C++ informative line for the emacs editor: -*- C++ -*-
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Copyright by The HDF Group. *
+ * Copyright by the Board of Trustees of the University of Illinois. *
+ * All rights reserved. *
+ * *
+ * This file is part of HDF5. The full HDF5 copyright notice, including *
+ * terms governing use, modification, and redistribution, is contained in *
+ * the files COPYING and Copyright.html. COPYING can be found at the root *
+ * of the source code distribution tree; Copyright.html can be found at the *
+ * root level of an installed copy of the electronic HDF5 document set and *
+ * is linked from the top-level documents page. It can also be found at *
+ * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+ * access to either file, you may request a copy from help at hdfgroup.org. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+
+// CommonFG is a protocol class. Its existence is simply to provide the
+// common services that are provided by H5File and Group. The file or
+// group in the context of this class is referred to as 'location'.
+
+#ifndef _CommonFG_H
+#define _CommonFG_H
+
+#ifndef H5_NO_NAMESPACE
+namespace H5 {
+#endif
+
+class Group;
+class H5File;
+class ArrayType;
+class VarLenType;
+class H5_DLLCPP CommonFG {
+ public:
+ // Creates a new group at this location which can be a file
+ // or another group.
+ Group createGroup(const char* name, size_t size_hint = 0) const;
+ Group createGroup(const H5std_string& name, size_t size_hint = 0) const;
+
+ // Opens an existing group in a location which can be a file
+ // or another group.
+ Group openGroup(const char* name) const;
+ Group openGroup(const H5std_string& name) const;
+
+ // Creates a new dataset at this location.
+ DataSet createDataSet(const char* name, const DataType& data_type, const DataSpace& data_space, const DSetCreatPropList& create_plist = DSetCreatPropList::DEFAULT) const;
+ DataSet createDataSet(const H5std_string& name, const DataType& data_type, const DataSpace& data_space, const DSetCreatPropList& create_plist = DSetCreatPropList::DEFAULT) const;
+
+ // Opens an existing dataset at this location.
+ DataSet openDataSet(const char* name) const;
+ DataSet openDataSet(const H5std_string& name) const;
+
+ // Retrieves comment for the HDF5 object specified by its name.
+ H5std_string getComment(const char* name, size_t bufsize=256) const;
+ H5std_string getComment(const H5std_string& name, size_t bufsize=256) const;
+
+ // Removes the comment for the HDF5 object specified by its name.
+ void removeComment(const char* name) const;
+ void removeComment(const H5std_string& name) const;
+
+ // Sets the comment for an HDF5 object specified by its name.
+ void setComment(const char* name, const char* comment) const;
+ void setComment(const H5std_string& name, const H5std_string& comment) const;
+
+ // Returns the value of a symbolic link.
+ H5std_string getLinkval(const char* link_name, size_t size=0) const;
+ H5std_string getLinkval(const H5std_string& link_name, size_t size=0) const;
+
+ // Returns the number of objects in this group.
+ hsize_t getNumObjs() const;
+
+ // Retrieves the name of an object in this group, given the
+ // object's index.
+ H5std_string getObjnameByIdx(hsize_t idx) const;
+ ssize_t getObjnameByIdx(hsize_t idx, char* name, size_t size) const;
+ ssize_t getObjnameByIdx(hsize_t idx, H5std_string& name, size_t size) const;
+
+#ifndef H5_NO_DEPRECATED_SYMBOLS
+ // Returns the type of an object in this group, given the
+ // object's index.
+ H5G_obj_t getObjTypeByIdx(hsize_t idx) const;
+ H5G_obj_t getObjTypeByIdx(hsize_t idx, char* type_name) const;
+ H5G_obj_t getObjTypeByIdx(hsize_t idx, H5std_string& type_name) const;
+
+ // Returns information about an HDF5 object, given by its name,
+ // at this location.
+ void getObjinfo(const char* name, hbool_t follow_link, H5G_stat_t& statbuf) const;
+ void getObjinfo(const H5std_string& name, hbool_t follow_link, H5G_stat_t& statbuf) const;
+ void getObjinfo(const char* name, H5G_stat_t& statbuf) const;
+ void getObjinfo(const H5std_string& name, H5G_stat_t& statbuf) const;
+
+ // Iterates over the elements of this group - not implemented in
+ // C++ style yet.
+ int iterateElems(const char* name, int *idx, H5G_iterate_t op, void *op_data);
+ int iterateElems(const H5std_string& name, int *idx, H5G_iterate_t op, void *op_data);
+#endif /* H5_NO_DEPRECATED_SYMBOLS */
+
+ // Creates a link of the specified type from new_name to current_name;
+ // both names are interpreted relative to the specified location id.
+ void link(H5L_type_t link_type, const char* curr_name, const char* new_name) const;
+ void link(H5L_type_t link_type, const H5std_string& curr_name, const H5std_string& new_name) const;
+
+ // Removes the specified name at this location.
+ void unlink(const char* name) const;
+ void unlink(const H5std_string& name) const;
+
+ // Mounts the file 'child' onto this location.
+ void mount(const char* name, H5File& child, PropList& plist) const;
+ void mount(const H5std_string& name, H5File& child, PropList& plist) const;
+
+ // Unmounts the file named 'name' from this parent location.
+ void unmount(const char* name) const;
+ void unmount(const H5std_string& name) const;
+
+ // Renames an object at this location.
+ void move(const char* src, const char* dst) const;
+ void move(const H5std_string& src, const H5std_string& dst) const;
+
+ // Opens a generic named datatype in this location.
+ DataType openDataType(const char* name) const;
+ DataType openDataType(const H5std_string& name) const;
+
+ // Opens a named array datatype in this location.
+ ArrayType openArrayType(const char* name) const;
+ ArrayType openArrayType(const H5std_string& name) const;
+
+ // Opens a named compound datatype in this location.
+ CompType openCompType(const char* name) const;
+ CompType openCompType(const H5std_string& name) const;
+
+ // Opens a named enumeration datatype in this location.
+ EnumType openEnumType(const char* name) const;
+ EnumType openEnumType(const H5std_string& name) const;
+
+ // Opens a named integer datatype in this location.
+ IntType openIntType(const char* name) const;
+ IntType openIntType(const H5std_string& name) const;
+
+ // Opens a named floating-point datatype in this location.
+ FloatType openFloatType(const char* name) const;
+ FloatType openFloatType(const H5std_string& name) const;
+
+ // Opens a named string datatype in this location.
+ StrType openStrType(const char* name) const;
+ StrType openStrType(const H5std_string& name) const;
+
+ // Opens a named variable length datatype in this location.
+ VarLenType openVarLenType(const char* name) const;
+ VarLenType openVarLenType(const H5std_string& name) const;
+
+#ifndef DOXYGEN_SHOULD_SKIP_THIS
+ /// For subclasses, H5File and Group, to return the correct
+ /// object id, i.e. file or group id.
+ virtual hid_t getLocId() const = 0;
+
+#endif // DOXYGEN_SHOULD_SKIP_THIS
+
+ /// For subclasses, H5File and Group, to throw appropriate exception.
+ virtual void throwException(const H5std_string& func_name, const H5std_string& msg) const = 0;
+
+ // Default constructor.
+ CommonFG();
+
+ // Noop destructor.
+ virtual ~CommonFG();
+
+}; // end of CommonFG declaration
+
+#ifndef H5_NO_NAMESPACE
+}
+#endif
+#endif
+
Added: windows/i386/include/H5CompType.h
===================================================================
--- windows/i386/include/H5CompType.h (rev 0)
+++ windows/i386/include/H5CompType.h 2012-03-29 07:12:14 UTC (rev 79)
@@ -0,0 +1,114 @@
+// C++ informative line for the emacs editor: -*- C++ -*-
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Copyright by The HDF Group. *
+ * Copyright by the Board of Trustees of the University of Illinois. *
+ * All rights reserved. *
+ * *
+ * This file is part of HDF5. The full HDF5 copyright notice, including *
+ * terms governing use, modification, and redistribution, is contained in *
+ * the files COPYING and Copyright.html. COPYING can be found at the root *
+ * of the source code distribution tree; Copyright.html can be found at the *
+ * root level of an installed copy of the electronic HDF5 document set and *
+ * is linked from the top-level documents page. It can also be found at *
+ * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+ * access to either file, you may request a copy from help at hdfgroup.org. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+
+// Class CompType inherits from DataType and provides accesses to a compound
+// datatype.
+
+#ifndef _H5CompType_H
+#define _H5CompType_H
+
+#ifndef H5_NO_NAMESPACE
+namespace H5 {
+#endif
+
+class H5_DLLCPP CompType : public DataType {
+ public:
+ // Creates a new compound datatype, given the type's size
+ CompType( size_t size ); // H5Tcreate
+
+ // Gets the compound datatype of the specified dataset
+ CompType( const DataSet& dataset ); // H5Dget_type
+
+ // Returns the type class of the specified member of this compound
+ // datatype. It provides to the user a way of knowing what type
+ // to create another datatype of the same class
+ H5T_class_t getMemberClass( unsigned member_num ) const;
+
+ // Returns the index of a member in this compound data type.
+ int getMemberIndex(const char* name) const;
+ int getMemberIndex(const H5std_string& name) const;
+
+ // Returns the offset of a member of this compound datatype.
+ size_t getMemberOffset( unsigned memb_no ) const;
+
+ // Returns the name of a member of this compound datatype.
+ H5std_string getMemberName( unsigned member_num ) const;
+
+ // Returns the generic datatype of the specified member in
+ // this compound datatype.
+ DataType getMemberDataType( unsigned member_num ) const;
+
+ // Returns the array datatype of the specified member in
+ // this compound datatype.
+ ArrayType getMemberArrayType( unsigned member_num ) const;
+
+ // Returns the compound datatype of the specified member in
+ // this compound datatype.
+ CompType getMemberCompType( unsigned member_num ) const;
+
+ // Returns the enumeration datatype of the specified member in
+ // this compound datatype.
+ EnumType getMemberEnumType( unsigned member_num ) const;
+
+ // Returns the integer datatype of the specified member in
+ // this compound datatype.
+ IntType getMemberIntType( unsigned member_num ) const;
+
+ // Returns the floating-point datatype of the specified member in
+ // this compound datatype.
+ FloatType getMemberFloatType( unsigned member_num ) const;
+
+ // Returns the string datatype of the specified member in
+ // this compound datatype.
+ StrType getMemberStrType( unsigned member_num ) const;
+
+ // Returns the variable length datatype of the specified member in
+ // this compound datatype.
+ VarLenType getMemberVarLenType( unsigned member_num ) const;
+
+ // Returns the number of members in this compound datatype.
+ int getNmembers() const;
+
+ // Adds a new member to this compound datatype.
+ void insertMember( const H5std_string& name, size_t offset, const DataType& new_member ) const;
+
+ // Recursively removes padding from within this compound datatype.
+ void pack() const;
+
+ ///\brief Returns this class name
+ virtual H5std_string fromClass () const { return("CompType"); }
+
+ // Default constructor
+ CompType();
+
+ // Creates a compound datatype using an existing id
+ CompType( const hid_t existing_id );
+
+ // Copy constructor - makes a copy of original object
+ CompType( const CompType& original );
+
+ // Noop destructor.
+ virtual ~CompType();
+
+ private:
+ // Contains common code that is used by the member functions
+ // getMemberXxxType
+ hid_t p_get_member_type(unsigned member_num) const;
+};
+#ifndef H5_NO_NAMESPACE
+}
+#endif
+#endif
Added: windows/i386/include/H5Cpp.h
===================================================================
--- windows/i386/include/H5Cpp.h (rev 0)
+++ windows/i386/include/H5Cpp.h 2012-03-29 07:12:14 UTC (rev 79)
@@ -0,0 +1,58 @@
+// C++ informative line for the emacs editor: -*- C++ -*-
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Copyright by The HDF Group. *
+ * Copyright by the Board of Trustees of the University of Illinois. *
+ * All rights reserved. *
+ * *
+ * This file is part of HDF5. The full HDF5 copyright notice, including *
+ * terms governing use, modification, and redistribution, is contained in *
+ * the files COPYING and Copyright.html. COPYING can be found at the root *
+ * of the source code distribution tree; Copyright.html can be found at the *
+ * root level of an installed copy of the electronic HDF5 document set and *
+ * is linked from the top-level documents page. It can also be found at *
+ * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+ * access to either file, you may request a copy from help at hdfgroup.org. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+
+#ifndef _H5CPP_H
+#define _H5CPP_H
+
+#include "H5Include.h"
+#include "H5Exception.h"
+#include "H5IdComponent.h"
+#include "H5DataSpace.h"
+#include "H5PropList.h"
+#include "H5Object.h"
+#include "H5AbstractDs.h"
+#include "H5Attribute.h"
+#include "H5DcreatProp.h"
+#include "H5CommonFG.h"
+#include "H5DataType.h"
+#include "H5DxferProp.h"
+#include "H5FaccProp.h"
+#include "H5FcreatProp.h"
+#include "H5AtomType.h"
+#include "H5PredType.h"
+#include "H5EnumType.h"
+#include "H5IntType.h"
+#include "H5FloatType.h"
+#include "H5StrType.h"
+#include "H5CompType.h"
+#include "H5ArrayType.h"
+#include "H5VarLenType.h"
+#include "H5DataSet.h"
+#include "H5Group.h"
+#include "H5File.h"
+#include "H5Library.h"
+
+/* Some C++ compilers do not have offsetof macro; define to bypass the problem
+ - BMR- -EIP- 2007/08/01
+*/
+#ifndef H5_CXX_HAVE_OFFSETOF
+#ifdef HOFFSET
+ #undef HOFFSET
+#endif
+#define HOFFSET(TYPE, MEMBER) ((size_t) &((TYPE *)0)->MEMBER)
+#endif
+
+#endif
Added: windows/i386/include/H5CppDoc.h
===================================================================
--- windows/i386/include/H5CppDoc.h (rev 0)
+++ windows/i386/include/H5CppDoc.h 2012-03-29 07:12:14 UTC (rev 79)
@@ -0,0 +1,91 @@
+// C++ informative line for the emacs editor: -*- C++ -*-
+/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
+ * Copyright by The HDF Group. *
+ * Copyright by the Board of Trustees of the University of Illinois. *
+ * All rights reserved. *
+ * *
+ * This file is part of HDF5. The full HDF5 copyright notice, including *
+ * terms governing use, modification, and redistribution, is contained in *
+ * the files COPYING and Copyright.html. COPYING can be found at the root *
+ * of the source code distribution tree; Copyright.html can be found at the *
+ * root level of an installed copy of the electronic HDF5 document set and *
+ * is linked from the top-level documents page. It can also be found at *
+ * http://hdfgroup.org/HDF5/doc/Copyright.html. If you do not have *
+ * access to either file, you may request a copy from help at hdfgroup.org. *
+ * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
+
+#ifndef _H5CPPDOC_H
+#define _H5CPPDOC_H
+
+//-------------------------------------------------------------------------
+// The following section will be used to generate the 'Mainpage'
+// and the 'Examples' for the RM.
+// ------------------------------------------------------------------------
+
+/*! \mainpage notitle
+ *
+ * \section intro_sec Introduction
+ *
+ * The C++ API provides C++ wrappers for the HDF5 C library.
+ * It is assumed that the user has knowledge of the HDF5 file format
+ * and its components. If you are not familiar with HDF5 file format,
+ * and would like to find out more, please refer to the HDF5 documentation
+ * at http://www.hdfgroup.org/HDF5/doc/index.html
+ *
+ * Because the HDF5 library maps very well to
+ * the object oriented design approach, classes in the C++ API can
+ * closely represent the interfaces of the HDF5 APIs, as followed:
+ *
+ * \verbatim
+ HDF5 C APIs C++ Classes
+ ----------- -----------
+ Attribute Interface (H5A) Attribute
[TRUNCATED]
To get the complete diff run:
svnlook diff /svnroot/h5r -r 79
More information about the H5r-commits
mailing list