From: eap Date: Tue, 25 Jun 2013 08:46:03 +0000 (+0000) Subject: CoTech decision: move MEDWrapper from MED to SMESH X-Git-Tag: B4CMakeModifs~39 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=1615175abfe017d5c259ea1001a34889612b5344;p=modules%2Fmed.git CoTech decision: move MEDWrapper from MED to SMESH --- diff --git a/idl/MED.idl b/idl/MED.idl deleted file mode 100644 index de9e4c06d..000000000 --- a/idl/MED.idl +++ /dev/null @@ -1,1094 +0,0 @@ -// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE -// -// Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, -// CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS -// -// This library is free software; you can redistribute it and/or -// modify it under the terms of the GNU Lesser General Public -// License as published by the Free Software Foundation; either -// version 2.1 of the License. -// -// This library is distributed in the hope that it will be useful, -// but WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Lesser General Public License for more details. -// -// You should have received a copy of the GNU Lesser General Public -// License along with this library; if not, write to the Free Software -// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA -// -// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com -// - -// File: MED.idl -// Project: SALOME -// -/*! -This file contains the main IDL definitions of the %MED component in %SALOME application. -*/ - -#ifndef MED_IDL -#define MED_IDL - -/*! - \defgroup MED SALOME MED component - - This component is dedicated to the mounting in memory of a .med file. some - services of that component store CORBA objects (MED, MESH, FIELD) in the - study and/or give a direct access to those objects. -*/ - -#include "SALOME_GenericObj.idl" -#include "SALOME_Exception.idl" -#include "SALOME_Component.idl" -#include "SALOME_Types.idl" -#include "SALOMEDS.idl" -#include "SALOME_Comm.idl" - -module SALOME_MED -{ -/*! \ingroup MED -This package contains a set of interfaces used for %SALOME %MED component. -*/ - - - interface FIELD; - interface FAMILY; - interface GROUP; - interface GMESH; - interface MESH; - interface SUPPORT; - -/*! -This enumeration contains a set of elements defining the type of geometrical elements which constitue -a %Mesh. -*/ - typedef long medGeometryElement; - const medGeometryElement MED_NONE = 0; - const medGeometryElement MED_POINT1 = 1; - const medGeometryElement MED_SEG2 = 102; - const medGeometryElement MED_SEG3 = 103; - const medGeometryElement MED_TRIA3 = 203; - const medGeometryElement MED_QUAD4 = 204; - const medGeometryElement MED_TRIA6 = 206; - const medGeometryElement MED_QUAD8 = 208; - const medGeometryElement MED_TETRA4 = 304; - const medGeometryElement MED_PYRA5 = 305; - const medGeometryElement MED_PENTA6 = 306; - const medGeometryElement MED_HEXA8 = 308; - const medGeometryElement MED_TETRA10 = 310; - const medGeometryElement MED_PYRA13 = 313; - const medGeometryElement MED_PENTA15 = 315; - const medGeometryElement MED_HEXA20 = 320; - const medGeometryElement MED_POLYGON = 400; - const medGeometryElement MED_POLYHEDRA = 500; - const medGeometryElement MED_ALL_ELEMENTS = 999; - - -/*! -This enumeration contains a set of elements defining the structural elements (entities) which constitue -a %Mesh. -*/ - typedef long medEntityMesh; - const medEntityMesh MED_CELL = 0; - const medEntityMesh MED_FACE = 1; - const medEntityMesh MED_EDGE = 2; - const medEntityMesh MED_NODE = 3; - const medEntityMesh MED_ALL_ENTITIES = 4; - -/*! -This enumeration contains a set of modes to store data in an array. -For example an array of coordinates in 3D; tow storage may be considered: - - - X1,Y1,Z1,X2,Y2,Z2,...,Xn,Yn,Zn if MED_FULL_INTERLACE - - X1,X2,...,Xn,Y1,Y2,...,Yn,Z1,Z2,...,Zn if MED_NO_INTERLACE -*/ - typedef long medModeSwitch; - const medModeSwitch MED_FULL_INTERLACE = 0; - const medModeSwitch MED_NO_INTERLACE = 1; - const medModeSwitch MED_NO_INTERLACE_BY_TYPE = 2; - -/*! -This enumeration contains a set of elements defining the type of connectivity. -*/ - typedef long medConnectivity; - const medConnectivity MED_NODAL = 0; - const medConnectivity MED_DESCENDING = 1; - - -/*! - enumeration contains a set of elements defining the type of driver. -*/ - typedef long medDriverTypes; - /*! medGeometryElement_array; - - /*! - An array of %FAMILY - */ - typedef sequence Family_array; - - /*! - An array of %GROUP - */ - typedef sequence Group_array; - - // ---------------------- - // base mesh interface - // ---------------------- - - interface GMESH : SALOME::MultiCommClass, SALOME::GenericObj - { - // Index range begins from 1 - - // General Informations - //--------------------- - - /*! - Returns the name of the mesh . - */ - string getName() raises (SALOME::SALOME_Exception); - - /*! - Returns space dimension. - */ - long getSpaceDimension() raises (SALOME::SALOME_Exception); - - /*! - Returns mesh dimension. - - Example : - - we have only MED_TETRA4 in MED_CELL : MeshDimension = 3D - - we have only MED_QUAD4 in MED_CELL : MeshDimension = 2D - - we have both MED_SEG2 and MED_TRIA3 in MED_CELL : MeshDimension = 2D - */ - long getMeshDimension() raises (SALOME::SALOME_Exception); - - /*! - Pour Alliances - */ - boolean getIsAGrid() raises (SALOME::SALOME_Exception); - - /*! - Returns coordinate system : - - "CARTESIAN" - - "CYLINDRICAL" - - "SPHERICAL" - */ - string getCoordinatesSystem() raises (SALOME::SALOME_Exception); - - /*! - Returns the number of nodes defined in the mesh. - */ - long getNumberOfNodes() raises (SALOME::SALOME_Exception); - - /*! - Returns an array containing the names of coordinates. - - Example : - - x,y,z - - r,teta,phi - - ... - - It could be empty. - */ - SALOME_TYPES::ListOfString getCoordinatesNames() - raises (SALOME::SALOME_Exception); - - /*! - Returns an array containing the units of coordinates (cm, m, mm, ...) - - It could be empty. By defult IS is used (meter). - */ - SALOME_TYPES::ListOfString getCoordinatesUnits() - raises (SALOME::SALOME_Exception); - - /*! - Returns the %SUPPORT containing the boundary elements - of the mesh. - */ - - SUPPORT getBoundaryElements(in medEntityMesh Entity) - raises (SALOME::SALOME_Exception); - - /*! - Returns the %SUPPORT defined on all the element of an Entity. - */ - SUPPORT getSupportOnAll(in medEntityMesh Entity) - raises (SALOME::SALOME_Exception); - - /*! - Returns the %SUPPORT containing the boundary elements - of the support mySupport3D. - */ - SUPPORT getSkin(in SUPPORT mySupport3D ) raises (SALOME::SALOME_Exception); - - struct coordinateInfos - { - string coordSystem; - SALOME_TYPES::ListOfString coordNames; - SALOME_TYPES::ListOfString coordUnits; - }; - coordinateInfos getCoordGlobal() raises (SALOME::SALOME_Exception); - - - - // Connectivity - // ------------ - - /*! - Returns the number of defferent %medGeometryElement types existing - in the specified entity. - - \note - Not implemented for MED_ALL_ENTITIES. - */ - long getNumberOfTypes(in medEntityMesh entity) - raises (SALOME::SALOME_Exception); - - /*! - Returns an array of all %medGeometryElement types existing - in the mesh. - - \note - Not implemented for MED_ALL_ENTITIES. - */ - medGeometryElement_array getTypes(in medEntityMesh entity) - raises (SALOME::SALOME_Exception); - - /*! - Returns the number of elements of type %medGeometryElement. - - Note : - - Implemented for MED_ALL_ELEMENTS - - Not implemented for MED_ALL_ENTITIES - */ - long getNumberOfElements(in medEntityMesh entity, - in medGeometryElement geomElement) - raises (SALOME::SALOME_Exception); - - medGeometryElement getElementType (in medEntityMesh entity, - in long number) - raises (SALOME::SALOME_Exception); - - // Families and Groups - // ------------------- - - /*! - Returns the number of all families. - */ - long getNumberOfFamilies(in medEntityMesh entity) - raises (SALOME::SALOME_Exception); - - /*! - Returns the number of all groups. - */ - long getNumberOfGroups(in medEntityMesh entity) - raises (SALOME::SALOME_Exception); - - /*! - Returns an array of all families. - */ - Family_array getFamilies(in medEntityMesh entity) - raises (SALOME::SALOME_Exception); - - /*! - Returns the reference to i-th family. - - \note - i is bounded by 1 and NumberOfFamilies. - */ - FAMILY getFamily(in medEntityMesh entity,in long familyNumber) - raises (SALOME::SALOME_Exception); - - /*! - Returns an array of all groups. - */ - Group_array getGroups(in medEntityMesh entity) - raises (SALOME::SALOME_Exception); - - /*! - Returns the reference to i-th group. - - \note - i is bounded by 1 and NumberOfGroups. - */ - GROUP getGroup(in medEntityMesh entity,in long groupNumber) - raises (SALOME::SALOME_Exception); - - // Others - // ------ - - /*! - Returns a field on mySupport containing volume. - - \note - mySupport must be on MED_CELL entity and MeshDimension must be 3D. - */ - FIELD getVolume(in SUPPORT mySupport) - raises (SALOME::SALOME_Exception); - - /*! - Returns a field on mySupport containing area. - - \note - mySupport must be on MED_FACE entity. - */ - FIELD getArea(in SUPPORT mySupport) - raises (SALOME::SALOME_Exception); - - /*! - Returns a field on mySupport containing length. - - \note - mySupport must be on MED_EDGE entity. - */ - FIELD getLength(in SUPPORT mySupport) - raises (SALOME::SALOME_Exception); - - /*! - Returns a field on mySupport containing normal. - - \note - mySupport must be on MED_FACE entity if MeshDimension and - SpaceDimension=3D and on MED_EDGE if MeshDimension and SpaceDimension=2D. - */ - FIELD getNormal(in SUPPORT mySupport) - raises (SALOME::SALOME_Exception); - - /*! - Returns a field on mySupport containing barycenter. - */ - FIELD getBarycenter(in SUPPORT mySupport) - raises (SALOME::SALOME_Exception); - - /* - Returns a field on mySupport containing neighbourhood. - */ - // FIELD getNeighbourhood(in SUPPORT mySupport) - // raises (SALOME::SALOME_Exception); - - // Read & Write - // ----------- - - /*! - Adds the Mesh in the StudyManager. - */ - void addInStudy(in SALOMEDS::Study myStudy, in GMESH myIor ) - raises (SALOME::SALOME_Exception, SALOMEDS::StudyBuilder::LockProtection); - - // Add a MED/VTK/... driver - // Multiple drivers can be added whatever the type - long addDriver (in medDriverTypes driverType, in string fileName, in string meshName) - raises (SALOME::SALOME_Exception); - // Remove a driver - void rmDriver (in long i) raises (SALOME::SALOME_Exception); - - // - void read (in long i) raises (SALOME::SALOME_Exception); - void write (in long i, in string driverMeshName) - raises (SALOME::SALOME_Exception); - -/*! -Internal Corba method. -*/ - long getCorbaIndex() raises (SALOME::SALOME_Exception); - struct meshInfos - { - string name ; - long spaceDimension ; - long meshDimension; - long numberOfNodes ; - boolean isAGrid; - Family_array famNode; - Family_array famEdge; - Family_array famFace; - Family_array famCell; - Group_array groupNode; - Group_array groupEdge; - Group_array groupFace; - Group_array groupCell; - }; - meshInfos getMeshGlobal() raises (SALOME::SALOME_Exception); - boolean areEquals(in GMESH other); - - MESH convertInMESH(); - }; - - // ---------------------- - // mesh interface - // ---------------------- - - interface MESH : GMESH { - - /*! - Pour Alliances - */ - boolean existConnectivity (in medConnectivity mode, - in medEntityMesh entity) - raises (SALOME::SALOME_Exception); - - // Coordinates - //------------ - - /*! - Returns an array of coordinates stored in any type - */ - SALOME_TYPES::ListOfDouble getCoordinates(in medModeSwitch typeSwitch) - raises (SALOME::SALOME_Exception); - - /*! - Returns an array (Sender) of coordinates stored in any type.\n - It could be used in a Client code using the MED Client classes. - */ - SALOME::SenderDouble getSenderForCoordinates(in medModeSwitch typeSwitch) - raises (SALOME::SALOME_Exception); - /*! - Returns coordinate n° Number on axis n° Axis - */ - double getCoordinate(in long Number, in long Axis) - raises (SALOME::SALOME_Exception); - - /*! - Returns the %SUPPORT containing the boundary elements - of the mesh. - */ - - SALOME_TYPES::ListOfLong getGlobalNumberingIndex(in medEntityMesh entity) ; - - - // Connectivity - // ------------ - - /*! - Give, in full or no interlace mode (for nodal connectivity), - descending or nodal connectivity. - - You must give a %medEntityMesh (ie:MED_EDGE) and a - %medGeometryElement (ie:MED_SEG3). - */ - SALOME_TYPES::ListOfLong getConnectivity(in medConnectivity mode, - in medEntityMesh entity, - in medGeometryElement geomElement) - raises (SALOME::SALOME_Exception); - - /*! - Idem getConnectivity but return a Sender.\n - It could be used in a Client code using the MED Client classes. - */ - SALOME::SenderInt getSenderForConnectivity(in medConnectivity mode, - in medEntityMesh entity, - in medGeometryElement geomElement) - raises (SALOME::SALOME_Exception); - - /*! - Give morse index array to use with - getConnectivity(mode,entity,MED_ALL_ELEMENTS). - - Each value give start index for corresponding entity in - connectivity array. - - Example : i-th element, j-th node of it : - - In C mode : Connectivity[ConnectivityIndex[i]-1+j-1] - - In fortran mode : Connectivity[ConnectivityIndex[i]+j] - */ - SALOME_TYPES::ListOfLong getConnectivityIndex(in medConnectivity mode, - in medEntityMesh entity) - raises (SALOME::SALOME_Exception); - - /*! - Idem getConnectivityIndex but return a Sender.\n - It could be used in a Client code using the MED Client classes. - */ - SALOME::SenderInt getSenderForConnectivityIndex(in medConnectivity mode, - in medEntityMesh entity, - in medGeometryElement geomElement) - raises (SALOME::SALOME_Exception); - - /*! - Gets a global number of the element which have the same connectivity as the - connectivity argument. - */ - long getElementNumber(in medConnectivity mode, - in medEntityMesh entity, - in medGeometryElement type, - in SALOME_TYPES::ListOfLong connectivity) - raises (SALOME::SALOME_Exception); - - /*! - Returns a reverse connectivity to MED_CELL. - - If mode=MED_NODAL, the array contains, for each node, all cells - arround it. - - If mode=MED_DESCENDING, the array contains, for each face (or edge), - the 2 cells of each side. First is cell which face normal is outgoing. - */ - SALOME_TYPES::ListOfLong getReverseConnectivity(in medConnectivity mode) - raises (SALOME::SALOME_Exception); - - /*! - Give index array to use with getReverseConnectivity(MED_NODAL). - - This method is not used with MED_DESCENDING mode, - because we have allways two cells. - - See getConnectivityIndex for details. - */ - SALOME_TYPES::ListOfLong getReverseConnectivityIndex(in medConnectivity mode) - raises (SALOME::SALOME_Exception); - - struct connectivityInfos - { - long numberOfNodes; - medGeometryElement_array meshTypes; - SALOME_TYPES::ListOfLong numberOfElements; - SALOME_TYPES::ListOfLong nodalConnectivityLength; - long entityDimension; - }; - connectivityInfos getConnectGlobal(in medEntityMesh entity) - raises (SALOME::SALOME_Exception); - - }; - - - // ---------------------- - // Support interface - // ---------------------- - - interface SUPPORT : SALOME::MultiCommClass, SALOME::GenericObj { - - /*! - Returns the name of the support. - */ - string getName() raises (SALOME::SALOME_Exception); - - /*! - Returns the description of the support. - */ - string getDescription() raises (SALOME::SALOME_Exception); - - /*! - Returns a reference to the mesh. - */ - GMESH getMesh() raises (SALOME::SALOME_Exception); - - /*! - Returns the type of %medEntityMesh used by the support. - - \note - A support deals only with one entity's type - (for example : MED_FACE or MED_NODE) - */ - medEntityMesh getEntity() raises (SALOME::SALOME_Exception); - - /*! - Returns True if all elements of this entity are - engaged, False otherwise. - - If True, you must use mesh reference (getMesh) to get more information. - */ - boolean isOnAllElements() raises (SALOME::SALOME_Exception); - - /*! - If the method %isOnAllElements() returns False, this method - returns the number of elements in the support. - - Example : number of MED_TRIA3 or MED_ALL_ELEMETNS elements - in entity of support. - - \note - If %SUPPORT is defined on MED_NODE, use MED_NONE %medGeometryElement - type. - */ - long getNumberOfElements(in medGeometryElement geomElement) - raises (SALOME::SALOME_Exception); - - long getNumberOfTypes() raises (SALOME::SALOME_Exception); - /*! - If isOnAllElements is False, returns an array of %medGeometryElement - types used by the support. - - %medEntityMesh is given by getEntity. - */ - medGeometryElement_array getTypes() raises (SALOME::SALOME_Exception); - - - /*! - If the method %isOnAllElements() returns False, this method returns an array which - contains all numbers of given %medGeometryElement. - - Numbering is global, ie numbers are bounded by 1 and - MESH::getNumberOfElement(entity,MED_ALL_ELEMENTS) and not by 1 and - MESH::getNumberOfElement(entity,geomElement). - - \note - If %SUPPORT is defined on MED_NODE, use MED_NONE %medGeometryElement type. - */ - SALOME_TYPES::ListOfLong getNumber(in medGeometryElement geomElement) - raises (SALOME::SALOME_Exception); - - /*! - If the method %isOnAllElements() returns False, this method returns an array which - contains all numbers of given %medGeometryElement. - - Numbering is from file, ie numbers are bounded by 1 and - MESH::getNumberOfElement(entity,MED_ALL_ELEMENTS) and not by 1 and - MESH::getNumberOfElement(entity,geomElement). - - \note - If %SUPPORT is defined on MED_NODE, use MED_NONE %medGeometryElement type. - */ - SALOME_TYPES::ListOfLong getNumberFromFile(in medGeometryElement geomElement) - raises (SALOME::SALOME_Exception); - - /*! - Idem SALOME::Sender getNumber(in medGeometryElement geomElement) but returning Sender.\n - It could be used in a Client code using the MED Client classes. - */ - - SALOME::SenderInt getSenderForNumber(in medGeometryElement geomElement) - raises (SALOME::SALOME_Exception); - - /*! - If the method %isOnAllElements() returns False, this method returns the index - of element number. - - Use it with getNumber(MED_ALL_ELEMENTS). - - \note - See the method %getConnectivityIndex for more details. - */ - SALOME_TYPES::ListOfLong getNumberIndex() - raises (SALOME::SALOME_Exception); - - /*! - Idem SALOME_TYPES::ListOfLong getNumberIndex() but return a Sender.\n - It could be used in a Client code using the MED Client classes. - */ - SALOME::SenderInt getSenderForNumberIndex() - raises (SALOME::SALOME_Exception); - - void getBoundaryElements() - raises (SALOME::SALOME_Exception); -/*! -Internal Corba method. -*/ - long getCorbaIndex() raises (SALOME::SALOME_Exception); - struct supportInfos - { - string name; - string description; - boolean isOnAllElements; - medEntityMesh entity; - long numberOfGeometricType; - medGeometryElement_array types; - SALOME_TYPES::ListOfLong nbEltTypes; - SALOME_TYPES::ListOfLong nodalConnectivityLength; - }; - supportInfos getSupportGlobal() raises (SALOME::SALOME_Exception); - - }; - - - //----------------- - // Family interface - //----------------- - - interface FAMILY : SUPPORT - { - - /*! - Returns Family identifier (Identifier - of the family in the mesh). - - \note - There is precisely only one indentifier for each family. - */ - long getIdentifier() raises (SALOME::SALOME_Exception); - - /*! - Returns number of attributes. - */ - long getNumberOfAttributes() raises (SALOME::SALOME_Exception); - - /*! - Returns an array of all attributes' identifiers. - There is one for each attribute. - */ - SALOME_TYPES::ListOfLong getAttributesIdentifiers() - raises (SALOME::SALOME_Exception); - - /*! - Returns identifier of i-th attribute. - - \note - i is bounded by 1 and NumberOfAttributes. - */ - long getAttributeIdentifier(in long i) raises (SALOME::SALOME_Exception); - - /*! - Returns an array of all values of the attributes . - There is one value for each attribute. - */ - SALOME_TYPES::ListOfLong getAttributesValues() - raises (SALOME::SALOME_Exception); - - /*! - Returns the value of i-th attribute. - - \note - i is bounded by 1 and NumberOfAttributes. - */ - long getAttributeValue(in long i) raises (SALOME::SALOME_Exception); - - /*! - Returns an array of all descriptions of the attributes . - There is one description for each attribute. - */ - SALOME_TYPES::ListOfString getAttributesDescriptions() - raises (SALOME::SALOME_Exception); - - /*! - Returns the description of i-th attribute. - - \note - i is bounded by 1 and NumberOfAttributes. - */ - string getAttributeDescription(in long i) - raises (SALOME::SALOME_Exception); - - /*! - Returns the number of groups the family belongs to. - */ - long getNumberOfGroups() - raises (SALOME::SALOME_Exception); - - /*! - Returns an array of names of groups the family belongs to . - There is one name for each group. - */ - SALOME_TYPES::ListOfString getGroupsNames() - raises (SALOME::SALOME_Exception); - - /*! - Returns the name of i-th group. - - \note - i is bounded by 1 and NumberOfAttributes. - */ - string getGroupName(in long i) - raises (SALOME::SALOME_Exception); - - - }; - - - //---------------- - // Group interface - //---------------- - interface GROUP : SUPPORT - { - - /*! - Returns the number of families in this group. - */ - long getNumberOfFamilies() raises (SALOME::SALOME_Exception); - - /*! - Returns an array of all families. - */ - Family_array getFamilies() raises (SALOME::SALOME_Exception); - - /*! - Returns a reference to the i-th family. - - \note - i is bounded by 1 and NumberOfFamilies. - */ - FAMILY getFamily(in long i) raises (SALOME::SALOME_Exception); - - }; - - - //---------------- - // Field interface - //---------------- - - interface FIELD : SALOME::GenericObj - { - - /*! - * Returns the field name. - */ - string getName() raises (SALOME::SALOME_Exception); - - /*! - * Changes the field name. - * - * \param theName The new name for this field. - */ - void setName (in string theName) raises (SALOME::SALOME_Exception); - - /*! - Returns the field description. - */ - string getDescription() raises (SALOME::SALOME_Exception); - - /*! - Returns a reference to the support - on which the field is defined. - */ - SUPPORT getSupport() raises (SALOME::SALOME_Exception); - - /*! - Returns the number of field's components. - */ - long getNumberOfComponents() raises (SALOME::SALOME_Exception); - - /*! - Returns an array containing components names. - */ - SALOME_TYPES::ListOfString getComponentsNames() - raises (SALOME::SALOME_Exception); - - /*! - Returns the name of i-th component. - - \note - - i is bounded by 1 and NumberOfComponents. - - Name is mandatory for each field's component. - */ - string getComponentName(in long i) raises (SALOME::SALOME_Exception); - - /*! - Returns an array containing components units. - */ - SALOME_TYPES::ListOfString getComponentsUnits() - raises (SALOME::SALOME_Exception); - - /*! - * Returns the unit of i-th component. - * - * \note i is bounded by 1 and NumberOfComponents. - */ - string getComponentUnit(in long i) raises (SALOME::SALOME_Exception); - - /*! - Returns an array containing components descriptions. - */ - SALOME_TYPES::ListOfString getComponentsDescriptions() - raises (SALOME::SALOME_Exception); - - /*! - Returns the description of i-th component. - - \note - - i is bounded by 1 and NumberOfComponents. - - Name is mandatory for each field's component. - */ - string getComponentDescription(in long i) raises (SALOME::SALOME_Exception); - - /*! - Returns the iteration number. - */ - long getIterationNumber() raises (SALOME::SALOME_Exception); - - /*! - Returns time for this iteration. - */ - double getTime() raises (SALOME::SALOME_Exception); - - /*! - Returns order number use for - internal step in this iteration. - */ - long getOrderNumber() raises (SALOME::SALOME_Exception); - - /*! - Returns if gauss points are present. - */ - boolean getGaussPresence(); - - // Read & Write - // ----------- - - long addDriver (in medDriverTypes driverType, in string fileName, in string fieldName) - raises (SALOME::SALOME_Exception); - - /*! - Removes a driver - */ - void rmDriver (in long i) - raises (SALOME::SALOME_Exception); - - // - void read (in long i) - raises (SALOME::SALOME_Exception); - - /*! - Writes a field. - */ - void write (in long i, in string driverFieldName) - raises (SALOME::SALOME_Exception); - - /*! - Adds the Field in the StudyManager. - */ - void addInStudy(in SALOMEDS::Study myStudy, in FIELD myIor) - raises (SALOME::SALOME_Exception, SALOMEDS::StudyBuilder::LockProtection); - void addInStudyToComponent(in SALOMEDS::SComponent myComponent, in FIELD myIor) - raises (SALOME::SALOME_Exception, SALOMEDS::StudyBuilder::LockProtection); - -/*! -Internal Corba method. -*/ - long getCorbaIndex() - raises (SALOME::SALOME_Exception); - - }; - - - interface FIELDDOUBLE : FIELD , SALOME::MultiCommClass { - - /*! - Returns an array of values of the field - */ - SALOME_TYPES::ListOfDouble getValue(in medModeSwitch mode) - raises (SALOME::SALOME_Exception); - - /*! - Idem as getValue but it could be used in a Client code using the - MED Client classes. - */ - SALOME::SenderDouble getSenderForValue(in medModeSwitch mode) - raises (SALOME::SALOME_Exception); - }; - - interface FIELDDOUBLENO : FIELDDOUBLE { - }; - - interface FIELDDOUBLENOBYTYPE : FIELDDOUBLE { - }; - - interface FIELDDOUBLEFULL : FIELDDOUBLE { - }; - - interface FIELDINT : FIELD , SALOME::MultiCommClass { - - /*! - Returns an array of values of the field - */ - SALOME_TYPES::ListOfLong getValue(in medModeSwitch mode) - raises (SALOME::SALOME_Exception); - - /*! - Idem as getValue but it could be used in a Client code using the - MED Client classes. - */ - SALOME::SenderInt getSenderForValue(in medModeSwitch mode) - raises (SALOME::SALOME_Exception); - }; - - interface FIELDINTNO : FIELDINT { - }; - - interface FIELDINTNOBYTYPE : FIELDINT { - }; - - interface FIELDINTFULL : FIELDINT { - }; - - // MED interface - - interface MED : SALOME::GenericObj { - /*! - returns the number of meshes in the %MED object. - */ - long getNumberOfMeshes () raises (SALOME::SALOME_Exception); - /*! - returns the number of fields in the %MED object. - */ - long getNumberOfFields () raises (SALOME::SALOME_Exception); - /*! - returns an array which contains the name of each meshes in the %MED object. - */ - SALOME_TYPES::ListOfString getMeshNames () raises (SALOME::SALOME_Exception); - /*! - returns an array which contains the name of each fields in the %MED object. - */ - SALOME_TYPES::ListOfString getFieldNames () raises (SALOME::SALOME_Exception); - /*! - giving a mesh name, it returns the corresponding %MESH pointer. - */ - GMESH getMeshByName ( in string meshName) raises (SALOME::SALOME_Exception); - /*! - giving a %FIELD pointer, it returns the corresponding %MESH pointer of the mesh - on which the field lies. - */ - GMESH getMesh ( in FIELD fieldPtr) raises (SALOME::SALOME_Exception); - /*! - giving a field name, it returns the number of iteration in the corresponding %FIELD object. - */ - long getFieldNumberOfIteration(in string fieldName) raises (SALOME::SALOME_Exception); - /*! - giving a field name and an integer %i, it returns a couple of integers: the time iteration and - the order number of the %i^th iteration of the corresponding %FIELD object. - */ - SALOME_TYPES::ListOfLong getFieldIteration(in string fieldName, in long i) raises (SALOME::SALOME_Exception); - /*! - giving a field name, it returns an array of integers: the list of the order number and - the time iteration couple of all iterations of the corresponding %FIELD object. - - (IT1, DT1, IT2, DT2, ... , ITn, DTn) when n is the number of the %FIELD iterations. - */ - SALOME_TYPES::ListOfLong getFieldIterations(in string fieldName) raises (SALOME::SALOME_Exception); - /*! - giving a field name, a time iteration and an order number, it returns the corresponding %FIELD oject. - */ - FIELD getField ( in string fieldName, - in long pasTemps, - in long numOrdre ) raises (SALOME::SALOME_Exception); - - - // Add a MED/VTK/... driver to a MED'GEN' object to - // be able to read/write files preserving meshes<-->fields association - // Multiple drivers can be added whatever the type. - // The access point in the returned - long addDriver (in medDriverTypes driverType, in string fileName) - raises (SALOME::SALOME_Exception); - /*! - Removes the driver - */ - void rmDriver (in long i) raises (SALOME::SALOME_Exception); - /*! - Reads the structure of the %MED file - */ - void readFileStruct(in long i) raises (SALOME::SALOME_Exception); - void writeFrom (in long i) raises (SALOME::SALOME_Exception); - void write (in long i) raises (SALOME::SALOME_Exception); - - void addMesh (in GMESH ptrMesh ) raises (SALOME::SALOME_Exception); - void addField (in FIELD ptrField ) raises (SALOME::SALOME_Exception); - - void addInStudy (in SALOMEDS::Study myStudy, in MED medPtr) raises (SALOME::SALOME_Exception, SALOMEDS::StudyBuilder::LockProtection); - }; - - /*! \brief A structure containing information about MED file - */ - struct MedFileInfo - { - string fileName; //!< name of file - long fileSize; //!< size of file - long major, minor, release; //!< MED file version - }; -}; - -#endif /* MED_IDL */