HP Visualize J5000 hp workstations - hp-ux 10.20 graphics administration guide - Page 30

Miscellaneous Topics, Double Buffer Extension (DBE), Performing Buffer Swaps On Vertical Blank

Page 30 highlights

Miscellaneous Topics Double Buffer Extension (DBE) DBE is an extension to the X server that provides a double-buffering Application Programming Interface (API Note: MBX (the Multi-Buffering eXtension to X) has not been adopted as an industry standard, as DBE has. Thus, it is recommended that applications that use MBX be ported to DBE usage in preparation for future MBX obsolescence (HP-UX 11.0). For more information about DBE and the API, consult the DBE man pages: DBE XdbeQueryExtension XdbeGetVisualInfo XdbeFreeVisualInfo XdbeAllocateBackBufferName XdbeDeallocateBackBufferName XdbeSwapBuffers XdbeBeginIdiom XdbeEndIdiom XdbeGetBackBufferAttributes Performing Buffer Swaps On Vertical Blank For performance reasons, the default DBE behavior is to not synchronize buffer swaps with the monitor's vertical retrace period. In some instances, therefore, image tearing (seeing part of the old image and part of the new image on the display at the same time) could be visible while swapping large DBE windows. For those instances where tearing would occur and is undesirable, an optional X server mode is available to allow for synchronization of buffer swaps with vertical retrace. To activate this optional X server mode, set the following screen option in the X*screens File before the X server is started: SwapBuffersOnVBlank Note: MBX_SWAP_BUFFERS_ON_VBLANK is obsolete with this release. The SwapBuffersOnVBlank Screen Option works for both DBE and MBX Determining Swap Performance The DBE API does not allow users to determine if double-buffering in a visual is through software or hardware. However, the API does provide a way to determine relative swapping performance on a pervisual basis. The XdbeScreenVisualInfo() function returns information about the swapping performance levels for the double-buffering visuals on a display. A visual with a higher performance level is likely to have better double-buffer graphics performance than a visual with a lower performance level. Nothing Page 30 Graphics Administration Guide for HP-UX 10.20

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171

Miscellaneous Topics
Double Buffer Extension (DBE)
DBE is an extension to the X server that provides a double-buffering Application Programming
Interface (API).
____________________________________________________________________________________
Note
: MBX (the
M
ulti-
B
uffering e
X
tension to X) has not been adopted as an industry standard, as DBE
has. Thus, it is recommended that applications that use MBX be ported to DBE usage in preparation for
future MBX obsolescence (HP-UX 11.0). For more information about DBE and the API, consult the
DBE man pages:
DBE
XdbeQueryExtension
XdbeGetVisualInfo
XdbeFreeVisualInfo
XdbeAllocateBackBufferName
XdbeDeallocateBackBufferName
XdbeSwapBuffers
XdbeBeginIdiom
XdbeEndIdiom
XdbeGetBackBufferAttributes
____________________________________________________________________________________
Performing Buffer Swaps On Vertical Blank
For performance reasons, the default DBE behavior is to not synchronize buffer swaps with the
monitor's vertical retrace period. In some instances, therefore, image tearing (seeing part of the old
image and part of the new image on the display at the same time) could be visible while swapping large
DBE windows. For those instances where tearing would occur and is undesirable, an optional X server
mode is available to allow for synchronization of buffer swaps with vertical retrace. To activate this
optional X server mode, set the following screen option in the X*screens File before the X server is
started:
SwapBuffersOnVBlank
____________________________________________________________________________________
Note
:
MBX_SWAP_BUFFERS_ON_VBLANK
is obsolete with this release. The SwapBuffersOnVBlank
Screen Option works for both DBE and MBX.
____________________________________________________________________________________
Determining Swap Performance
The DBE API does not allow users to determine if double-buffering in a visual is through software or
hardware. However, the API does provide a way to determine relative swapping performance on a per-
visual basis. The
XdbeScreenVisualInfo()
function returns information about the swapping performance
levels for the double-buffering visuals on a display. A visual with a higher performance level is likely to
have better double-buffer graphics performance than a visual with a lower performance level. Nothing
Graphics Administration Guide for HP-UX 10.20
Page 30