|
| HVD_result | HVD_monitor_start (const HVD_monitor_params *params, void *vprdr_api, HVD_monitor **ppMonitor) |
| | Create an HVD event monitor and register a connect event handler for a particular raster cache ID and PGB type. More...
|
| |
| void | HVD_monitor_finish (HVD_monitor **ppMonitor, HVD_destroy_reason reason) |
| | Destroy an HVD cache monitor. More...
|
| |
| HqBool | HVD_monitor_connected (const HVD_monitor *monitor) |
| | Determine if an HVD monitor is currently connected. More...
|
| |
| HVD_result | HVD_monitor_add_raster (HVD_monitor *monitor, const uint8 id[16], unsigned int nExpected, void *hraster, const char *rasterId, size_t size) |
| | Inform the HVD cache that we are adding raster data to an HVD element. More...
|
| |
| void | HVD_monitor_get_ids (HVD_monitor *monitor, const uint8 **pCacheId, const uint8 **pSetupId) |
| | Get the cache and setup IDs for a connected HVD monitor. More...
|
| |
eHVD event monitor and responder.
The event monitor is responsible for capturing eHVD events, and calling libHVD tracker and cache functions to connect a producer of elements and pages to an element cache and output page compositor. This component will only be used if libHVD is built into a RIP or another process that uses RDR-based events (documented in Events system) to create variable data pages using eHVD elements and page definitions.
| HVD_result HVD_monitor_add_raster |
( |
HVD_monitor * |
monitor, |
|
|
const uint8 |
id[16], |
|
|
unsigned int |
nExpected, |
|
|
void * |
hraster, |
|
|
const char * |
rasterId, |
|
|
size_t |
size |
|
) |
| |
Inform the HVD cache that we are adding raster data to an HVD element.
- Parameters
-
| [in] | monitor | The monitor returned by HVD_monitor_start(). |
| [in] | id | The element ID to append the raster to. |
| [in] | nExpected | The total number of rasters that we expect to add for this element. In general, this number should be set on the first call of this function for an element, and the same value should be used for all calls on the same element thereafter. It is possible to revise the expected number downwards if some rasters are omitted, or upwards if more rasters are added, but it should never be less than the number of rasters added (including this one), and it should never be increased after all of the expected rasters have been received. When all of the rasters that are expected have been received, the element is marked as ready for use, and pages using this element may be output immediately. |
| [in] | hraster | A raster handle. This is used to identify the raster data when the page is output, or the element is destroyed. |
| [in] | rasterId | A raster handle identifier. This is a zero-terminated string used when the HVD cache is hosted in a different Scalable RIP HVD process. The raster handle identifier is passed to the process hosting the HVD cache, to allow it to identify and retain the raster, and may be passed to other processes to allow them to identify and access the raster data for output. For local HVD cache implementations, this may be NULL. |
| [in] | size | The size of the raster data stored. This is counted against the cache limit. |
- Return values
-
| HVD_SUCCESS | The raster handle was added to the element successfully. This was the final raster expected. |
| HVD_SUCCESS_INCOMPLETE | The raster handle was added to the element successfully. This was not the final raster expected. |
| HVD_ERROR_NO_ELEMENT | There was no element to add the raster to. |
| HVD_ERROR_EXCESS_RASTERS | The number of rasters is more than the number expected, including the raster currently being added. |
| HVD_ERROR_NO_MEMORY | The raster handle could not be added to the element, because the cache could not allocate memory. |
- 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.
All elements expect to have at least one raster, and will not be marked as complete until nExpected rasters have been delivered.
If the return value is HVD_SUCCESS or HVD_SUCCESS_INCOMPLETE, the raster handle has been retained by the HVD element, and must remain valid until the HVD cache calls the raster release callback function with the handle. This will happen during the HVD disconnect call if rendering is aborted, or when the element is purged from the cache.
For any other return value, the caller should dispose of the raster data.