#pragma once #include "../stdafx.h" class Command { typedef void(*ComFun)(void*, Command*); typedef void(*DisconnectFun)(); public: Command() :m_RespSeq(NULL) , m_Fun(NULL) , isFinished(false) , isNeedDel(true) , isNeedRead(true) , isNeedSend(true) , m_Ref(NULL) { } virtual ~Command(void) {} virtual int GetRequestSequence(unsigned char* bseq) = 0; virtual bool Verify(unsigned char*, int) = 0; virtual int ConstReturnSize() { return 0; } public: int m_id; unsigned char* m_RespSeq; unsigned int m_RespLen; ComFun m_Fun; bool isFinished; bool isNeedDel; bool isNeedRead; bool isNeedSend; void* m_Ref; };