Added SILC Thread Queue API
[silc.git] / lib / silcutil / symbian / silcsymbiansocketstream.h
1 /*\r
2 \r
3   silcsymbiansocketstream.h\r
4 \r
5   Author: Pekka Riikonen <priikone@silcnet.org>\r
6 \r
7   Copyright (C) 2006 Pekka Riikonen\r
8 \r
9   This program is free software; you can redistribute it and/or modify\r
10   it under the terms of the GNU General Public License as published by\r
11   the Free Software Foundation; version 2 of the License.\r
12 \r
13   This program is distributed in the hope that it will be useful,\r
14   but WITHOUT ANY WARRANTY; without even the implied warranty of\r
15   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the\r
16   GNU General Public License for more details.\r
17 \r
18 */\r
19 \r
20 #ifndef SILCSYMBIANSOCKETSTREAM_H\r
21 #define SILCSYMBIANSOCKETSTREAM_H\r
22 \r
23 #include <e32std.h>\r
24 #include <es_sock.h>\r
25 #include <in_sock.h>\r
26 \r
27 class SilcSymbianSocketSend;\r
28 class SilcSymbianSocketReceive;\r
29 \r
30 /* Symbian Socket context */\r
31 typedef struct {\r
32   SilcSymbianSocketSend *send;\r
33   SilcSymbianSocketReceive *receive;\r
34   RSocket *sock;\r
35   RSocketServ *ss;\r
36   SilcSocketStream stream;\r
37   unsigned int eof          : 1;\r
38   unsigned int error        : 1;\r
39   unsigned int would_block  : 1;\r
40 } SilcSymbianSocket;\r
41 \r
42 /* Creates symbian socket context.  This will steal the `sock' and `ss'. */\r
43 SilcSymbianSocket *silc_create_symbian_socket(RSocket *sock,\r
44                                               RSocketServ *ss);\r
45 \r
46 #endif /* SILCSYMBIANSOCKETSTREAM_H */\r