Delivery and format of the output data
This page applies to Harlequin v13.1r0 and later; and to Harlequin MultiRIP but not Harlequin Core
The RIP sends output data (or raster data
) to the plugin with the D_OUTPUT
and D_IDLE
selectors. The data is sent in chunks, called bands
.
The pagebuffer has a packing unit in bits, which is exposed to the plugin as a parameter (in the pageHeader
structure). The PackingUnit
value tells you how many bits the raster is packed to regardless of the color format. For half tones it will be 32‐bit or 64‐bit depending on platform. For contone output it depends on the bit depth and the color mode It will be the same as PackingUnit
in the pageHeader
structure.
Note: If accessing bytes of scanline data with a byte pointer, remember that on a little‐endian architecture, byte addresses will be at the low‐order byte of a word.
All bands in a page use the same raster format. The format information is in a rasterFormat
structure. A pointer to this can be found in the pageHeader
structure, in turn pointed to by a field of the deviceDefinition
structure passed with all output plugin selector calls. See The rasterFormat structure
for details of rasterFormat
.
At startup, the RIP asks the plugin to tell it which raster formats it supports for each “device” in the plugin. (If the RIP cannot obtain valid rasterFormat
information from the plugin the device is not instantiated.) It asks for this with the D_GET_RASTER_FORMAT
selector. The plugin returns data about the formats it accepts in the rasterFormat
structure passed with D_GET_RASTER_FORMAT
. See D_GET_RASTER_FORMAT
.
The content of the rasterFormat
structure influences the RIP user interface. For example, the RIP disables the screening controls in the user interface if screensRequired
is set to screensRequired_none
.