0024750: Replace instantiations of TCollection generic classes by NCollection templat...
[occt.git] / src / XSControl / XSControl_ConnectedShapes.cdl
1 -- Created on: 1999-02-24
2 -- Created by: Christian CAILLET
3 -- Copyright (c) 1999 Matra Datavision
4 -- Copyright (c) 1999-2014 OPEN CASCADE SAS
5 --
6 -- This file is part of Open CASCADE Technology software library.
7 --
8 -- This library is free software; you can redistribute it and/or modify it under
9 -- the terms of the GNU Lesser General Public License version 2.1 as published
10 -- by the Free Software Foundation, with special exception defined in the file
11 -- OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT
12 -- distribution for complete text of the license and disclaimer of any warranty.
13 --
14 -- Alternatively, this file may be used under the terms of Open CASCADE
15 -- commercial license or contractual agreement.
16
17 class ConnectedShapes  from XSControl    inherits SelectExplore  from IFSelect
18
19     ---Purpose : From a TopoDS_Shape, or from the entity which has produced it,
20     --           searches for the shapes, and the entities which have produced
21     --           them in last transfer, which are adjacent to it by VERTICES
22
23 uses AsciiString, Transient,  Graph, EntityIterator,
24      HSequenceOfTransient from TColStd,
25      Shape from TopoDS, ShapeEnum from TopAbs,
26      TransientProcess from Transfer, TransferReader from XSControl
27
28 is
29
30     Create returns ConnectedShapes;
31     ---Purpose : Creates a Selection ConnectedShapes. It remains to be set a
32     --           TransferReader
33
34     Create (TR : TransferReader) returns ConnectedShapes;
35     ---Purpose : Creates a Selection ConnectedShapes, which will work with the
36     --           current TransferProcess brought by the TransferReader
37  
38     SetReader (me : mutable; TR : TransferReader);
39     ---Purpose : Sets a TransferReader to sort entities : it brings the
40     --           TransferProcess which may change, while the TransferReader does not
41
42     Explore (me; level : Integer; ent : Transient; G : Graph;
43              explored : in out EntityIterator)
44         returns Boolean;
45     ---Purpose : Explores an entity : entities from which are connected to that
46     --           produced by this entity, including itself
47  
48  
49     ExploreLabel (me) returns AsciiString from TCollection;
50     ---Purpose : Returns a text defining the criterium.
51     --           "Connected Entities through produced Shapes"
52
53
54     AdjacentEntities (myclass;
55         ashape    : Shape from TopoDS;
56         TP : TransientProcess from Transfer;
57         type      : ShapeEnum from TopAbs)
58             returns HSequenceOfTransient;
59     ---Purpose : This functions considers a shape from a transfer and performs
60     --           the search function explained above
61
62 fields
63  
64     theTR : TransferReader;
65
66 end ConnectedShapes;