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

void cbd400_InvTree::bd400_SetToNewSubRoot (  )  [inline, protected]

function: bd400_SetToNewSubRoot description: Releases m_SubTree, m_SubTreeLeaf and assigns them to a new tree.

Definition at line 144 of file gbd400.h.

References cbd300_InvSubTreeCurrent::bd300NewRoot(), cbd300_InvCurrentBasis::bd300UnlockTree(), cbd500_Tree::bd500SetToRoot(), cbd600_Node::bd600GetNodePtr(), and cbd600_Node::bd600Release().

Referenced by bd400AppendPrimKey().

{
    ROUTINE_DBG_MEO00 ("bd400_SetToNewSubRoot");
    tsp00_PageNo invroot = m_Node.bd600GetNodePtr() != 0
                           ? m_Node.bd600GetNodePtr()->nd_root()
                           : NIL_PAGE_NO_GG00;
    /* create a new SubTree */
    m_SubTreeLeaf.bd600Release       (IS_CHANGED_BD600);
    m_SubTreeCurrent.bd300UnlockTree ();
    m_SubTreeCurrent.bd300NewRoot    (invroot);
    if (e_ok != m_TrError) return;
    m_SubTree.bd500SetToRoot (DO_NOT_CHECK_LOCK_BD400); // set m_SubTreeLeaf to the root
    if (e_ok != m_TrError) return;
}


Generated by  Doxygen 1.6.0   Back to index