VMS Help  —  RTL Routines, PPL$  PPL$ENABLE_EVENT_AST
    The Enable AST Notification of an Event routine specifies the
    address of an AST routine (and optionally an argument to that
    routine) to be delivered when an event occurs.

    Format

      PPL$ENABLE_EVENT_AST  event-id ,astadr [,astprm]

1  –  Arguments

 event-id

    OpenVMS usage identifier
    type          longword (unsigned)
    access        read only
    mechanism     by reference
    Identifier of the event. The event-id argument is the address of
    an unsigned longword containing the identifier.

    Event-id is returned by PPL$CREATE_EVENT.

 astadr

    OpenVMS usage ast_procedure
    type          procedure value
    access        call without stack unwinding
    mechanism     by reference
    AST routine. The astadr argument is a procedure value of the
    user's AST routine. This routine is called on the user's behalf
    when the event state becomes occurred.

 astprm

    OpenVMS usage user_arg
    type          unspecified
    access        read only
    mechanism     by value
    AST value passed as the argument to the specified AST routine.
    The astprm argument is the address of a vector of unsigned
    longwords containing this optional value. If this argument is not
    specified, PPL$_EVENT_OCCURRED is the astprm for a user-created
    event. The astprm argument has special restrictions when used in
    conjunction with the PPL$ event routines.

    o  For user-defined events, the AST-argument must point to a
       vector of two unsigned longwords. The first longword is a
       "context" reserved for the user; it is not read or modified
       by PPL$. The second longword receives the value specified by
       the event-param argument in the call to PPL$TRIGGER_EVENT that
       results in the delivery of this AST.

    o  For PPL$-defined events (those not created by the user),
       the astprm argument must point to a vector of four unsigned
       longwords. The vector accommodates the following:

       -  The user's "context" longword

       -  The longword to receive the event's distinguishing
          condition value

       -  The parameters to the PPL$-defined event (the "trigger"
          parameter)

       Because each of the predefined events takes two arguments, the
       vector that astprm points to must be four longwords in length.
Close Help