/* IBM_PROLOG_BEGIN_TAG                                                   */
/* This is an automatically generated prolog.                             */
/*                                                                        */
/*                                                                        */
/*                                                                        */
/* Licensed Materials - Property of IBM                                   */
/*                                                                        */
/* (C) COPYRIGHT International Business Machines Corp. 1996,2019          */
/* All Rights Reserved                                                    */
/*                                                                        */
/* US Government Users Restricted Rights - Use, duplication or            */
/* disclosure restricted by GSA ADP Schedule Contract with IBM Corp.      */
/*                                                                        */
/* IBM_PROLOG_END_TAG                                                     */
#ifndef _SAMPLE_CALLBACKS_H
#define _SAMPLE_CALLBACKS_H

static char *sample_callbacks_sccsid = "@(#)94   1.11   src/rsct/pgs/samples/sample_callbacks.h, gssamples, rsct_rady, rady2035a 11/1/06 21:01:34";

/*********************************************************************/
/*
 * Name:  sample_callbacks.h
 *
 * This program provides the declarations for the set of callback
 * functions used by the "sample_test" program.
 *
 * Components:
 *   sample_test.c - contains the main() function, supports interaction
 *      with the user, and most calls to the Group Services interfaces.
 *
 *   sample_utility.c - provides the definitions for the
 *      utility functions used by the sample_test program.
 *
 *   sample_callbacks.c - provides the definitions for the callback
 *      functions used for the groups created by this program.
 *
 *   sample_callbacks.h - declarations for the callback functions
 *      contained in sample_callbacks.c.
 *
 *   sample_utility.h - declarations for the utility functions contained
 *      in sample_utility.c
 *
 * The information here assumes that you are familiar with the information
 * presented in the IBM RSCT Group Services Programming Guide and Reference
 * manual.
 *
 * This program is provided for illustrative purposes only, and is not
 * intended to be an authoritative description of the "best" methods to
 * use when writing a Group Services application.  It is intended to
 * demonstrate the various interfaces in a relatively verbose manner,
 * and to allow you to relatively easily manipulate groups and their
 * members.
 *
 * To this end, various aspects of this program (in particular its
 * handling of screen input and output) are neither robust nor
 * foolproof.  Therefore, you should take care when giving input to
 * this program.
 */
/*********************************************************************/

/*********************************************************************/
/*
 * Please refer to sample_test.c for information about building and
 * using the sample_test program.
 */
/*********************************************************************/

/*********************************************************************/
/*
 * Include the Group Services declarations file.
 */
/*********************************************************************/

#include <ha_gs.h>

void query_cb(const ha_gs_query_notification_t *note);
void domain_control_cb(const ha_gs_domain_control_notification_t *note);
void delayed_error_cb(const ha_gs_delayed_error_notification_t *note);
ha_gs_callback_rc_t responsive_cb(const ha_gs_responsiveness_notification_t *note);

void subscribe_cb_HostMbr(const ha_gs_subscription_notification_t *note);
void subscribe_cb_EnetMbr(const ha_gs_subscription_notification_t *note);
void subscribe_cb_CssMbr(const ha_gs_subscription_notification_t *note);
void subscribe_cb_TrMbr(const ha_gs_subscription_notification_t *note);
void subscribe_cb_FddiMbr(const ha_gs_subscription_notification_t *note);
void subscribe_cb_RS232Mbr(const ha_gs_subscription_notification_t *note);
void subscribe_cb_TmScsiMbr(const ha_gs_subscription_notification_t *note);
void subscribe_cb_SlipMbr(const ha_gs_subscription_notification_t *note);
void subscribe_cb_MyrinetMbr(const ha_gs_subscription_notification_t *note);
void subscribe_cb_Css1Mbr(const ha_gs_subscription_notification_t *note);
void subscribe_cb_CssRawMbr(const ha_gs_subscription_notification_t *note);
void subscribe_cb_fcMbr(const ha_gs_subscription_notification_t *note);
void subscribe_cb_bondMbr(const ha_gs_subscription_notification_t *note);
void subscribe_cb_eipMbr(const ha_gs_subscription_notification_t *note);
void subscribe_cb_AllAdaptMbr(const ha_gs_subscription_notification_t *note);
void subscribe_cb_Pick(const ha_gs_subscription_notification_t *note);
void subscribe_common_AM(char *callback_name,
                         const ha_gs_subscription_notification_t *note);

void n_phase_cb0(const ha_gs_n_phase_notification_t *note);
void approved_cb0(const ha_gs_approved_notification_t *note);
void rejected_cb0(const ha_gs_rejected_notification_t *note);
void announce_cb0(const ha_gs_announcement_notification_t *note);
void merge_cb0(const ha_gs_merge_notification_t *note);
void subscribe_cb0(const ha_gs_subscription_notification_t *note);

void n_phase_cb1(const ha_gs_n_phase_notification_t *note);
void approved_cb1(const ha_gs_approved_notification_t *note);
void rejected_cb1(const ha_gs_rejected_notification_t *note);
void announce_cb1(const ha_gs_announcement_notification_t *note);
void merge_cb1(const ha_gs_merge_notification_t *note);
void subscribe_cb1(const ha_gs_subscription_notification_t *note);

void n_phase_cb2(const ha_gs_n_phase_notification_t *note);
void approved_cb2(const ha_gs_approved_notification_t *note);
void rejected_cb2(const ha_gs_rejected_notification_t *note);
void announce_cb2(const ha_gs_announcement_notification_t *note);
void merge_cb2(const ha_gs_merge_notification_t *note);
void subscribe_cb2(const ha_gs_subscription_notification_t *note);

void n_phase_cb3(const ha_gs_n_phase_notification_t *note);
void approved_cb3(const ha_gs_approved_notification_t *note);
void rejected_cb3(const ha_gs_rejected_notification_t *note);
void announce_cb3(const ha_gs_announcement_notification_t *note);
void merge_cb3(const ha_gs_merge_notification_t *note);
void subscribe_cb3(const ha_gs_subscription_notification_t *note);

void n_phase_cb4(const ha_gs_n_phase_notification_t *note);
void approved_cb4(const ha_gs_approved_notification_t *note);
void rejected_cb4(const ha_gs_rejected_notification_t *note);
void announce_cb4(const ha_gs_announcement_notification_t *note);
void merge_cb4(const ha_gs_merge_notification_t *note);
void subscribe_cb4(const ha_gs_subscription_notification_t *note);

void n_phase_cb5(const ha_gs_n_phase_notification_t *note);
void approved_cb5(const ha_gs_approved_notification_t *note);
void rejected_cb5(const ha_gs_rejected_notification_t *note);
void announce_cb5(const ha_gs_announcement_notification_t *note);
void merge_cb5(const ha_gs_merge_notification_t *note);
void subscribe_cb5(const ha_gs_subscription_notification_t *note);

void n_phase_cb6(const ha_gs_n_phase_notification_t *note);
void approved_cb6(const ha_gs_approved_notification_t *note);
void rejected_cb6(const ha_gs_rejected_notification_t *note);
void announce_cb6(const ha_gs_announcement_notification_t *note);
void merge_cb6(const ha_gs_merge_notification_t *note);
void subscribe_cb6(const ha_gs_subscription_notification_t *note);

void n_phase_cb7(const ha_gs_n_phase_notification_t *note);
void approved_cb7(const ha_gs_approved_notification_t *note);
void rejected_cb7(const ha_gs_rejected_notification_t *note);
void announce_cb7(const ha_gs_announcement_notification_t *note);
void merge_cb7(const ha_gs_merge_notification_t *note);
void subscribe_cb7(const ha_gs_subscription_notification_t *note);

void approved_cb26(const ha_gs_approved_notification_t *note);

#endif  /* _SAMPLE_CALLBACKS_H */
