HP SVA V2.1 Parallel Compositing Reference Guide

pcFrameWaitOutputHP(3)
NAME
pcFrameWaitOutputHP -- Retrieves available output.
Synopsis
PCerr pcFrameWaitOutputHP(
PCcontext ctx,
PCid frameId,
PCresult result
);
Parameters
ctx
The context for this frame.
frameId The unique ID generated for this frame by pcFrameBegin.
result A PCresult that is initialized by this function.
Returns
This function returns PC_NO_ERROR on successful completion.
Description
This function retrieves output pixels of the frame and corresponds to the Retrieve the needed
channels Step inTable 1-1 (page 14) in the Parallel Compositing Library Reference Guide.
This function uses a different approach to retrieving output than pcFrameResultChannel. It
checks to see if any new pixels have arrived in the output since the last call to this function. If a
rectangular area, such as one or more complete rows has arrived, it creates a result describing
this area and returns the rectangular area using the parameter result. If the Library cannot
construct a rectangular area, the function blocks until it can. If the entire output has already been
returned, the function returns immediately with the PC_ALL_OUTPUT_RETURNED return value.
The pixel data returned by pcFrameWaitOutputHP is restricted to the area of the frame defined
for the host making the calls to pcFrameWaitOutputHP. This is controlled by these context
properties: PC_OUTPUT_WIDTH, PC_OUTPUT_HEIGHT, PC_OUTPUT_X_OFFSET, and
PC_OUTPUT_Y_OFFSET. If the framelets for this frame do not fully cover this area of the frame,
then pcFrameWaitOutputHP returns only the pixel data actually covered by the framelets.
Areas not covered are undefined and not returned.
A way to handle the undefined areas is to clear the display with the background color before
drawing the pixels returned by pcFrameWaitOutputHP.
Results returned by pcFrameResultChannel do not affect what pcFrameWaitOutputHP
tracks as having been returned. pcFrameWaitOutputHP does not return the
PC_ALL_OUTPUT_RETURNED status until a series of one or more pcFrameWaitOutputHP calls
has returned results covering the entire output for the calling host.
The final parameter (result) is a value initialized by the Library on a successful return from this
function for accessing the information associated with the result. Using this value as an argument
to the pcResultGetChannel function, a program can access the channels (color or depth) of
the result.
This call must be made following the host’s call to pcFrameEnd for the frame specified by the
frameId parameter.
The PC_RETAIN_OUTPUT extension context property requires that the Library not reuse the
arrays for an additional number of frames specified by the property. (PC_RETAIN_OUTPUT_LIMIT
is 2 for the HP implementation so double buffering of output is supported.) See the Description
65