0024057: Eliminate compiler warning C4100 in MSVC++ with warning level 4
[occt.git] / src / IGESAppli / IGESAppli_ElementResults.cdl
1 -- Created on: 1993-01-11
2 -- Created by: CKY / Contract Toubro-Larsen ( Anand NATRAJAN )
3 -- Copyright (c) 1993-1999 Matra Datavision
4 -- Copyright (c) 1999-2012 OPEN CASCADE SAS
5 --
6 -- The content of this file is subject to the Open CASCADE Technology Public
7 -- License Version 6.5 (the "License"). You may not use the content of this file
8 -- except in compliance with the License. Please obtain a copy of the License
9 -- at http://www.opencascade.org and read it completely before using this file.
10 --
11 -- The Initial Developer of the Original Code is Open CASCADE S.A.S., having its
12 -- main offices at: 1, place des Freres Montgolfier, 78280 Guyancourt, France.
13 --
14 -- The Original Code and all software distributed under the License is
15 -- distributed on an "AS IS" basis, without warranty of any kind, and the
16 -- Initial Developer hereby disclaims all such warranties, including without
17 -- limitation, any warranties of merchantability, fitness for a particular
18 -- purpose or non-infringement. Please see the License for the specific terms
19 -- and conditions governing the rights and limitations under the License.
20
21
22 class ElementResults from IGESAppli  inherits IGESEntity
23
24         ---Purpose: defines ElementResults, Type <148>
25         --          in package IGESAppli
26         --          Used to find the results of FEM analysis
27
28 uses
29
30         GeneralNote               from IGESDimen,
31         FiniteElement             from IGESAppli,
32         HAsciiString              from TCollection,
33         HArray1OfFiniteElement    from IGESAppli,
34         HArray1OfInteger          from TColStd,
35         HArray1OfReal             from TColStd,
36         HArray1OfHArray1OfInteger from IGESBasic,
37         HArray1OfHArray1OfReal    from IGESBasic
38
39 raises DimensionMismatch, OutOfRange
40
41 is
42
43         Create returns mutable ElementResults;
44
45         -- Specific Methods pertaining to the class
46
47         Init (me                : mutable;
48               aNote             : GeneralNote;
49               aSubCase          : Integer;
50               aTime             : Real;
51               nbResults         : Integer;
52               aResRepFlag       : Integer;
53               allElementIdents  : HArray1OfInteger;
54               allFiniteElems    : HArray1OfFiniteElement;
55               allTopTypes       : HArray1OfInteger;
56               nbLayers          : HArray1OfInteger;
57               allDataLayerFlags : HArray1OfInteger;
58               allnbResDataLocs  : HArray1OfInteger;
59               allResDataLocs    : HArray1OfHArray1OfInteger;
60               allResults        : HArray1OfHArray1OfReal)
61         ---Purpose : This method is used to set the fields of the class
62         --           ElementResults
63         --       - aNote             : GeneralNote Entity describing analysis
64         --       - aSubCase          : Analysis Subcase number
65         --       - aTime             : Analysis time value
66         --       - nbResults         : Number of result values per FEM
67         --       - aResRepFlag       : Results Reporting Flag
68         --       - allElementIdents  : FEM element number for elements
69         --       - allFiniteElems    : FEM element
70         --       - allTopTypes       : Element Topology Types
71         --       - nbLayers          : Number of layers per result data location
72         --       - allDataLayerFlags : Data Layer Flags
73         --       - allnbResDataLocs  : Number of result data report locations
74         --       - allResDataLocs    : Result Data Report Locations
75         --       - allResults        : List of Result data values of FEM analysis
76         raises DimensionMismatch;
77
78         SetFormNumber (me : mutable; form : Integer) raises OutOfRange;
79         ---Purpose : Changes the FormNumber (which indicates Type of Result)
80         --           Error if not in range [0-34]
81
82         Note (me) returns GeneralNote;
83         ---Purpose : returns General Note Entity describing analysis case
84
85         SubCaseNumber (me) returns Integer;
86         ---Purpose : returns analysis Subcase number
87
88         Time (me) returns Real;
89         ---Purpose : returns analysis time value
90
91         NbResultValues (me) returns Integer;
92         ---Purpose : returns number of result values per FEM
93
94         ResultReportFlag (me) returns Integer;
95         ---Purpose : returns Results Reporting Flag
96
97         NbElements (me) returns Integer;
98         ---Purpose : returns number of FEM elements
99
100         ElementIdentifier (me; Index : Integer) returns Integer
101         ---Purpose : returns FEM element number for elements
102         raises OutOfRange;
103         -- if Index <= 0 or Index > NbElements()
104
105         Element (me; Index : Integer) returns FiniteElement
106         ---Purpose : returns FEM element
107         raises OutOfRange;
108         -- if Index <= 0 or Index > NbElements()
109
110         ElementTopologyType (me; Index : Integer) returns Integer
111         ---Purpose : returns element Topology Types
112         raises OutOfRange;
113         -- if Index <= 0 or Index > NbElements()
114
115         NbLayers (me; Index : Integer) returns Integer
116         ---Purpose : returns number of layers per result data location
117         raises OutOfRange;
118         -- if Index <= 0 or Index > NbElements()
119
120         DataLayerFlag (me; Index : Integer) returns Integer
121         ---Purpose : returns Data Layer Flags
122         raises OutOfRange;
123         -- if Index <= 0 or Index > NbElements()
124
125         NbResultDataLocs (me; Index : Integer) returns Integer
126         ---Purpose : returns number of result data report locations
127         raises OutOfRange;
128         -- if Index <= 0 or Index > NbElements()
129
130         ResultDataLoc (me; NElem, NLoc : Integer) returns Integer
131         ---Purpose : returns Result Data Report Locations
132         -- UNFINISHED
133         raises OutOfRange;
134
135         NbResults (me; Index : Integer) returns Integer
136         ---Purpose : returns total number of results
137         raises OutOfRange;
138
139         ResultData (me; NElem, num : Integer) returns Real
140         ---Purpose : returns Result data value for an Element, given its
141         --           order between 1 and <NbResults(NElem)> (direct access)
142         --           For a more comprehensive access, see below
143         raises OutOfRange;
144
145         ResultRank (me; NElem, NVal, NLay, NLoc : Integer) returns Integer
146         ---Purpose : Computes, for a given Element <NElem>, the rank of a
147         --           individual Result Data, given <NVal>,<NLay>,<NLoc>
148         raises OutOfRange;
149
150         ResultData (me; NElem, NVal, NLay, NLoc : Integer) returns Real
151         ---Purpose : returns Result data values of FEM analysis, according this
152         --           definition :
153         --           - <NElem> : n0 of the Element to be considered
154         --           - <NVal> : n0 of the Value between 1 and NbResultValues
155         --           - <NLay> : n0 of the Layer for this Element
156         --           - <NLoc> : n0 of the Data Location for this Element
157         --           This gives for each Element, the corresponding rank
158         --           computed by ResultRank, in which the leftmost subscript
159         --           changes most rapidly
160         raises OutOfRange;
161
162         ResultList (me; NElem : Integer) returns HArray1OfReal
163         ---Purpose : Returns in once the entire list of data for an Element,
164         --           addressed as by ResultRank (See above)
165         raises OutOfRange;
166
167 fields
168
169 --
170 -- Class    : IGESAppli_ElementResults
171 --
172 -- Purpose  : Declaration of variables specific to the definition
173 --            of the Class ElementResults.
174 --
175 -- Reminder : A ElementResults instance is defined by :
176 --            - General Note Entity describing analysis case
177 --            - Analysis Subcase number
178 --            - Analysis time value
179 --            - Number of result values per FEM
180 --            - Results Reporting Flag
181 --            - Number of FEM elements, then for each one :
182 --              - FEM element number identifier
183 --              - FEM element
184 --              - Element Topology Type
185 --              - Number of layers per result data location
186 --              - Data Layer Flag
187 --              - Number of result data report locations
188 --              - Result Data Report Locations
189 --              - Total number of result data
190 --              - Result data values of FEM analysis
191 --                (accessed in "Array3" form for each element)
192
193         theNote                 : GeneralNote;
194         theSubcaseNumber        : Integer;
195         theTime                 : Real;
196         theNbResultValues       : Integer;
197         theResultReportFlag     : Integer;
198         theElementIdentifiers   : HArray1OfInteger;
199         theElements             : HArray1OfFiniteElement;
200         theElementTopologyTypes : HArray1OfInteger;
201         theNbLayers             : HArray1OfInteger;
202         theDataLayerFlags       : HArray1OfInteger;
203         theNbResultDataLocs     : HArray1OfInteger;
204         theResultDataLocs       : HArray1OfHArray1OfInteger;
205         theResultData           : HArray1OfHArray1OfReal;
206
207 end ElementResults;