#ifndef _GFSELFTEST_H
#define _GFSELFTEST_H

#include <Vk/VkComponent.h>
#include "AlarmText.h"
#include "ErrorHandler.h"
#include "DmErrno.h"

class GfSelfTest : public DmGuiObject
{
  public:
  GfSelfTest(const char *name, Widget parent, 
	     const char *cmdItemName, 
	     const char *statusItemName);

  ~GfSelfTest();
  
  const char *className()
  {
    return "GfSelfTest";
  }

  virtual void updateGui(DM_Item handle = 0);
  

  protected:
  int sendCmd(MBool test);
  
  const char *_cmdItemName;
  DmBooleanObject *_cmd;
  AlarmText *_status;
  Widget _cmdButton;
  
  private:
  static void cmdCallback(Widget w, 
			  XtPointer clientData,
			  XtPointer callData);

};


#endif
