Salome HOME
yfr : Merge with v1.2
[modules/smesh.git] / src / SMDS / SMDS_MeshPrism.cdl
1 -- File:        SMDS_MeshPrism.cdl
2 -- Created:     Wed Jan 23 16:17:22 2002
3 -- Author:      Jean-Michel BOULCOURT
4 --              <jmb@coulox.paris1.matra-dtv.fr>
5 ---Copyright:    Matra Datavision 2002
6
7
8 class MeshPrism from SMDS inherits MeshVolume from SMDS
9
10         ---Purpose: 
11
12 uses
13   MeshElement from SMDS
14
15     
16 raises 
17   ConstructionError   from Standard
18
19 is
20
21     Create (ID,idnode1,idnode2,idnode3,idnode4,idnode5,idnode6: Integer) 
22     returns mutable MeshPrism;
23         ---Purpose: constructor for a prism
24
25     GetEdgeDefinedByNodes(me; rank: Integer; idnode1 : out Integer; idnode2: out Integer) 
26     is redefined static;
27     ---Purpose: returns the idnodes of the ith edge (rank) of the volume
28     --          rank must be comprised between 1 and myNbConnections included.
29     
30     GetFaceDefinedByNodes(me; rank: Integer; idnode : Address; nb: out Integer) 
31     is redefined static;
32     ---Purpose: returns the idnodes of the ith face (rank) of the volume
33     --          rank must be comprised between 1 and myNbConnections included.
34     
35     ComputeKey(me: mutable);
36     ---Purpose: compute the  ID of the volume  based on the  id's of its
37     --          bounding nodes
38     ---C++: inline
39
40     SetConnections(me: mutable; idnode1,idnode2,idnode3,idnode4,idnode5,idnode6: Integer) is private;
41
42     GetConnections(me) returns Address is redefined static;
43     ---C++: inline
44
45     GetConnection(me; rank: Integer) returns Integer is redefined static;
46     ---C++: inline
47
48     NbEdges(me) returns Integer
49     is redefined static;
50     ---C++: inline
51
52     NbFaces(me) returns Integer
53     is redefined static;
54     ---C++: inline
55
56     NodesOfFace(myclass; rankface,ranknode: Integer) 
57     returns Integer;
58     ---Purpose: returns the rank node in mynodes. Useful to extract faces from volume
59     --          
60     NodesOfEdge(me;  rankedge: Integer; ranknode: Integer) returns Integer;
61
62
63 fields
64     
65     myNodes : Integer [6];
66
67 end MeshPrism;