/**************************************************************************** * NCSA HDF * * Software Development Group * * National Center for Supercomputing Applications * * University of Illinois at Urbana-Champaign * * 605 E. Springfield, Champaign IL 61820 * * * * For conditions of distribution and use, see the accompanying * * hdf/COPYING file. * * * ****************************************************************************/ /* * This file contains macros & information for meta-objects */ #ifndef _H5Mprivate_H #define _H5Mprivate_H #include /*include Public Definitions */ /* Private headers needed by this file */ #include /* * A function table record for accessing interfaces which use the "meta" * interface to create/open/close objects. */ typedef struct meta_func_t { group_t type; /*object type this interface is for*/ hid_t (*create) (hid_t, group_t, const char *);/*object creation function*/ hid_t (*access) (hid_t); /*object access function*/ hid_t (*copy) (hid_t); /*object copy function*/ hid_t (*find_name) (hid_t, group_t, const char *);/*find first object*/ uint32 (*name_len) (hid_t); /*get length of object name*/ herr_t (*get_name) (hid_t, char *); /*get object name*/ herr_t (*set_name) (hid_t, const char *); /*set object name*/ hid_t (*search) (hid_t, group_t, const char *);/*search for list of objects*/ hid_t (*index) (hid_t, group_t, uint32);/*get the OID for the n'th object*/ herr_t (*flush) (hid_t); /*flush the object to disk*/ herr_t (*delete) (hid_t); /*delete an object from file*/ hid_t (*get_parent) (hid_t); /*get the parent object of an object*/ hid_t (*get_file) (hid_t); /*get the file ID of an object*/ herr_t (*close) (hid_t); /*end access to an object*/ } meta_func_t; /* Private functions, not part of the publicly documented API */ #endif