Parameters for each eHVD cache instance hosted. More...
#include "rf_library.h"
Data Fields | |
| size_t | size |
| Size of this structure. | |
| const char * | cache_id |
| The cache ID of this instance. | |
| void * | data |
| An opaque data pointer passed to the method functions. The cache instance creator is responsible for managing the lifetime of this data. | |
| rf_mon_type(* | raster_from_client )(void *data, const char *raster_id, void **phraster) |
| A function to construct a handle to raster data provided by a client. More... | |
| void(* | raster_release )(void *data, const char *raster_id, void *hraster) |
| Function to release a raster handle from the cache. More... | |
| rf_mon_type(* | hvd_output_page )(void *data, struct HVD_page_output *output) |
| Optional function for page output callback. More... | |
| void(* | hvd_output_done )(void *data) |
| Optional function for page output complete. More... | |
Parameters for each eHVD cache instance hosted.
| void(* RF_HVD_CACHE_INSTANCE::hvd_output_done) (void *data) |
Optional function for page output complete.
This is called when the remote HVD cache is disconnected from all clients, indicating that the output for a job is complete. This may not strictly follow job boundaries, because the remote cache is asynchronous with relation to the Farm RIPs.
| [in] | data | The opaque RF_HVD_CACHE_INSTANCE::data pointer supplied on cache creation. |
| rf_mon_type(* RF_HVD_CACHE_INSTANCE::hvd_output_page) (void *data, struct HVD_page_output *output) |
Optional function for page output callback.
This is called when a Farm RIP determines that all of the elements for a page are ready and present in the cache, and passes the page to this shared cache instance for output by calling sw_fr_hvd_output_page(). If this cache instance does not support remote output, this method pointer may be NULL: the Farm RIP will receive and raise an error.
| [in] | data | The opaque RF_HVD_CACHE_INSTANCE::data pointer supplied on cache creation. |
| [in] | output | The page details to output. |
| HVD_SUCCESS | (0) The output completed successfully. The page output function should not call HVD_page_output::completion_fn(). |
| HVD_SUCCESS_INCOMPLETE | (-1) The 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. |
| rf_mon_type(* RF_HVD_CACHE_INSTANCE::raster_from_client) (void *data, const char *raster_id, void **phraster) |
A function to construct a handle to raster data provided by a client.
| [in] | data | The opaque RF_HVD_CACHE_INSTANCE::data pointer supplied on cache creation. |
| [in] | raster_id | A zero-terminated string containing the identifying information for the raster provided by the client. |
| [out] | phraster | A location to store an opaque raster handle. |
| HVD_SUCCESS | (0) The function succeeded. When it no longer needs the raster handle stored in *phraster, the cache instance will call the RF_HVD_CACHE_INSTANCE::raster_release() function, if it exists, to release it. |
If this function succeeded, the cache instance contains a reference or copy of the raster data, and can supply references or copies to clients using the raster_id name. The client may dispose of its reference or copy of the raster data, and the data will remain accessible from the cache instance until RF_HVD_CACHE_INSTANCE::raster_release_fn() is called.
| void(* RF_HVD_CACHE_INSTANCE::raster_release) (void *data, const char *raster_id, void *hraster) |
Function to release a raster handle from the cache.
| [in] | data | The opaque RF_HVD_CACHE_INSTANCE::data pointer supplied on cache creation. |
| [in] | raster_id | A zero-terminated string containing the identifying information for the raster provided by the client. |
| [in] | hraster | An opaque handle to the raster, originally created by the RF_HVD_CACHE_INSTANCE::raster_from_client_fn method. |
This function is invoked for each non-NULL raster previously added to an element.