virtual void throwException(const H5std_string& func_name, const H5std_string& msg) const = 0;
 
// 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 COPYING file, which can be found at the root of the source code       *
 * distribution tree, or in https://support.hdfgroup.org/ftp/HDF5/releases.  *
 * If you do not have access to either file, you may request a copy from     *
 * help@hdfgroup.org.                                                        *
 * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * */
#ifndef __CommonFG_H
#define __CommonFG_H
namespace H5 {
// Class forwarding
class Group;
class H5File;
class ArrayType;
class VarLenType;
/*! \class CommonFG
    \brief \a CommonFG is an abstract base class of H5File and H5Group.
    It provides common operations of H5File and H5Group.
*/
class H5_DLLCPP CommonFG {
   public:
        // 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;