0024663: Removing unused "generic" classes. Part 4
[occt.git] / src / PCollection / PCollection_ATPreOrderIterator.gxx
diff --git a/src/PCollection/PCollection_ATPreOrderIterator.gxx b/src/PCollection/PCollection_ATPreOrderIterator.gxx
deleted file mode 100644 (file)
index 3b37bab..0000000
+++ /dev/null
@@ -1,131 +0,0 @@
-// Created on: 1992-08-13
-// Created by: Mireille MERCIEN
-// Copyright (c) 1992-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.
-
-#include <Standard_OutOfRange.hxx>
-#include <Standard_NoSuchObject.hxx>
-#include <Standard_NoMoreObject.hxx>
-
-// ----------------------------------------------------------------------
-// ----------------------------------------------------------------------
-
-// Purpose: Permits to  iterate through  an ArbitraryTree so that,
-//          from the   root, it reads each   element  on the left,
-//          until  the first leave, then  goes to its rightSibling
-//          and upward.  
-//          IF theTree is ( A (B (C D E)) F G (H (I J K))) 
-//          THEN it will read ( A B C D E F G H I J K)
-
-// -----------
-// constructor :
-// -----------
-PCollection_ATPreOrderIterator::
-       PCollection_ATPreOrderIterator
-         (const Handle(PCollection_HArbitraryTree)& ATree) 
-{
-   CurrentStack = new PCollection_StackArbitraryTree;
-   if (ATree.IsNull()) {
-     HasMore = Standard_False;
-   }
-   else {
-     HasMore = Standard_True;
-     CurrentTree = ATree;
-     CurrentStack->Push(ATree);
-   }           
-} 
-
-// --------
-// More
-// --------
-Standard_Boolean PCollection_ATPreOrderIterator::More() const
-{
-  return HasMore;
-}
-
-// --------
-// Value 
-// --------
-Handle(PCollection_HArbitraryTree) 
-   PCollection_ATPreOrderIterator::Value() const
-{
-   if (!HasMore) Standard_NoSuchObject::Raise();
-   return CurrentTree;
-}
-
-// --------
-// Clear 
-// --------
-void PCollection_ATPreOrderIterator::Clear() 
-{
-   CurrentTree.Nullify();
-   CurrentStack.Nullify();
-   HasMore = Standard_False;
-}
-
-// --------
-// Next
-// --------
-void PCollection_ATPreOrderIterator::Next() 
-{
-   if (!HasMore) Standard_NoMoreObject::Raise();
-   Handle(PCollection_HArbitraryTree) Temp;
-   if (CurrentTree->IsLeaf()) {
-//   ... no child, so go upward, then to the right 
-     Temp = RecursiveRemove( CurrentTree);
-//   ... and adds the right neighbour of the last removed tree
-      if ( HasMore) {
-        CurrentTree = Temp->RightSibling();
-        CurrentStack->Push(CurrentTree);      
-      }
-   }
-   else {
-// ... just go down for one step
-   CurrentTree = CurrentTree->Child(1);
-   CurrentStack->Push(CurrentTree); 
-   }
-}
-
-
-// PRIVATE TOOLS TO MANAGE CURRENTSTACK
-
-Handle(PCollection_HArbitraryTree) 
-       PCollection_ATPreOrderIterator::RecursiveRemove(
-                      const Handle(PCollection_HArbitraryTree)& ATree) 
-{
-  Handle(PCollection_HArbitraryTree) Temp;
-  CurrentStack->Pop();
-  if ( CurrentStack->IsEmpty()) {
-    HasMore = Standard_False;
-    Temp = ATree;                             // ... to be returned
-  }
-  else { 
-//  ... is there somebody to the right ?  if yes, stop removing
-//  ... if not, go on removing
-    Temp = ATree->RightSibling();
-    if (!Temp.IsNull()) {
-      Temp = ATree;                      // ... to be returned
-    }
-    else {
-      Temp = CurrentStack->Top();     
-      Temp = RecursiveRemove( Temp);
-    }
-  }
-  return Temp;
-}
-
-
-
-
-