Open CASCADE Technology
7.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. More... | |
Standard_Boolean | AddInput (const 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. More... | |
void | AddPrevious (const Handle< IFSelect_SelectDeduct > &item) |
Adds a new first item (prepends to the list). The Input is not touched If is null, does nothing. More... | |
void | AddNext (const Handle< IFSelect_SelectDeduct > &item) |
Adds a new last item (prepends to the list) If is null, does nothing. More... | |
Standard_Integer | NbItems () const |
Returns the count of Items. More... | |
Handle< IFSelect_SelectDeduct > | Item (const Standard_Integer num) const |
Returns an item from its rank in the list (the Input is always apart) More... | |
void | SetLabel (const Standard_CString lab) |
Sets a value for the Label. More... | |
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... More... | |
TCollection_AsciiString | Label () const override |
Returns the Label Either it has been defined by SetLabel, or it will give "Suite of nn Selections". More... | |
![]() | |
void | SetInput (const Handle< IFSelect_Selection > &sel) |
Defines or Changes the Input Selection. More... | |
Handle< IFSelect_Selection > | Input () const |
Returns the Input Selection. More... | |
Standard_Boolean | HasInput () const |
Returns True if the Input Selection is defined, False else. More... | |
Standard_Boolean | HasAlternate () const |
Tells if an Alternate List has been set, i.e. : the Alternate Definition is present and set. More... | |
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. More... | |
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. More... | |
void | FillIterator (IFSelect_SelectionIterator &iter) const override |
Puts in an Iterator the Selections from which "me" depends This list contains one Selection : the InputSelection. More... | |
![]() | |
Interface_EntityIterator | UniqueResult (const Interface_Graph &G) const |
Returns the list of selected entities, each of them beeing unique. Default definition works from RootResult. According HasUniqueResult, UniqueResult returns directly RootResult, or build a Unique Result from it with a Graph. More... | |
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) More... | |
![]() | |
virtual void | Delete () const override |
Memory deallocator for transient classes. More... | |
![]() | |
Standard_Transient () | |
Empty constructor. More... | |
Standard_Transient (const Standard_Transient &) | |
Copy constructor – does nothing. More... | |
Standard_Transient & | operator= (const Standard_Transient &) |
Assignment operator, needed to avoid copying reference counter. More... | |
virtual | ~Standard_Transient () |
Destructor must be virtual. More... | |
virtual const opencascade::handle< Standard_Type > & | DynamicType () const |
Returns a type descriptor about this object. More... | |
Standard_Boolean | IsInstance (const opencascade::handle< Standard_Type > &theType) const |
Returns a true value if this is an instance of Type. More... | |
Standard_Boolean | IsInstance (const Standard_CString theTypeName) const |
Returns a true value if this is an instance of TypeName. More... | |
Standard_Boolean | 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. More... | |
Standard_Boolean | IsKind (const Standard_CString 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. More... | |
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. More... | |
Standard_Integer | GetRefCount () const |
Get the reference counter of this object. More... | |
void | IncrementRefCounter () const |
Increments the reference counter of this object. More... | |
Standard_Integer | DecrementRefCounter () const |
Decrements the reference counter of this object; returns the decremented value. More... | |
Additional Inherited Members | |
![]() | |
typedef void | base_type |
Returns a type descriptor about this object. More... | |
![]() | |
static const char * | get_type_name () |
Returns a type descriptor about this object. More... | |
static const opencascade::handle< Standard_Type > & | get_type_descriptor () |
Returns type descriptor of Standard_Transient class. More... | |
![]() | |
virtual Standard_Boolean | HasUniqueResult () const |
Returns True if RootResult guarantees uniqueness for each Entity. Called by UniqueResult. Default answer is False. Can be redefined. More... | |
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.
Standard_Boolean IFSelect_SelectSuite::AddInput | ( | const 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 Handle< IFSelect_SelectDeduct > & | item | ) |
Adds a new last item (prepends to the list) If is null, does nothing.
void IFSelect_SelectSuite::AddPrevious | ( | const Handle< IFSelect_SelectDeduct > & | item | ) |
Adds a new first item (prepends to the list). The Input is not touched If is null, does nothing.
Handle< IFSelect_SelectDeduct > IFSelect_SelectSuite::Item | ( | const Standard_Integer | 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.
Standard_Integer 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.
void IFSelect_SelectSuite::SetLabel | ( | const Standard_CString | lab | ) |
Sets a value for the Label.