0022627: Change OCCT memory management defaults
[occt.git] / src / AIS / AIS_TypeFilter.cdl
1 -- File:        AIS_TypeFilter.cdl
2 -- Created:     Thu Mar  6 16:56:36 1997
3 -- Author:      Robert COUBLANC
4 --              <rob@robox.paris1.matra-dtv.fr>
5 ---Copyright:    Matra Datavision 1997
6
7
8 class TypeFilter from AIS  inherits Filter from SelectMgr
9
10         ---Purpose: Selects Interactive Objects through their types. The
11         -- filter questions each Interactive Object in local context
12         -- to determine whether it has an non-null owner, and if
13         -- so, whether it is of the desired type. If the object
14         -- returns true in each case, it is kept. If not, it is rejected.
15         -- By default, the   interactive object has a None   type
16         -- and a signature of 0. A filter for type specifies a
17         -- choice of type out of a range at any level enumerated
18         -- for type or kind. The choice could be for kind of
19         -- interactive object, of dimension, of unit, or type of axis,
20         -- plane or attribute.
21         -- If you want to give a particular type and signature to
22         -- your Interactive Object, you must redefine two virtual
23         -- methods:   Type and Signature.
24         -- This filter is used in both Neutral Point and open local contexts.
25         -- In the Collector viewer, you can only locate
26         -- Interactive Objects which answer positively to the
27         -- positioned filters when a local context is open.
28         -- Warning
29         -- When you close a local context, all temporary
30         -- interactive objects are deleted, all selection modes
31         -- concerning the context are cancelled, and all content
32         -- filters are emptied.
33
34 uses
35     KindOfInteractive from AIS,
36     EntityOwner from SelectMgr
37
38 is
39     Create(aGivenKind      : KindOfInteractive from AIS)
40     returns mutable TypeFilter from AIS;
41         ---Purpose: Initializes filter for type, aGivenKind.
42     IsOk (me;anobj : EntityOwner from SelectMgr)
43     returns Boolean from Standard is redefined virtual;
44         ---Purpose: Returns False if the transient is not an Interactive
45         -- Object, or if the type of the Interactive Object is not
46         -- the same as that stored in the filter.
47         
48 fields
49     myKind : KindOfInteractive from AIS is protected;
50
51 end TypeFilter;