CLOG_cput(4)
NAME
CLOG_cput - move a log record from one of the input buffers
to the output
SYNOPSIS
#include
#include "mpe.h"
void CLOG_cput( ptr )
double **ptr;
This function moves records from one of the three buffers
being merged into the output buffer. When the output buffer
is filled, it is sent to the parent. A separate output rou-
tine handles output on the root. If the input buffer is
emptied (endblock record is read) and corresponds to a
child, a new buffer is received from the child. When an
endlog record is read on the input buffer, the number of
sources is decremented and the time is set to positive
infinity so that the empty input source will never have the
lowest time.
At entry we assume that *p is pointing to a log record that
is not an end-of-block record, and that outbuf is pointing
to a buffer that has room in it for the record. We ensure
that these conditions are met on exit as well, by sending
(or writing, if we are the root) and receiving blocks as
necessary.
Input parameters
pointer to the record to be
-
LOCATION
clog_merge.c
Last change: 4/9/1997