Harlequin RIP SDK
SWMSG_RR_ELEMENT_QUERY_LOCK Struct Reference

HVD element query message, sent with the SWEVT_RR_ELEMENT_QUERY_LOCK event. More...

#include "rrevents.h"

Data Fields

void * connection
 
sw_tl_ref timeline
 
const uint8id
 
uintptr_t handle
 

Detailed Description

HVD element query message, sent with the SWEVT_RR_ELEMENT_QUERY_LOCK event.

Looks for a raster element with the given id, and locks it against purging if found.

Returns SW_EVENT_CONTINUE if nothing found, in which case handle is undefined. Note that NULL is a valid value for handle which means that the element is defined, but is degenerate.

If the element is found, it should not be purged from the cache instance until it receives a corresponding unlock event, or the connection ends. This controls the low water mark level of the cache such that the current page can be guaranteed to complete. Of course the cache implementation is free to store raster elements even after the unlock, and should be encouraged to do so. This locking mechanism simply defines the minimum requirement for successful output.

An element may be queried and locked multiple times in the same connection before receiving any unlock messages. This is a common case when Harlequin Parallel Pages is active. If there are no errors in processing a job, there will be an equal number of unlock messages to successful query/lock messages. All locks made during a connection should be removed when the connection is disconnected.

Field Documentation

◆ connection

void* SWMSG_RR_ELEMENT_QUERY_LOCK::connection

Opaque handle to the connection to which this event is relevant. All handlers whose connection handle doesn't match should immediately return SW_EVENT_CONTINUE.

◆ handle

uintptr_t SWMSG_RR_ELEMENT_QUERY_LOCK::handle

Element handle - an opaque reference to the cache instance, if any. This will not be used by the RIP directly if external HVD is on.

◆ id

const uint8* SWMSG_RR_ELEMENT_QUERY_LOCK::id

Unique ID, length RR_ELEMENT_ID_LENGTH.

◆ timeline

sw_tl_ref SWMSG_RR_ELEMENT_QUERY_LOCK::timeline

Identifies the job containing the pages.


The documentation for this struct was generated from the following file: