<!-- $XConsortium: o_cb_add.sgm /main/5 1996/08/30 14:41:12 rws $ -->
<!-- (c) Copyright 1995 Digital Equipment Corporation. -->
<!-- (c) Copyright 1995 Hewlett-Packard Company. -->
<!-- (c) Copyright 1995 International Business Machines Corp. -->
<!-- (c) Copyright 1995 Sun Microsystems, Inc. -->
<!-- (c) Copyright 1995 Novell, Inc. -->
<!-- (c) Copyright 1995 FUJITSU LIMITED. -->
<!-- (c) Copyright 1995 Hitachi. -->

<![ %CDE.C.CDE; [<RefEntry Id="CDEMX.XCDI.MAN177.rsml.1">]]>
<![ %CDE.C.XO; [<RefEntry Id="XCDI.MAN177.rsml.1">]]>
<RefMeta>
<RefEntryTitle>tt_otype_opnum_callback_add</RefEntryTitle>
<ManVolNum>library call</ManVolNum>
</RefMeta>
<RefNameDiv>
<RefName><Function>tt_otype_opnum_callback_add</Function></RefName>
<RefPurpose>return a callback if two opnums are equal
</RefPurpose>
</RefNameDiv>
<!-- $XConsortium: o_cb_add.sgm /main/5 1996/08/30 14:41:12 rws $-->
<!-- CDE Common Source Format, Version 1.0.0-->
<!-- (c) Copyright 1993, 1994, 1995 Hewlett-Packard Company-->
<!-- (c) Copyright 1993, 1994, 1995 International Business Machines Corp.-->
<!-- (c) Copyright 1993, 1994, 1995 Sun Microsystems, Inc.-->
<!-- (c) Copyright 1993, 1994, 1995 Novell, Inc.-->
<RefSynopsisDiv>
<FuncSynopsis Remap="ANSI">
<FuncSynopsisInfo>#include &lt;Tt/tt_c.h>
</FuncSynopsisInfo>
<FuncDef>Tt_status <Function>tt_otype_opnum_callback_add</Function></FuncDef>
<ParamDef>const char *<Parameter>otid</Parameter></ParamDef>
<ParamDef>int <Parameter>opnum</Parameter></ParamDef>
<ParamDef>Tt_message_callback <Parameter>f</Parameter></ParamDef>
</FuncSynopsis>
</RefSynopsisDiv>
<RefSect1>
<Title>DESCRIPTION</Title>
<Para>The
<Function>tt_otype_opnum_callback_add</Function> function
adds a callback that is automatically invoked
when a message is delivered because it matched a pattern derived from a
signature in the named
otype
with an opnum equal to the specified one.
The callback is defined in
&cdeman.Tt.tt.c.h;.</Para>
<Para>The
<Emphasis>otid</Emphasis> argument is the identifier of the object type involved in this operation.
The
<Emphasis>opnum</Emphasis> argument is the opnum of the specified
otype.
The
<Emphasis>f</Emphasis> argument is the message callback to be run.
</Para>
</RefSect1>
<RefSect1>
<Title>RETURN VALUE</Title>
<Para>Upon successful completion, the
<Function>tt_otype_opnum_callback_add</Function> function returns the status of the operation as one of the following
<StructName Role="typedef">Tt_status</StructName> values:
</Para>
<VariableList>
<VarListEntry>
<Term>TT_OK</Term>
<ListItem>
<Para>The operation completed successfully.
</Para>
</ListItem>
</VarListEntry>
<VarListEntry>
<Term>TT_ERR_OTYPE</Term>
<ListItem>
<Para>The specified object type is not the name of an installed object type.
</Para>
</ListItem>
</VarListEntry>
<VarListEntry>
<Term>TT_ERR_POINTER</Term>
<ListItem>
<Para>The pointer passed does not point to an object of
the correct type for this operation.
</Para>
</ListItem>
</VarListEntry>
<VarListEntry>
<Term>TT_ERR_NOMP</Term>
<ListItem>
<Para>The
&cdeman.ttsession; process is not running and the ToolTalk service cannot restart it.
</Para>
</ListItem>
</VarListEntry>
</VariableList>
</RefSect1>
<RefSect1>
<Title>APPLICATION USAGE</Title>
<Para>The
<Function>tt_otype_opnum_callback_add</Function> function will only be called for messages
delivered by virtue of matching handler signatures.
The callback cannot be called for observer signatures
because the observer ptype is not recorded in the
incoming message.
</Para>
</RefSect1>
<RefSect1>
<Title>SEE ALSO</Title>
<Para>&cdeman.Tt.tt.c.h;, &cdeman.tt.message.callback.add;.</Para>
</RefSect1>
</RefEntry>
<!--fickle 1.12 mancsf-to-docbook 1.2 08/07/95 23:18:47-->
