Museum

Home

Lab Overview

Retrotechnology Articles

Online Manuals

⇒ tt_message_callback_add(3) — SunOS 5.6

Media Vault

Software Library

Restoration Projects

Artifacts Sought

Related Articles

tt_c(5)

tt_message_receive(3)

tt_message_callback_add(3)

NAME

tt_message_callback_add − register a callback function

SYNOPSIS

#include <Tt/tt_c.h>
Tt_status tt_message_callback_add(Tt_message m,
Tt_message_callback f);

DESCRIPTION

The tt_message_callback_add() function registers a callback function to be automatically invoked by tt_message_receive(3) whenever a reply or other state-change to this message is returned. 

The callback is defined in <Tt/tt_c.h>.  If the callback returns TT_CALLBACK_CONTINUE, other callbacks will be run; if no callback returns TT_CALLBACK_PROCESSED, tt_message_receive() returns the message. If the callback returns TT_CALLBACK_PROCESSED, no further callbacks are invoked for this event; tt_message_receive() does not return the message.

The m argument is the opaque handle for the message involved in this operation.  The f argument is the message callback to be run. 

The pattern handle will be NULL if the message did not match a dynamic pattern.  This is usually the case for message callbacks. 

RETURN VALUE

Upon successful completion, the tt_message_callback_add() function returns the status of the operation as one of the following Tt_status values:

TT_OK
The operation completed successfully.

TT_ERR_NOMP
The ttsession(1) process is not running and the ToolTalk service cannot restart it. 

TT_ERR_POINTER
The pointer passed does not point to an object of the correct type for this operation.

APPLICATION USAGE

These callbacks are invoked from tt_message_receive(); the program must, therefore, call tt_message_receive() when the file descriptor returned by tt_fd() becomes active.

The application can use tt_message_callback_add() to create wrappers for ToolTalk messages. For example, a library routine can construct a request, attach a callback to the message, send the message, and process the reply in the callback. When the callback returns TT_CALLBACK_PROCESSED, the message reply is not returned to the main program; the message and reply are, therefore, completely hidden. 

SEE ALSO

tt_c(5), tt_message_receive(3). 

ToolTalk 1.3  —  Last change: 1 March 1996

Typewritten Software • bear@typewritten.org • Edmonds, WA 98026