Annotation of libwww/Library/src/HTEvent.c, revision 2.2

2.1       eric        1: /*                                                                  HTEvntrg.c
                      2: **     EVENT DISPATCHER
                      3: **
                      4: **     (c) COPYRIGHT MIT 1996.
                      5: **     Please first read the full copyright statement in the file COPYRIGH.
2.2     ! frystyk     6: **      @(#) $Id: HTEvent.c,v 2.1 1996/05/15 23:13:57 eric Exp $
2.1       eric        7: **
                      8: **     The event dispatcher allows applications to register their own event
                      9: **     models. They may register the standard HTEventrg methods from 
                     10: **     HTEventrg.c, of implement their functionality with their on methods.
                     11: **
                     12: ** Authors:
                     13: **     EGP     Eric Gordon Prud'hommeuax
                     14: ** Bugs
                     15: **
                     16: */
                     17: 
                     18: /* Implementation dependent include files */
                     19: #include "sysdep.h"
2.2     ! frystyk    20: #include "WWWUtil.h"
2.1       eric       21: #include "HTReqMan.h"
                     22: #include "HTEvent.h"                                    /* Implemented here */
                     23: 
2.2     ! frystyk    24: PRIVATE HTEvent_registerCallback * RegisterCBF = NULL;
        !            25: PRIVATE HTEvent_unregisterCallback * UnregisterCBF = NULL;
2.1       eric       26: 
                     27: PUBLIC void HTEvent_setRegisterCallback(HTEvent_registerCallback * registerCBF)
                     28: {
2.2     ! frystyk    29:     if (CORE_TRACE) HTTrace("Event....... registering %p\n", registerCBF);
2.1       eric       30:     RegisterCBF = registerCBF;
                     31: }
                     32: 
                     33: PUBLIC void HTEvent_setUnregisterCallback(HTEvent_unregisterCallback * unregisterCBF)
                     34: {
2.2     ! frystyk    35:     if (CORE_TRACE) HTTrace("Event....... registering %p\n", unregisterCBF);
2.1       eric       36:     UnregisterCBF = unregisterCBF;
                     37: }
                     38: 
                     39: 
                     40: PUBLIC int HTEvent_register (SOCKET s, HTRequest * rq, SockOps ops,
                     41:                             HTEventCallback *cbf, HTPriority p) 
                     42: {
2.2     ! frystyk    43:     if (!RegisterCBF) {
        !            44:        if (CORE_TRACE) HTTrace("Event....... No handler registered\n");
2.1       eric       45:         return -1;
2.2     ! frystyk    46:     }
2.1       eric       47:     return (*RegisterCBF)(s, rq, ops, cbf, p);
                     48: }
                     49: 
                     50: PUBLIC int HTEvent_unregister (SOCKET s, SockOps ops)
                     51: {
2.2     ! frystyk    52:     if (!UnregisterCBF) {
        !            53:        if (CORE_TRACE) HTTrace("Event....... No handler registered\n");
2.1       eric       54:         return -1;
2.2     ! frystyk    55:     }
2.1       eric       56:     return (*UnregisterCBF)(s, ops);
                     57: }
                     58: 

Webmaster