1 #include <IFSelect_DispPerOne.ixx>
2 #include <IFSelect_Selection.hxx>
3 #include <IFGraph_SCRoots.hxx>
4 #include <Interface_InterfaceModel.hxx>
5 #include <Interface_EntityIterator.hxx>
8 // Genere un paquet par racine (strong comp.) locale a la liste transmise
11 IFSelect_DispPerOne::IFSelect_DispPerOne () { }
13 TCollection_AsciiString IFSelect_DispPerOne::Label () const
14 { return TCollection_AsciiString ("One File per Input Entity"); }
17 Standard_Boolean IFSelect_DispPerOne::LimitedMax
18 (const Standard_Integer nbent, Standard_Integer& pcount) const
19 { pcount = nbent; return Standard_True; }
21 Standard_Boolean IFSelect_DispPerOne::PacketsCount
22 (const Interface_Graph& G, Standard_Integer& pcount) const
23 { pcount = G.Size(); return Standard_True; }
25 void IFSelect_DispPerOne::Packets
26 (const Interface_Graph& G, IFGraph_SubPartsIterator& packs) const
28 IFGraph_SCRoots packsc(G,Standard_False); // OK pour SubPartsIterator
30 packsc.GetFromIter(FinalSelection()->UniqueResult(G));
31 // SCRoots a initie la resolution : decoupage en StrongComponants + selection
32 // des Racines. Chaque Racine correspond a un Packet. CQFD
33 packs.GetParts(packsc);