VMS Help
PSM Routines, PSM$PRINT
*Conan The Librarian (sorry for the slow response - running on an old VAX)
|
|
The PSM$PRINT routine invokes the OpenVMS-supplied print
symbiont.
PSM$PRINT must be called exactly once after all user service
routines have been specified using PSM$REPLACE.
Format
PSM$PRINT [streams] [,bufsiz] [,worksiz] [,maxqios] [,options]
OpenVMS usage:cond_value
type: longword (unsigned)
access: write only
mechanism: by value
Longword condition value. Most utility routines return a
condition value in R0. Condition values that this routine can
return are listed under Condition Values Returned.
streams
OpenVMS usage:longword_unsigned
type: longword (unsigned)
access: read only
mechanism: by reference
Maximum number of streams that the symbiont is to support. The
streams argument is the address of a longword containing this
number, which must be in the range of 1 to 16. If you do not
specify streams, a default value of 1 is used. Thus, by default,
a user-modified symbiont supports one stream, which is to say
that it is a single-threaded symbiont.
A stream (or thread) is a logical link between a print execution
queue and a printing device. When a symbiont process can accept
simultaneous links to more than one queue, that is, when it can
service multiple queues simultaneously, the symbiont is said to
be multithreaded.
bufsiz
OpenVMS usage:longword_unsigned
type: longword (unsigned)
access: read only
mechanism: by reference
Maximum buffer size in bytes that the print symbiont is to use
for output operations. The bufsiz argument is the address of a
longword containing the specified number of bytes.
The print symbiont actually uses a buffer size that is the
smaller of: (1) the value specified by bufsiz or (2) the
system parameter MAXBUF. If you do not specify bufsiz, the print
symbiont uses the value of MAXBUF.
The print symbiont uses this size limit only for output
operations. Output operations involve the placing of processed or
formatted pages into a buffer that will be passed to the output
routine.
The print symbiont uses the value specified by bufsiz only as
an upper limit; most buffers that it writes will be smaller than
this value.
worksiz
OpenVMS usage:longword_unsigned
type: longword (unsigned)
access: read only
mechanism: by reference
Size in bytes of a work area to be allocated for the use of user
routines. The worksiz argument is the address of a longword
containing this size in bytes. If you do not specify worksiz,
no work area is allocated.
A separate area of the specified size is allocated for each
active symbiont stream.
maxqios
OpenVMS usage:longword_unsigned
type: longword (unsigned)
access: read only
mechanism: by reference
Specifies the maximum number of outstanding $QIOs that a print
symbiont stream using the LAT protocol may generate. Set symbiont
process quotas large enough to handle the maximum number of QIOs
multiplied by the number of streams, using a number between 2 and
32. For normal printing capabilities, the suggested quota is 10;
for high-speed printing, use a larger number.
options
OpenVMS usage:longword_unsigned
type: longword (unsigned)
access: read only
mechanism: by reference
Longword bit vector that specifies the LAT protocal option using
the PSM$M_LAT_PROTOCOL symbolic value. Note that using the LAT_
PROTOCOL option carries the following restrictions:
o Replacement of the output and job completion routines will be
overridden
o Output device must be a LAT device
The PSM$PRINT routine must be called exactly once after all user
routines have been specified to the print symbiont. Each user
routine is specified to the symbiont in a call to the PSM$REPLACE
routine.
The PSM$PRINT routine allows you to specify whether the print
symbiont is to be single-threaded or multithreaded, and if
multithreaded, how many streams or threads it can have. In
addition, this routine allows you to control the maximum size
of the output buffer.
4 - Condition Values Returned
|
SS$_NORMAL Normal successful completion.
This routine also returns any condition values returned by the
$SETPRV, $GETSYI, $PURGWS, and $DCLAST system services, as well
as any condition values returned by the SMB$INITIALIZE routine.
[legal]
[privacy]
[GNU]
[policy]
[netiquette]
[sponsors]
[FAQ]
Polarhome, production since 1999.
Member of Polarhome portal.