/* */ #ifndef _D_BT_CHOKE_MESSAGE_H_ #define _D_BT_CHOKE_MESSAGE_H_ #include "SimpleBtMessage.h" namespace aria2 { class BtChokeMessage; typedef SharedHandle BtChokeMessageHandle; class BtChokeMessage : public SimpleBtMessage { private: unsigned char* msg; static const size_t MESSAGE_LENGTH = 5; public: BtChokeMessage():SimpleBtMessage(ID), msg(0) {} virtual ~BtChokeMessage() { delete [] msg; } static const uint8_t ID = 0; virtual void doReceivedAction(); virtual const unsigned char* getMessage(); virtual size_t getMessageLength(); virtual std::string toString() const; static BtChokeMessageHandle create(const unsigned char* data, size_t dataLength); virtual bool sendPredicate() const; virtual void onSendComplete(); }; } // namespace aria2 #endif // _D_CHOKE_MESSAGE_H_