1234567891011121314151617181920212223242526272829303132333435363738394041 |
- #pragma once
- #include "IDIOSBoardController.h"
- namespace DiosCtrlBox
- {
- class IDIOSBoardPacketRecevier;
- class DIOSBoardController : public IDIOSBoardController
- {
- public:
- DIOSBoardController();
- ~DIOSBoardController();
- public:
- virtual bool Initialize() override;
- virtual bool SetPassiveDisconnectEventHandle(HANDLE handle) override;
- virtual bool Connect(ResDataObject& Connection) override;
- virtual bool Disonnect() override;
- virtual DWORD Lock() override;
- virtual void UnLock() override;
- virtual bool Send(SCFPacket *sendPacket, SCFPacket *recvPacket) override;
- virtual int Receive(char *pPacket, DWORD length, DWORD timeout) override;
- virtual int Receive(SCFPacket *pPacket, DWORD timeout) override;
- virtual void QueNotifyPacket(SCFPacket *pPacket) override;
- private:
- static PACKET_RET EventCallback(const char * pRecData, DWORD nLength, DWORD & PacketLength);
- private:
- bool DoSendSync(SCFPacket *sendPacket, SCFPacket *recvPacket,DWORD Timeout = DIOSCTRLCPU_COM_TIMEOUT);
- std::string FormatPacketString(SCFPacket *packet);
- std::string FormatPacketString(const char *packet,int len);
- private:
- SCF *m_SCFInstance;
- BOOL m_connectStatus;
- };
- }
|