00001 /* 00002 mySocket, IncomingSocket 00003 Copyright (C) 2006 Kornel Csernai <csko@csko.hu> 00004 00005 This program is free software; you can redistribute it and/or modify 00006 it under the terms of the GNU General Public License as published by 00007 the Free Software Foundation; either version 2 of the License, or 00008 (at your option) any later version. 00009 00010 This program is distributed in the hope that it will be useful, 00011 but WITHOUT ANY WARRANTY; without even the implied warranty of 00012 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00013 GNU General Public License for more details. 00014 00015 You should have received a copy of the GNU General Public License 00016 along with this program; if not, write to the Free Software 00017 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 00018 */ 00019 #ifndef INCOMINGSOCKET_H 00020 #define INCOMINGSOCKET_H 00021 #include <RealSocket.h> 00022 #include <ListenServer.h> 00023 00024 class IncomingSocket : public RealSocket { 00025 public: 00026 00027 IncomingSocket(socket_t _sock, struct sockaddr_in _sockaddr, ListenServer* _parent); 00028 virtual ~IncomingSocket(); 00029 00030 ListenServer* GetParent(); 00031 void Tellroom(string str); 00032 00033 virtual void __OnRead(){} 00034 virtual void __OnClose(){} 00035 virtual void __OnReadError(){} 00036 virtual void __OnConnected(){} 00037 virtual void __OnConnClosed(){} 00038 00039 private: 00040 00041 ListenServer* parent; 00042 void OnClose(); 00043 00044 }; 00045 00046 #endif 00047