+++ /dev/null
-// Created on: 1991-05-29
-// Created by: Denis PASCAL
-// Copyright (c) 1991-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.
-
-// <dp>
-// Revised by: Mireille MERCIEN
-// Sep,7 1992
-
-#include <Standard_NoMoreObject.hxx>
-#include <Standard_NoSuchObject.hxx>
-
-
-//---------------------------------------------------------------------------
-// Constructor
-//---------------------------------------------------------------------------
-PCollection_BreadthFirstIterator::
- PCollection_BreadthFirstIterator (const Handle(PCollection_Vertex)& V)
-{
- Visited = new PCollection_SetOfVertex;
- Ready = new PCollection_QueueOfVertex;
- Visited->Add(V);
-//mip Ready->Add(V);
- Ready->Push(V);
- HasMore = !(Ready->IsEmpty());
-}
-
-
-//---------------------------------------------------------------------------
-// More
-//---------------------------------------------------------------------------
-Boolean PCollection_BreadthFirstIterator::More () const
-{
- return HasMore;
-}
-
-
-//---------------------------------------------------------------------------
-// Next
-//---------------------------------------------------------------------------
-void PCollection_BreadthFirstIterator::Next ()
-{
- if (!HasMore) Standard_NoMoreObject::Raise();
- Handle(PCollection_Vertex) w1 = Ready->Front();
- Ready->Pop();
- PCollection_FrontEdgesIterator It(w1);
- while (It.More()) {
- Handle(PCollection_Vertex) w2 = It.Value()->Destination();
- if (! (Visited->Contains(w2))) {
-//mip Ready->Add(w2);
- Ready->Push(w2);
- Visited->Add(w2);
- }
- It.Next();
- }
- HasMore = !(Ready->IsEmpty());
-}
-
-//---------------------------------------------------------------------------
-// Value
-//---------------------------------------------------------------------------
-Handle(PCollection_Vertex) PCollection_BreadthFirstIterator::Value () const
-{
- if (!HasMore) Standard_NoSuchObject::Raise();
- return Ready->Front();
-}
-
-//---------------------------------------------------------------------------
-// Clear
-//---------------------------------------------------------------------------
-void PCollection_BreadthFirstIterator::Clear ()
-{
- HasMore = False;
-}
-
-
-
-
-
-
-
-