
#ifndef TSARCHIVE_H
#define TSARCHIVE_H

#ifdef TSARCHIVE_ALLOCATE
#define EXTERN
#else
#define EXTERN extern
#endif
/*****************************************
** Global Legacy Variables 
** Set these variables in tsarchive.C
****************************************/
EXTERN Widget       UxTopLevel;
EXTERN Display      *UxDisplay;
EXTERN int          UxScreen;
EXTERN XtAppContext UxAppContext;

/****************************************
** Globlal User Created Variables
** Set these variables in tsarchive.C
****************************************/
EXTERN Display      *applDisplay;
EXTERN int          applScreen;
EXTERN XtAppContext appContext;


/****************************************
** Global UIL Created Functions 
******************************************/
Widget CreatetsarchMainWinWgt(Widget parent);
Widget CreatearchDirDiagWgt(Widget parent);
Widget CreateinitDiagWgt(Widget parent);
Widget CreatetsswitchDiagWgt(Widget parent);

/****************************************
** Global USER Created Classes 
******************************************/
class TsarchMainWin
{
  private :
    char  sThisHostname[MAXHOSTNAMELEN];
  public :
    SINT4  iTsSwitchPID;
    void   init(void);
    char   *getThisHostname(void);
    UINT2  rvp8TsAttach(void);
    void   rvp8TsRelease(void);
    Pixmap getOffLedPm(void);
    Pixmap getRedLedPm(void);
    Pixmap getGrnLedPm(void);
    Pixmap getYelLedPm(void);
    void   setHourglassCursor(void);
    void   setPointerCursor(void);
    void   updateSitePBWgt(void);
};
EXTERN TsarchMainWin tsarchMainWin;

class ArchDir
{
  private :
  public :
    void create(Widget parent_a);
    void popup(void);
    void popdown(void);
};
EXTERN ArchDir archDir;

class InitDir
{
  private :
  public :
    void create(Widget parent_a);
    void popup(char *sdir_a);
    void popdown(void);
};
EXTERN InitDir initDir;

EXTERN TsArchClient tsArchClient;

#undef EXTERN
#endif
