# DataExchange
TKIGES
IGESSelect

# IGESSelect_ViewSorter Class Reference

Sorts IGES Entities on the views and drawings.
In a first step, it splits a set of entities according the
different views they are attached to.
Then, packets according single views (+ drawing frames), or
according drawings (which refer to the views) can be determined
It is a TShared, hence it can be a workomg field of a non-
mutable object (a Dispatch for instance)
.

`#include <IGESSelect_ViewSorter.hxx>`

## Public Member Functions

Standard_EXPORT | IGESSelect_ViewSorter ()
| Creates a ViewSorter, empty. SetModel remains to be called .
Standard_EXPORT void | SetModel (const Handle(IGESData_IGESModel)&model)
| Sets the Model (for PacketList) .
Standard_EXPORT void | Clear ()
| Clears recorded data .
Standard_EXPORT Standard_Boolean | Add (const Handle(Standard_Transient)&ent)
| Adds an item according its type : AddEntity,AddList,AddModel .
Standard_EXPORT Standard_Boolean | AddEntity (const Handle(IGESData_IGESEntity)&igesent)
| Adds an IGES entity. Records the view it is attached to. Records directly <ent> if it is a ViewKindEntity or a Drawing Returns True if added, False if already in the map .
Standard_EXPORT void | AddList (const Handle(TColStd_HSequenceOfTransient)&list)
| Adds a list of entities by adding each of the items .
Standard_EXPORT void | AddModel (const Handle(Interface_InterfaceModel)&model)
| Adds all the entities contained in a Model .
Standard_EXPORT Standard_Integer | NbEntities () const
| Returns the count of already recorded .
Standard_EXPORT void | SortSingleViews (const Standard_Boolean alsoframes)
| Prepares the result to keep only sets attached to Single Views If <alsoframes> is given True, it keeps also the Drawings as specific sets, in order to get their frames. Entities attached to no single view are put in Remaining List. Result can then be read by the methods NbSets,SetItem,SetList, RemainingList(final = True) .
Standard_EXPORT void | SortDrawings (const Interface_Graph &G)
| Prepares the result to the sets attached to Drawings : All the single views referenced by a Drawing become bound to the set for this Drawing Entities or Views which correspond to no Drawing are put into the Remaining List. Result can then be read by the methods NbSets,SetItem,SetList, RemainingList(final = True) .
Standard_EXPORT Standard_Integer | NbSets (const Standard_Boolean final) const

Returns the count of sets recorded, one per distinct item.
The Remaining List is not counted.
If <final> is False, the sets are attached to distinct views
determined by the method Add.
If <final> is True, they are the sets determined by the last
call to, either SortSingleViews, or SortDrawings.
Warning : Drawings directly recorded are also counted as sets, because
of their Frame (which is made of Annotations)
.

Standard_EXPORT Handle_IGESData_IGESEntity | SetItem (const Standard_Integer num, const Standard_Boolean final) const
| Returns the Item which is attached to a set of entities For <final> and definition of sets, see method NbSets. This item can be a kind of View or a Drawing .
Standard_EXPORT Handle_IFSelect_PacketList | Sets (const Standard_Boolean final) const
| Returns the complete content of the determined Sets, which include Duplicated and Remaining (duplication 0) lists For <final> and definition of sets, see method NbSets. .
Standard_EXPORT const | Handle (Standard_Type)&DynamicType() const

## Private Attributes

Handle_IGESData_IGESModel | themodel
TColStd_IndexedMapOfTransient | themap
TColStd_IndexedMapOfTransient | theitems
TColStd_IndexedMapOfTransient | thefinals
TColStd_SequenceOfInteger | theinditem
TColStd_SequenceOfInteger | theindfin

## Constructor & Destructor Documentation

Standard_EXPORT IGESSelect_ViewSorter::IGESSelect_ViewSorter | ( |  | ) |

## Member Function Documentation

Standard_EXPORT Standard_Boolean IGESSelect_ViewSorter::Add | ( | const Handle(Standard_Transient)& | ent | ) |

Standard_EXPORT Standard_Boolean IGESSelect_ViewSorter::AddEntity | ( | const Handle(IGESData_IGESEntity)& | igesent | ) |

Standard_EXPORT void IGESSelect_ViewSorter::AddList | ( | const Handle(TColStd_HSequenceOfTransient)& | list | ) |

Standard_EXPORT void IGESSelect_ViewSorter::AddModel | ( | const Handle(Interface_InterfaceModel)& | model | ) |

Standard_EXPORT void IGESSelect_ViewSorter::Clear | ( |  | ) |

Standard_EXPORT const IGESSelect_ViewSorter::Handle | ( | Standard_Type |  | ) | const

Standard_EXPORT Standard_Integer IGESSelect_ViewSorter::NbEntities | ( |  | ) | const

Standard_EXPORT Standard_Integer IGESSelect_ViewSorter::NbSets | ( | const Standard_Boolean | final | ) | const

Standard_EXPORT Handle_IGESData_IGESEntity IGESSelect_ViewSorter::SetItem | ( | const Standard_Integer | num,
|  | const Standard_Boolean | final
| ) | const

Standard_EXPORT void IGESSelect_ViewSorter::SetModel | ( | const Handle(IGESData_IGESModel)& | model | ) |

Standard_EXPORT Handle_IFSelect_PacketList IGESSelect_ViewSorter::Sets | ( | const Standard_Boolean | final | ) | const

Standard_EXPORT void IGESSelect_ViewSorter::SortDrawings | ( | const Interface_Graph & | G | ) |

Standard_EXPORT void IGESSelect_ViewSorter::SortSingleViews | ( | const Standard_Boolean | alsoframes | ) |

## Field Documentation

TColStd_IndexedMapOfTransient IGESSelect_ViewSorter::thefinals`[private]`

TColStd_SequenceOfInteger IGESSelect_ViewSorter::theindfin`[private]`

TColStd_SequenceOfInteger IGESSelect_ViewSorter::theinditem`[private]`

TColStd_IndexedMapOfTransient IGESSelect_ViewSorter::theitems`[private]`

TColStd_IndexedMapOfTransient IGESSelect_ViewSorter::themap`[private]`

Handle_IGESData_IGESModel IGESSelect_ViewSorter::themodel`[private]`

The documentation for this class was generated from the following file:

- IGESSelect_ViewSorter.hxx