0021762: Integration of new Boolean Operation algorithm to OCCT.
[occt.git] / src / BOPDS / BOPDS_FaceInfo.lxx
1 // Created by: Peter KURNEV
2 // Copyright (c) 2010-2012 OPEN CASCADE SAS
3 // Copyright (c) 2007-2010 CEA/DEN, EDF R&D, OPEN CASCADE
4 // Copyright (c) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, CEDRAT,
5 //                         EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6 //
7 // The content of this file is subject to the Open CASCADE Technology Public
8 // License Version 6.5 (the "License"). You may not use the content of this file
9 // except in compliance with the License. Please obtain a copy of the License
10 // at http://www.opencascade.org and read it completely before using this file.
11 //
12 // The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
13 // main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
14 //
15 // The Original Code and all software distributed under the License is
16 // distributed on an "AS IS" basis, without warranty of any kind, and the
17 // Initial Developer hereby disclaims all such warranties, including without
18 // limitation, any warranties of merchantability, fitness for a particular
19 // purpose or non-infringement. Please see the License for the specific terms
20 // and conditions governing the rights and limitations under the License.
21
22 //=======================================================================
23 //function : 
24 //purpose  : 
25 //=======================================================================
26   inline BOPDS_FaceInfo::BOPDS_FaceInfo()
27 :
28   myAllocator(NCollection_BaseAllocator::CommonBaseAllocator()),
29   myIndex(-1),
30   myPaveBlocksIn(100, myAllocator),
31   myVerticesIn(100, myAllocator),
32   myPaveBlocksOn(100, myAllocator),
33   myVerticesOn(100, myAllocator),
34   myPaveBlocksSc(100, myAllocator),
35   myVerticesSc(100, myAllocator)
36 {
37 }
38 //=======================================================================
39 //function : 
40 //purpose  : 
41 //=======================================================================
42   inline BOPDS_FaceInfo::BOPDS_FaceInfo(const Handle(NCollection_BaseAllocator)& theAllocator)
43 :
44   myAllocator(theAllocator),
45   myIndex(-1),
46   myPaveBlocksIn(100, myAllocator),
47   myVerticesIn(100, myAllocator),
48   myPaveBlocksOn(100, myAllocator),
49   myVerticesOn(100, myAllocator),
50   myPaveBlocksSc(100, myAllocator),
51   myVerticesSc(100, myAllocator)
52 {
53 }
54 //=======================================================================
55 //function : ~
56 //purpose  : 
57 //=======================================================================
58   inline BOPDS_FaceInfo::~BOPDS_FaceInfo()
59 {
60   Clear();
61 }
62 //=======================================================================
63 //function : Clear
64 //purpose  : 
65 //=======================================================================
66   inline void BOPDS_FaceInfo::Clear()
67 {
68   myPaveBlocksIn.Clear();
69   myVerticesIn.Clear();
70   myPaveBlocksOn.Clear();
71   myVerticesOn.Clear();
72 }
73 //=======================================================================
74 //function : SetIndex
75 //purpose  : 
76 //=======================================================================
77   inline void BOPDS_FaceInfo::SetIndex(const Standard_Integer theI)
78 {
79   myIndex=theI;
80 }
81 //=======================================================================
82 //function : Index
83 //purpose  : 
84 //=======================================================================
85   inline Standard_Integer BOPDS_FaceInfo::Index()const
86 {
87   return myIndex;
88 }
89 //=======================================================================
90 //function : PaveBlockIn
91 //purpose  : 
92 //=======================================================================
93   inline const BOPDS_IndexedMapOfPaveBlock& BOPDS_FaceInfo::PaveBlocksIn()const
94 {
95   return myPaveBlocksIn;
96 }
97 //=======================================================================
98 //function : ChangePaveBlocksIn
99 //purpose  : 
100 //=======================================================================
101   inline BOPDS_IndexedMapOfPaveBlock& BOPDS_FaceInfo::ChangePaveBlocksIn()
102 {
103   return myPaveBlocksIn;
104 }
105 //=======================================================================
106 //function : VerticesIn
107 //purpose  : 
108 //=======================================================================
109   inline const BOPCol_MapOfInteger& BOPDS_FaceInfo::VerticesIn()const
110 {
111   return myVerticesIn;
112 }
113 //=======================================================================
114 //function : ChangeVerticesIn
115 //purpose  : 
116 //=======================================================================
117   inline  BOPCol_MapOfInteger& BOPDS_FaceInfo::ChangeVerticesIn()
118 {
119   return myVerticesIn;
120 }
121 // On
122 //=======================================================================
123 //function : PaveBlocksOn
124 //purpose  : 
125 //=======================================================================
126   inline const BOPDS_IndexedMapOfPaveBlock& BOPDS_FaceInfo::PaveBlocksOn()const
127 {
128   return myPaveBlocksOn;
129 }
130 //=======================================================================
131 //function : ChangePaveBlocksOn
132 //purpose  : 
133 //=======================================================================
134   inline BOPDS_IndexedMapOfPaveBlock& BOPDS_FaceInfo::ChangePaveBlocksOn()
135 {
136   return myPaveBlocksOn;
137 }
138 //=======================================================================
139 //function : VerticesOn
140 //purpose  : 
141 //=======================================================================
142   inline const BOPCol_MapOfInteger& BOPDS_FaceInfo::VerticesOn()const
143 {
144   return myVerticesOn;
145 }
146 //=======================================================================
147 //function : ChangeVerticesOn
148 //purpose  : 
149 //=======================================================================
150   inline BOPCol_MapOfInteger& BOPDS_FaceInfo::ChangeVerticesOn()
151 {
152   return myVerticesOn;
153 }
154 // Sc
155 //=======================================================================
156 //function : PaveBlocksSc
157 //purpose  : 
158 //=======================================================================
159   inline const BOPDS_IndexedMapOfPaveBlock& BOPDS_FaceInfo::PaveBlocksSc()const
160 {
161   return myPaveBlocksSc;
162 }
163 //=======================================================================
164 //function : ChangePaveBlocksSc
165 //purpose  : 
166 //=======================================================================
167   inline BOPDS_IndexedMapOfPaveBlock& BOPDS_FaceInfo::ChangePaveBlocksSc()
168 {
169   return myPaveBlocksSc;
170 }
171 //=======================================================================
172 //function : VerticesSc
173 //purpose  : 
174 //=======================================================================
175   inline const BOPCol_MapOfInteger& BOPDS_FaceInfo::VerticesSc()const
176 {
177   return myVerticesSc;
178 }
179 //=======================================================================
180 //function : ChangeVerticesSc
181 //purpose  : 
182 //=======================================================================
183   inline BOPCol_MapOfInteger& BOPDS_FaceInfo::ChangeVerticesSc()
184 {
185   return myVerticesSc;
186 }