NAME irFAXEnd - mark the end of a list of FAX print functions SYNOPSIS #include <irapi.h> int irFAXEnd (channel_id cid, const char *tsi, const char *comments, int tag); DESCRIPTION The irFAXEnd function marks the end of a list of one or more FAX print [ irFAXPrint(3IRAPI)] functions for the channel specified by cid. tsi is the international telephone number of the channel printing the FAX or any alphabetic identification no more than 20 characters. comments is arbitrary text to allow the FAX request to be traced from the application to the FAX server. tag is a user defined (24-bit) value which is returned with the subsequent IRE_FAXPRINT_DONE event. irFAXEnd(3IRAPI) must be called with the channel in the IRS_FAXPRINT_QUEUED library state. If successful, the chan- nel is moved to the IRS_FAXPRINTING_PENDING state; on error the FAX queue is cleared. If no FAX jobs are active, the channel is returned to the IRS_IDLE state, otherwise the channel is returned to the IRS_FAXPRINTING (as it was before the queuing irFAXPrint(3IRAPI) function was called). A FAX request may be stopped any time after returning from irFAXEnd(3IRAPI) by calling irStop(3IRAPI). EVENT IRE_FAXPRINT_PROG is generated when a FAX job_id is acquired. The job_id is returned in the event_text element of the event structure. If event_mod1 is IREM_ERROR, the job_id is not valid and the subsequent IRE_FAXPRINT_DONE will indicate failure. IRE_FAXPRINT_DONE is generated when the FAX operation com- pletes. event_mod1 contains the results of the FAX print request. event_text contains the job_id for the FAX request. The IRE_FAXPRINT_DONE event is generated with the IREM_DENY modifier if resources could not be allocated in the time specified by IRP_RESOURCE_RETURNMODE and irFAXEnd(3IRAPI) returned IRR_PENDING. When resources are allocated after IRR_PENDING is returned, the IRE_GRANT event occurs. RETURN VALUE IRR_OK is returned if the request to FAX is successfully initiated. IRR_FAIL is returned if an error occurs. IRR_PENDING is returned if no resources are available for the FAX function. ERROR irError is set as follows if an error occurs: IRER_INVALID if the cid is invalid IRER_BADSTATE if irFAXEnd is called without first calling one or more FAX print functions, thereby putting the channel into the IRS_FAXPRINT_QUEUED state IRER_RTU_BUSY if the required Feature License's are all in use and IRP_RESOURCE_RETURNMODE is set to IRD_IMMEDIATE IRER_NO_RTU if no Feature License has been purchased for this function IRER_RESOURCEBUSY if there are no resources available and IRP_RESOURCE_RETURNMODE is set to IRD_IMMEDIATE IRER_NORESOURCES if there are no resources in existence IRER_RESTRICTED if the channel is restricted from using the required resources IRER_DRIVER_ERROR if a driver call failure occurs (see irSysError for additional information) IRER_SYSERROR if a system call failure occurs (see irSysError for additional information) IRER_APIERROR if a third party API call failure occurs (see irSysError for additional information) EXAMPLES The following pseudo code is intended to show possible func- tion call sequences: Print a single FAX from a TIFF 6.0 file: irFAXPrint(cid, file); irFAXEnd(cid, tsi, "", 0, NULL); while (irWCheck(&ev) != IRR_FAIL) { /* Process IRE_FAXPRINT_DONE */ ... } Print a FAX from a text file and TIFF image: irFAXPrintText(cid, testFile); irFAXPrint(cid, file); irFAXEnd(cid, tsi, "", 0, NULL); while (irWCheck(&ev) != IRR_FAIL) { /* Process IRE_FAXPRINT_DONE */ ... } Print two separate FAX jobs on the same call: irFAXPrint(cid, testFile); irFAXEnd(cid, tsi, "", TAG1, NULL); while (irWCheck(&ev) != IRR_FAIL) { /* Process 1 IRE_FAXPRINT_PROG event */ ... } irFAXPrint(cid, testFile); irFAXEnd(cid, tsi, "", TAG2, NULL); while (irWCheck(&ev) != IRR_FAIL) { /* Process IRE_FAXPRINT_PROG event and 2 * IRE_FAXPRINT_DONE events */ ... } SEE ALSO irFAXPrint(3IRAPI), IrEVENTS(4IRAPI). VERSION This is version 7/11/02 of this man page.