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/
22 // Copyright : CEA/DEN/DMSS/LGLS
26 This file contains the main IDL definitions of the %MED component in %SALOME application.
33 \defgroup MED SALOME MED component
35 This component is dedicated to the mounting in memory of a .med file. some
36 services of that component store CORBA objects (MED, MESH, FIELD) in the
37 study and/or give a direct access to those objects.
40 #include "SALOME_GenericObj.idl"
41 #include "SALOME_Exception.idl"
42 #include "SALOME_Component.idl"
43 #include "SALOMEDS.idl"
44 #include "SALOME_Comm.idl"
50 typedef sequence<long> long_array;
54 typedef sequence<double> double_array;
58 typedef sequence<string> string_array;
62 typedef sequence<boolean> boolean_array;
65 This package contains a set of interfaces used for %SALOME %MED component.
76 This enumeration contains a set of elements defining the type of geometrical elements which constitue
79 typedef long medGeometryElement;
80 const medGeometryElement MED_NONE = 0;
81 const medGeometryElement MED_POINT1 = 1;
82 const medGeometryElement MED_SEG2 = 102;
83 const medGeometryElement MED_SEG3 = 103;
84 const medGeometryElement MED_TRIA3 = 203;
85 const medGeometryElement MED_QUAD4 = 204;
86 const medGeometryElement MED_TRIA6 = 206;
87 const medGeometryElement MED_QUAD8 = 208;
88 const medGeometryElement MED_TETRA4 = 304;
89 const medGeometryElement MED_PYRA5 = 305;
90 const medGeometryElement MED_PENTA6 = 306;
91 const medGeometryElement MED_HEXA8 = 308;
92 const medGeometryElement MED_TETRA10 = 310;
93 const medGeometryElement MED_PYRA13 = 313;
94 const medGeometryElement MED_PENTA15 = 315;
95 const medGeometryElement MED_HEXA20 = 320;
96 const medGeometryElement MED_POLYGON = 400;
97 const medGeometryElement MED_POLYHEDRA = 500;
98 const medGeometryElement MED_ALL_ELEMENTS = 999;
102 This enumeration contains a set of elements defining the structural elements (entities) which constitue
105 typedef long medEntityMesh;
106 const medEntityMesh MED_CELL = 0;
107 const medEntityMesh MED_FACE = 1;
108 const medEntityMesh MED_EDGE = 2;
109 const medEntityMesh MED_NODE = 3;
110 const medEntityMesh MED_ALL_ENTITIES = 4;
113 This enumeration contains a set of modes to store data in an array.
114 For example an array of coordinates in 3D; tow storage may be considered:
116 - X1,Y1,Z1,X2,Y2,Z2,...,Xn,Yn,Zn if MED_FULL_INTERLACE
117 - X1,X2,...,Xn,Y1,Y2,...,Yn,Z1,Z2,...,Zn if MED_NO_INTERLACE
119 typedef long medModeSwitch;
120 const medModeSwitch MED_FULL_INTERLACE = 0;
121 const medModeSwitch MED_NO_INTERLACE = 1;
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 long entityDimension;
432 connectivityInfos getConnectGlobal(in medEntityMesh entity)
433 raises (SALOME::SALOME_Exception);
435 // Families and Groups
436 // -------------------
439 Returns the number of all families.
441 long getNumberOfFamilies(in medEntityMesh entity)
442 raises (SALOME::SALOME_Exception);
445 Returns the number of all groups.
447 long getNumberOfGroups(in medEntityMesh entity)
448 raises (SALOME::SALOME_Exception);
451 Returns an array of all families.
453 Family_array getFamilies(in medEntityMesh entity)
454 raises (SALOME::SALOME_Exception);
457 Returns the reference to i-th family.
460 i is bounded by 1 and NumberOfFamilies.
462 FAMILY getFamily(in medEntityMesh entity,in long familyNumber)
463 raises (SALOME::SALOME_Exception);
466 Returns an array of all groups.
468 Group_array getGroups(in medEntityMesh entity)
469 raises (SALOME::SALOME_Exception);
472 Returns the reference to i-th group.
475 i is bounded by 1 and NumberOfGroups.
477 GROUP getGroup(in medEntityMesh entity,in long groupNumber)
478 raises (SALOME::SALOME_Exception);
484 Returns a field on mySupport containing volume.
487 mySupport must be on MED_CELL entity and MeshDimension must be 3D.
489 FIELD getVolume(in SUPPORT mySupport)
490 raises (SALOME::SALOME_Exception);
493 Returns a field on mySupport containing area.
496 mySupport must be on MED_FACE entity.
498 FIELD getArea(in SUPPORT mySupport)
499 raises (SALOME::SALOME_Exception);
502 Returns a field on mySupport containing length.
505 mySupport must be on MED_EDGE entity.
507 FIELD getLength(in SUPPORT mySupport)
508 raises (SALOME::SALOME_Exception);
511 Returns a field on mySupport containing normal.
514 mySupport must be on MED_FACE entity if MeshDimension and
515 SpaceDimension=3D and on MED_EDGE if MeshDimension and SpaceDimension=2D.
517 FIELD getNormal(in SUPPORT mySupport)
518 raises (SALOME::SALOME_Exception);
521 Returns a field on mySupport containing barycenter.
523 FIELD getBarycenter(in SUPPORT mySupport)
524 raises (SALOME::SALOME_Exception);
527 Returns a field on mySupport containing neighbourhood.
529 // FIELD getNeighbourhood(in SUPPORT mySupport)
530 // raises (SALOME::SALOME_Exception);
536 Adds the Mesh in the StudyManager.
538 void addInStudy(in SALOMEDS::Study myStudy, in MESH myIor )
539 raises (SALOME::SALOME_Exception, SALOMEDS::StudyBuilder::LockProtection);
541 // Add a MED/VTK/... driver
542 // Multiple drivers can be added whatever the type
543 long addDriver (in medDriverTypes driverType, in string fileName, in string meshName)
544 raises (SALOME::SALOME_Exception);
546 void rmDriver (in long i) raises (SALOME::SALOME_Exception);
549 void read (in long i) raises (SALOME::SALOME_Exception);
550 void write (in long i, in string driverMeshName)
551 raises (SALOME::SALOME_Exception);
554 Internal Corba method.
556 long getCorbaIndex() raises (SALOME::SALOME_Exception);
560 long spaceDimension ;
564 Family_array famNode;
565 Family_array famEdge;
566 Family_array famFace;
567 Family_array famCell;
568 Group_array groupNode;
569 Group_array groupEdge;
570 Group_array groupFace;
571 Group_array groupCell;
573 meshInfos getMeshGlobal() raises (SALOME::SALOME_Exception);
574 boolean areEquals(in MESH other);
578 // ----------------------
580 // ----------------------
582 interface SUPPORT : SALOME::MultiCommClass, SALOME::GenericObj {
585 Returns the name of the support.
587 string getName() raises (SALOME::SALOME_Exception);
590 Returns the description of the support.
592 string getDescription() raises (SALOME::SALOME_Exception);
595 Returns a reference to the mesh.
597 MESH getMesh() raises (SALOME::SALOME_Exception);
600 Returns the type of %medEntityMesh used by the support.
603 A support deals only with one entity's type
604 (for example : MED_FACE or MED_NODE)
606 medEntityMesh getEntity() raises (SALOME::SALOME_Exception);
609 Returns True if all elements of this entity are
610 engaged, False otherwise.
612 If True, you must use mesh reference (getMesh) to get more information.
614 boolean isOnAllElements() raises (SALOME::SALOME_Exception);
617 If the method %isOnAllElements() returns False, this method
618 returns the number of elements in the support.
620 Example : number of MED_TRIA3 or MED_ALL_ELEMETNS elements
621 in entity of support.
624 If %SUPPORT is defined on MED_NODE, use MED_NONE %medGeometryElement
627 long getNumberOfElements(in medGeometryElement geomElement)
628 raises (SALOME::SALOME_Exception);
630 long getNumberOfTypes() raises (SALOME::SALOME_Exception);
632 If isOnAllElements is False, returns an array of %medGeometryElement
633 types used by the support.
635 %medEntityMesh is given by getEntity.
637 medGeometryElement_array getTypes() raises (SALOME::SALOME_Exception);
641 If the method %isOnAllElements() returns False, this method returns an array which
642 contains all numbers of given %medGeometryElement.
644 Numbering is global, ie numbers are bounded by 1 and
645 MESH::getNumberOfElement(entity,MED_ALL_ELEMENTS) and not by 1 and
646 MESH::getNumberOfElement(entity,geomElement).
649 If %SUPPORT is defined on MED_NODE, use MED_NONE %medGeometryElement type.
651 SALOME_MED::long_array getNumber(in medGeometryElement geomElement)
652 raises (SALOME::SALOME_Exception);
655 Idem SALOME::Sender getNumber(in medGeometryElement geomElement) but returning Sender.\n
656 It could be used in a Client code using the MED Client classes.
659 SALOME::SenderInt getSenderForNumber(in medGeometryElement geomElement)
660 raises (SALOME::SALOME_Exception);
663 If the method %isOnAllElements() returns False, this method returns the index
666 Use it with getNumber(MED_ALL_ELEMENTS).
669 See the method %getConnectivityIndex for more details.
671 SALOME_MED::long_array getNumberIndex()
672 raises (SALOME::SALOME_Exception);
675 Idem SALOME_MED::long_array getNumberIndex() but return a Sender.\n
676 It could be used in a Client code using the MED Client classes.
678 SALOME::SenderInt getSenderForNumberIndex()
679 raises (SALOME::SALOME_Exception);
682 Returns the number of Gauss points for this %medGeometryElement.
685 - Not defined if %SUPPORT is on MED_NODE.
686 - Not defined for MED_ALL_ELEMENTS %medGeometryElement type.
688 long getNumberOfGaussPoint(in medGeometryElement geomElement)
689 raises (SALOME::SALOME_Exception);
691 SALOME_MED::long_array getNumbersOfGaussPoint()
692 raises (SALOME::SALOME_Exception);
694 void getBoundaryElements()
695 raises (SALOME::SALOME_Exception);
697 Internal Corba method.
699 long getCorbaIndex() raises (SALOME::SALOME_Exception);
704 boolean isOnAllElements;
705 medEntityMesh entity;
706 long numberOfGeometricType;
707 medGeometryElement_array types;
708 SALOME_MED::long_array nbEltTypes;
710 supportInfos getSupportGlobal() raises (SALOME::SALOME_Exception);
719 interface FAMILY : SUPPORT
723 Returns Family identifier (Identifier
724 of the family in the mesh).
727 There is precisely only one indentifier for each family.
729 long getIdentifier() raises (SALOME::SALOME_Exception);
732 Returns number of attributes.
734 long getNumberOfAttributes() raises (SALOME::SALOME_Exception);
737 Returns an array of all attributes' identifiers.
738 There is one for each attribute.
740 SALOME_MED::long_array getAttributesIdentifiers()
741 raises (SALOME::SALOME_Exception);
744 Returns identifier of i-th attribute.
747 i is bounded by 1 and NumberOfAttributes.
749 long getAttributeIdentifier(in long i) raises (SALOME::SALOME_Exception);
752 Returns an array of all values of the attributes .
753 There is one value for each attribute.
755 SALOME_MED::long_array getAttributesValues()
756 raises (SALOME::SALOME_Exception);
759 Returns the value of i-th attribute.
762 i is bounded by 1 and NumberOfAttributes.
764 long getAttributeValue(in long i) raises (SALOME::SALOME_Exception);
767 Returns an array of all descriptions of the attributes .
768 There is one description for each attribute.
770 SALOME_MED::string_array getAttributesDescriptions()
771 raises (SALOME::SALOME_Exception);
774 Returns the description of i-th attribute.
777 i is bounded by 1 and NumberOfAttributes.
779 string getAttributeDescription(in long i)
780 raises (SALOME::SALOME_Exception);
783 Returns the number of groups the family belongs to.
785 long getNumberOfGroups()
786 raises (SALOME::SALOME_Exception);
789 Returns an array of names of groups the family belongs to .
790 There is one name for each group.
792 SALOME_MED::string_array getGroupsNames()
793 raises (SALOME::SALOME_Exception);
796 Returns the name of i-th group.
799 i is bounded by 1 and NumberOfAttributes.
801 string getGroupName(in long i)
802 raises (SALOME::SALOME_Exception);
811 interface GROUP : SUPPORT
815 Returns the number of families in this group.
817 long getNumberOfFamilies() raises (SALOME::SALOME_Exception);
820 Returns an array of all families.
822 Family_array getFamilies() raises (SALOME::SALOME_Exception);
825 Returns a reference to the i-th family.
828 i is bounded by 1 and NumberOfFamilies.
830 FAMILY getFamily(in long i) raises (SALOME::SALOME_Exception);
839 interface FIELD : SALOME::GenericObj
843 Returns the field name.
845 string getName() raises (SALOME::SALOME_Exception);
848 Returns the field description.
850 string getDescription() raises (SALOME::SALOME_Exception);
853 Returns a reference to the support
854 on which the field is defined.
856 SUPPORT getSupport() raises (SALOME::SALOME_Exception);
859 Returns the number of field's components.
861 long getNumberOfComponents() raises (SALOME::SALOME_Exception);
864 Returns an array containing components names.
866 SALOME_MED::string_array getComponentsNames()
867 raises (SALOME::SALOME_Exception);
870 Returns the name of i-th component.
873 - i is bounded by 1 and NumberOfComponents.
874 - Name is mandatory for each field's component.
876 string getComponentName(in long i) raises (SALOME::SALOME_Exception);
879 Returns an array containing components units.
881 SALOME_MED::string_array getComponentsUnits()
882 raises (SALOME::SALOME_Exception);
885 Returns the unit of i-th component.
888 i is bounded by 1 and NumberOfComponents.
890 string getComponentUnit(in long i) raises (SALOME::SALOME_Exception);
893 Returns an array containing components descriptions.
895 SALOME_MED::string_array getComponentsDescriptions()
896 raises (SALOME::SALOME_Exception);
899 Returns the description of i-th component.
902 - i is bounded by 1 and NumberOfComponents.
903 - Name is mandatory for each field's component.
905 string getComponentDescription(in long i) raises (SALOME::SALOME_Exception);
908 Returns the iteration number.
910 long getIterationNumber() raises (SALOME::SALOME_Exception);
913 Returns time for this iteration.
915 double getTime() raises (SALOME::SALOME_Exception);
918 Returns order number use for
919 internal step in this iteration.
921 long getOrderNumber() raises (SALOME::SALOME_Exception);
924 Returns if gauss points are present.
926 boolean getGaussPresence();
931 long addDriver (in medDriverTypes driverType, in string fileName, in string fieldName)
932 raises (SALOME::SALOME_Exception);
937 void rmDriver (in long i)
938 raises (SALOME::SALOME_Exception);
941 void read (in long i)
942 raises (SALOME::SALOME_Exception);
947 void write (in long i, in string driverFieldName)
948 raises (SALOME::SALOME_Exception);
951 Adds the Field in the StudyManager.
953 void addInStudy(in SALOMEDS::Study myStudy, in FIELD myIor )
954 raises (SALOME::SALOME_Exception, SALOMEDS::StudyBuilder::LockProtection);
957 Internal Corba method.
960 raises (SALOME::SALOME_Exception);
965 interface FIELDDOUBLE : FIELD , SALOME::MultiCommClass {
968 Returns an array of values of the field
970 SALOME_MED::double_array getValue(in medModeSwitch mode)
971 raises (SALOME::SALOME_Exception);
974 Idem as getValue but it could be used in a Client code using the
977 SALOME::SenderDouble getSenderForValue(in medModeSwitch mode)
978 raises (SALOME::SALOME_Exception);
981 interface FIELDDOUBLENO : FIELDDOUBLE {
984 interface FIELDDOUBLEFULL : FIELDDOUBLE {
987 interface FIELDINT : FIELD , SALOME::MultiCommClass {
990 Returns an array of values of the field
992 SALOME_MED::long_array getValue(in medModeSwitch mode)
993 raises (SALOME::SALOME_Exception);
996 Idem as getValue but it could be used in a Client code using the
999 SALOME::SenderInt getSenderForValue(in medModeSwitch mode)
1000 raises (SALOME::SALOME_Exception);
1003 interface FIELDINTNO : FIELDINT {
1006 interface FIELDINTFULL : FIELDINT {
1011 interface MED : SALOME::GenericObj {
1013 returns the number of meshes in the %MED object.
1015 long getNumberOfMeshes () raises (SALOME::SALOME_Exception);
1017 returns the number of fields in the %MED object.
1019 long getNumberOfFields () raises (SALOME::SALOME_Exception);
1021 returns an array which contains the name of each meshes in the %MED object.
1023 SALOME_MED::string_array getMeshNames () raises (SALOME::SALOME_Exception);
1025 returns an array which contains the name of each fields in the %MED object.
1027 SALOME_MED::string_array getFieldNames () raises (SALOME::SALOME_Exception);
1029 giving a mesh name, it returns the corresponding %MESH pointer.
1031 MESH getMeshByName ( in string meshName) raises (SALOME::SALOME_Exception);
1033 giving a %FIELD pointer, it returns the corresponding %MESH pointer of the mesh
1034 on which the field lies.
1036 MESH getMesh ( in FIELD fieldPtr) raises (SALOME::SALOME_Exception);
1038 giving a field name, it returns the number of iteration in the corresponding %FIELD object.
1040 long getFieldNumberOfIteration(in string fieldName) raises (SALOME::SALOME_Exception);
1042 giving a field name and an integer %i, it returns a couple of integers: the time iteration and
1043 the order number of the %i^th iteration of the corresponding %FIELD object.
1045 SALOME_MED::long_array getFieldIteration(in string fieldName, in long i) raises (SALOME::SALOME_Exception);
1047 giving a field name, it returns an array of integers: the list of the time iteration and
1048 the order number couple of all iterations of the corresponding %FIELD object.
1050 (DT1, IT1, DT2, IT2, ... , DTn, ITn) when n is the number of the %FIELD iterations.
1052 SALOME_MED::long_array getFieldIterations(in string fieldName) raises (SALOME::SALOME_Exception);
1054 giving a field name, a time iteration and an order number, it returns the corresponding %FIELD oject.
1056 FIELD getField ( in string fieldName,
1058 in long numOrdre ) raises (SALOME::SALOME_Exception);
1061 // Add a MED/VTK/... driver to a MED'GEN' object to
1062 // be able to read/write files preserving meshes<-->fields association
1063 // Multiple drivers can be added whatever the type.
1064 // The access point in the <long> returned
1065 long addDriver (in medDriverTypes driverType, in string fileName)
1066 raises (SALOME::SALOME_Exception);
1070 void rmDriver (in long i) raises (SALOME::SALOME_Exception);
1072 Reads the structure of the %MED file
1074 void readFileStruct(in long i) raises (SALOME::SALOME_Exception);
1075 void writeFrom (in long i) raises (SALOME::SALOME_Exception);
1076 void write (in long i) raises (SALOME::SALOME_Exception);
1078 void addMesh (in MESH ptrMesh ) raises (SALOME::SALOME_Exception);
1079 void addField (in FIELD ptrField ) raises (SALOME::SALOME_Exception);
1081 void addInStudy (in SALOMEDS::Study myStudy, in MED medPtr) raises (SALOME::SALOME_Exception, SALOMEDS::StudyBuilder::LockProtection);
1085 #endif /* MED_IDL */