summaryrefslogtreecommitdiff
path: root/src/BooleanOperations/BooleanOperations_AncestorsSeqAndSuccessorsSeq.cdl
blob: 81750388964b01cfa497a6238cd1ea408cdc27a1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
-- File:	BooleanOperations_AncestorsSeqAndSuccessorsSeq.cdl
-- Created:	Thu Aug 17 09:52:15 2000
-- Author:	Vincent DELOS
--		<vds@bulox.paris1.matra-dtv.fr>
---Copyright:	 Matra Datavision 2000


class AncestorsSeqAndSuccessorsSeq from BooleanOperations 

	---Purpose: provide all the ancestors and  successors of a --
	--          given shape.  Exemple : for  an edge the ancestors
	--           -- are the wires  that hold it and the successors
	--          are -- its vertices.  As  we don't know the number
	--          of -- ancestors of a given shape we first put them
	--           in a -- sequence  of integers (our data structure
	--          -- defining      the shapes does not   have   back
	--          pointers). Then  we   transfer these data  in  the
	--          class AncestorsAndSuccessors.

uses
    Orientation from TopAbs,
    SequenceOfInteger from TColStd,
    AncestorsAndSuccessors from BooleanOperations

is

    Create returns AncestorsSeqAndSuccessorsSeq from BooleanOperations;

      
    Dump (me);
    ---Purpose: to display the fields.


    --------------------
    -- INLINE METHODS --
    --------------------

    GetAncestor   (me; AncestorIndex:    Integer) returns Integer;
    ---C++: inline    
    GetSuccessor  (me; SuccessorIndex:   Integer) returns Integer;
    ---C++: inline    
    GetOrientation(me; OrientationIndex: Integer) returns Orientation;
    ---C++: inline    

    NumberOfAncestors  (me) returns Integer;
    ---C++: inline
    NumberOfSuccessors (me) returns Integer;
    ---C++: inline

    SetNewAncestor   (me:in out; AncestorNumber: Integer);
    ---C++: inline    
    ---Purpose: appends AncestorNumber in the sequence.
    SetNewSuccessor  (me:in out; SuccessorNumber: Integer);
    ---C++:   inline
    ---Purpose: appends SuccessorNumber in the array refering to <mySuccessorsInserted>.
    SetNewOrientation(me:in out; theOrientation: Orientation);
    ---C++:   inline
    ---Purpose: appends SuccessorNumber in the array refering to <mySuccessorsInserted>.


fields

myAncestors: SequenceOfInteger;
---Purpose: the sequence containing all the ancestors of our given shape.

mySuccessors: SequenceOfInteger;
---Purpose: the array containing all the successors.

myOrientations:SequenceOfInteger;
---Purpose: the array containing all orientations corresponding to the successors.

end AncestorsSeqAndSuccessorsSeq;