Harlequin RIP SDK

Functions for registering and deregistering the HVD cache implementations provided by eHVD support library. More...

#include "std.h"
#include "swtrace.h"
#include "rdrapi.h"

Functions

HqBool libhvd_register (sw_rdr_api_20191120 *rdr_api_20191120)
 Register the instances of the HVD_cache_fns API implemented by libHVD as named RDRs, in namespace RDR_NAMES_LIBHVD_CACHE_API, with version 20240213. More...
 
void libhvd_deregister (sw_rdr_api_20191120 *rdr_api_20191120)
 Deregister the instances of the HVD_cache_fns API implemented by libHVD. More...
 
void HVD_set_trace_handler (SwTraceHandlerFn *handler)
 Set a probe handler to get fine-grained tracing information from LibHVD. Probes are only enabled in timing builds. More...
 

Detailed Description

Functions for registering and deregistering the HVD cache implementations provided by eHVD support library.

Function Documentation

◆ HVD_set_trace_handler()

void HVD_set_trace_handler ( SwTraceHandlerFn handler)

Set a probe handler to get fine-grained tracing information from LibHVD. Probes are only enabled in timing builds.

Parameters
[in]handlerThe probe handler function to call from LibHVD.

◆ libhvd_deregister()

void libhvd_deregister ( sw_rdr_api_20191120 rdr_api_20191120)

Deregister the instances of the HVD_cache_fns API implemented by libHVD.

Parameters
[in]rdr_api_20191120The RDR API in which to deregister the barcode API.

◆ libhvd_register()

HqBool libhvd_register ( sw_rdr_api_20191120 rdr_api_20191120)

Register the instances of the HVD_cache_fns API implemented by libHVD as named RDRs, in namespace RDR_NAMES_LIBHVD_CACHE_API, with version 20240213.

Parameters
[in]rdr_api_20191120The RDR API in which to register the barcode API.
Returns
TRUE if the API was registered successfully
FALSE if the API was not registered

The cache instances registered by this function are:

  • "LIBHVD_BASE". This is a process-local memory eHVD cache suitable for use as a base class for single RIP eHVD cache. This cache implementation does not implement HVD_cache_fns::raster_find, HVD_cache_fns::raster_release, HVD_cache_fns::recovery_filter, or HVD_cache_fns::raster_purge, and so is not directly instantiable.

    To create a process-local memory eHVD cache implementation, you should copy this implementation into an HVD_cache_fns structure, update these method pointers to reflect how the raster storage is managed, and register the modified structure in RDR.

  • "LIBHVD_SHM_BASE". This is a shared memory eHVD cache suitable for use as a base class for a Scalable RIP eHVD cache. This cache implementation does not implement HVD_cache_fns::raster_find, HVD_cache_fns::raster_release, HVD_cache_fns::recovery_filter, or HVD_cache_fns::raster_purge, and so is not directly instantiable.

    To create a process-local memory eHVD cache implementation, you should copy this implementation into an HVD_cache_fns structure, update these method pointers to reflect how the raster storage is managed, and register the modified structure in RDR.

    This implementation (and any derived implementations) recognises one parameter, the minimum number of entries in the shared memory cache. This parameter is supplied by setting the /OptimizedPDFCacheID PDF parameter to the name of the monitored cache ID appended with a question mark and then the required minimum size. e.g., if a derived cache implementation is registered as "MYCACHE",

    << /OptimizedPDFCacheID (MYCACHE?999999) >> setpdfparams

    would set the minimum number of entries supported to 999999.