Parameters for the HVD monitor. More...
#include "hvdevmon.h"
Data Fields | |
size_t | size |
The size of this structure. | |
const char * | cache_id |
HVD cache ID this handler responds to. | |
HVD_connect_verify_fn * | connect_verify_fn |
void * | connect_verify_data |
Data for verifying the connection. | |
HqBool | position_independent |
Is the client position independent? | |
HqBool | allow_zero_elements |
Can the client handle zero size elements? | |
HqBool | allow_early_output |
Can the client handle output in any order (when elements become ready)? | |
HqBool | allow_async_output |
Can the client handle output asynchronously. | |
HVD_page_output_fn * | page_output_fn |
Function to output a page. | |
HVD_cache_policy | cache_policy |
Caching purging policy. | |
HVD_element_release_fn * | element_release_fn |
HVD_raster_release_fn * | raster_release_fn |
HVD_recovery_filter_fn * | recovery_filter_fn |
HVD_raster_purge_fn * | raster_purge_fn |
HVD_tracker_fns * | tracker_fns |
Tracker functions, or NULL for default. | |
HVD_cache_fns * | cache_fns |
Cache functions, or NULL for default. | |
sw_memory_instance * | mem |
Memory allocation/deallocation functions. | |
Parameters for the HVD monitor.
HVD_connect_verify_fn* HVD_monitor_params::connect_verify_fn |
A function to verify that an HVD connection is in a suitable context. If this is non-NULL, it is called during HVD_monitor_start() with the connect_verify_data parameter to verify that the output is set to use raster callbacks that are compatible with the HVD connection.
[in] | cache_id | A zero-terminated string indicating the OptimizedPDFCacheID that this connection was for. |
[in] | data | The data supplied to HVD_monitor_start() by the creator for the purposes of verifying the connection. |
TRUE | The HVD connection should be established. |
FALSE | The HVD connection should not be established. |
This function exists so that the creator of an HVD monitor can verify that the RIP is configured suitably for use with HVD. HVD is configured using the /OptimizedPDFCacheID PDF parameter. This function can be used to prevent confusion or corruption if the RIP output is not configured in a way that is not suitable for with the HVD cache specified.
HVD_element_release_fn* HVD_monitor_params::element_release_fn |
A function to call when an element is destroyed. This is called after destroying all rasters attached to the element.
[in] | pElement | The element which the element handle was attached to. |
[in] | helement | Data attached to the element using HVD_element_set_data(). |
HVD_raster_purge_fn* HVD_monitor_params::raster_purge_fn |
A function to compress or purge data from rasters when running low on cache memory. This is called for each raster attached to an element. If not enough memory can be recovered by purging the top candidate elements, they will be released.
[in] | pElement | The element which the raster handle was attached to. |
[in] | hraster | A raster handle previously passed to HVD_element_add_raster(). |
[in,out] | recover | A location where the amount of memory the purge operation still needs to recover is stored. On exit, the raster purge function should update this to the amount that is still needed after compressing, purging to storage, or otherwise reducing memory consumption. The reduction in memory may exceed the amount needed, in which case the raster purge function should set *recover to zero on exit. |
The purge function, if present, may be called while an element is locked. It must not discard raster data, but may make it slower to access.
HVD_raster_release_fn* HVD_monitor_params::raster_release_fn |
A function to call when an element with attached rasters is destroyed. This is called for each raster attached to the element.
[in] | pElement | The element which the raster handle was attached to. |
[in] | hraster | A raster handle previously passed to HVD_element_add_raster(). |
HVD_recovery_filter_fn* HVD_monitor_params::recovery_filter_fn |
A function to filter rasters to those suitable for compression or eviction when running low on memory. If this parameter is NULL, then all elements and rasters will be considered eligible for all low memory calls.
[in] | pElement | The element that might be removed from the cache. |
[in] | reason | The reason supplied to the call to HVD_cache_size() or HVD_cache_recover(). This parameter may be used to exclude elements or rasters from low-memory recovery, if they do not contribute to the type of memory requested. |
TRUE | The HVD raster is eligible for purging or removal. |
FALSE | The HVD raster is not eligible for purging or removal. |