0024157: Parallelization of assembly part of BO
[occt.git] / src / IFSelect / IFSelect_SelectList.gxx
... / ...
CommitLineData
1// Copyright (c) 1999-2012 OPEN CASCADE SAS
2//
3// The content of this file is subject to the Open CASCADE Technology Public
4// License Version 6.5 (the "License"). You may not use the content of this file
5// except in compliance with the License. Please obtain a copy of the License
6// at http://www.opencascade.org and read it completely before using this file.
7//
8// The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
9// main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
10//
11// The Original Code and all software distributed under the License is
12// distributed on an "AS IS" basis, without warranty of any kind, and the
13// Initial Developer hereby disclaims all such warranties, including without
14// limitation, any warranties of merchantability, fitness for a particular
15// purpose or non-infringement. Please see the License for the specific terms
16// and conditions governing the rights and limitations under the License.
17
18//#include <IFSelect_SelectList.ixx>
19
20// .... Instanciation avec "Handle(Entity)" qui offre ces deux methodes :
21// nb = ent->NbEntities() et ent_i = ent->InterfaceEntity(i)
22
23
24IFSelect_SelectList::IFSelect_SelectList () { }
25
26 void IFSelect_SelectType::KeepInputEntity (Interface_EntityIterator& iter)
27 { iter.SelectType(STANDARD_TYPE(Entity)); }
28
29 Standard_Integer IFSelect_SelectList::NbItems
30 (const Handle(Standard_Transient)& ent)
31{
32 Handle(Entity) anent = Handle(Entity)::DownCast(ent);
33 if (anent.IsNull()) return 0;
34 return anent->NbEntities();
35}
36
37 Handle(Standard_Transient) IFSelect_SelectList::ListedEntity
38 (const Standard_Integer num, const Handle(Standard_Transient)& ent)
39{
40 Handle(Entity) anent = Handle(Entity)::DownCast(ent);
41 if (anent.IsNull()) Standard_OutOfRange::Raise
42 ("IFSelect SelectType : ListedEntity");
43 return anent->InterfacebEntity(num);
44}
45
46
47 TCollection_AsciiString IFSelect_SelectList::ListLabel () const
48 { return TCollection_AsciiString(STANDARD_TYPE(Entity)->Name()); }