File: gpgme.info, Node: Progress Meter Callback, Next: Status Message Callback, Prev: Passphrase Callback, Up: Context Attributes 7.4.11 Progress Meter Callback ------------------------------ -- Data type: void (*gpgme_progress_cb_t)(void *HOOK, const char *WHAT, int TYPE, int CURRENT, int TOTAL) The ‘gpgme_progress_cb_t’ type is the type of functions usable as progress callback function. The arguments are specific to the crypto engine. More information about the progress information returned from the GnuPG engine can be found in the GnuPG source code in the file ‘doc/DETAILS’ in the section PROGRESS. -- Function: void gpgme_set_progress_cb (gpgme_ctx_t CTX, gpgme_progress_cb_t PROGFUNC, void *HOOK_VALUE) The function ‘gpgme_set_progress_cb’ sets the function that is used when progress information about a cryptographic operation is available. The function PROGFUNC needs to implemented by the user, and whenever it is called, it is called with its first argument being HOOK_VALUE. By default, no progress callback function is set. Setting a callback function allows an interactive program to display progress information about a long operation to the user. The user can disable the use of a progress callback function by calling ‘gpgme_set_progress_cb’ with PROGFUNC being ‘NULL’. -- Function: void gpgme_get_progress_cb (gpgme_ctx_t CTX, gpgme_progress_cb_t *PROGFUNC, void **HOOK_VALUE) The function ‘gpgme_get_progress_cb’ returns the function that is used to inform the user about the progress made in *PROGFUNC, and the first argument for this function in *HOOK_VALUE. If no progress callback is set, or CTX is not a valid pointer, ‘NULL’ is returned in both variables. PROGFUNC or HOOK_VALUE can be ‘NULL’. In this case, the corresponding value will not be returned.