tt_pattern_user(library call)

NAME
tt_pattern_user — return the value in a user data cell for a pattern object

SYNOPSIS

#include &<Tt/tt_c.h>
void *tt_pattern_user(
Tt_pattern p,
int key);

DESCRIPTION

The tt_pattern_user function returns the value in the indicated user data cell for the specified pattern object.

Every pattern object allows an arbitrary number of user data cells that are each one word in size. The user data cells are identified by integer keys. The tool can use these keys in any manner to associate arbitrary data with a pattern object.

The user data is part of the pattern object (that is, the storage buffer in the application); it is not part of the actual pattern. The content of user cells has no effect on pattern matching.

The p argument is a unique handle for a message pattern. This handle is returned after tt_pattern_create is called. The key argument is the specified user data cell. The application can use tt_pattern_user_set(3) to assign the keys to the user data cells that are part of the pattern object. The value of each data cell must be unique for this pattern.

RETURN VALUE

Upon successful completion, the tt_pattern_user function returns the data cell, a piece of arbitrary user data that can hold a void *. The application can use tt_ptr_error(3) to extract one of the following Tt_status values from the returned data:

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

The user data cell is intended to hold an address. If the address selected is equal to one of the Tt_status enumerated values, the result of the tt_ptr_error(3) function will not be reliable.

SEE ALSO

Tt/tt_c.h - Tttt_c(5), tt_pattern_user_set(3), tt_pattern_create(3), tt_ptr_error(3).