My Project 1.10.10
Loading...
Searching...
No Matches
H5CommonFG.h
1// C++ informative line for the emacs editor: -*- C++ -*-
2/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *
3 * Copyright by The HDF Group. *
4 * All rights reserved. *
5 * *
6 * This file is part of HDF5. The full HDF5 copyright notice, including *
7 * terms governing use, modification, and redistribution, is contained in *
8 * the COPYING file, which can be found at the root of the source code *
9 * distribution tree, or in https://www.hdfgroup.org/licenses. *
10 * If you do not have access to either file, you may request a copy from *
11 * help@hdfgroup.org. *
12 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
13
14#ifndef H5CommonFG_H
15#define H5CommonFG_H
16
17namespace H5 {
18
19// Class forwarding
20class Group;
21class H5File;
22class ArrayType;
23class VarLenType;
24
28/* Note: This class is being deprecated gradually. */
29class H5_DLLCPP CommonFG {
30 public:
31 // Opens a generic named datatype in this location.
32 DataType openDataType(const char *name) const;
33 DataType openDataType(const H5std_string &name) const;
34
35 // Opens a named array datatype in this location.
36 ArrayType openArrayType(const char *name) const;
37 ArrayType openArrayType(const H5std_string &name) const;
38
39 // Opens a named compound datatype in this location.
40 CompType openCompType(const char *name) const;
41 CompType openCompType(const H5std_string &name) const;
42
43 // Opens a named enumeration datatype in this location.
44 EnumType openEnumType(const char *name) const;
45 EnumType openEnumType(const H5std_string &name) const;
46
47 // Opens a named integer datatype in this location.
48 IntType openIntType(const char *name) const;
49 IntType openIntType(const H5std_string &name) const;
50
51 // Opens a named floating-point datatype in this location.
52 FloatType openFloatType(const char *name) const;
53 FloatType openFloatType(const H5std_string &name) const;
54
55 // Opens a named string datatype in this location.
56 StrType openStrType(const char *name) const;
57 StrType openStrType(const H5std_string &name) const;
58
59 // Opens a named variable length datatype in this location.
60 VarLenType openVarLenType(const char *name) const;
61 VarLenType openVarLenType(const H5std_string &name) const;
62
63#ifndef DOXYGEN_SHOULD_SKIP_THIS
66 virtual hid_t getLocId() const = 0;
67
69 virtual void throwException(const H5std_string &func_name, const H5std_string &msg) const = 0;
70
71 // Default constructor.
72 CommonFG();
73
74 // Noop destructor.
75 virtual ~CommonFG();
76
77 protected:
78 virtual void p_setId(const hid_t new_id) = 0;
79
80#endif // DOXYGEN_SHOULD_SKIP_THIS
81
82}; // end of CommonFG
83} // namespace H5
84
85#endif // H5CommonFG_H
86
87/***************************************************************************
88 Design Note
89 ===========
90
91September 2017:
92
93 This class used to be base class of H5File as well, until the
94 restructure that moved H5File to be subclass of H5Group.
95*/
Class ArrayType inherits from DataType and provides wrappers for the HDF5's Array Datatypes.
Definition H5ArrayType.h:24
CommonFG is an abstract base class of H5Group.
Definition H5CommonFG.h:29
CompType is a derivative of a DataType and operates on HDF5 compound datatypes.
Definition H5CompType.h:24
Class DataType provides generic operations on HDF5 datatypes.
Definition H5DataType.h:27
EnumType is a derivative of a DataType and operates on HDF5 enum datatypes.
Definition H5EnumType.h:24
FloatType is a derivative of a DataType and operates on HDF5 floating point datatype.
Definition H5FloatType.h:24
IntType is a derivative of a DataType and operates on HDF5 integer datatype.
Definition H5IntType.h:24
StrType is a derivative of a DataType and operates on HDF5 string datatype.
Definition H5StrType.h:24
VarLenType is a derivative of a DataType and operates on HDF5 Variable-length Datatypes.
Definition H5VarLenType.h:24
Definition H5AbstractDs.cpp:33


The HDF Group Help Desk:
  Copyright by The HDF Group