# DataExchange
TKXSBase
IFSelect

# IFSelect_Dispatch Class Reference

This class allows to describe how a set of Entities has to be
dispatched into resulting Packets : a Packet is a sub-set of
the initial set of entities.
Thus, it can generate zero, one, or more Packets according
input set and criterium of dispatching. And it can let apart
some entities : it is the Remainder, which can be recovered
by a specific Selection (RemainderFromDispatch).
Depending of sub-classes, a Dispatch can potentially generate
a limited or not count of packet, and a remainder or none.
The input set is read from a specified Selection, attached to
the Dispatch : the Final Selection of the Dispatch. The input
is the Unique Root Entities list of the Final Selection
.

`#include <IFSelect_Dispatch.hxx>`

Inheritance diagram for IFSelect_Dispatch:

[legend]

## Public Member Functions

Standard_EXPORT void | SetRootName (const Handle(TCollection_HAsciiString)&name)
| Sets a Root Name as an HAsciiString To reset it, give a Null Handle (then, a ShareOut will have to define the Default Root Name) .
Standard_EXPORT Standard_Boolean | HasRootName () const
| Returns True if a specific Root Name has been set (else, the Default Root Name has to be used) .
Standard_EXPORT const Handle_TCollection_HAsciiString & | RootName () const
| Returns the Root Name for files produced by this dispatch It is empty if it has not been set or if it has been reset .
Standard_EXPORT void | SetFinalSelection (const Handle(IFSelect_Selection)&sel)
| Stores (or Changes) the Final Selection for a Dispatch .
Standard_EXPORT Handle_IFSelect_Selection | FinalSelection () const
| Returns the Final Selection of a Dispatch we 'd like : C++ : return const & .
Standard_EXPORT IFSelect_SelectionIterator | Selections () const
| Returns the complete list of source Selections (starting from FinalSelection) .
virtual Standard_EXPORT Standard_Boolean | CanHaveRemainder () const
| Returns True if a Dispatch can have a Remainder, i.e. if its criterium can let entities apart. It is a potential answer, remainder can be empty at run-time even if answer is True. (to attach a RemainderFromDispatch Selection is not allowed if answer is True). Default answer given here is False (can be redefined) .
virtual Standard_EXPORT Standard_Boolean | LimitedMax (const Standard_Integer nbent, Standard_Integer &max) const
| Returns True if a Dispatch generates a count of Packets always less than or equal to a maximum value : it can be computed from the total count of Entities to be dispatched : <nbent>. If answer is False, no limited maximum is expected for account If answer is True, expected maximum is given in argument <max> Default answer given here is False (can be redefined) .
virtual Standard_EXPORT TCollection_AsciiString | Label () const =0
| Returns a text which defines the way a Dispatch produces packets (which will become files) from its Input .
Standard_EXPORT Interface_EntityIterator | GetEntities (const Interface_Graph &G) const
| Gets Unique Root Entities from the Final Selection, given an input Graph This the starting step for an Evaluation (Packets - Remainder) .
virtual Standard_EXPORT Standard_Boolean | PacketsCount (const Interface_Graph &G, Standard_Integer &count) const

Returns True if Count of Packets is actually known, and the
value of the count in argument "count". Returns False if
this count is unknown. Input is given as a Graph.
This method is intended to be quick (used for file names)
hence if this count is long to compute (that is, as a result
of complete evaluation made by method Packets), it is
preferable to answer "unknown" by returning False
Default answer if False. Can be redefined.
.

virtual Standard_EXPORT void | Packets (const Interface_Graph &G, IFGraph_SubPartsIterator &packs) const =0
| Returns the list of produced Packets into argument <pack>. Each Packet corresponds to a Part, the Entities listed are the Roots given by the Selection. Input is given as a Graph. Thus, to create a file from a packet, it suffices to take the entities listed in a Part of Packets (that is, a Packet) without worrying about Shared entities This method can raise an Exception if data are not coherent .
Standard_EXPORT Interface_EntityIterator | Packeted (const Interface_Graph &G) const
| Returns the list of all Input Entities (see GetEntities) which are put in a Packet. That is, Entities listed in GetEntities but not in Remainder (see below). Input is given as a Graph. .
virtual Standard_EXPORT Interface_EntityIterator | Remainder (const Interface_Graph &G) const
| Returns Remainder which is a set of Entities. Can be empty. Default evaluation is empty (has to be redefined if CanHaveRemainder is redefined to return True). .
Standard_EXPORT const | Handle (Standard_Type)&DynamicType() const

## Private Attributes

Handle_TCollection_HAsciiString | thename
Handle_IFSelect_Selection | thefinal

## Member Function Documentation

virtual Standard_EXPORT Standard_Boolean IFSelect_Dispatch::CanHaveRemainder | ( |  | ) | const`[virtual]`

| Reimplemented in IGESSelect_DispPerDrawing, and IGESSelect_DispPerSingleView.

Standard_EXPORT Handle_IFSelect_Selection IFSelect_Dispatch::FinalSelection | ( |  | ) | const

Standard_EXPORT Interface_EntityIterator IFSelect_Dispatch::GetEntities | ( | const Interface_Graph & | G | ) | const

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

| Reimplemented in IFSelect_DispGlobal, IFSelect_DispPerCount, IFSelect_DispPerFiles, IFSelect_DispPerOne, IFSelect_DispPerSignature, IGESSelect_DispPerDrawing, and IGESSelect_DispPerSingleView.

Standard_EXPORT Standard_Boolean IFSelect_Dispatch::HasRootName | ( |  | ) | const

virtual Standard_EXPORT TCollection_AsciiString IFSelect_Dispatch::Label | ( |  | ) | const`[pure virtual]`

| Implemented in IFSelect_DispGlobal, IFSelect_DispPerCount, IFSelect_DispPerFiles, IFSelect_DispPerOne, IFSelect_DispPerSignature, IGESSelect_DispPerDrawing, and IGESSelect_DispPerSingleView.

virtual Standard_EXPORT Standard_Boolean IFSelect_Dispatch::LimitedMax | ( | const Standard_Integer | nbent,
|  | Standard_Integer & | max
| ) | const`[virtual]`

| Reimplemented in IFSelect_DispGlobal, IFSelect_DispPerCount, IFSelect_DispPerFiles, IFSelect_DispPerOne, and IFSelect_DispPerSignature.

Standard_EXPORT Interface_EntityIterator IFSelect_Dispatch::Packeted | ( | const Interface_Graph & | G | ) | const

virtual Standard_EXPORT void IFSelect_Dispatch::Packets | ( | const Interface_Graph & | G,
|  | IFGraph_SubPartsIterator & | packs
| ) | const`[pure virtual]`

| Implemented in IFSelect_DispGlobal, IFSelect_DispPerCount, IFSelect_DispPerFiles, IFSelect_DispPerOne, IFSelect_DispPerSignature, IGESSelect_DispPerDrawing, and IGESSelect_DispPerSingleView.

virtual Standard_EXPORT Standard_Boolean IFSelect_Dispatch::PacketsCount | ( | const Interface_Graph & | G,
|  | Standard_Integer & | count
| ) | const`[virtual]`

| Reimplemented in IFSelect_DispGlobal, IFSelect_DispPerCount, IFSelect_DispPerFiles, and IFSelect_DispPerOne.

virtual Standard_EXPORT Interface_EntityIterator IFSelect_Dispatch::Remainder | ( | const Interface_Graph & | G | ) | const`[virtual]`

| Reimplemented in IGESSelect_DispPerDrawing, and IGESSelect_DispPerSingleView.

Standard_EXPORT const Handle_TCollection_HAsciiString& IFSelect_Dispatch::RootName | ( |  | ) | const

Standard_EXPORT IFSelect_SelectionIterator IFSelect_Dispatch::Selections | ( |  | ) | const

Standard_EXPORT void IFSelect_Dispatch::SetFinalSelection | ( | const Handle(IFSelect_Selection)& | sel | ) |

Standard_EXPORT void IFSelect_Dispatch::SetRootName | ( | const Handle(TCollection_HAsciiString)& | name | ) |

## Field Documentation

Handle_IFSelect_Selection IFSelect_Dispatch::thefinal `[private]`

Handle_TCollection_HAsciiString IFSelect_Dispatch::thename `[private]`

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

- IFSelect_Dispatch.hxx