![]() |
![]() |
|
|
typesw(5)
Name
typesw-buffer type switch structure-parameters and routines needed for each buffer type
Synopsis
Buffer Type Structure
/*
* The following definitions are in $TUXDIR/tuxedo/include/tmtypes.h
*/
#define TMTYPELEN 8
#define TMSTYPELEN 16
struct tmtype_sw_t {
char type[TMTYPELEN]; /* type of buffer */
char subtype[TMSTYPELEN];/* sub-type of buffer */
long dfltsize; /* default size of buffer */
int (*initbuf)(); /* initialization function pointer */
int (*reinitbuf)(); /* re-initialization function pointer */
int (*uninitbuf)(); /* un-initialization function pointer */
long (*presend)(); /* pre-send manipulation function pointer */
void (*postsend)(); /* post-send manipulation function pointer */
long (*postrecv)(); /* post-receive manipulation function pointer */
long (*encdec)(); /* encode/decode function pointer */
int (*route)(); /* data dependent routing function pointer */
int (*filter)(); /* buffer filtering function pointer */
int (*format)(); /* buffer format string function pointer */
void (*reserved[10])(); /* reserved space for new function pointers */
};
/*
* application types switch pointer
* always use this pointer when accessing the table
*/
extern struct tmtype_sw_t *tm_typeswp;
Description
Each buffer type and sub-type must have an entry in the tm_typesw array such that when a buffer is manipulated the appropriate routines are called. For the buffer types provided by the BEA Tuxedo system, see tuxtypes(5).
An application wishing to supply their own buffer type can do so by adding an instance to the tm_typesw array in $TUXDIR/lib/tmtypesw.c (tuxtypes(5) shows how this can be done). The semantics of the routines which must be supplied when adding a new type are specified in buffer(3).
Files
$TUXDIR/tuxedo/include/tmtypes.h - the type switch definition
$TUXDIR/lib/tmtypesw.c - the type switch instantiation
See Also
buffer(3), tuxtypes(5)
![]() |
![]() |
![]() |
|
Copyright © 2000 BEA Systems, Inc. All rights reserved.
|