Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Class Members | File Members | Related Pages

sstream.h

Go to the documentation of this file.
00001 #ifndef __sstream_h__
00002 #define __sstream_h__
00003 
00004 /*
00005  * Copyright (C) 2002 Herbert Straub
00006  * Change the original hierachy [(C) Thomas Gschwind] 
00007  * from fstream -> sstream to iosockinet -> sstream
00008  * This is for g++ >= 3.0 necessary.
00009  */
00010 
00011 
00012 #include <socket++/sockinet.h>
00013 
00024 class sstream:public iosockinet {
00025         char _name[256];
00026         char _service[256];
00027         int connected;
00028       public:
00029          sstream():iosockinet(sockbuf::sock_stream) {
00030                 _name[0] = '\0';
00031                 _service[0] = '\0';
00032                 connected = 0;
00033                 setstate(std::ios::badbit);
00034                 rdbuf()->setname ("upstream server socket");
00035         } sstream(char *name,
00036                   char *service):iosockinet(sockbuf::sock_stream) {
00037                 rdbuf()->setname ("upstream server socket");
00038                 connectTo(name, service);
00039         }
00040         sstream(char *name, char *service,
00041                 char *from):iosockinet(sockbuf::sock_stream) {
00042                 rdbuf()->setname ("upstream server socket");
00043                 connectTo(name, service, from);
00044         }
00045         ~sstream() {
00046                 disconnect();
00047         }
00048 
00049         const char *hostname() {
00050                 return _name;
00051         }
00052         const char *servicename() {
00053                 return _service;
00054         }
00055         int is_connected();
00056         void connectTo(char *name, char *service);
00057         void connectTo(char *name, char *service, char *from);
00058         void disconnect();
00059 };
00060 
00061 #endif

Generated on Fri Aug 20 10:58:08 2004 for NewsCache by doxygen 1.3.6-20040222