Logo Search packages:      
Sourcecode: maxdb-7.5.00 version File versions

void cbd520_Separator::bd520CreateNew ( tsp00_KeyPtr  pKey,
tsp00_Int2  KeyLen,
tsp00_PageNo  SubNodeId,
tsp00_Int4  LeafCount = 0 
) [inline]

function: bd520CreateNew description: A new SeparatorRecord with the given values is created.

PRE: m_pRec must point to space which is big enough. arguments: Key [in] SubNodeId [in] LeafCount [in]

Definition at line 299 of file gbd520.h.

References bd520Print(), bd520SetLeafCount(), and m_pRec.

{
    ROUTINE_DBG_MEO00 ("bd520CreateNew");

    tgg00_BasisError TrError = e_ok;

    m_pRec->recKeyLen_gg00() = KeyLen;
    m_pRec->recLen_gg00()    = sizeof (tgg00_HeaderRec) + KeyLen + sizeof (tbd00_SepLeafCount);
    m_pRec->recPno_gg00().becomes (SubNodeId);
    if ( NULL != pKey )
    {
        g10mv( __FILE__, 1,
            sizeof(tsp00_Key), sizeof(m_pRec->recBody_gg00()),
            pKey,   POS_OFF_DIFF_BD00,
            m_pRec, cgg_rec_key_offset + POS_OFF_DIFF_BD00,
            KeyLen, TrError);
        if ( e_ok != TrError ) return;
    }
    bd520SetLeafCount (LeafCount);
#   if COMPILEMODE_MEO00 >= SLOW_MEO00
    bd520Print();
#   endif
}


Generated by  Doxygen 1.6.0   Back to index