BEA Logo BEA Tuxedo Release 7.1

  Corporate Info  |  News  |  Solutions  |  Products  |  Partners  |  Services  |  Events  |  Download  |  How To Buy

 

   Tuxedo Doc Home   |   Reference   |   Topic List   |   Previous   |   Next   |   Contents

   BEA Tuxedo FML Function Reference

Funindex, Funindex32(3fml)

Name

Funindex(), Funindex32() - discard fielded buffer's index

Synopsis

#include <stdio.h> 
#include "fml.h"

FLDOCC
Funindex(FBFR *fbfr)

#include "fml32.h"

FLDOCC32
Funindex32(FBFR32 *fbfr)

Description

Funindex() discards a fielded buffer's index. fbfr is a pointer to a fielded buffer. When the function returns successfully, the buffer is unindexed. As a result, none of the buffer's space is allocated to an index and more space is available to user fields (at the cost of potentially slower access time). Unindexing a buffer is useful when it is to be stored on disk or to be transmitted somewhere. In the first case disk space is conserved, in the second, transmission costs may be reduced.

The number of significant bytes from the buffer start, after a buffer has been unindexed is determined by the function call: Fused(fbfr)

Funindex32() is used with 32-bit FML.

A thread in a multithreaded application may issue a call to Funindex() or Funindex32() while running in any context state, including TPINVALIDCONTEXT.

Return Values

Funindex() returns the number of index elements the buffer has before the index is stripped.

This function returns -1 on error and sets Ferror to indicate the error condition.

Errors

Under the following conditions, Funindex() fails and sets Ferror to:

[FALIGNERR]

"fielded buffer not aligned"
The buffer does not begin on the proper boundary.

[FNOTFLD]

"buffer not fielded"
The buffer is not a fielded buffer or has not been initialized by Finit().

See Also

Introduction to FML Functions, Findex, Findex32(3fml), Frstrindex, Frstrindex32(3fml), Fsizeof, Fsizeof32(3fml), Funused, Funused32(3fml)