Important considerations
v
Code processing becomes an integral part of PSF and can affect performance and
reliability.
v
User-exits should be coded by experienced programmers who are aware of overall
system implications.
v
Any delays caused by this exit will translate into a PSF processing delay and
could
affect printer performance
.
v
This exit is not passed any structured fields that are contained in resources that are
processed. This includes: form definitions, overlays, page segments, fonts, data object
resources, internal medium maps, and data object fonts.
v
Code processing must be able to handle PSF repositioning.
Repositioning can occur as a result of errors or operator commands. PSF can reposition
items forward into the print job, skip structured fields, or reposition items back into
previously processed data. If PSF repositions back into the print file, it is the responsibility
of the exit to return the same data in the same sequence to PSF, just as it did when the
structured field was originally passed to the exit.
Because of the constraints outlined above, you should first consider using the transform
subsystem to process data, because the transform subsystem does not have these
limitations. For example, a transform object would have access to all of the input data (no
restrictions) and could add, delete, and modify both resources and pages. In addition, the
transform subsystem processing is done before printing begins, so it would have no impact
on printer performance or behavior.
The input data user-exit is not capable of identifying individual document boundaries in a
data stream. For example, your job might have 5 separate documents that each contain 10
pages of data. This is viewed by the exit as 50 pages of data, not 5 units of 10. The
transform subsystem does not have this limitation.
The PSF Input Record Exit is responsible for managing any memory it allocates. It
can reuse the memory across calls through the use of a work area pointer provided
in
ainuexit.h
. PSF does not free any memory that might be pointed to by fields in
either the
INDATA_EXITDATA
structure or the
PSFINSERTRECS
structure. The exit can
point to memory that it has defined or allocated. The exit can reuse allocated
memory or free memory when it is appropriate. PSF might run out of memory if
the PSF Input Record Exit mismanages memory.
The source code (in the C programming language) for the sample input data
user-exit program listed on page 57 is in the
/usr/lpp/psf/exits/ainuxind.c
file. This
sample program consists of a return code and performs no function.
The data structures for the input data user-exit program are included with the
source code in the
/usr/lpp/psf/exits/ainuexit.h
file.
The declaration of this exit is:
void INDATA (INDATA_EXITDATA *exitdata)
The
INDATA_EXITDATA
input/output parameter contains all of the input and
output data needed to communicate between InfoPrint Manager and the user-exit
program.
These fields are also found in the input data user-exit:
Chapter 6. User-exit programs (PSF, Generalized Fax, and Email DSS only)
71
Summary of Contents for InfoPrint Manager for AIX
Page 1: ...InfoPrint Manager for AIX Procedures Version 4 Release 3 G550 1066 04 ...
Page 2: ......
Page 3: ...InfoPrint Manager for AIX Procedures Version 4 Release 3 G550 1066 04 ...
Page 6: ...iv InfoPrint Manager for AIX Procedures ...
Page 8: ...vi InfoPrint Manager for AIX Procedures ...
Page 16: ...2 InfoPrint Manager for AIX Procedures ...
Page 20: ...6 InfoPrint Manager for AIX Procedures ...
Page 58: ...44 InfoPrint Manager for AIX Procedures ...
Page 62: ...48 InfoPrint Manager for AIX Procedures ...
Page 70: ...56 InfoPrint Manager for AIX Procedures ...
Page 96: ...82 InfoPrint Manager for AIX Procedures ...
Page 110: ...96 InfoPrint Manager for AIX Procedures ...
Page 156: ...142 InfoPrint Manager for AIX Procedures ...
Page 170: ...156 InfoPrint Manager for AIX Procedures ...
Page 234: ...220 InfoPrint Manager for AIX Procedures ...
Page 236: ...222 InfoPrint Manager for AIX Procedures ...
Page 256: ...242 InfoPrint Manager for AIX Procedures ...
Page 326: ...312 InfoPrint Manager for AIX Procedures ...
Page 330: ...316 InfoPrint Manager for AIX Procedures ...
Page 331: ...Part 3 Operator and user procedures Copyright InfoPrint Solutions Company 1998 2010 317 ...
Page 332: ...318 InfoPrint Manager for AIX Procedures ...
Page 348: ...334 InfoPrint Manager for AIX Procedures ...
Page 365: ...Part 4 Appendixes Copyright InfoPrint Solutions Company 1998 2010 351 ...
Page 366: ...352 InfoPrint Manager for AIX Procedures ...
Page 370: ...356 InfoPrint Manager for AIX Procedures ...
Page 378: ...364 InfoPrint Manager for AIX Procedures ...
Page 382: ...368 InfoPrint Manager for AIX Procedures ...
Page 406: ...392 InfoPrint Manager for AIX Procedures ...
Page 416: ...402 InfoPrint Manager for AIX Procedures ...
Page 417: ......
Page 418: ...Program Number 5648 F35 Printed in USA G550 1066 04 ...