X-Git-Url: http://git.indexdata.com/?a=blobdiff_plain;f=include%2Fyaz%2B%2B%2Fsocket-observer.h;fp=include%2Fyaz%2B%2B%2Fsocket-observer.h;h=42e7be0ea7d7a9f2e05b3ced8ccfadfc2afe46c0;hb=eea2caea1263bed0aae268f72d985cbb1822ac30;hp=b4291aac172351fb6f9b8200bba79ec786349747;hpb=86726b00b052694e65b036c262f5fe9096554175;p=yazpp-moved-to-github.git diff --git a/include/yaz++/socket-observer.h b/include/yaz++/socket-observer.h index b4291aa..42e7be0 100644 --- a/include/yaz++/socket-observer.h +++ b/include/yaz++/socket-observer.h @@ -1,65 +1,67 @@ /* - * Copyright (c) 1998-2000, Index Data. + * Copyright (c) 1998-2005, Index Data. * See the file LICENSE for details. * - * $Id: socket-observer.h,v 1.4 2005-06-02 06:40:21 adam Exp $ + * $Id: socket-observer.h,v 1.5 2005-06-08 13:28:05 adam Exp $ */ #ifndef YAZ_SOCKET_OBSERVER_H #define YAZ_SOCKET_OBSERVER_H -#define YAZ_SOCKET_OBSERVE_READ 1 -#define YAZ_SOCKET_OBSERVE_WRITE 2 -#define YAZ_SOCKET_OBSERVE_EXCEPT 4 -#define YAZ_SOCKET_OBSERVE_TIMEOUT 8 - #include namespace yazpp_1 { + + enum SocketObserve { + SOCKET_OBSERVE_READ=1, + SOCKET_OBSERVE_WRITE=2, + SOCKET_OBSERVE_EXCEPT=4, + SOCKET_OBSERVE_TIMEOUT=8 + }; /** Forward reference - */ -class IYazSocketObserver; - +*/ + class ISocketObserver; + /** Socket Observable. - This interface implements notification of socket events. - The module interested in (observing) the sockets - must implement the IYazSocketObserver interface. The - IYazSocketObserver only have to implement one function, so it's - quite simple to observe sockets change state. - The socket events below specifies read, write, exception, - and timeout respectively: -
-    YAZ_SOCKET_OBSERVE_READ
-    YAZ_SOCKET_OBSERVE_WRITE
-    YAZ_SOCKET_OBSERVE_EXCEPT
-    YAZ_SOCKET_OBSERVE_TIMEOUT
+    This interface implements notification of socket events.
+    The module interested in (observing) the sockets
+    must implement the ISocketObserver interface. The
+    ISocketObserver only have to implement one function, so it's
+    quite simple to observe sockets change state.
+    The socket events below specifies read, write, exception,
+    and timeout respectively:
+    
+    SOCKET_OBSERVE_READ
+    SOCKET_OBSERVE_WRITE
+    SOCKET_OBSERVE_EXCEPT
+    SOCKET_OBSERVE_TIMEOUT
     
The maskObserver method specifies which of these events the observer is intertested in. */ -class YAZ_EXPORT IYazSocketObservable { +class YAZ_EXPORT ISocketObservable { public: /// Add an observer interested in socket fd - virtual void addObserver(int fd, IYazSocketObserver *observer) = 0; + virtual void addObserver(int fd, ISocketObserver *observer) = 0; /// Delete an observer - virtual void deleteObserver(IYazSocketObserver *observer) = 0; + virtual void deleteObserver(ISocketObserver *observer) = 0; /// Delete all observers virtual void deleteObservers() = 0; /// Specify the events that the observer is intersted in. - virtual void maskObserver(IYazSocketObserver *observer, int mask) = 0; + virtual void maskObserver(ISocketObserver *observer, int mask) = 0; /// Specify timeout - virtual void timeoutObserver(IYazSocketObserver *observer, + virtual void timeoutObserver(ISocketObserver *observer, int timeout)=0; }; /** Socket Observer. - The IYazSocketObserver interface implements a module interested + The ISocketObserver interface implements a module interested socket events. Look for objects that implements the - IYazSocketObservable interface! + ISocketObservable interface! */ -class YAZ_EXPORT IYazSocketObserver { +class YAZ_EXPORT ISocketObserver { public: /// Notify the observer that something happened to socket virtual void socketNotify(int event) = 0;