|
|
|
|
#pragma once
|
|
|
|
|
#include "skt.h"
|
|
|
|
|
#include "sysapi.h"
|
|
|
|
|
#include <list>
|
|
|
|
|
|
|
|
|
|
using std::list;
|
|
|
|
|
|
|
|
|
|
class CVision
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
CVision();
|
|
|
|
|
virtual ~CVision(void);
|
|
|
|
|
|
|
|
|
|
int Init(const char* pszip, ushort port);
|
|
|
|
|
int Deinit();
|
|
|
|
|
|
|
|
|
|
int getSocket() { return _socket; }
|
|
|
|
|
bool IsConn() { return SOCKET_CONNECTED == _status; }
|
|
|
|
|
|
|
|
|
|
void Connect(); //<2F>ֶ<EFBFBD><D6B6><EFBFBD><EFBFBD><EFBFBD> -- <20><><EFBFBD>߳<EFBFBD>ִ<EFBFBD><D6B4>
|
|
|
|
|
void RecvMsg(char* s = NULL, int nsize = 0); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ -- <20><><EFBFBD>߳<EFBFBD>ִ<EFBFBD><D6B4>
|
|
|
|
|
|
|
|
|
|
int Process(); //<2F><><EFBFBD>մ<EFBFBD><D5B4><EFBFBD>,<2C>ȴ<EFBFBD><C8B4><EFBFBD><EFBFBD>ս<EFBFBD><D5BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0<><30>ʶ<EFBFBD>ɹ<EFBFBD> <20>ڲ<EFBFBD><DAB2><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
int Send(const char* s);
|
|
|
|
|
int WaitResult(char* s, int timeout); //<2F><><EFBFBD>մ<EFBFBD><D5B4><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> һ<><D2BB><EFBFBD><EFBFBD><EFBFBD>ճɹ<D5B3><C9B9><EFBFBD>_szres<65><73><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
protected:
|
|
|
|
|
|
|
|
|
|
void setReply() { sys_SetEvent(_hReply); }
|
|
|
|
|
void resetReply() { sys_ResetEvent(_hReply); }
|
|
|
|
|
void waitReply() { sys_WaitForSingleObject(_hReply); }
|
|
|
|
|
|
|
|
|
|
void ClearMsg();
|
|
|
|
|
void RecvMsgB(char* s, int nsize); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
void Disconnect(); //<2F>Ͽ<EFBFBD><CFBF><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
int SendMsg(const char *pszFormat, ...); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
|
|
|
|
|
int FindEnd(char* pszmsg); //<2F><><EFBFBD>ҽ<EFBFBD><D2BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
int ParseMsg(char* pszmsg); //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
|
|
|
|
|
private:
|
|
|
|
|
|
|
|
|
|
Handle _hReply; //<2F><><EFBFBD>շ<EFBFBD><D5B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
Handle _hSection; //<2F>ٽ<EFBFBD><D9BD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
int _status; //<2F><><EFBFBD><EFBFBD>״̬
|
|
|
|
|
int _socket; //socket<65><74><EFBFBD><EFBFBD>
|
|
|
|
|
int _skt; //skt<6B><74><EFBFBD><EFBFBD>
|
|
|
|
|
int _port; //<2F>ͻ<EFBFBD><CDBB>˶˿<CBB6>
|
|
|
|
|
|
|
|
|
|
int _len; //<2F><>ǰ<EFBFBD><C7B0>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD>
|
|
|
|
|
int _size; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С
|
|
|
|
|
char* _msg; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ<EFBFBD><CFA2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
int _index; //<2F>״ν<D7B4><CEBD><EFBFBD>
|
|
|
|
|
int _ires; //<2F><><EFBFBD>ս<EFBFBD><D5BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
list<char*> _lstmsg; //<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
|
|
|
|
|
};
|