IOHandler  -  read  input,  write output, or handle an I/O
       exception or timeout


SYNOPSIS

       #include <Dispatch/iohandler.h>


DESCRIPTION

       An iohandler reads data from  a  file  descriptor,  writes
       data  to  a file descriptor, handles an I/O exception on a
       file descriptor, or handles a  timer's  expiration.   Once
       the  user has requested the dispatcher to attach an iohan-
       dler to a file descriptor or a timer, the dispatcher  will
       automatically  notify the iohandler when the file descrip-
       tor's I/O condition changes or the timer expires.

       For convenience, the user can use a derived generic  class
       (see IOCallback(3I)) to make the iohandler do nothing more
       than call an arbitrary object's member function.


PUBLIC OPERATIONS

       virtual int inputReady(int fd)
       virtual int outputReady(int fd)
       virtual int exceptionRaised(int fd)
              The dispatcher will call one of these functions  to
              notify  an  iohandler  that it can read data from a
              file descriptor, write data to a  file  descriptor,
              or  handle  an  I/O exception on a file descriptor.
              The iohandler should perform the appropriate action
              and  tell  the dispatcher what to do next.  A nega-
              tive return value means that the iohandler  encoun-
              tered  an error or it doesn't want to read or write
              anything more.   The  dispatcher  will  unlink  the
              iohandler  from  its file descriptor automatically.
              A positive return value means  that  the  iohandler
              didn't read or write everything that it could have.
              The dispatcher will call  the  iohandler  again  in
              round  robin fashion WITHOUT checking select, which
              means that the iohandler will be  called  again  as
              soon  as  the rest of the iohandlers have performed
              their actions.  A zero return value means that  the
              iohandler finished reading or writing everything it
              was  able  to.   The  dispatcher  must  check   the
              descriptor's  status with the select call before it
              can call the iohandler again.

       virtual void timerExpired(long sec, long usec)
              The dispatcher will call this function to notify an
              iohandler  that  a timer has expired.  For informa-
              tional purposes, the parameters  give  the  current
              time  in  seconds  and  microseconds since midnight
              January 1, 1970.  If the iohandler wants  to  reset
              the  timer,  it  must  tell the dispatcher to start

       Dispatcher(3I), IOCallback(3I)




















































Man(1) output converted with man2html