![]() |
Open CASCADE Technology Reference Manual 8.0.0
|
A SelectSuite can describe a suite of SelectDeduct as a unique one : in other words, it can be seen as a "macro selection". More...
#include <IFSelect_SelectSuite.hxx>

Public Member Functions | |
| IFSelect_SelectSuite () | |
| Creates an empty SelectSuite. | |
| bool | AddInput (const occ::handle< IFSelect_Selection > &item) |
| Adds an input selection. I.E. : If is a SelectDeduct, adds it as Previous, not as Input Else, sets it as Input Returns True when done Returns False and refuses to work if Input is already defined. | |
| void | AddPrevious (const occ::handle< IFSelect_SelectDeduct > &item) |
| Adds a new first item (prepends to the list). The Input is not touched If is null, does nothing. | |
| void | AddNext (const occ::handle< IFSelect_SelectDeduct > &item) |
| Adds a new last item (prepends to the list) If is null, does nothing. | |
| int | NbItems () const |
| Returns the count of Items. | |
| occ::handle< IFSelect_SelectDeduct > | Item (const int num) const |
| Returns an item from its rank in the list (the Input is always apart) | |
| void | SetLabel (const char *const lab) |
| Sets a value for the Label. | |
| Interface_EntityIterator | RootResult (const Interface_Graph &G) const override |
| Returns the list of selected entities To do this, once InputResult has been taken (if Input or Alternate has been defined, else the first Item gives it) : this result is set as alternate input for the first item, which computes its result : this result is set as alternate input for the second item, etc... | |
| TCollection_AsciiString | Label () const override |
| Returns the Label Either it has been defined by SetLabel, or it will give "Suite of nn Selections". | |
Public Member Functions inherited from IFSelect_SelectDeduct | |
| void | SetInput (const occ::handle< IFSelect_Selection > &sel) |
| Defines or Changes the Input Selection. | |
| occ::handle< IFSelect_Selection > | Input () const |
| Returns the Input Selection. | |
| bool | HasInput () const |
| Returns True if the Input Selection is defined, False else. | |
| bool | HasAlternate () const |
| Tells if an Alternate List has been set, i.e. : the Alternate Definition is present and set. | |
| occ::handle< IFSelect_SelectPointed > & | Alternate () |
| Returns the Alternate Definition It is returned modifiable, hence an already defined SelectPointed can be used But if it was not yet defined, it is created the first time. | |
| Interface_EntityIterator | InputResult (const Interface_Graph &G) const |
| Returns the Result determined by Input Selection, as Unique if Input Selection is not defined, returns an empty list. | |
| void | FillIterator (IFSelect_SelectionIterator &iter) const override |
| Puts in an Iterator the Selections from which "me" depends This list contains one Selection : the InputSelection. | |
Public Member Functions inherited from IFSelect_Selection | |
| Interface_EntityIterator | UniqueResult (const Interface_Graph &G) const |
| Returns the list of selected entities, each of them being unique. Default definition works from RootResult. According HasUniqueResult, UniqueResult returns directly RootResult, or build a Unique Result from it with a Graph. | |
| virtual Interface_EntityIterator | CompleteResult (const Interface_Graph &G) const |
| Returns the list of entities involved by a Selection, i.e. UniqueResult plus the shared entities (directly or not) | |
Public Member Functions inherited from Standard_Transient | |
| Standard_Transient () | |
| Empty constructor. | |
| Standard_Transient (const Standard_Transient &) | |
| Copy constructor – does nothing. | |
| Standard_Transient & | operator= (const Standard_Transient &) |
| Assignment operator, needed to avoid copying reference counter. | |
| virtual | ~Standard_Transient ()=default |
| Destructor must be virtual. | |
| virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
| Returns a type descriptor about this object. | |
| bool | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
| Returns a true value if this is an instance of Type. | |
| bool | IsInstance (const char *const theTypeName) const |
| Returns a true value if this is an instance of TypeName. | |
| bool | IsKind (const opencascade::handle< Standard_Type > &theType) const |
| Returns true if this is an instance of Type or an instance of any class that inherits from Type. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
| bool | IsKind (const char *const theTypeName) const |
| Returns true if this is an instance of TypeName or an instance of any class that inherits from TypeName. Note that multiple inheritance is not supported by OCCT RTTI mechanism. | |
| Standard_Transient * | This () const |
| Returns non-const pointer to this object (like const_cast). For protection against creating handle to objects allocated in stack or call from constructor, it will raise exception Standard_ProgramError if reference counter is zero. | |
| int | GetRefCount () const noexcept |
| Get the reference counter of this object. | |
| void | IncrementRefCounter () noexcept |
| Increments the reference counter of this object. Uses relaxed memory ordering since incrementing only requires atomicity, not synchronization with other memory operations. | |
| int | DecrementRefCounter () noexcept |
| Decrements the reference counter of this object; returns the decremented value. Uses release ordering for the decrement to ensure all writes to the object are visible before the count reaches zero. An acquire fence is added only when the count reaches zero, ensuring proper synchronization before deletion. This is more efficient than using acq_rel for every decrement. | |
| virtual void | Delete () const |
| Memory deallocator for transient classes. | |
Additional Inherited Members | |
Public Types inherited from Standard_Transient | |
| typedef void | base_type |
| Returns a type descriptor about this object. | |
Static Public Member Functions inherited from Standard_Transient | |
| static constexpr const char * | get_type_name () |
| Returns a type descriptor about this object. | |
| static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
| Returns type descriptor of Standard_Transient class. | |
Protected Member Functions inherited from IFSelect_Selection | |
| virtual bool | HasUniqueResult () const |
| Returns True if RootResult guarantees uniqueness for each Entity. Called by UniqueResult. Default answer is False. Can be redefined. | |
A SelectSuite can describe a suite of SelectDeduct as a unique one : in other words, it can be seen as a "macro selection".
It works by applying each of its items (which is a SelectDeduct) on the result computed by the previous one (by using Alternate Input)
But each of these Selections used as items may be used independently, it will then give its own result
Hence, SelectSuite gives a way of defining a new Selection from existing ones, without having to do copies or saves
| IFSelect_SelectSuite::IFSelect_SelectSuite | ( | ) |
Creates an empty SelectSuite.
| bool IFSelect_SelectSuite::AddInput | ( | const occ::handle< IFSelect_Selection > & | item | ) |
Adds an input selection. I.E. : If is a SelectDeduct, adds it as Previous, not as Input Else, sets it as Input Returns True when done Returns False and refuses to work if Input is already defined.
| void IFSelect_SelectSuite::AddNext | ( | const occ::handle< IFSelect_SelectDeduct > & | item | ) |
Adds a new last item (prepends to the list) If is null, does nothing.
| void IFSelect_SelectSuite::AddPrevious | ( | const occ::handle< IFSelect_SelectDeduct > & | item | ) |
Adds a new first item (prepends to the list). The Input is not touched If is null, does nothing.
| occ::handle< IFSelect_SelectDeduct > IFSelect_SelectSuite::Item | ( | const int | num | ) | const |
Returns an item from its rank in the list (the Input is always apart)
|
overridevirtual |
Returns the Label Either it has been defined by SetLabel, or it will give "Suite of nn Selections".
Implements IFSelect_Selection.
| int IFSelect_SelectSuite::NbItems | ( | ) | const |
Returns the count of Items.
|
overridevirtual |
Returns the list of selected entities To do this, once InputResult has been taken (if Input or Alternate has been defined, else the first Item gives it) : this result is set as alternate input for the first item, which computes its result : this result is set as alternate input for the second item, etc...
Implements IFSelect_Selection.