Copyright Digital Equipment Corp. All rights reserved.

Arguments

 

request_id

   OpenVMS usage:address
   type:         longword (unsigned)
   access:       read only
   mechanism:    by reference
   Request identifier value supplied by the symbiont when it calls
   your output routine. The request_id argument is the address of a
   longword containing this value.

   If your output routine initiates an asynchronous operation (for
   example, a call to the $QIO system service), you must save the
   request_id argument because you will need to store the request
   identifier value for later use with the PSM$REPORT routine. See
   the description of the PSM$REPORT routine for more information.
 

work_area

   OpenVMS usage:address
   type:         longword (unsigned)
   access:       write only
   mechanism:    by reference
   Work area supplied by the symbiont for the use of your format
   routine. The symbiont supplies the address of this area when
   it calls your routine. The work_area argument is a longword
   containing the address of the work area. The work area is a
   section of memory that your format routine can use for buffering
   and other internal operations.

   The size of the work area allocated is specified by the work_size
   argument in the PSM$PRINT routine. If you do not specify work_
   size in the call to PSM$PRINT, no work area is allocated.

   In a multithreaded symbiont, a separate work area is allocated
   for each thread. This work area is shared by all user routines.
   The work area is initialized to zero when the symbiont is first
   started.
 

func

   OpenVMS usage:function_code
   type:         longword (unsigned)
   access:       read only
   mechanism:    by reference
   Function code supplied by the symbiont when it calls your
   output routine. The func argument is the address of a longword
   containing this code.

   The function code specifies the reason the symbiont is calling
   your output routine or, in other words, the function that the
   symbiont expects your routine to perform at this time.

   Most function codes require or allow additional information to
   be passed in the call via the funcdesc and funcarg arguments. The
   description of each output function code, therefore, includes a
   description of how these two arguments are used for that function
   code.

   The following list describes all the function codes that the
   symbiont might supply when it calls your output routine (function
   codes applicable only to input and formatting routines are
   explained in the descriptions of the user input routine and user
   formatting routine, respectively). Each programming language
   provides an appropriate mechanism for defining these function
   codes.