/************************************************************************/
/* Copyright 1998 MBARI							*/
/************************************************************************/
#ifndef _VBGUI_H
#define _VBGUI_H
static char VbGui_h_id[] = "$Header: /u/oreilly/rov/tmacs/RCS/VbGui.h,v 1.5 1999/02/16 22:10:33 oreilly Exp $";

/*
$Log: VbGui.h,v $
Revision 1.5  1999/02/16 22:10:33  oreilly
*** empty log message ***

Revision 1.4  1998/12/18 21:07:21  oreilly
Added documentation

Revision 1.3  1997/04/09 14:05:43  oreilly
Sensitize/de-sensitize controls depending on Hydraulic system state

 * Revision 1.2  97/03/20  12:38:43  12:38:43  oreilly (Thomas C. O'Reilly)
 * *** empty log message ***
 * 
 * Revision 1.1  96/10/28  09:14:13  09:14:13  oreilly (Thomas C. O'Reilly)
 * Initial revision
 * 
*/

#include <stdio.h>
#include <Vk/VkMeter.h>
#include <Vk/VkRadioBox.h>
#include "DmGuiObject.h"
#include "LabeledText.h"
#include "BarGuage.h"
#include "ValveFunctions.h"

/*
CLASS 
VbGui

DESCRIPTION
GUI for variable buoyancy system; includes buoyancy and volume display,
and control for setting buoyancy.

AUTHOR
Tom O'Reilly
*/
class VbGui : public DmGuiObject
{
  public:
  
  VbGui(const char *name, Widget parent, int period);

  ~VbGui()
  {
  }
  
  virtual const char *className()
  {
    return "VbGui";
  }
  
  virtual void updateGui(DM_Item handle = 0);
  

  protected:

  Widget _status;
  Widget _mgr;
  
  static DM_Time _t;
  static struct timezone _tz;

  ValveFunctions *_valveFunctions;

  void hydraulicCallback(VkCallbackObject *obj,
			 void *clientData,
			 void *callData);
};


#endif
