Lines Matching refs:WidthFactor
50 /// 'WidthFactor' children/values. For our use cases, this doesn't seem to
56 /// RopePieceBTreeLeaf - Directly manages up to '2*WidthFactor' RopePiece
60 /// up to '2*WidthFactor' other nodes in the tree.
76 /// WidthFactor - This controls the number of K/V slots held in the BTree:
78 /// 'WidthFactor' elements in it (either ropepieces or children), (except
79 /// the root, which may have less) and may have at most 2*WidthFactor
81 enum { WidthFactor = 8 };
128 /// RopePieceBTreeLeaf - Directly manages up to '2*WidthFactor' RopePiece
142 RopePiece Pieces[2*WidthFactor];
156 bool isFull() const { return NumPieces == 2*WidthFactor; }
303 // node is full, it contains 2*WidthFactor values. We move the first
304 // 'WidthFactor' values to the LHS child (which we leave in this node) and
305 // move the last 'WidthFactor' values into the RHS child.
310 // Move over the last 'WidthFactor' values from here to NewNode.
311 std::copy(&Pieces[WidthFactor], &Pieces[2*WidthFactor],
314 std::fill(&Pieces[WidthFactor], &Pieces[2*WidthFactor], RopePiece());
317 NewNode->NumPieces = NumPieces = WidthFactor;
390 /// which holds up to 2*WidthFactor pointers to child nodes.
395 RopePieceBTreeNode *Children[2*WidthFactor];
412 WidthFactor; }
537 // Okay, this node is full. Split it in half, moving WidthFactor children to
543 // Move over the last 'WidthFactor' values from here to NewNode.
544 memcpy(&NewNode->Children[0], &Children[WidthFactor],
545 WidthFactor*sizeof(Children[0]));
548 NewNode->NumChildren = NumChildren = WidthFactor;
552 if (i < WidthFactor)
555 NewNode->HandleChildPiece(i-WidthFactor, RHS);