Harlequin RIP SDK
Farm RIP API

The Farm RIP API allows the application layer to start a farm RIP server loop. More...

Files

file  swfrip.h
 Header file defining the Farm RIP API.
 
file  swfripehvd.h
 Pass eHVD output to a remote eHVD cache.
 

Data Structures

struct  SW_FR_PARAMS
 Parameters for configuring the Farm RIP. More...
 

Macros

#define SW_FR_PARAMS_INIT
 Static and auto initializer for SW_FR_PARAMS structure.
 

Enumerations

enum  { RDR_SCALABLERIP_FRID = 0 }
 

Functions

HqBool sw_fr_server_loop (const struct SW_FR_PARAMS *swfrparams, void *vprdr_api)
 Enter a server loop to handle Farm RIP commands from a controlling process. More...
 
HVD_result sw_fr_hvd_output_page (HVD_page_output *output)
 Pass the result of an eHVD output operation to a remotely operating eHVD cache. More...
 

Detailed Description

The Farm RIP API allows the application layer to start a farm RIP server loop.

Enumeration Type Documentation

◆ anonymous enum

anonymous enum

RDR types for Scalable RIP

Enumerator
RDR_SCALABLERIP_FRID 

RIP ID for Farm RIP (number cast to pointer)

Function Documentation

◆ sw_fr_hvd_output_page()

HVD_result sw_fr_hvd_output_page ( HVD_page_output output)

Pass the result of an eHVD output operation to a remotely operating eHVD cache.

This function must only be called when the Farm RIP raster backend is connected to an HVD monitor based on the Named RDR API of class RDR_NAMES_LIBHVD_CACHE_API registered as RIPFARM_BASE. This function may be used as the HVD_monitor_params::page_output_fn for such an HVD monitor, or called from its a page output function.

Parameters
[in]outputThe page details to output.
Return values
HVD_SUCCESS(0) The page was output successfully. The page output function should not call HVD_page_output::completion_fn().
HVD_SUCCESS_INCOMPLETEThe page will be output asynchronously. The output function has copied all necessary information to output the page asynchronously. The page output function must ensure that HVD_page_output::completion_fn() is called with HVD_page_output::completion_data as the first argument when the output is complete or fails.
Returns
Any other return value greater than MON_CLASS_ERROR is an error UID. The subclass, PS error type, and UID for the error can be deconstructed using the macros in monevent.h. The page output function should not call HVD_page_output::completion_fn().

◆ sw_fr_server_loop()

HqBool sw_fr_server_loop ( const struct SW_FR_PARAMS swfrparams,
void *  vprdr_api 
)

Enter a server loop to handle Farm RIP commands from a controlling process.

This call must be made after initializing the RDR subsystem. RDR will normally be initialized as part of the SwLeSDKStart() call, so this call should be made after SwLeSDKStart().

The Farm RIP server thread will shutdown when SwLeSDKEnd() is called. A timeline event handler is used to monitor the skin timeline (SWTLT_SKIN) to detect the shutdown initiated by SwLeSDKEnd().

Parameters
[in]swfrparamsParams for configuring the Farm RIP.
[in]vprdr_apiA pointer to the process's RDR API implementation.
Return values
TRUEThe Farm RIP server loop was started successfully.
FALSEThe Farm RIP server loop did not start. The process should issue any appropriate warnings and abort, it cannot be used for RIPping.

If this call is successful, the Farm RIP server loop has started, and is waiting for messages from the controlling process. The Farm RIP server loop registers as a persistent input source, accepts page range requests from the controlling process, and pushes them onto the Farm RIP's input queue. The Farm RIP should process jobs using the normal idiom, calling SwLeProcessInputQueue() in a loop until there are no more jobs available, as implemented by Harlequin SDK library's SwLeProcessJobs() function.