Collaboration diagram for RDM rowid API:

Functions

RDM_SLOT rdm_rowidDecode (RDM_ROWID_T rowid, RDM_UNO *uno)
Decode a ROWID into a union number and slot. More...
RDM_ROWID_T rdm_rowidEncode (RDM_UNO uno, RDM_SLOT slot)
Encode a union number and slot into a ROWID. More...

Detailed Description

The RDM rowid datatype API. The functions here are located in RDM Base Functionality. Linker option:

    -lrdmbase

Function Documentation

rdm_rowidDecode()

RDM_SLOT rdm_rowidDecode ( RDM_ROWID_T rowid,
RDM_UNO * uno
)

#include <rdmrowidapi.h>

Decode a ROWID into a union number and slot.

This function will decode a ROWID into its parts: a union number and a slot number.

The union number is 0 for the first database and one higher for each additional database in the union. The union number is 0 for a single database.

The slot is the row ID as it is stored in the individual databases. For a single database the row ID and the slot are the same.

Locking Requirements
None
See also
rdm_rowidEncode
Returns
The slot number encoded in the ROWID
Parameters
[in] rowid The ROWID
[out] uno The union number (optional)

rdm_rowidEncode()

RDM_ROWID_T rdm_rowidEncode ( RDM_UNO uno,
RDM_SLOT slot
)

#include <rdmrowidapi.h>

Encode a union number and slot into a ROWID.

This function will encode a ROWID from its parts: a union number and a slot number.

Locking Requirements
None
Returns
A ROWID
See also
rdm_rowidDecode
Parameters
[in] uno The union number
[in] slot The slot number