#ifndef Shutter_H #define Shutter_H #pragma execution_character_set("utf-8") #include "CH375DLL.H" //#pragma comment(lib, "CH375DLL.LIB") //#pragma comment(lib, "CH375DLLd.LIB") using namespace std; inline UCHAR mCharToBcd(UCHAR iChar) { UCHAR mBCD; if (iChar >= '0' && iChar <= '9') mBCD = iChar - '0'; else if (iChar >= 'A' && iChar <= 'F') mBCD = iChar - 'A' + 0x0a; else if (iChar >= 'a' && iChar <= 'f') mBCD = iChar - 'a' + 0x0a; // else mBCD = 0xff; else mBCD = 0; return(mBCD); } inline PUCHAR mStrtoVal(PUCHAR str, ULONG strlen) { ULONG i, j; ULONG len; UCHAR strRev[mMAX_BUFFER_LENGTH]; if (strlen % 2 != 0) { str[strlen] = 0; strlen += 1; } len = strlen / 2; for (i = 0, j = 0; i < strlen; i++, j++) { strRev[j] = (UCHAR)((mCharToBcd(str[i]) << 4) + mCharToBcd(str[i + 1])); i++; } strRev[j] = '\0'; memcpy(str, strRev, len); return str; } class CGH_Shutter { public: CGH_Shutter(); ~CGH_Shutter(); int open(); int close(); bool isconnected(); void disconnected(); // void connect(); private: bool m_open; long int mIndex; }; #endif // !Shutter_H