Rudiments
/home/dmuse/src/rudiments/include/rudiments/clientsocket.h
00001 // Copyright (c) 2002 David Muse
00002 // See the COPYING file for more information.
00003 
00004 #ifndef RUDIMENTS_CLIENTSOCKET_H
00005 #define RUDIMENTS_CLIENTSOCKET_H
00006 
00007 #include <rudiments/private/clientsocketincludes.h>
00008 
00009 #ifdef RUDIMENTS_NAMESPACE
00010 namespace rudiments {
00011 #endif
00012 
00013 class clientsocketprivate;
00014 
00017 class RUDIMENTS_DLLSPEC clientsocket : public client {
00018         public:
00019 
00021                 clientsocket();
00022 
00025                 clientsocket(const clientsocket &c);
00026 
00029                 clientsocket    &operator=(const clientsocket &c);
00030 
00032                 virtual ~clientsocket();
00033 
00036                 virtual bool    supportsBlockingNonBlockingModes();
00037 
00041                 virtual bool    useNonBlockingMode() const;
00042 
00046                 virtual bool    useBlockingMode() const;
00047 
00050                 virtual bool    isUsingNonBlockingMode() const;
00051 
00054                 virtual int32_t ioCtl(int32_t command, void *arg) const;
00055 
00056         #include <rudiments/private/clientsocket.h>
00057 };
00058 
00059 #ifdef RUDIMENTS_NAMESPACE
00060 }
00061 #endif
00062 
00063 #endif