
#line 244 "evcontroller.w"

/*-------------------------------------------------------------------------
    Environment device driver datastructure
    
    Mark Koennecke, Juli 1997

---------------------------------------------------------------------------*/
#define DEVOK 1
#define DEVFAULT 0
#define DEVREDO 2


#line 73 "evcontroller.w"

   typedef struct __EVDriver {
                             int (*SetValue)(pEVDriver self, float fNew);
                             int (*GetValue)(pEVDriver self, float *fPos);
                             int (*Send)(pEVDriver self, char *pCommand,
                                         char *pReplyBuffer, int iReplBufLen); 
                             int (*GetError)(pEVDriver self, int *iCode,
                                             char *pError, int iErrLen);
                             int (*TryFixIt)(pEVDriver self, int iCode);
                             int (*Init)(pEVDriver self);
                             int (*Close)(pEVDriver self);
                             void *pPrivate;
                             void (*KillPrivate)(void *pData);
                            } EVDriver;

#line 255 "evcontroller.w"

/*-------------------- life & death of  a driver  --------------------------*/
     pEVDriver CreateEVDriver(int argc, char *argv[]);
     void DeleteEVDriver(pEVDriver pDriv);











