1 // Copyright (C) 2005 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
2 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
4 // This library is free software; you can redistribute it and/or
5 // modify it under the terms of the GNU Lesser General Public
6 // License as published by the Free Software Foundation; either
7 // version 2.1 of the License.
9 // This library is distributed in the hope that it will be useful
10 // but WITHOUT ANY WARRANTY; without even the implied warranty of
11 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 // Lesser General Public License for more details.
14 // You should have received a copy of the GNU Lesser General Public
15 // License along with this library; if not, write to the Free Software
16 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
18 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
25 This file contains the main IDL definitions of the %MED component in %SALOME application.
32 \defgroup MED SALOME MED component
34 This component is dedicated to the mounting in memory of a .med file. some
35 services of that component store CORBA objects (MED, MESH, FIELD) in the
36 study and/or give a direct access to those objects.
39 #include "SALOME_GenericObj.idl"
40 #include "SALOME_Exception.idl"
41 #include "SALOME_Component.idl"
42 #include "SALOMEDS.idl"
43 #include "SALOME_Comm.idl"
49 typedef sequence<long> long_array;
53 typedef sequence<double> double_array;
57 typedef sequence<string> string_array;
61 typedef sequence<boolean> boolean_array;
64 This package contains a set of interfaces used for %SALOME %MED component.
75 This enumeration contains a set of elements defining the type of geometrical elements which constitue
78 typedef long medGeometryElement;
79 const medGeometryElement MED_NONE = 0;
80 const medGeometryElement MED_POINT1 = 1;
81 const medGeometryElement MED_SEG2 = 102;
82 const medGeometryElement MED_SEG3 = 103;
83 const medGeometryElement MED_TRIA3 = 203;
84 const medGeometryElement MED_QUAD4 = 204;
85 const medGeometryElement MED_TRIA6 = 206;
86 const medGeometryElement MED_QUAD8 = 208;
87 const medGeometryElement MED_TETRA4 = 304;
88 const medGeometryElement MED_PYRA5 = 305;
89 const medGeometryElement MED_PENTA6 = 306;
90 const medGeometryElement MED_HEXA8 = 308;
91 const medGeometryElement MED_TETRA10 = 310;
92 const medGeometryElement MED_PYRA13 = 313;
93 const medGeometryElement MED_PENTA15 = 315;
94 const medGeometryElement MED_HEXA20 = 320;
95 const medGeometryElement MED_POLYGON = 400;
96 const medGeometryElement MED_POLYHEDRA = 500;
97 const medGeometryElement MED_ALL_ELEMENTS = 999;
101 This enumeration contains a set of elements defining the structural elements (entities) which constitue
104 typedef long medEntityMesh;
105 const medEntityMesh MED_CELL = 0;
106 const medEntityMesh MED_FACE = 1;
107 const medEntityMesh MED_EDGE = 2;
108 const medEntityMesh MED_NODE = 3;
109 const medEntityMesh MED_ALL_ENTITIES = 4;
112 This enumeration contains a set of modes to store data in an array.
113 For example an array of coordinates in 3D; tow storage may be considered:
115 - X1,Y1,Z1,X2,Y2,Z2,...,Xn,Yn,Zn if MED_FULL_INTERLACE
116 - X1,X2,...,Xn,Y1,Y2,...,Yn,Z1,Z2,...,Zn if MED_NO_INTERLACE
118 typedef long medModeSwitch;
119 const medModeSwitch MED_FULL_INTERLACE = 0;
120 const medModeSwitch MED_NO_INTERLACE = 1;
121 const medModeSwitch MED_NO_INTERLACE_BY_TYPE = 2;
124 This enumeration contains a set of elements defining the type of connectivity.
126 typedef long medConnectivity;
127 const medConnectivity MED_NODAL = 0;
128 const medConnectivity MED_DESCENDING = 1;
132 enumeration contains a set of elements defining the type of driver.
134 typedef long medDriverTypes;
135 /*!<This driver is used for reading into memory of the mesh from %MED file.*/
136 const medDriverTypes MED_DRIVER = 0;
137 const medDriverTypes VTK_DRIVER = 1;
138 const medDriverTypes NO_DRIVER = 2;
141 An array of %medGeometryElement
143 typedef sequence<medGeometryElement> medGeometryElement_array;
148 typedef sequence<FAMILY> Family_array;
153 typedef sequence<GROUP> Group_array;
155 // ----------------------
157 // ----------------------
159 interface MESH : SALOME::MultiCommClass, SALOME::GenericObj {
160 // Index range begins from 1
162 // General Informations
163 //---------------------
166 Returns the name of the mesh .
168 string getName() raises (SALOME::SALOME_Exception);
171 Returns space dimension.
173 long getSpaceDimension() raises (SALOME::SALOME_Exception);
176 Returns mesh dimension.
179 - we have only MED_TETRA4 in MED_CELL : MeshDimension = 3D
180 - we have only MED_QUAD4 in MED_CELL : MeshDimension = 2D
181 - we have both MED_SEG2 and MED_TRIA3 in MED_CELL : MeshDimension = 2D
183 long getMeshDimension() raises (SALOME::SALOME_Exception);
188 boolean getIsAGrid() raises (SALOME::SALOME_Exception);
193 boolean existConnectivity (in medConnectivity mode,
194 in medEntityMesh entity)
195 raises (SALOME::SALOME_Exception);
201 Returns coordinate system :
206 string getCoordinatesSystem() raises (SALOME::SALOME_Exception);
209 Returns the number of nodes defined in the mesh.
211 long getNumberOfNodes() raises (SALOME::SALOME_Exception);
214 Returns an array of coordinates stored in any type
216 SALOME_MED::double_array getCoordinates(in medModeSwitch typeSwitch)
217 raises (SALOME::SALOME_Exception);
220 Returns an array (Sender) of coordinates stored in any type.\n
221 It could be used in a Client code using the MED Client classes.
223 SALOME::SenderDouble getSenderForCoordinates(in medModeSwitch typeSwitch)
224 raises (SALOME::SALOME_Exception);
226 Returns coordinate n° Number on axis n° Axis
228 double getCoordinate(in long Number, in long Axis)
229 raises (SALOME::SALOME_Exception);
233 Returns an array containing the names of coordinates.
242 SALOME_MED::string_array getCoordinatesNames()
243 raises (SALOME::SALOME_Exception);
246 Returns an array containing the units of coordinates (cm, m, mm, ...)
248 It could be empty. By defult IS is used (meter).
250 SALOME_MED::string_array getCoordinatesUnits()
251 raises (SALOME::SALOME_Exception);
254 Returns the %SUPPORT containing the boundary elements
258 SUPPORT getBoundaryElements(in medEntityMesh Entity)
259 raises (SALOME::SALOME_Exception);
262 Returns the %SUPPORT containing the boundary elements
263 of the support mySupport3D.
265 SUPPORT getSkin(in SUPPORT mySupport3D ) raises (SALOME::SALOME_Exception);
267 SALOME_MED::long_array getGlobalNumberingIndex(in medEntityMesh entity) ;
269 struct coordinateInfos
272 SALOME_MED::string_array coordNames;
273 SALOME_MED::string_array coordUnits;
275 coordinateInfos getCoordGlobal() raises (SALOME::SALOME_Exception);
283 Returns the number of defferent %medGeometryElement types existing
284 in the specified entity.
287 Not implemented for MED_ALL_ENTITIES.
289 long getNumberOfTypes(in medEntityMesh entity)
290 raises (SALOME::SALOME_Exception);
293 Returns an array of all %medGeometryElement types existing
297 Not implemented for MED_ALL_ENTITIES.
299 medGeometryElement_array getTypes(in medEntityMesh entity)
300 raises (SALOME::SALOME_Exception);
303 Returns the number of elements of type %medGeometryElement.
306 - Implemented for MED_ALL_ELEMENTS
307 - Not implemented for MED_ALL_ENTITIES
309 long getNumberOfElements(in medEntityMesh entity,
310 in medGeometryElement geomElement)
311 raises (SALOME::SALOME_Exception);
314 Give, in full or no interlace mode (for nodal connectivity),
315 descending or nodal connectivity.
317 You must give a %medEntityMesh (ie:MED_EDGE) and a
318 %medGeometryElement (ie:MED_SEG3).
320 SALOME_MED::long_array getConnectivity(in medModeSwitch typeSwitch,
321 in medConnectivity mode,
322 in medEntityMesh entity,
323 in medGeometryElement geomElement)
324 raises (SALOME::SALOME_Exception);
327 Idem getConnectivity but return a Sender.\n
328 It could be used in a Client code using the MED Client classes.
330 SALOME::SenderInt getSenderForConnectivity(in medModeSwitch typeSwitch,
331 in medConnectivity mode,
332 in medEntityMesh entity,
333 in medGeometryElement geomElement)
334 raises (SALOME::SALOME_Exception);
337 Idem getConnectivity but return a Sender.\n
338 It could be used in a Client code using the MED Client classes.
340 SALOME::SenderInt getSenderForPolygonsConnectivity(in medConnectivity mode,
341 in medEntityMesh entity)
342 raises (SALOME::SALOME_Exception);
345 Idem getConnectivityIndex but return a Sender.\n
346 It could be used in a Client code using the MED Client classes.
348 SALOME::SenderInt getSenderForPolygonsConnectivityIndex(in medConnectivity mode,
349 in medEntityMesh entity)
350 raises (SALOME::SALOME_Exception);
353 Idem getConnectivity but return a Sender.\n
354 It could be used in a Client code using the MED Client classes.
356 SALOME::SenderInt getSenderForPolyhedronConnectivity(in medConnectivity mode)
357 raises (SALOME::SALOME_Exception);
360 Idem getConnectivityIndex but return a Sender.\n
361 It could be used in a Client code using the MED Client classes.
363 SALOME::SenderInt getSenderForPolyhedronIndex(in medConnectivity mode)
364 raises (SALOME::SALOME_Exception);
367 Idem getConnectivityIndex but return a Sender.\n
368 It could be used in a Client code using the MED Client classes.
370 SALOME::SenderInt getSenderForPolyhedronFacesIndex()
371 raises (SALOME::SALOME_Exception);
374 Give morse index array to use with
375 getConnectivity(MED_FULL_INTERLACE,mode,entity,MED_ALL_ELEMENTS).
377 Each value give start index for corresponding entity in
380 Example : i-th element, j-th node of it :
381 - In C mode : Connectivity[ConnectivityIndex[i]-1+j-1]
382 - In fortran mode : Connectivity[ConnectivityIndex[i]+j]
384 SALOME_MED::long_array getConnectivityIndex(in medConnectivity mode,
385 in medEntityMesh entity)
386 raises (SALOME::SALOME_Exception);
389 Gets a global number of the element which have the same connectivity as the
390 connectivity argument.
392 long getElementNumber(in medConnectivity mode,
393 in medEntityMesh entity,
394 in medGeometryElement type,
395 in SALOME_MED::long_array connectivity)
396 raises (SALOME::SALOME_Exception);
398 medGeometryElement getElementType (in medEntityMesh entity,
400 raises (SALOME::SALOME_Exception);
403 Returns a reverse connectivity to MED_CELL.
405 If mode=MED_NODAL, the array contains, for each node, all cells
408 If mode=MED_DESCENDING, the array contains, for each face (or edge),
409 the 2 cells of each side. First is cell which face normal is outgoing.
411 SALOME_MED::long_array getReverseConnectivity(in medConnectivity mode)
412 raises (SALOME::SALOME_Exception);
415 Give index array to use with getReverseConnectivity(MED_NODAL).
417 This method is not used with MED_DESCENDING mode,
418 because we have allways two cells.
420 See getConnectivityIndex for details.
422 SALOME_MED::long_array getReverseConnectivityIndex(in medConnectivity mode)
423 raises (SALOME::SALOME_Exception);
425 struct connectivityInfos
428 medGeometryElement_array meshTypes;
429 SALOME_MED::long_array numberOfElements;
430 SALOME_MED::long_array nodalConnectivityLength;
431 long entityDimension;
433 connectivityInfos getConnectGlobal(in medEntityMesh entity)
434 raises (SALOME::SALOME_Exception);
436 // Families and Groups
437 // -------------------
440 Returns the number of all families.
442 long getNumberOfFamilies(in medEntityMesh entity)
443 raises (SALOME::SALOME_Exception);
446 Returns the number of all groups.
448 long getNumberOfGroups(in medEntityMesh entity)
449 raises (SALOME::SALOME_Exception);
452 Returns an array of all families.
454 Family_array getFamilies(in medEntityMesh entity)
455 raises (SALOME::SALOME_Exception);
458 Returns the reference to i-th family.
461 i is bounded by 1 and NumberOfFamilies.
463 FAMILY getFamily(in medEntityMesh entity,in long familyNumber)
464 raises (SALOME::SALOME_Exception);
467 Returns an array of all groups.
469 Group_array getGroups(in medEntityMesh entity)
470 raises (SALOME::SALOME_Exception);
473 Returns the reference to i-th group.
476 i is bounded by 1 and NumberOfGroups.
478 GROUP getGroup(in medEntityMesh entity,in long groupNumber)
479 raises (SALOME::SALOME_Exception);
485 Returns a field on mySupport containing volume.
488 mySupport must be on MED_CELL entity and MeshDimension must be 3D.
490 FIELD getVolume(in SUPPORT mySupport)
491 raises (SALOME::SALOME_Exception);
494 Returns a field on mySupport containing area.
497 mySupport must be on MED_FACE entity.
499 FIELD getArea(in SUPPORT mySupport)
500 raises (SALOME::SALOME_Exception);
503 Returns a field on mySupport containing length.
506 mySupport must be on MED_EDGE entity.
508 FIELD getLength(in SUPPORT mySupport)
509 raises (SALOME::SALOME_Exception);
512 Returns a field on mySupport containing normal.
515 mySupport must be on MED_FACE entity if MeshDimension and
516 SpaceDimension=3D and on MED_EDGE if MeshDimension and SpaceDimension=2D.
518 FIELD getNormal(in SUPPORT mySupport)
519 raises (SALOME::SALOME_Exception);
522 Returns a field on mySupport containing barycenter.
524 FIELD getBarycenter(in SUPPORT mySupport)
525 raises (SALOME::SALOME_Exception);
528 Returns a field on mySupport containing neighbourhood.
530 // FIELD getNeighbourhood(in SUPPORT mySupport)
531 // raises (SALOME::SALOME_Exception);
537 Adds the Mesh in the StudyManager.
539 void addInStudy(in SALOMEDS::Study myStudy, in MESH myIor )
540 raises (SALOME::SALOME_Exception, SALOMEDS::StudyBuilder::LockProtection);
542 // Add a MED/VTK/... driver
543 // Multiple drivers can be added whatever the type
544 long addDriver (in medDriverTypes driverType, in string fileName, in string meshName)
545 raises (SALOME::SALOME_Exception);
547 void rmDriver (in long i) raises (SALOME::SALOME_Exception);
550 void read (in long i) raises (SALOME::SALOME_Exception);
551 void write (in long i, in string driverMeshName)
552 raises (SALOME::SALOME_Exception);
555 Internal Corba method.
557 long getCorbaIndex() raises (SALOME::SALOME_Exception);
561 long spaceDimension ;
565 Family_array famNode;
566 Family_array famEdge;
567 Family_array famFace;
568 Family_array famCell;
569 Group_array groupNode;
570 Group_array groupEdge;
571 Group_array groupFace;
572 Group_array groupCell;
574 meshInfos getMeshGlobal() raises (SALOME::SALOME_Exception);
575 boolean areEquals(in MESH other);
579 // ----------------------
581 // ----------------------
583 interface SUPPORT : SALOME::MultiCommClass, SALOME::GenericObj {
586 Returns the name of the support.
588 string getName() raises (SALOME::SALOME_Exception);
591 Returns the description of the support.
593 string getDescription() raises (SALOME::SALOME_Exception);
596 Returns a reference to the mesh.
598 MESH getMesh() raises (SALOME::SALOME_Exception);
601 Returns the type of %medEntityMesh used by the support.
604 A support deals only with one entity's type
605 (for example : MED_FACE or MED_NODE)
607 medEntityMesh getEntity() raises (SALOME::SALOME_Exception);
610 Returns True if all elements of this entity are
611 engaged, False otherwise.
613 If True, you must use mesh reference (getMesh) to get more information.
615 boolean isOnAllElements() raises (SALOME::SALOME_Exception);
618 If the method %isOnAllElements() returns False, this method
619 returns the number of elements in the support.
621 Example : number of MED_TRIA3 or MED_ALL_ELEMETNS elements
622 in entity of support.
625 If %SUPPORT is defined on MED_NODE, use MED_NONE %medGeometryElement
628 long getNumberOfElements(in medGeometryElement geomElement)
629 raises (SALOME::SALOME_Exception);
631 long getNumberOfTypes() raises (SALOME::SALOME_Exception);
633 If isOnAllElements is False, returns an array of %medGeometryElement
634 types used by the support.
636 %medEntityMesh is given by getEntity.
638 medGeometryElement_array getTypes() raises (SALOME::SALOME_Exception);
642 If the method %isOnAllElements() returns False, this method returns an array which
643 contains all numbers of given %medGeometryElement.
645 Numbering is global, ie numbers are bounded by 1 and
646 MESH::getNumberOfElement(entity,MED_ALL_ELEMENTS) and not by 1 and
647 MESH::getNumberOfElement(entity,geomElement).
650 If %SUPPORT is defined on MED_NODE, use MED_NONE %medGeometryElement type.
652 SALOME_MED::long_array getNumber(in medGeometryElement geomElement)
653 raises (SALOME::SALOME_Exception);
656 If the method %isOnAllElements() returns False, this method returns an array which
657 contains all numbers of given %medGeometryElement.
659 Numbering is from file, ie numbers are bounded by 1 and
660 MESH::getNumberOfElement(entity,MED_ALL_ELEMENTS) and not by 1 and
661 MESH::getNumberOfElement(entity,geomElement).
664 If %SUPPORT is defined on MED_NODE, use MED_NONE %medGeometryElement type.
666 SALOME_MED::long_array getNumberFromFile(in medGeometryElement geomElement)
667 raises (SALOME::SALOME_Exception);
670 Idem SALOME::Sender getNumber(in medGeometryElement geomElement) but returning Sender.\n
671 It could be used in a Client code using the MED Client classes.
674 SALOME::SenderInt getSenderForNumber(in medGeometryElement geomElement)
675 raises (SALOME::SALOME_Exception);
678 If the method %isOnAllElements() returns False, this method returns the index
681 Use it with getNumber(MED_ALL_ELEMENTS).
684 See the method %getConnectivityIndex for more details.
686 SALOME_MED::long_array getNumberIndex()
687 raises (SALOME::SALOME_Exception);
690 Idem SALOME_MED::long_array getNumberIndex() but return a Sender.\n
691 It could be used in a Client code using the MED Client classes.
693 SALOME::SenderInt getSenderForNumberIndex()
694 raises (SALOME::SALOME_Exception);
696 void getBoundaryElements()
697 raises (SALOME::SALOME_Exception);
699 Internal Corba method.
701 long getCorbaIndex() raises (SALOME::SALOME_Exception);
706 boolean isOnAllElements;
707 medEntityMesh entity;
708 long numberOfGeometricType;
709 medGeometryElement_array types;
710 SALOME_MED::long_array nbEltTypes;
711 SALOME_MED::long_array nodalConnectivityLength;
713 supportInfos getSupportGlobal() raises (SALOME::SALOME_Exception);
722 interface FAMILY : SUPPORT
726 Returns Family identifier (Identifier
727 of the family in the mesh).
730 There is precisely only one indentifier for each family.
732 long getIdentifier() raises (SALOME::SALOME_Exception);
735 Returns number of attributes.
737 long getNumberOfAttributes() raises (SALOME::SALOME_Exception);
740 Returns an array of all attributes' identifiers.
741 There is one for each attribute.
743 SALOME_MED::long_array getAttributesIdentifiers()
744 raises (SALOME::SALOME_Exception);
747 Returns identifier of i-th attribute.
750 i is bounded by 1 and NumberOfAttributes.
752 long getAttributeIdentifier(in long i) raises (SALOME::SALOME_Exception);
755 Returns an array of all values of the attributes .
756 There is one value for each attribute.
758 SALOME_MED::long_array getAttributesValues()
759 raises (SALOME::SALOME_Exception);
762 Returns the value of i-th attribute.
765 i is bounded by 1 and NumberOfAttributes.
767 long getAttributeValue(in long i) raises (SALOME::SALOME_Exception);
770 Returns an array of all descriptions of the attributes .
771 There is one description for each attribute.
773 SALOME_MED::string_array getAttributesDescriptions()
774 raises (SALOME::SALOME_Exception);
777 Returns the description of i-th attribute.
780 i is bounded by 1 and NumberOfAttributes.
782 string getAttributeDescription(in long i)
783 raises (SALOME::SALOME_Exception);
786 Returns the number of groups the family belongs to.
788 long getNumberOfGroups()
789 raises (SALOME::SALOME_Exception);
792 Returns an array of names of groups the family belongs to .
793 There is one name for each group.
795 SALOME_MED::string_array getGroupsNames()
796 raises (SALOME::SALOME_Exception);
799 Returns the name of i-th group.
802 i is bounded by 1 and NumberOfAttributes.
804 string getGroupName(in long i)
805 raises (SALOME::SALOME_Exception);
814 interface GROUP : SUPPORT
818 Returns the number of families in this group.
820 long getNumberOfFamilies() raises (SALOME::SALOME_Exception);
823 Returns an array of all families.
825 Family_array getFamilies() raises (SALOME::SALOME_Exception);
828 Returns a reference to the i-th family.
831 i is bounded by 1 and NumberOfFamilies.
833 FAMILY getFamily(in long i) raises (SALOME::SALOME_Exception);
842 interface FIELD : SALOME::GenericObj
846 * Returns the field name.
848 string getName() raises (SALOME::SALOME_Exception);
851 * Changes the field name.
853 * \param theName The new name for this field.
855 void setName (in string theName) raises (SALOME::SALOME_Exception);
858 Returns the field description.
860 string getDescription() raises (SALOME::SALOME_Exception);
863 Returns a reference to the support
864 on which the field is defined.
866 SUPPORT getSupport() raises (SALOME::SALOME_Exception);
869 Returns the number of field's components.
871 long getNumberOfComponents() raises (SALOME::SALOME_Exception);
874 Returns an array containing components names.
876 SALOME_MED::string_array getComponentsNames()
877 raises (SALOME::SALOME_Exception);
880 Returns the name of i-th component.
883 - i is bounded by 1 and NumberOfComponents.
884 - Name is mandatory for each field's component.
886 string getComponentName(in long i) raises (SALOME::SALOME_Exception);
889 Returns an array containing components units.
891 SALOME_MED::string_array getComponentsUnits()
892 raises (SALOME::SALOME_Exception);
895 * Returns the unit of i-th component.
897 * \note i is bounded by 1 and NumberOfComponents.
899 string getComponentUnit(in long i) raises (SALOME::SALOME_Exception);
902 Returns an array containing components descriptions.
904 SALOME_MED::string_array getComponentsDescriptions()
905 raises (SALOME::SALOME_Exception);
908 Returns the description of i-th component.
911 - i is bounded by 1 and NumberOfComponents.
912 - Name is mandatory for each field's component.
914 string getComponentDescription(in long i) raises (SALOME::SALOME_Exception);
917 Returns the iteration number.
919 long getIterationNumber() raises (SALOME::SALOME_Exception);
922 Returns time for this iteration.
924 double getTime() raises (SALOME::SALOME_Exception);
927 Returns order number use for
928 internal step in this iteration.
930 long getOrderNumber() raises (SALOME::SALOME_Exception);
933 Returns if gauss points are present.
935 boolean getGaussPresence();
940 long addDriver (in medDriverTypes driverType, in string fileName, in string fieldName)
941 raises (SALOME::SALOME_Exception);
946 void rmDriver (in long i)
947 raises (SALOME::SALOME_Exception);
950 void read (in long i)
951 raises (SALOME::SALOME_Exception);
956 void write (in long i, in string driverFieldName)
957 raises (SALOME::SALOME_Exception);
960 Adds the Field in the StudyManager.
962 void addInStudy(in SALOMEDS::Study myStudy, in FIELD myIor)
963 raises (SALOME::SALOME_Exception, SALOMEDS::StudyBuilder::LockProtection);
964 void addInStudyToComponent(in SALOMEDS::SComponent myComponent, in FIELD myIor)
965 raises (SALOME::SALOME_Exception, SALOMEDS::StudyBuilder::LockProtection);
968 Internal Corba method.
971 raises (SALOME::SALOME_Exception);
976 interface FIELDDOUBLE : FIELD , SALOME::MultiCommClass {
979 Returns an array of values of the field
981 SALOME_MED::double_array getValue(in medModeSwitch mode)
982 raises (SALOME::SALOME_Exception);
985 Idem as getValue but it could be used in a Client code using the
988 SALOME::SenderDouble getSenderForValue(in medModeSwitch mode)
989 raises (SALOME::SALOME_Exception);
992 interface FIELDDOUBLENO : FIELDDOUBLE {
995 interface FIELDDOUBLENOBYTYPE : FIELDDOUBLE {
998 interface FIELDDOUBLEFULL : FIELDDOUBLE {
1001 interface FIELDINT : FIELD , SALOME::MultiCommClass {
1004 Returns an array of values of the field
1006 SALOME_MED::long_array getValue(in medModeSwitch mode)
1007 raises (SALOME::SALOME_Exception);
1010 Idem as getValue but it could be used in a Client code using the
1013 SALOME::SenderInt getSenderForValue(in medModeSwitch mode)
1014 raises (SALOME::SALOME_Exception);
1017 interface FIELDINTNO : FIELDINT {
1020 interface FIELDINTNOBYTYPE : FIELDINT {
1023 interface FIELDINTFULL : FIELDINT {
1028 interface MED : SALOME::GenericObj {
1030 returns the number of meshes in the %MED object.
1032 long getNumberOfMeshes () raises (SALOME::SALOME_Exception);
1034 returns the number of fields in the %MED object.
1036 long getNumberOfFields () raises (SALOME::SALOME_Exception);
1038 returns an array which contains the name of each meshes in the %MED object.
1040 SALOME_MED::string_array getMeshNames () raises (SALOME::SALOME_Exception);
1042 returns an array which contains the name of each fields in the %MED object.
1044 SALOME_MED::string_array getFieldNames () raises (SALOME::SALOME_Exception);
1046 giving a mesh name, it returns the corresponding %MESH pointer.
1048 MESH getMeshByName ( in string meshName) raises (SALOME::SALOME_Exception);
1050 giving a %FIELD pointer, it returns the corresponding %MESH pointer of the mesh
1051 on which the field lies.
1053 MESH getMesh ( in FIELD fieldPtr) raises (SALOME::SALOME_Exception);
1055 giving a field name, it returns the number of iteration in the corresponding %FIELD object.
1057 long getFieldNumberOfIteration(in string fieldName) raises (SALOME::SALOME_Exception);
1059 giving a field name and an integer %i, it returns a couple of integers: the time iteration and
1060 the order number of the %i^th iteration of the corresponding %FIELD object.
1062 SALOME_MED::long_array getFieldIteration(in string fieldName, in long i) raises (SALOME::SALOME_Exception);
1064 giving a field name, it returns an array of integers: the list of the time iteration and
1065 the order number couple of all iterations of the corresponding %FIELD object.
1067 (DT1, IT1, DT2, IT2, ... , DTn, ITn) when n is the number of the %FIELD iterations.
1069 SALOME_MED::long_array getFieldIterations(in string fieldName) raises (SALOME::SALOME_Exception);
1071 giving a field name, a time iteration and an order number, it returns the corresponding %FIELD oject.
1073 FIELD getField ( in string fieldName,
1075 in long numOrdre ) raises (SALOME::SALOME_Exception);
1078 // Add a MED/VTK/... driver to a MED'GEN' object to
1079 // be able to read/write files preserving meshes<-->fields association
1080 // Multiple drivers can be added whatever the type.
1081 // The access point in the <long> returned
1082 long addDriver (in medDriverTypes driverType, in string fileName)
1083 raises (SALOME::SALOME_Exception);
1087 void rmDriver (in long i) raises (SALOME::SALOME_Exception);
1089 Reads the structure of the %MED file
1091 void readFileStruct(in long i) raises (SALOME::SALOME_Exception);
1092 void writeFrom (in long i) raises (SALOME::SALOME_Exception);
1093 void write (in long i) raises (SALOME::SALOME_Exception);
1095 void addMesh (in MESH ptrMesh ) raises (SALOME::SALOME_Exception);
1096 void addField (in FIELD ptrField ) raises (SALOME::SALOME_Exception);
1098 void addInStudy (in SALOMEDS::Study myStudy, in MED medPtr) raises (SALOME::SALOME_Exception, SALOMEDS::StudyBuilder::LockProtection);
1102 #endif /* MED_IDL */