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

cbd500_Tree::cbd500_Tree ( cbd600_Node StartNode,
bool  bInterruptible = false,
tsp00_KeyPtr  pStopKey = NULL,
tsp00_Int4  StopKeyLen = 0 
) [inline]

function: cbd500_Tree description: This is the constructor, which is most often used. arguments: StartNode [in/out] This node is navigated through the Tree. bInterruptible [in] This must be set, if the operation on the tree should be implicit interruptible by a concurrent running updater. StopKey [in] This must be given, if an abort criteria is given. StopKeyLen [in] The length of StopKey must be given, if a StopKey is given

Definition at line 683 of file gbd500.h.

References cbd300_InvCurrentBasis::bd300RootPtrs(), cbd600_Node::bd600GetId(), cbd600_Node::bd600IsAccessable(), and cbd600_Node::m_Current.

: m_Node    (StartNode),
  m_TrError (m_Node.m_TrError),
  m_Interruptible (bInterruptible) // PTS 1121770 TS 2003-04-25
{
    ROUTINE_DBG_MEO00 ("cbd500_Tree");

    if (e_ok != m_TrError) return; // PTS 1104721 TS 1999-11-23

    tbd_nodeptr &pRootNode = m_Node.m_Current.bd300RootPtrs().np_ptr();

    if ( pRootNode != NULL ) bd500_Init ();
    m_pStopKey          = pStopKey;
    m_StopKeyLen        = StopKeyLen;

#   if COMPILEMODE_MEO00 >= SLOW_MEO00
    if ( m_Node.bd600IsAccessable() )
        t01int4 (bd_inv, "CurrentNode ", m_Node.bd600GetId());
    if (NULL != pStopKey)
    {
        t01sname   (bd_inv, "StopKey     ");
        t01moveobj (bd_inv, m_pStopKey, POS_OFF_DIFF_BD00, m_StopKeyLen);
    }
    if ( pRootNode != NULL )
        t01p2int4 (bd_index, "RootNode    ", pRootNode->nd_id(),
                             "LeafCount   ", pRootNode->ndLeafCount_bd00());
#   endif
}


Generated by  Doxygen 1.6.0   Back to index