--- File: SelectMgr.cdl
--- Created: Mon Feb 6 14:08:38 1995
--- Author: Mister rmi
--- <rmi@photon>
----Copyright: Matra Datavision 1995
-
-
+-- Created on: 1995-02-06
+-- Created by: Mister rmi
+-- Copyright (c) 1995-1999 Matra Datavision
+-- Copyright (c) 1999-2014 OPEN CASCADE SAS
+--
+-- This file is part of Open CASCADE Technology software library.
+--
+-- This library is free software; you can redistribute it and/or modify it under
+-- the terms of the GNU Lesser General Public License version 2.1 as published
+-- by the Free Software Foundation, with special exception defined in the file
+-- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
+-- distribution for complete text of the license and disclaimer of any warranty.
+--
+-- Alternatively, this file may be used under the terms of Open CASCADE
+-- commercial license or contractual agreement.
package SelectMgr
SelectBasics,
PrsMgr,
Prs3d,
- Graphic3d
+ Graphic3d,
+ gp
is
-- - full
-- - partial
-- - none.
- deferred class SelectableObject;
-
- deferred class ViewerSelector;
- ---Purpose: class selector dedicated to a view ;
- -- contains all the sensitive Entities present
- -- in a view at selection time
+ enumeration TypeOfBVHUpdate is TBU_Add,
+ TBU_Remove,
+ TBU_Renew,
+ TBU_Invalidate,
+ TBU_None;
+ ---Purpose: Keeps track for BVH update state for each SelectMgr_Selection entity in a following way:
+ -- - Add : 2nd level BVH does not contain any of the selection's sensitive entities and they must be
+ -- added;
+ -- - Remove : all sensitive entities of the selection must be removed from 2nd level BVH;
+ -- - Renew : 2nd level BVH already contains sensitives of the selection, but the its complete update
+ -- and removal is required. Therefore, sensitives of the selection with this type of update
+ -- must be removed from 2nd level BVH and added after recomputation.
+ -- - Invalidate : the 2nd level BVH needs to be rebuilt;
+ -- - None : entities of the selection are up to date.
deferred class Filter;
deferred class CompositionFilter;
class AndFilter;
- ---Purpose: AND filter
-
- class OrFilter;
- ---Purpose: OR filter
-
+ class OrFilter;
- class EntityOwner;
- ---Purpose: Inherits EntityOwner from SelectBasics;
- -- knows the selectable object it was made from;
- --
- class Selection;
- ---Purpose: set of primitives for a mode an an Object;
- -- In fact a Selectable Object will have one or many
- -- modes of selection or decomposition;
- -- A Selection object will contain all the primitives
- -- coming from one decomposition.
+ class EntityOwner;
+ deferred class SelectableObject;
class SelectionManager;
- ---Purpose: manages all the Operations before selection -
- -- i.e. add specific selections for an object in a selectionview
-
-
-
---Category: instantiations of classes from TCollection...
- class SequenceOfFilter instantiates Sequence from TCollection
- (Filter from SelectMgr);
-
- class ListOfFilter instantiates List from TCollection
- (Filter from SelectMgr);
-
- class SequenceOfOwner instantiates Sequence from TCollection
- (EntityOwner from SelectMgr);
-
- class IndexedMapOfOwner instantiates IndexedMap from TCollection
- (EntityOwner from SelectMgr,MapTransientHasher from TColStd);
+ imported SequenceOfFilter;
- class DataMapOfIntegerSensitive instantiates DataMap from TCollection
- (Integer, SensitiveEntity from SelectBasics,
- MapIntegerHasher from TColStd);
+ imported ListOfFilter;
- class SequenceOfSelector instantiates Sequence from TCollection
- (ViewerSelector);
+ imported ListIteratorOfListOfFilter;
- class SequenceOfSelection instantiates Sequence from TCollection
- (Selection);
+ imported SequenceOfOwner;
+ imported SequenceOfSelector;
- class DataMapOfSelectionActivation instantiates DataMap from TCollection
- (Selection,Integer,MapTransientHasher from TColStd);
+ imported DataMapOfObjectSelectors;
- class DataMapOfObjectSelectors instantiates DataMap from TCollection
- (SelectableObject,SequenceOfSelector,MapTransientHasher from TColStd);
+ imported DataMapIteratorOfDataMapOfObjectSelectors;
- private class IndexedDataMapOfOwnerCriterion
- instantiates IndexedDataMap from TCollection
- (EntityOwner from SelectBasics,
- SortCriterion from SelectMgr,
- MapTransientHasher from TColStd);
+ imported IndexedDataMapOfOwnerCriterion;
private class SortCriterion;
pointer SOPtr to SelectableObject from SelectMgr;
- imported CompareResults;
- ---Purpose: Redefine CompareOfInteger from TCollection, to be used
- -- in method SortResult from class ViewerSelector
+ imported transient class IndexedMapOfOwner;
+ imported SelectableObjectSet;
+ imported FrustumBuilder;
+ imported BaseFrustum;
+ imported Frustum;
+ imported RectangularFrustum;
+ imported TriangularFrustum;
+ imported TriangularFrustumSet;
+ imported SelectingVolumeManager;
+ imported transient class Selection;
+ imported SequenceOfSelection;
+ imported SensitiveEntity;
+ imported SensitiveEntitySet;
+ imported transient class ViewerSelector;
end SelectMgr;