Harlequin RIP SDK
RIP Farm Raster backend to Raster Manager API

RIP Farm raster backend to Raster Manager API. More...

Files

file  rmoutputapi.h
 

Data Structures

struct  sw_rmoutput_api_20190618
 Raster manager output handler API version 20190618. More...
 

Typedefs

typedef void() sw_rmoutput_handled_fn(const struct RF_RASTER *raster, void *data)
 Callback function type for actions to be taken when a raster is handled. More...
 
typedef struct sw_rmoutput_api_20190618 sw_rmoutput_api_20190618
 Raster manager output handler API version 20190618.
 

Detailed Description

RIP Farm raster backend to Raster Manager API.

This API provides methods for the Farm RIP raster output backends to send rasters to the RIP Farm Raster Manager. If there is no API implementation registered in RDR, then the RIP is either not running as part of a RIP Farm, or there is no Raster Manager in the system.

This API queues page metadata for the RIP Farm Raster Manager, not the page's raster data itself. The metadata passed between these components for each raster includes a raster name, location, data type, and user-provided metadata. The raster name, location, and data type are not semantically interpreted by the RIP Farm API, except that equality in all three fields imply the same raster. Your application has to determine how raster data should be stored and transported in a RIP farm, and has to ensure that the raster data remains valid until the client consumes it. There is a callback function provided in this API that indicates when the RIP Farm Raster Manager has finished with a raster, this may help determine how and when you delete raster data.

If the API is registered, then the raster backend will usually:

Note
This API and header is designed to allow unconditional compilation in a backend regardless whether the RIP is Scalable or not. This API uses several incomplete types that are defined by the RIP Farm interface. If the backend is only for use in a Scalable RIP, it can call functions and use types defined by the RIP Farm interface directly.
The location object created by the get_location() method and the error object returned by the raster_ready() method (if any), and any other objects created by this API must be freed using the API's free_object() method. RIP Farm objects must not be freed by direct calls to the RIP Farm API.

The Harlequin RIP SDK provides the support function ripfarm_report_raster() to inform the RIP farm raster manager about page output. This function:

See Enabling the Scalable RIP raster manager for details.

Typedef Documentation

◆ sw_rmoutput_handled_fn

typedef void() sw_rmoutput_handled_fn(const struct RF_RASTER *raster, void *data)

Callback function type for actions to be taken when a raster is handled.

Parameters
[in]rasterThe raster that has been handled. Note that this will contain equivalent data to the original raster passed to the sw_rmoutput_api_20190618::raster_ready() call, but it will not be the same pointer. The caller owns this pointer, the data in the raster object should be copied if the callback needs to retain it.
[in]dataThe data pointer passed to the sw_rmoutput_api_20190618::raster_ready() call.