27 #ifndef SVTK_SELECTOR_H
28 #define SVTK_SELECTOR_H
38 #include <TColStd_MapOfInteger.hxx>
39 #include <TColStd_IndexedMapOfInteger.hxx>
41 #include <vtkObject.h>
46 class vtkActorCollection;
140 bool theIsModeShift) = 0;
147 bool theIsModeShift) = 0;
154 bool theIsModeShift) = 0;
166 int theIndex)
const = 0;
189 bool theIsModeShift) = 0;
196 bool theIsModeShift) = 0;
226 GetFilter(
const TFilterID theId)
const = 0;
243 const bool theIsNode =
false)
const = 0;
Handle(TDocStd_Application) CAF_Application
Get OCAF application.
Definition: CAF_Application.cxx:97
Selection_Mode
Definition: SALOME_Selection.h:27
#define SVTK_EXPORT
Definition: SVTK.h:37
NCollection_Map< vtkIdType, svtkIdHasher > SVTK_TVtkIDsMap
Definition: SVTK_Hash.h:151
NCollection_IndexedMap< SVTK_ListOfVtk, SVTK_vtkHasher > SVTK_IndexedMapOfVtkIds
Definition: SVTK_Hash.h:150
std::vector< vtkIdType > SVTK_ListOfVtk
Definition: SVTK_Hash.h:40
NCollection_IndexedMap< vtkIdType, svtkIdHasher > SVTK_TIndexedMapOfVtkId
Definition: SVTK_Hash.h:153
The class is a basic one for all SALOME VTK presentation.
Definition: SALOME_Actor.h:73
Definition: SALOME_ListIO.hxx:29
Define an abstract interface for selection in SVTK package.
Definition: SVTK_Selector.h:58
virtual const SALOME_ListIO & StoredIObjects() const =0
Get all SALOME_InteractiveObject references that is present into selection.
virtual void ClearIObjects()=0
Clear selection.
virtual void ClearCompositeIndex()=0
Clear composite indexes subselection.
virtual SALOME_Actor * GetActor(const Handle(SALOME_InteractiveObject)&theIO) const =0
Try to find corresponding SALOME_Actor for given reference on SALOME_InteractiveObject.
virtual void EndPickCallback()=0
To invoke selectionChanged signals.
virtual bool AddOrRemoveCompositeIndex(const Handle(SALOME_InteractiveObject)&theIO, const SVTK_IndexedMapOfVtkIds &theIds, bool theIsModeShift)=0
Change composite indices of subselection for given SALOME_InteractiveObject.
virtual bool AddIObject(SALOME_Actor *theActor)=0
Modify the selection by adding new reference on SALOME_Actor.
int TFilterID
Definition: SVTK_Selector.h:216
virtual void GetCompositeIndex(const Handle(SALOME_InteractiveObject)&theIO, SVTK_IndexedMapOfVtkIds &theIds)=0
Get composite indexes of subslection for given SALOME_InteractiveObject.
virtual bool AddOrRemoveIndex(const Handle(SALOME_InteractiveObject)&theIO, const SVTK_TIndexedMapOfVtkId &theIndices, bool theIsModeShift)=0
Change indices of subselection for given SALOME_InteractiveObject.
virtual void SetDynamicPreSelection(bool theIsDynPreselect)=0
virtual bool IsCompositeIndexSelected(const Handle(SALOME_InteractiveObject)&theIO, SVTK_ListOfVtk ids) const =0
Check, if the given composite index is present in subselection.
virtual bool IsSelectionEnabled() const =0
virtual bool RemoveIObject(SALOME_Actor *theActor)=0
Modify the selection by removing a reference on SALOME_Actor.
virtual bool IsFilterPresent(const TFilterID theId) const =0
Check, if a filter with given number is applyed.
virtual void GetIndex(const Handle(SALOME_InteractiveObject)&theIO, SVTK_TIndexedMapOfVtkId &theIndex)=0
Get indexes of subslection for given SALOME_InteractiveObject.
virtual void SetPreSelectionEnabled(bool theEnabled)=0
virtual bool GetDynamicPreSelection() const =0
virtual vtkActorCollection * Pick(const SVTK_SelectionEvent *theEvent, vtkRenderer *theRenderer) const =0
virtual bool IsPreSelectionEnabled() const =0
virtual void SetFilter(const Handle(VTKViewer_Filter)&theFilter)=0
To apply a filter on the selection.
virtual int IObjectCount() const =0
Get number of selected objects.
virtual void RemoveFilter(const TFilterID theId)=0
To remove a filter from the selection.
virtual void RemoveCompositeIndex(const Handle(SALOME_InteractiveObject)&theIO, SVTK_ListOfVtk ids)=0
Change composite index of subslection for given SALOME_InteractiveObject.
virtual void SetSelectionEnabled(bool theEnabled)=0
virtual bool IsIndexSelected(const Handle(SALOME_InteractiveObject)&theIO, int theIndex) const =0
Check, if the given index is present in subselection.
virtual Handle(VTKViewer_Filter) GetFilter(const TFilterID theId) const =0
To get a section filter by its number.
virtual bool IsValid(SALOME_Actor *theActor, const int theId, const bool theIsNode=false) const =0
Check, if the index satisfy to the installed filters.
virtual bool HasCompositeIndex(const Handle(SALOME_InteractiveObject)&theIO) const =0
! Composite indexes
vtkTypeMacro(SVTK_Selector, vtkObject) virtual void SetSelectionMode(Selection_Mode theMode)=0
To change current Selection_Mode (as outside effect, it invokes selectionChange signal)
virtual bool IsSelected(SALOME_Actor *theActor) const =0
Check, is the SALOME_Actor is present into selection.
virtual bool AddOrRemoveIndex(const Handle(SALOME_InteractiveObject)&theIO, int theIndex, bool theIsModeShift)=0
Change index of subslection for given SALOME_InteractiveObject.
virtual bool HasIndex(const Handle(SALOME_InteractiveObject)&theIO) const =0
Check, if the SALOME_InteractiveObject has a subselection.
virtual bool AddOrRemoveIndex(const Handle(SALOME_InteractiveObject)&theIO, const SVTK_TVtkIDsMap &theIndices, bool theIsModeShift)=0
Change indexes of subslection for given SALOME_InteractiveObject.
virtual Selection_Mode SelectionMode() const =0
Get current Selection_Mode.
virtual bool AddOrRemoveCompositeIndex(const Handle(SALOME_InteractiveObject)&theIO, SVTK_ListOfVtk ids, bool theIsModeShift)=0
Change composite index of subslection for given SALOME_InteractiveObject.
virtual bool IsSelected(const Handle(SALOME_InteractiveObject)&theIO) const =0
Check, is the SALOME_InteractiveObject is present into selection.
virtual void SetTolerance(const double &theTolerance)=0
virtual void ClearIndex()=0
Clear subselection.
virtual void StartPickCallback()=0
virtual bool RemoveIObject(const Handle(SALOME_InteractiveObject)&theIO)=0
Modify the selection by removing a reference on SALOME_InteractiveObject.
virtual void RemoveIndex(const Handle(SALOME_InteractiveObject)&theIO, int theIndex)=0
Change index of subslection for given SALOME_InteractiveObject.
virtual bool AddIObject(const Handle(SALOME_InteractiveObject)&theIO)=0
Modify the selection by adding new reference on SALOME_InteractiveObject.
Definition: VTKViewer_Filter.cxx:29
The structure is used for passing all infromation necessary for claculation of the selection.
Definition: SVTK_SelectionEvent.h:41