(v13) D_GET_RASTER_FORMAT
This page applies to Harlequin v13.1r0 and later; and to Harlequin MultiRIP but not Harlequin Core
D_GET_RASTER_FORMAT Selector
Parameter: devGetRasterFormatParam * rasterparam
The RIP calls D_GET_RASTER_FORMAT
repeatedly to obtain a list of raster formats supported by the plugin. If calling a multiple‐device output plugin, it will be looking for the raster formats supported by the current device.
Note:
A multiple‐device plugin receives D_GET_RASTER_FORMAT
calls after each D_FIND_DEVICE_TYPE
call. The plugin should return the raster formats for the device it has just declared.
The RIP uses this format information to determine whether a raster in a particular format can be changed to suit an output device requiring a different format.
At each call, the plugin should send back details of one supported raster format. These details are carried in a rasterFormat
structure. (See (v13) The rasterFormat structure
.) The RIP keeps calling for more raster formats until the found
field of the devGetRasterFormatParam
is set to zero.
If the list is empty that is, if found
is zero on the return from the first call the RIP assumes that it can send any kind of raster to the device in question. In such a case the plugin should explicitly check the format of any raster sent to it before doing anything.
Note:
If the raster format to be returned depends on the current device type, the plugin must examine the device capabilities to determine the type of the device. D_GET_RASTER_FORMAT
is not preceded by a D_SELECT_DEVICE
call.
If the plugin does not implement this selector the RIP assumes that the output device is single‐bit monochrome.
Note:
If you have a color plugin that does not support this selector, you can stop the RIP assuming that the output device is single‐bit monochrome by turning the calls off altogether. To do this, set the flag DefaultAllowAllRasterFormats
in SW/Config/Configure RIP
to true
. The effect of this is to pre‐ tend the plugin has returned an empty list, which indicates that all color formats are acceptable. How‐ ever, we recommend that if possible, you update the plugin to support this selector.
The parameter passed with the selector is described below.
typedef struct devGetRasterFormatParam
{
int32 index;
int32 version;
int32 size;
int32 found; rasterFormat format;
} devGetRasterFormatParam
index
The RIP increments this number at each successive call, starting at zero for each device (type).
version
The plugin should ignore this field. It is obsolete. Instead, perform version checking with the
CHECK_VERSION
macro in the D_GET_IDENTITY
call, and use that result throughout.
size
The RIP sets this to the size in bytes of the rasterFormat
structure being passed to the plugin.
A smaller size than expected means the plugin was built with header files for a later version of the RIP, in which case copy only the first size
bytes of your rasterFormat
structure into that in the devGetRasterFormatParam
.
found
The RIP uses this field to test whether the last raster format in the list has been returned. If the plugin is returning raster format information (in a valid rasterFormat
structure), it should set this field to a non‐zero value.
When the last raster format has been sent, the plugin should respond to the next D_GET_RASTER_FORMAT
call by setting this field to zero. The RIP understands from this that the list of formats is complete. Note that found
is zero on the call after
the last valid format has been returned, not on the last one.
format
This is a pointer to a buffer for a rasterFormat
structure. The plugin should fill this in to describe a supported color raster format. See (v13) The rasterFormat structure
.