7fd59977 |
1 | -- File: BooleanOperations_AncestorsSeqAndSuccessorsSeq.cdl |
2 | -- Created: Thu Aug 17 09:52:15 2000 |
3 | -- Author: Vincent DELOS |
4 | -- <vds@bulox.paris1.matra-dtv.fr> |
5 | ---Copyright: Matra Datavision 2000 |
6 | |
7 | |
8 | class AncestorsSeqAndSuccessorsSeq from BooleanOperations |
9 | |
10 | ---Purpose: provide all the ancestors and successors of a -- |
11 | -- given shape. Exemple : for an edge the ancestors |
12 | -- -- are the wires that hold it and the successors |
13 | -- are -- its vertices. As we don't know the number |
14 | -- of -- ancestors of a given shape we first put them |
15 | -- in a -- sequence of integers (our data structure |
16 | -- -- defining the shapes does not have back |
17 | -- pointers). Then we transfer these data in the |
18 | -- class AncestorsAndSuccessors. |
19 | |
20 | uses |
21 | Orientation from TopAbs, |
22 | SequenceOfInteger from TColStd, |
23 | AncestorsAndSuccessors from BooleanOperations |
24 | |
25 | is |
26 | |
27 | Create returns AncestorsSeqAndSuccessorsSeq from BooleanOperations; |
28 | |
29 | |
30 | Dump (me); |
31 | ---Purpose: to display the fields. |
32 | |
33 | |
34 | -------------------- |
35 | -- INLINE METHODS -- |
36 | -------------------- |
37 | |
38 | GetAncestor (me; AncestorIndex: Integer) returns Integer; |
39 | ---C++: inline |
40 | GetSuccessor (me; SuccessorIndex: Integer) returns Integer; |
41 | ---C++: inline |
42 | GetOrientation(me; OrientationIndex: Integer) returns Orientation; |
43 | ---C++: inline |
44 | |
45 | NumberOfAncestors (me) returns Integer; |
46 | ---C++: inline |
47 | NumberOfSuccessors (me) returns Integer; |
48 | ---C++: inline |
49 | |
50 | SetNewAncestor (me:in out; AncestorNumber: Integer); |
51 | ---C++: inline |
52 | ---Purpose: appends AncestorNumber in the sequence. |
53 | SetNewSuccessor (me:in out; SuccessorNumber: Integer); |
54 | ---C++: inline |
55 | ---Purpose: appends SuccessorNumber in the array refering to <mySuccessorsInserted>. |
56 | SetNewOrientation(me:in out; theOrientation: Orientation); |
57 | ---C++: inline |
58 | ---Purpose: appends SuccessorNumber in the array refering to <mySuccessorsInserted>. |
59 | |
60 | |
61 | fields |
62 | |
63 | myAncestors: SequenceOfInteger; |
64 | ---Purpose: the sequence containing all the ancestors of our given shape. |
65 | |
66 | mySuccessors: SequenceOfInteger; |
67 | ---Purpose: the array containing all the successors. |
68 | |
69 | myOrientations:SequenceOfInteger; |
70 | ---Purpose: the array containing all orientations corresponding to the successors. |
71 | |
72 | end AncestorsSeqAndSuccessorsSeq; |