Last modified: 18 February 2014
Name: H5Pget_object_flush_cb
Signature:
  `herr_t H5Pget_object_flush_cb ( hid_t fapl_id, H5F_flush_cb_t *func, void **user_data )`
Purpose:
  Retrieves the object flush property values from the file access property list.
Description:
  `H5Pget_object_flush_cb` gets the user-defined callback function that is set in the file access property list `fapl_id` and stored in the parameter `func`. The callback is invoked whenever an object flush occurs in the file. This routine also obtains the user-defined input data that is passed along to the callback function in the parameter `user_data`.
Parameters:

  `hid_t fapl_id` | IN: Identifier for a file access property list.
  `H5F_flush_cb_t *func` | IN: The user-defined callback function.
  `void **user_data` | IN: The user-defined input data for the callback function.

Returns:
  Returns a non-negative value if successful; otherwise returns a negative value.
Example Usage:
  The example below illustrates the usage of this routine to obtain the object flush property values.

      hid_t fapl_id;
      unsigned counter;
      H5F_object_flush_t *ret_cb;
      unsigned *ret_counter;

      /* Create a copy of the file access property list */
      fapl_id = H5Pcreate(H5P_FILE_ACCESS);

      /* Set up the object flush property values */
      /* flush_cb: callback function to invoke when an object flushes (see below) */
      /* counter: user data to pass along to the callback function */
      H5Pset_object_flush_cb(fapl_id, flush_cb, &counter);

      /* Open the file */
      file_id = H5Fopen(FILE, H5F_ACC_RDWR, H5P_DEFAULT);

      /* Get the file access property list for the file */
      fapl = H5Fget_access_plist(file_id);

      /* Retrieve the object flush property values for the file */
      H5Pget_object_flush_cb(fapl, &ret_cb, &ret_counter);
      /* ret_cb will point to flush_cb() */
      /* ret_counter will point to counter */
      :
      :
      :

      /* The callback function for the object flush property */
      static herr_t
      flush_cb(hid_t obj_id, void *_udata)
      {
          unsigned *flush_ct = (unsigned*)_udata;
          ++(*flush_ct);
          return 0;
      }

Fortran Interface:
  None
See Also:

- H5Fstart_swmr_write
- H5DOappend
- H5Pset_append_flush
- H5Pget_append_flush
- H5Pset_object_flush_cb

- H5Odisable_mdc_flushes
- H5Oenable_mdc_flushes
- H5Oare_mdc_flushes_disabled
- H5Fdisable_mdc_flushes
- H5Fenable_mdc_flushes
- H5Fare_mdc_flushes_disabled
- H5Fget_mdc_flush_disabled_obj_ids

- H5Dflush
- H5Drefresh
- H5Gflush
- H5Grefresh
- H5Oflush
- H5Orefresh
- H5Tflush
- H5Trefresh

History:

  Release | Change
  1.10.0 | C function introduced with this release.