// Copyright (c) 1998-1999 Matra Datavision // Copyright (c) 1999-2014 OPEN CASCADE SAS // // This file is part of Open CASCADE Technology software library. // // This library is free software; you can redistribute it and/or modify it under // the terms of the GNU Lesser General Public License version 2.1 as published // by the Free Software Foundation, with special exception defined in the file // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT // distribution for complete text of the license and disclaimer of any warranty. // // Alternatively, this file may be used under the terms of Open CASCADE // commercial license or contractual agreement. inline TCollection_AVLBaseNode::TCollection_AVLBaseNode(const TCollection_AVLBaseNodePtr& L, const TCollection_AVLBaseNodePtr& R) : myLeft(L),myRight(R),myCount(1) { } inline void TCollection_AVLBaseNode::SetChild(const TCollection_AVLBaseNodePtr& theNode, const TCollection_Side theSide) // According to the side changes a child by another { if (theSide == TCollection_Left) {myLeft = theNode;} else {myRight = theNode;} } inline TCollection_AVLBaseNodePtr& TCollection_AVLBaseNode::Right() const { return (TCollection_AVLBaseNodePtr&)myRight; } inline TCollection_AVLBaseNodePtr& TCollection_AVLBaseNode::Left() const { return (TCollection_AVLBaseNodePtr&)myLeft; } inline Standard_Integer& TCollection_AVLBaseNode::Count() const { return (Standard_Integer&)myCount; }