00001 /* 00002 * synergy -- mouse and keyboard sharing utility 00003 * Copyright (C) 2006 Chris Schoeneman 00004 * 00005 * This package is free software; you can redistribute it and/or 00006 * modify it under the terms of the GNU General Public License 00007 * found in the file COPYING that should have accompanied this file. 00008 * 00009 * This package is distributed in the hope that it will be useful, 00010 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00011 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00012 * GNU General Public License for more details. 00013 */ 00014 00015 #ifndef CCLIENTPROXY1_3_H 00016 #define CCLIENTPROXY1_3_H 00017 00018 #include "CClientProxy1_2.h" 00019 00021 class CClientProxy1_3 : public CClientProxy1_2 { 00022 public: 00023 CClientProxy1_3(const CString& name, IStream* adoptedStream); 00024 ~CClientProxy1_3(); 00025 00026 // IClient overrides 00027 virtual void mouseWheel(SInt32 xDelta, SInt32 yDelta); 00028 00029 protected: 00030 // CClientProxy overrides 00031 virtual bool parseMessage(const UInt8* code); 00032 virtual void resetHeartbeatRate(); 00033 virtual void setHeartbeatRate(double rate, double alarm); 00034 virtual void resetHeartbeatTimer(); 00035 virtual void addHeartbeatTimer(); 00036 virtual void removeHeartbeatTimer(); 00037 00038 private: 00039 void handleKeepAlive(const CEvent&, void*); 00040 00041 00042 private: 00043 double m_keepAliveRate; 00044 CEventQueueTimer* m_keepAliveTimer; 00045 }; 00046 00047 #endif