TBtLeafNode Class Reference

#include <TBtree.h>

Inheritance diagram for TBtLeafNode:

TBtNode TBtNode List of all members.

Public Member Functions

 TBtLeafNode (TBtInnerNode *p, const TObject *obj=0, TBtree *t=0)
 ~TBtLeafNode ()
void Add (const TObject *obj, Int_t idx)
void Remove (Int_t idx)
void RemoveItem (Int_t idx)
TObjectoperator[] (Int_t i) const
TObjectFound (const TObject *obj, TBtNode **which, Int_t *where)
Int_t NofKeys (Int_t i) const
Int_t NofKeys () const
Int_t FindRank (const TObject *obj) const
TObjectGetKey (Int_t idx)
void SetKey (Int_t idx, TObject *obj)
Int_t IndexOf (const TObject *obj) const
TBtLeafNodeFirstLeafNode ()
TBtLeafNodeLastLeafNode ()
void Split ()
void SplitWith (TBtLeafNode *r, Int_t idx)
void MergeWithRight (TBtLeafNode *r, Int_t idx)
void BalanceWithLeft (TBtLeafNode *l, Int_t idx)
void BalanceWithRight (TBtLeafNode *r, Int_t idx)
void BalanceWith (TBtLeafNode *n, Int_t idx)
void PushLeft (Int_t cnt, TBtLeafNode *l, Int_t parentIndex)
void PushRight (Int_t cnt, TBtLeafNode *r, Int_t parentIndex)
void AppendFrom (TBtLeafNode *src, Int_t start, Int_t stop)
void Append (TObject *obj)
void ShiftLeft (Int_t cnt)
Int_t Psize () const
Int_t Vsize () const
Int_t MaxIndex () const
Int_t MaxPsize () const
Int_t IsFull () const
Int_t IsAlmostFull () const
Int_t IsLow () const
 TBtLeafNode (TBtInnerNode *p, const TObject *obj=0, TBtree *t=0)
 ~TBtLeafNode ()
void Add (const TObject *obj, Int_t idx)
void Remove (Int_t idx)
void RemoveItem (Int_t idx)
TObjectoperator[] (Int_t i) const
TObjectFound (const TObject *obj, TBtNode **which, Int_t *where)
Int_t NofKeys (Int_t i) const
Int_t NofKeys () const
Int_t FindRank (const TObject *obj) const
TObjectGetKey (Int_t idx)
void SetKey (Int_t idx, TObject *obj)
Int_t IndexOf (const TObject *obj) const
TBtLeafNodeFirstLeafNode ()
TBtLeafNodeLastLeafNode ()
void Split ()
void SplitWith (TBtLeafNode *r, Int_t idx)
void MergeWithRight (TBtLeafNode *r, Int_t idx)
void BalanceWithLeft (TBtLeafNode *l, Int_t idx)
void BalanceWithRight (TBtLeafNode *r, Int_t idx)
void BalanceWith (TBtLeafNode *n, Int_t idx)
void PushLeft (Int_t cnt, TBtLeafNode *l, Int_t parentIndex)
void PushRight (Int_t cnt, TBtLeafNode *r, Int_t parentIndex)
void AppendFrom (TBtLeafNode *src, Int_t start, Int_t stop)
void Append (TObject *obj)
void ShiftLeft (Int_t cnt)
Int_t Psize () const
Int_t Vsize () const
Int_t MaxIndex () const
Int_t MaxPsize () const
Int_t IsFull () const
Int_t IsAlmostFull () const
Int_t IsLow () const

Private Attributes

TObject ** fItem
TObject ** fItem

Friends

class TBtInnerNode

Detailed Description

Definition at line 274 of file TBtree.h.


Constructor & Destructor Documentation

TBtLeafNode::TBtLeafNode ( TBtInnerNode p,
const TObject obj = 0,
TBtree t = 0 
)

Definition at line 1392 of file TBtree.cxx.

References fItem, TBtNode::fLast, MaxIndex(), and R__ASSERT.

Referenced by Split(), and SplitWith().

TBtLeafNode::~TBtLeafNode (  ) 

Definition at line 1405 of file TBtree.cxx.

References fItem.

TBtLeafNode::TBtLeafNode ( TBtInnerNode p,
const TObject obj = 0,
TBtree t = 0 
)

TBtLeafNode::~TBtLeafNode (  ) 


Member Function Documentation

void TBtLeafNode::Add ( const TObject obj,
Int_t  idx 
) [virtual]

Implements TBtNode.

Definition at line 1413 of file TBtree.cxx.

References fItem, TBtNode::fLast, TBtNode::fParent, TBtree::fRoot, TBtNode::fTree, i, TBtInnerNode::IncrNofKeys(), TBtree::IncrNofKeys(), IsFull(), TBtInnerNode::IsFull(), MaxIndex(), R__ASSERT, R__CHECK, and TBtree::RootIsFull().

Referenced by TBtInnerNode::Add().

void TBtLeafNode::Remove ( Int_t  idx  )  [virtual]

Implements TBtNode.

Definition at line 1682 of file TBtree.cxx.

References TBtInnerNode::DecrNofKeys(), TBtree::DecrNofKeys(), fItem, TBtNode::fLast, TBtNode::fParent, TBtNode::fTree, IsLow(), TBtInnerNode::IsLow(), Psize(), R__ASSERT, and TBtree::RootIsEmpty().

Referenced by RemoveItem().

void TBtLeafNode::RemoveItem ( Int_t  idx  )  [inline]

Definition at line 288 of file TBtree.h.

References Remove().

Referenced by TBtInnerNode::Remove().

TObject * TBtLeafNode::operator[] ( Int_t  i  )  const [inline, virtual]

Implements TBtNode.

Definition at line 428 of file TBtree.h.

References fItem, TBtNode::fLast, and R__ASSERT.

TObject * TBtLeafNode::Found ( const TObject obj,
TBtNode **  which,
Int_t where 
) [virtual]

Implements TBtNode.

Definition at line 1538 of file TBtree.cxx.

References Compare(), fItem, TBtNode::fLast, i, R__ASSERT, and what.

Int_t TBtLeafNode::NofKeys ( Int_t  i  )  const

Definition at line 1595 of file TBtree.cxx.

Referenced by PushLeft(), and PushRight().

Int_t TBtLeafNode::NofKeys (  )  const [virtual]

Implements TBtNode.

Definition at line 1602 of file TBtree.cxx.

References Psize().

Referenced by MergeWithRight(), PushLeft(), and PushRight().

Int_t TBtLeafNode::FindRank ( const TObject obj  )  const [virtual]

Implements TBtNode.

Definition at line 1515 of file TBtree.cxx.

References Compare(), fItem, TBtNode::fLast, i, and what.

TObject* TBtLeafNode::GetKey ( Int_t  idx  )  [inline]

Definition at line 296 of file TBtree.h.

References fItem.

void TBtLeafNode::SetKey ( Int_t  idx,
TObject obj 
) [inline]

Definition at line 297 of file TBtree.h.

References fItem.

Int_t TBtLeafNode::IndexOf ( const TObject obj  )  const

Definition at line 1562 of file TBtree.cxx.

References fItem, TBtNode::fLast, i, and R__CHECK.

TBtLeafNode * TBtLeafNode::FirstLeafNode (  )  [virtual]

Implements TBtNode.

Definition at line 1530 of file TBtree.cxx.

TBtLeafNode * TBtLeafNode::LastLeafNode (  )  [virtual]

Implements TBtNode.

Definition at line 1575 of file TBtree.cxx.

void TBtLeafNode::Split (  )  [virtual]

Implements TBtNode.

Definition at line 1717 of file TBtree.cxx.

References TBtInnerNode::Append(), BalanceWithRight(), fItem, TBtNode::fLast, TBtNode::fParent, TBtInnerNode::GetTree(), TBtNode::NofKeys(), R__ASSERT, TBtInnerNode::SetNofKeys(), and TBtLeafNode().

void TBtLeafNode::SplitWith ( TBtLeafNode r,
Int_t  idx 
)

Definition at line 1732 of file TBtree.cxx.

References TBtInnerNode::AddElt(), TBtInnerNode::DecNofKeys(), fItem, TBtNode::fLast, TBtNode::fParent, TBtInnerNode::InformParent(), TBtInnerNode::IsFull(), Psize(), PushLeft(), PushRight(), R__ASSERT, R__CHECK, TBtInnerNode::SetNofKeys(), TBtLeafNode(), and Vsize().

Referenced by TBtInnerNode::IsFull().

void TBtLeafNode::MergeWithRight ( TBtLeafNode r,
Int_t  idx 
)

Definition at line 1582 of file TBtree.cxx.

References Append(), TBtNode::fParent, TBtInnerNode::GetKey(), MaxPsize(), NofKeys(), Psize(), PushLeft(), R__ASSERT, TBtInnerNode::RemoveItem(), TBtInnerNode::SetNofKeys(), and Vsize().

Referenced by TBtInnerNode::IsLow().

void TBtLeafNode::BalanceWithLeft ( TBtLeafNode l,
Int_t  idx 
)

Definition at line 1481 of file TBtree.cxx.

References Psize(), PushLeft(), R__ASSERT, and Vsize().

Referenced by BalanceWith(), and TBtInnerNode::IsFull().

void TBtLeafNode::BalanceWithRight ( TBtLeafNode r,
Int_t  idx 
)

Definition at line 1492 of file TBtree.cxx.

References Psize(), PushRight(), R__ASSERT, and Vsize().

Referenced by BalanceWith(), TBtInnerNode::IsFull(), and Split().

void TBtLeafNode::BalanceWith ( TBtLeafNode n,
Int_t  idx 
)

Definition at line 1503 of file TBtree.cxx.

References BalanceWithLeft(), BalanceWithRight(), Psize(), and Vsize().

Referenced by TBtInnerNode::IsLow().

void TBtLeafNode::PushLeft ( Int_t  cnt,
TBtLeafNode l,
Int_t  parentIndex 
)

Definition at line 1618 of file TBtree.cxx.

References Append(), AppendFrom(), fItem, TBtNode::fParent, TBtInnerNode::GetKey(), TBtInnerNode::GetTree(), MaxPsize(), NofKeys(), Psize(), R__ASSERT, TBtInnerNode::SetKey(), TBtInnerNode::SetNofKeys(), and ShiftLeft().

Referenced by BalanceWithLeft(), MergeWithRight(), and SplitWith().

void TBtLeafNode::PushRight ( Int_t  cnt,
TBtLeafNode r,
Int_t  parentIndex 
)

Definition at line 1636 of file TBtree.cxx.

References fItem, TBtNode::fLast, TBtNode::fParent, TBtInnerNode::GetKey(), TBtInnerNode::GetTree(), i, MaxPsize(), NofKeys(), Psize(), R__ASSERT, R__CHECK, TBtInnerNode::SetKey(), TBtInnerNode::SetNofKeys(), and start.

Referenced by BalanceWithRight(), and SplitWith().

void TBtLeafNode::AppendFrom ( TBtLeafNode src,
Int_t  start,
Int_t  stop 
)

Definition at line 1449 of file TBtree.cxx.

References fItem, TBtNode::fLast, i, MaxIndex(), R__ASSERT, and R__CHECK.

Referenced by PushLeft().

void TBtLeafNode::Append ( TObject obj  ) 

Definition at line 1470 of file TBtree.cxx.

References fItem, TBtNode::fLast, MaxIndex(), R__ASSERT, and R__CHECK.

Referenced by MergeWithRight(), and PushLeft().

void TBtLeafNode::ShiftLeft ( Int_t  cnt  ) 

Definition at line 1705 of file TBtree.cxx.

References fItem, TBtNode::fLast, and i.

Referenced by PushLeft().

Int_t TBtLeafNode::Psize (  )  const [inline]

Definition at line 316 of file TBtree.h.

References TBtNode::fLast.

Referenced by BalanceWith(), BalanceWithLeft(), BalanceWithRight(), TBtInnerNode::IsLow(), MergeWithRight(), NofKeys(), PushLeft(), PushRight(), Remove(), TBtree::RootIsEmpty(), SplitWith(), and Vsize().

Int_t TBtLeafNode::Vsize (  )  const [inline]

Definition at line 434 of file TBtree.h.

References TBtNode::fParent, TBtInnerNode::GetTree(), Psize(), and R__ASSERT.

Referenced by BalanceWith(), BalanceWithLeft(), BalanceWithRight(), TBtInnerNode::IsLow(), MergeWithRight(), and SplitWith().

Int_t TBtLeafNode::MaxIndex (  )  const [inline]

Definition at line 318 of file TBtree.h.

References TBtree::fLeafMaxIndex, and TBtNode::fTree.

Referenced by Add(), Append(), AppendFrom(), IsAlmostFull(), IsFull(), and TBtLeafNode().

Int_t TBtLeafNode::MaxPsize (  )  const [inline]

Definition at line 319 of file TBtree.h.

References TBtree::fLeafMaxIndex, and TBtNode::fTree.

Referenced by TBtInnerNode::IsLow(), MergeWithRight(), PushLeft(), and PushRight().

Int_t TBtLeafNode::IsFull (  )  const [inline]

Definition at line 323 of file TBtree.h.

References TBtNode::fLast, and MaxIndex().

Referenced by Add().

Int_t TBtLeafNode::IsAlmostFull (  )  const [inline]

Definition at line 324 of file TBtree.h.

References TBtNode::fLast, and MaxIndex().

Referenced by TBtInnerNode::IsFull().

Int_t TBtLeafNode::IsLow (  )  const [inline]

Definition at line 325 of file TBtree.h.

References TBtNode::fLast, TBtree::fLeafLowWaterMark, and TBtNode::fTree.

Referenced by Remove().

void TBtLeafNode::Add ( const TObject obj,
Int_t  idx 
) [virtual]

Implements TBtNode.

void TBtLeafNode::Remove ( Int_t  idx  )  [virtual]

Implements TBtNode.

void TBtLeafNode::RemoveItem ( Int_t  idx  )  [inline]

Definition at line 288 of file TBtree.h.

References Remove().

TObject* TBtLeafNode::operator[] ( Int_t  i  )  const [virtual]

Implements TBtNode.

TObject* TBtLeafNode::Found ( const TObject obj,
TBtNode **  which,
Int_t where 
) [virtual]

Implements TBtNode.

Int_t TBtLeafNode::NofKeys ( Int_t  i  )  const

Int_t TBtLeafNode::NofKeys (  )  const [virtual]

Implements TBtNode.

Int_t TBtLeafNode::FindRank ( const TObject obj  )  const [virtual]

Implements TBtNode.

TObject* TBtLeafNode::GetKey ( Int_t  idx  )  [inline]

Definition at line 296 of file TBtree.h.

References fItem.

void TBtLeafNode::SetKey ( Int_t  idx,
TObject obj 
) [inline]

Definition at line 297 of file TBtree.h.

References fItem.

Int_t TBtLeafNode::IndexOf ( const TObject obj  )  const

TBtLeafNode* TBtLeafNode::FirstLeafNode (  )  [virtual]

Implements TBtNode.

TBtLeafNode* TBtLeafNode::LastLeafNode (  )  [virtual]

Implements TBtNode.

void TBtLeafNode::Split (  )  [virtual]

Implements TBtNode.

void TBtLeafNode::SplitWith ( TBtLeafNode r,
Int_t  idx 
)

void TBtLeafNode::MergeWithRight ( TBtLeafNode r,
Int_t  idx 
)

void TBtLeafNode::BalanceWithLeft ( TBtLeafNode l,
Int_t  idx 
)

void TBtLeafNode::BalanceWithRight ( TBtLeafNode r,
Int_t  idx 
)

void TBtLeafNode::BalanceWith ( TBtLeafNode n,
Int_t  idx 
)

void TBtLeafNode::PushLeft ( Int_t  cnt,
TBtLeafNode l,
Int_t  parentIndex 
)

void TBtLeafNode::PushRight ( Int_t  cnt,
TBtLeafNode r,
Int_t  parentIndex 
)

void TBtLeafNode::AppendFrom ( TBtLeafNode src,
Int_t  start,
Int_t  stop 
)

void TBtLeafNode::Append ( TObject obj  ) 

void TBtLeafNode::ShiftLeft ( Int_t  cnt  ) 

Int_t TBtLeafNode::Psize (  )  const [inline]

Definition at line 316 of file TBtree.h.

References TBtNode::fLast.

Int_t TBtLeafNode::Vsize (  )  const

Int_t TBtLeafNode::MaxIndex (  )  const [inline]

Definition at line 318 of file TBtree.h.

References TBtree::fLeafMaxIndex, and TBtNode::fTree.

Int_t TBtLeafNode::MaxPsize (  )  const [inline]

Definition at line 319 of file TBtree.h.

References TBtree::fLeafMaxIndex, and TBtNode::fTree.

Int_t TBtLeafNode::IsFull (  )  const [inline]

Definition at line 323 of file TBtree.h.

References TBtNode::fLast, and MaxIndex().

Int_t TBtLeafNode::IsAlmostFull (  )  const [inline]

Definition at line 324 of file TBtree.h.

References TBtNode::fLast, and MaxIndex().

Int_t TBtLeafNode::IsLow (  )  const [inline]

Definition at line 325 of file TBtree.h.

References TBtNode::fLast, TBtree::fLeafLowWaterMark, and TBtNode::fTree.


Friends And Related Function Documentation

TBtInnerNode [friend]

Reimplemented from TBtNode.

Definition at line 276 of file TBtree.h.


Member Data Documentation

TObject** TBtLeafNode::fItem [private]

Definition at line 279 of file TBtree.h.

Referenced by Add(), Append(), AppendFrom(), FindRank(), Found(), GetKey(), IndexOf(), operator[](), PushLeft(), PushRight(), TBtInnerNode::Remove(), Remove(), SetKey(), ShiftLeft(), Split(), SplitWith(), TBtLeafNode(), and ~TBtLeafNode().

TObject** TBtLeafNode::fItem [private]

Definition at line 279 of file TBtree.h.


The documentation for this class was generated from the following files:
Generated on Tue Jul 5 16:34:57 2011 for ROOT_528-00b_version by  doxygen 1.5.1