Abstract class of the DD system.
Abstract class of the DD system. This class is the supertype for the DD system. When the system is created, it is decided where it resides and the corresponding subtype created. E.g. the class lDD if we are local, rDD if the system is on another host.
Modifications
- Added class Fifo_mode which encapsulates the mode of the fifo from the user.
CW, Nov 18, 98
- Fixed bug in DD::find_dd_system, which had the sideeffekt that long names for configuration files were cut off arbitrarily.
CW, Mar 15, 99
- Added support for using the description of localhost in the DDD_CONFIGURATION_FILE to indicate that the DD system is meant to reside on the local host.
CW, Mar 15, 99- find_dd_system: call interpretFileName for the DD configuration file to allow having environment variables in the DDD_CONFIGURATION_FILE.
CW, April 21, 99
Broadcasts an fev over the whole dd system, i.e. every consumer process
will get a copy. If wait_flag != 0, then waits until every
consumer process has actually received the fev. The units of
wait_flags are msec (i.e. wait_flag = 2 --> maximal wait of 2 ms).
There are two ways to broadcast the event:
If brc_flag == DD_BRC_SIGNAL then the event is broadcasted over
the broadcast fifo. In this case it is garanteed that every process
gets the fev, if several are attached to the same fifo.
[Internally we duplicate the fev to the desired number and then every
consumer process afterwards has his private copy, which he will
eventually put back into the INPUT fifo.]
If brc_flag == DD_BRC_USMAIL then the fev is simply written into the
fifo of that process, regardless of the number of processes on that fifo.
Obviously the second way has a much lower priority than the first one
(and is therefore named after its famous brother!).
Only one process can broadcast at a time (simple locking mechanism brc_lock).
Alphabetic index HTML hierarchy of classes or Java