NL_Multiplexor

NL_Multiplexor

nl

1998 12-06


CLASS

NL_Multiplexor - an NL_Channel multiplexor


SYNOPSIS

NL_Multiplexor is used to multiplex input/output on NL_Channel objects. NL_Multiplexor is built on two linked lists of NL_ChannelNode objects (checklist and readylist). Checklist is the list of channels that the multiplexor will check for possible activity. Readylist is the list of channels that were ready as of the last call to Wait().


NL_ChannelNode contains a pointer to an actual NL_Channel and flags that determine what the channel will be checked for if in the checklist. If the NL_ChannelNode is part of readylist then the flag setting corresponding to the channels condition is set.


There are three possible bitwise flag settings as follows:
NL_READ Ready for reading.
NL_WRITE Ready for writing.
NL_EXCEPTION An exceptional condition on the channel.


CONSTRUCTOR


MEMBER FUNCTIONS