display_element(3G)
NAME
display_element − display current element on the specified graphics display device
SYNOPSIS
C Syntax:
void display_element(fildes, devdes)
int fildes, devdes;
FORTRAN77 Syntax:
subroutine display_element(fildes, devdes)
integer*4 fildes, devdes
Pascal Syntax:
procedure display_element(fildes, devdes:integer);
DESCRIPTION
Input Parameters
fildes Integer file descriptor returned by gopen when an I/O path to a graphics device is opened. This file descriptor identifies the display list device.
devdes Integer file descriptor returned by gopen when an I/O path to a graphics output device is opened. This file descriptor identifies the graphics display device on which the current elment will be displayed.
Discussion
Display_element displays the current element from the open segment of the specified graphics display device.
Display_element generates errors if:
• fildes does not identify a display list device;
• the current element of the open segment is element 0 (element 0 cannot be displayed);
• there is no currently open segment in the display list identified by fildes.
If the current element is a call_segment or execute_segment element, the segment network is traversed, beginning with the referenced segment. If the current element is a cond_call_segment or cond_execute_segment element, the segment referenced by that element is traversed if the conditions specified with that element are met.
If a segment is open on graphics display device devdes, the current element is also copied to the open segment on devdes. If the current element is a call_segment or execute_segment element, it is expanded, flattening the segment network as it is copied. If the current element is a cond_call_segment or cond_execute_segment element, it is expanded if the conditions specified by its parameters are satisfied. Elements in a segment that follow a cond_return element are copied only if the conditions of the cond_return are not satisfied. The cond_return element is never copied to the open segment. The implicit push_state and pop_state of execute_segment and cond_execute_segment will be copied to the open segment as explicit push_state and pop_state elements.
Set_traversal_depth(3G) can be used to limit the traversal depth. The default maximum traversal depth limits traversal processing to 42 segment-referencing elements; these are call_segment, execute_segment, cond_call_segment and cond_execute_segment). If traversal of one of these elements would exceed the maximum traversal depth, a warning is generated and the element is not traversed.
Segment network traversal can also be limited by display traversal control elements (see set_pick_traversal_control(3G)), segment control (see seg_control(3G)), individual element control (see ele_control(3G)), and the invisibility and highlighting filters (see set_invisibility_filter(3G) and set_highlighting_filter(3G)).
Output from the display traversal process is subject to buffering (see buffer_mode(3G)). If buffering is enabled, output from the display traversal process will not be displayed until the buffer is flushed. Calling make_picture_current(3G) will make sure that this has been done.
When display_element(3G) is called using the HP 98736, the VDMA interface will be used automatically.
ERRORS
1 Graphics device is not initialized for this operation.
24 Segment not open.
36 At element 0 - element 0 cannot be displayed.
40 Fildes not a display list device.
1042 Warning: Traversal attempted beyond specified maximum traversal depth.
SEE ALSO
buffer_mode(3G), display_segment(3G), ele_control(3G),
make_picture_current(3G), refresh_segment(3G), refresh_element(3G),
set_highlighting_filter(3G), set_invisibility_filter(3G), set_traversal_depth(3G).
Hewlett-Packard Company — HP-UX Release 9.03: April 1994