-
公开(公告)号:US07095523B2
公开(公告)日:2006-08-22
申请号:US10318717
申请日:2002-12-12
申请人: Craig Duray Brossman , Arianné Therese Hinds , Nenad Rijavec , Mark Andrew Stephens , Raymond Glenn Wardell
发明人: Craig Duray Brossman , Arianné Therese Hinds , Nenad Rijavec , Mark Andrew Stephens , Raymond Glenn Wardell
CPC分类号: G06F3/1207 , G06F3/1259 , G06F3/1288
摘要: A flexible and extensible virtual printer architecture is provided. According to one aspect of the present invention final status associated with a presentation job (e.g., a fax job or a print job) is made available to an output server. One or more host processing threads or processes are spawned for each new presentation job received by the output server. Then, the presentation job is submitted to a presentation device for which the presentation job is destined by way of an instance of a wrapper process that is capable of communicating bi-directionally with the presentation device. After submitting the presentation job, a host job status thread or process waits for status pertaining to the presentation job. Ultimately, a final status associated with the presentation job is received by the wrapper process and the wrapper process reports the final status to the host job status thread or process. According to another aspect of the present invention, job and device status may be reported asynchronously. One or more host processing threads or processes are spawned for each new presentation job received. A first presentation job is submitted to a presentation device for which the presentation job is destined by way of a first instance of a wrapper process that communicates bi-directionally with the presentation device. Subsequently, a second presentation job is submitted to the presentation device by way of a second instance of the wrapper process. A first and second job status thread or process wait for status pertaining to the first and second presentation jobs, respectively. A final status associated with the second presentation job is received by the second instance of the wrapper before a final status associated with the first presentation job is received by the first instance of the wrapper. Then, the second instance of the wrapper process reports the final status to the second job status thread or process.