PEXAccumulateState(3) — Subroutines
Name
PEXAccumulateState - Accumulate Rendering Pipeline State
Synopsis
void PEXAccumulateState(Display ∗display, PEXRenderer renderer, unsigned long count, PEXElementRef ∗elements)
Arguments
displayA pointer to a display structure returned by a successful XOpenDisplay call.
rendererThe resource identifier of a renderer resource.
countThe number of elements.
elementsA pointer to the structure element reference path.
Returns
None
Description
This function accumulates the state that would be in effect if a traversal were done to the element specified in the path. If the renderer state is PEXIdle, the request is ignored.
The accumulation of rendering pipeline state begins with the current pipeline attributes. A linear traversal down the specified path is then made and the structure elements that lie along the specified path are examined in order. Any element that contains an output command that would modify the pipeline state (i.e. output attributes) is sent to the renderer for processing. All other output commands (i.e. output primitives and structure output commands) are skipped. The traversal is flat meaning that the current pipeline attributes will not be saved when a structure in the path is executed. However, the current path offset is incremented for each output command that is encountered during the state accumulation.
Data Structures
typedef XID PEXRenderer;
typedef XID PEXStructure;
typedef struct {
PEXStructure structure;
unsigned long offset;
} PEXElementRef;
Errors
BadPEXPathThe specified path is invalid.
BadPEXRenderer
The specified renderer resource identifier is invalid.
See Also
PEXBeginRendering, PEXCreateStructure, PEXCreateRenderer