source: golgotha/src/i4/network/net_sock.hh @ 80

Last change on this file since 80 was 80, checked in by Sam Hocevar, 14 years ago
  • Adding the Golgotha source code. Not sure what's going to be interesting in there, but since it's all public domain, there's certainly stuff to pick up.
File size: 1.3 KB
Line 
1/********************************************************************** <BR>
2  This file is part of Crack dot Com's free source code release of
3  Golgotha. <a href="http://www.crack.com/golgotha_release"> <BR> for
4  information about compiling & licensing issues visit this URL</a>
5  <PRE> If that doesn't help, contact Jonathan Clark at
6  golgotha_source@usa.net (Subject should have "GOLG" in it)
7***********************************************************************/
8
9#ifndef I4_NET_SOCKET_HH
10#define I4_NET_SOCKET_HH
11
12#include "arch.hh"
13#include "file/file.hh"
14
15class i4_net_address;
16
17class i4_net_socket : public i4_file_class
18{
19public:
20  virtual i4_bool connect(i4_net_address *addr) { return i4_F; }
21
22  virtual i4_bool accept(i4_net_socket *&sock, i4_net_address *&addr) = 0;
23
24  virtual w32 read_from(void *buffer, w32 size, i4_net_address *&addr) = 0;
25
26  virtual w32 read (void *buffer, w32 size) = 0;
27  virtual w32 write(const void *buffer, w32 size) = 0;
28
29  virtual i4_bool ready_to_read() = 0;
30  virtual i4_bool ready_to_write() = 0;
31  virtual i4_bool error_occurred() = 0;
32
33  virtual w32 seek (w32 offset) { return 0; }
34  virtual w32 size () { return 0; }
35  virtual w32 tell () { return 0; }
36
37  virtual void set_select_status(i4_bool read, i4_bool write, i4_bool error) = 0;
38
39};
40
41
42#endif
Note: See TracBrowser for help on using the repository browser.