/* IBM_PROLOG_BEGIN_TAG                                                   */
/* This is an automatically generated prolog.                             */
/*                                                                        */
/*                                                                        */
/*                                                                        */
/* Licensed Materials - Property of IBM                                   */
/*                                                                        */
/* (C) COPYRIGHT International Business Machines Corp. 1998,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_SUBSCRIBE_H
#define _SAMPLE_SUBSCRIBE_H

static const char *Sample_Subscribe_sccsid = "@(#)53   1.5   src/rsct/pgs/samples/Sample_Subscribe.h, gssamples, rsct_rady, rady2035a 5/31/14 14:45:04";

#if !defined(_HAGSD_COPYRIGHT_H)
#define _HAGSD_COPYRIGHT_H
static const char copyright[] = "Licensed Materials - Property of IBM\n\
(C) COPYRIGHT International Business Machines Corp. 1998,2001.\n\
All Rights Reserved.\n\
US Government Users Restricted Rights - Use, duplication or \n\
disclosure restricted by GSA ADP Schedule Contract with IBM Corp.\n";
#endif

/*********************************************************************/
/*
 * Name:  Sample_Subscribe.h
 *
 * This program's purpose in life is quite simple:  it wants to take
 * as input a group name and some optional flags.  It will connect to
 * Group Services, subscribe to the given group, get the desired data,
 * then sit and wait for further notifications, or unsubscribe and exit.
 *
 * See Sample_Subscribe.C for more info.
 */
 /*********************************************************************/

#include <iostream>
#include <fstream>
using namespace std;

#include <stdio.h>
#include <stdlib.h>
/* #include <unistd.h> */
#include <sys/select.h>
#include <time.h>
#include <sys/time.h>
#define _XOPEN_EXTENDED_SOURCE          /* AIX 4.1 */
#include <arpa/inet.h>
#undef _XOPEN_EXTENDED_SOURCE           /* AIX 4.1 */
#include <signal.h>
#include <errno.h>
#include <strings.h>
#include <memory.h>

#ifdef __cplusplus
#define GSSAMPLE_EXTERN_C extern "C"
#else
#define GSSAMPLE_EXTERN_C
#endif


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

#include <ha_gs.h>

/*********************************************************************/
/*
 * Global declarations.
 */
/*********************************************************************/

GSSAMPLE_EXTERN_C const char *WriteAnRC(ha_gs_rc_t rc);       // Display "name" of a GS return code.
GSSAMPLE_EXTERN_C const char *WriteTheTime(void);             // Return current "time" string.
int     PrintLength(short _inst, short _node); // Calculate length of printing a provider ID.
int     DisplayLen(short _val);                // Number chars needed to print _val.

#endif /* _SAMPLE_SUBSCRIBE_H */
