summaryrefslogtreecommitdiff
path: root/src/BOPTools/BOPTools_PaveSet.cxx
blob: c18abfd5c29a9fff0baddc0bf03ff76ce3d177c9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
// File:	BOPTools_PaveSet.cxx
// Created:	Thu Feb  8 12:47:16 2001
// Author:	Peter KURNEV
//		<pkv@irinox>


#include <BOPTools_PaveSet.ixx>

#include <BOPTools_Array1OfPave.hxx>
#include <BOPTools_ListIteratorOfListOfPave.hxx>
#include <BOPTools_QuickSortPave.hxx>
#include <BOPTools_ComparePave.hxx>


//=======================================================================
// function: BOPTools_PaveSet::BOPTools_PaveSet
// purpose: 
//=======================================================================
  BOPTools_PaveSet::BOPTools_PaveSet() {}

//=======================================================================
// function: ChangeSet
// purpose: 
//=======================================================================
  BOPTools_ListOfPave& BOPTools_PaveSet::ChangeSet()
{
  return myPaveList;
}
//=======================================================================
// function: Set
// purpose: 
//=======================================================================
  const BOPTools_ListOfPave& BOPTools_PaveSet::Set() const
{
  return myPaveList;
}
//=======================================================================
// function: Append
// purpose: 
//=======================================================================
  void BOPTools_PaveSet::Append(const BOPTools_Pave& aPave)
{
  myPaveList.Append(aPave);
}
//=======================================================================
// function: SortSet
// purpose: 
//=======================================================================
  void BOPTools_PaveSet::SortSet()
{
  // Not implemented yet
  Standard_Integer aNbPaves, i;
  aNbPaves=myPaveList.Extent();
  if (aNbPaves>1) {
    BOPTools_Array1OfPave anArray1OfPave (1, aNbPaves);
    
    BOPTools_ListIteratorOfListOfPave anIt(myPaveList);
    
    for (i=1; anIt.More(); anIt.Next(), i++) {
      const BOPTools_Pave& aPave=anIt.Value();
      anArray1OfPave(i)=aPave;
    }
    
    BOPTools_ComparePave   aComparePave;
    BOPTools_QuickSortPave::Sort (anArray1OfPave, aComparePave);
    
    myPaveList.Clear();
    for (i=1; i<=aNbPaves; i++){
      const BOPTools_Pave& aPave=anArray1OfPave(i);
      myPaveList.Append (aPave);
    }
  }
}