// The following ifdef block is the standard way of creating macros which make exporting // from a DLL simpler. All files within this DLL are compiled with the PEMDLL_EXPORTS // symbol defined on the command line. this symbol should not be defined on any project // that uses this DLL. This way any other project whose source files include this file see // PEMDLL_API functions as being imported from a DLL, wheras this DLL sees symbols // defined with this macro as being exported. #ifdef PEMDLL_EXPORTS #define PEMDLL_API __declspec(dllexport) #else #define PEMDLL_API __declspec(dllimport) #endif #define CPEMDLL_SUCESS 0 #define CPEMDLL_FAIL 1 #define CPEMDLL_ERROR_PEMNOTEXIST 2 #define CPEMDLL_ERROR_ADCNOTEXIST 3 #define CPEMDLL_ERROR_POWERFAIL 4 #define CPEMDLL_ERROR_DEVNOTEXIST 5 #define CPEMDLL_ERROR_DEVNOTMATCH 6 #define CPEMDLL_ERROR_DEVNEEDCFG 7 #define CPEMDLL_ERROR_3V3AUXSHORT 0x04 #define CPEMDLL_ERROR_3V3SHORT 0x02 #define CPEMDLL_ERROR_1V5SHORT 0x01 // This class is exported from the PEMDll.dll class PEMDLL_API CPEMDll { public: CPEMDll(void); int INIT(); int INITEX(); int INITEX(DWORD addr); int EXIT(); int VALIDPEM(DWORD addr); int SELPEM(DWORD addr); int GETPNTYPE(); int VALIDDEV(); int SELDEV(DWORD Vid, DWORD Did, int index); int SELDEV(DWORD Busno, DWORD Devno); int PON(); int POFF(); int GETPWRSTS(); int CHKSHORT(); int GET3V3V(double* volatge); int GET1V5V(double* volatge); int GET12V(double* volatge); int GET3V3I(double* current); int GET1V5I(double* current); int GET3V3IMAX(double* current); //!#0004 int GET1V5IMAX(double* current); //!#0004 int GET12I(double* volatge); int GETTEMP(DWORD devaddr, double* temp); //!#0003 int SET1V5ICAL(); int SET3V3ICAL(); int SET12ICAL(); int SETUSECAL(int i); int GETUSECAL(); int WINCHECK(); int WINEN(int delaytime); int WINDIS(int delaytime); int CHECKCFG(char* logfile); int WAITCARDREMOVE(); int WAITCARDPLUG(); int CHECKCD(); //!#0005 int LEDGO(); int LEDNG(); int LEDOFF(); int BEEP(int freq, int time); int SETPONRST(int setting); //!#0004 int GETPNTYPE(DWORD addr); int VALIDDEV(DWORD addr); int SELDEV(DWORD addr, DWORD Vid, DWORD Did, int index); int SELDEV(DWORD addr, DWORD Busno, DWORD Devno); int GETPWRSTS(DWORD addr); int CHKSHORT(DWORD addr); int GET3V3V(DWORD addr, double* volatge); int GET1V5V(DWORD addr, double* volatge); int GET12V(DWORD addr, double* volatge); int GET3V3I(DWORD addr, double* current); int GET1V5I(DWORD addr, double* current); int GET3V3IMAX(DWORD addr, double* current); //!#0004 int GET1V5IMAX(DWORD addr, double* current); //!#0004 int GETTEMP(DWORD addr, DWORD devaddr, double* temp); //!#0003 int GET12I(DWORD addr, double* current); int SET1V5ICAL(DWORD addr); int SET3V3ICAL(DWORD addr); int SET12ICAL(DWORD addr); int SETUSECAL(DWORD addr, int i); int GETUSECAL(DWORD addr); int PON(DWORD addr); int POFF(DWORD addr); int WINCHECK(DWORD addr); int WINEN(DWORD addr, int delaytime); int WINDIS(DWORD addr, int delaytime); int CHECKCFG(DWORD addr, char* logfile); int WAITCARDREMOVE(DWORD addr); int WAITCARDPLUG(DWORD addr); int CHECKCD(DWORD addr); //!#0005 int LEDGO(DWORD addr); int LEDNG(DWORD addr); int LEDOFF(DWORD addr); int BEEP(DWORD addr, int freq, int time); int SETPONRST(DWORD addr, int setting); //!#0004 void GETLIBVER(int* major, int* minor); int GETPCIDEVCOUNT(); int SELPCIDEV(int num); char* GETPCIDEVDESC(); DWORD GETPCIDEVVID(); DWORD GETPCIDEVDID(); DWORD GETPCIDEVBUSNO(); DWORD GETPCIDEVDEVNO(); int GPIOSETUP(int pinno, int mode, int val); int GPIOOUTSET(int pinno); int GPIOOUTRESET(int pinno); int GPIOIN(int pinno); int GPIOGETSETUP(int pinno); int GPIOSETUP(DWORD addr, int pinno, int mode, int val); int GPIOOUTSET(DWORD addr, int pinno); int GPIOOUTRESET(DWORD addr, int pinno); int GPIOIN(DWORD addr, int pinno); int GPIOGETSETUP(DWORD addr, int pinno); //!#0009, Mar/09/2007 int PROBESMBCLKRISE(double* time); int PROBESMBCLKRISE(DWORD addr, double* time); //!#000A, Apr/18/2007, Vincent int GET5V(double* volatge); int GET5VI(double* current); int GET5VIMAX(double* current); int GET5V(DWORD addr, double* volatge); int GET5VI(DWORD addr, double* current); int GET5VIMAX(DWORD addr, double* current); }; //extern PEMDLL_API int nPEMDll; //PEMDLL_API int fnPEMDll(void);