#ifndef _daqscope_h_
 
#define _daqscope_h_
 
 
 
#define WAVE_LEN 100000
 
 
 
//class VmUsbStack;
 
class daqscope {
 
public:
 
  int scopeUseType;
 
  int scopeChanNr;
 
  int scopeChans[8];
 
  char scopeChanstring[256];
 
  int scopeMeasSel;
 
  char eventbuf[WAVE_LEN];
 
  double measubuf;
 
  double tektime, tekvolt;
 
  double choffset;
 
 
 
  int fStop;
 
  double tekunit(char *prefix);
 
 
 
  int init();
 
  int event();
 
  int customCommand(char *command, bool query, char *sReturn);
 
  int connect(char* IPaddr);
 
  int disconnect(char* IPaddr); 
 
  int lockunlock(bool lockit);
 
  daqscope();
 
  ~daqscope();
 
 
 
//  VmUsbStack * fStack;
 
//  VmUsbStack * fInit;
 
 
 
/*  int OSrepetition;
 
  int OSmeasu;
 
  int OSmeasuchan;
 
  int OSgating;
 
  int OSsaving;
 
  int OSinf;
 
  int nmeaslc;
 
  char OSchannels[1024];
 
  char IP[1024];
 
  char lecroycmd[1024];
 
  char lecroycmd2[1024];
 
  char lecroywfm[1024];
 
  int lecroystate;
 
  char pch[1024];
 
  char lecroyadd[1024];
 
  char multibuf[WAVE_LEN];
 
  char eventbuf[WAVE_LEN];
 
  double tektime,tekvolt,lctime,lcvolt;
 
  int fastacqstate; // GKM - variable that saves the fastacq state
 
  double choffset; // GKM - position offset for signal
 
 
 
  int fPoints;
 
  int fStop;
 
  int fMode;
 
  int clear();
 
  int end();
 
  int event();
 
  int lecroyevent();
 
  void measurement(float&);
 
  void measulecroy(float&);
 
  void measumult();
 
  int init();
 
  int initlecroy();
 
  int connect(char* IPaddr);
 
  int disconnect(char* IPaddr); 
 
  void fileopen(const char*);
 
  void fileclose();
 
  void countcontrol();
 
  void fastacq(int setting); // GKM - gets tek out of fastacq
 
  void header();
 
  void measuheader();
 
  void lecroyheader();
 
  void lecroywave();
 
  double tekunit(char*);
 
  double lcunit(char*);
 
  daqscope();
 
//  daqscope(const char *);
 
  ~daqscope();*/
 
};
 
 
 
#endif