Interfaces and functions required to respond to print events. More...
Modules | |
Print Event Handler Parameters | |
Parameter interfaces for print event handlers. | |
Classes | |
struct | IPrintEventHandler2 |
An event handler interface for more per-page printing system events. More... | |
struct | IPrintSetEventHandler |
An event handler interface for printing system events related to print sets. More... | |
struct | IPrintDefCreateEventHandler |
An event handler interface for printing system events related to the creation of print definitions. More... | |
Interfaces and functions required to respond to print events.
See also Event Handling.
A simple print event handler is one that performs an action on either a "begin page" or "end page" print event. An application that performs basic print logging for accounting purposes is a good example.
An advanced print event handler is one that requires notifications for print events beyond "begin page" or "end page" and/or performs any type of print resymbolization.
Simple print event handlers do not need to "#include <Mstn/Plot/PlotApi.h>" or link with any printing system libraries. "#include <Mstn/IEvent.h>" is all that is normally required. The handler is registered using MstnEventManager::AddPrintEventHandler.
Implementation and registration of an advanced print event handler is performed the same as a simple handler. In addition, the advanced handler implements one or more of IPrintEventHandler2, IPrintSetEventHandler, and/or IPrintDefCreateEventHandler.
It is important to keep in mind that due to the print worker process, events in the IPrintSetEventHandler interface are called in a different process than those in IPrintEventHandler. The handler cannot share any data between methods in those interfaces unless it sets up a private inter-process communication channel. The handler loaded into the worker process is subject to being unloaded and reloaded as the worker process is terminated and restarted during print set processing.