X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESH_I%2FSMESH_MEDMesh_i.hxx;h=05fe0727d0ca8b20160a17cf2ffc538d9bd420c3;hp=6760ea93b743cc0f4be0fde43553ae797df68693;hb=79b1ac2b6df9117f16f11d444b1f165d477a1813;hpb=cae755c4b270cbfbe061312428ac77a564aa9607 diff --git a/src/SMESH_I/SMESH_MEDMesh_i.hxx b/src/SMESH_I/SMESH_MEDMesh_i.hxx index 6760ea93b..05fe0727d 100644 --- a/src/SMESH_I/SMESH_MEDMesh_i.hxx +++ b/src/SMESH_I/SMESH_MEDMesh_i.hxx @@ -17,7 +17,7 @@ // 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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // // // @@ -27,6 +27,8 @@ #ifndef _MED_SMESH_MESH_I_HXX_ #define _MED_SMESH_MESH_I_HXX_ +#include "SMESH.hxx" + #include #include CORBA_SERVER_HEADER(MED) #include @@ -37,147 +39,214 @@ #include "SMDS_MeshElement.hxx" #include "SMDS_MeshNode.hxx" -#include "SMDS_MeshFacesIterator.hxx" -#include "SMDS_MeshEdgesIterator.hxx" -#include "SMDS_MeshNodesIterator.hxx" -#include "SMDS_MeshVolumesIterator.hxx" +#include "SALOME_GenericObj_i.hh" #define MED_NBR_GEOMETRIE_MAILLE 15 #define MED_NBR_TYPE 5 - class SMESH_Mesh_i; -class SMESH_MEDMesh_i: - public POA_SALOME_MED::MESH, - public PortableServer::RefCountServantBase +class SMESH_I_EXPORT SMESH_MEDMesh_i: + public virtual POA_SALOME_MED::MESH, + public virtual SALOME::GenericObj_i { -public : - -private : - protected: // C++ object containing values - ::SMESH_Mesh_i* _mesh_i; - Handle (SMESHDS_Mesh) _meshDS; - - string _meshId; - bool _compte; - bool _creeFamily; - int _indexElts; - int _indexEnts; - int _famIdent; - - map _mapIndToSeqElts; - Engines::long_array_var _seq_elemId[MED_NBR_GEOMETRIE_MAILLE]; - - map _mapNbTypes; - map _mapIndToVectTypes; - vector _TypesId[MED_NBR_GEOMETRIE_MAILLE]; - - vector _families; + ::SMESH_Mesh_i * _mesh_i; + SMESHDS_Mesh *_meshDS; + + string _meshId; + bool _compte; + bool _creeFamily; + int _indexElts; + int _indexEnts; + int _famIdent; + + map < SALOME_MED::medGeometryElement, int >_mapIndToSeqElts; + SALOME_MED::long_array_var _seq_elemId[MED_NBR_GEOMETRIE_MAILLE]; + + map < SALOME_MED::medEntityMesh, int >_mapNbTypes; + map < SALOME_MED::medEntityMesh, int >_mapIndToVectTypes; + vector < SALOME_MED::medGeometryElement > + _TypesId[MED_NBR_GEOMETRIE_MAILLE]; + + vector < SALOME_MED::FAMILY_ptr > _families; public: - + // Constructors and associated internal methods SMESH_MEDMesh_i(); - SMESH_MEDMesh_i(SMESH_Mesh_i* m); + SMESH_MEDMesh_i(SMESH_Mesh_i * m); ~SMESH_MEDMesh_i(); - - // IDL Methods - char * getName() throw (SALOME::SALOME_Exception); - CORBA::Long getSpaceDimension() throw (SALOME::SALOME_Exception); - CORBA::Long getMeshDimension() throw (SALOME::SALOME_Exception); - - char * getCoordinateSystem() - throw (SALOME::SALOME_Exception); - Engines::double_array* getCoordinates(SALOME_MED::medModeSwitch typeSwitch) - throw (SALOME::SALOME_Exception); - Engines::string_array* getCoordinatesNames() + + // IDL Methods + void setProtocol(SALOME::TypeOfCommunication typ) {} + void release() {} + SALOME::SenderDouble_ptr getSenderForCoordinates(SALOME_MED::medModeSwitch) {return SALOME::SenderDouble::_nil();} + SALOME::SenderInt_ptr getSenderForConnectivity(SALOME_MED::medModeSwitch, + SALOME_MED::medConnectivity, + SALOME_MED::medEntityMesh, + SALOME_MED::medGeometryElement) + { + return SALOME::SenderInt::_nil(); + } + SALOME::SenderInt_ptr getSenderForPolygonsConnectivity(SALOME_MED::medConnectivity, SALOME_MED::medEntityMesh) {return SALOME::SenderInt::_nil();} + SALOME::SenderInt_ptr getSenderForPolygonsConnectivityIndex(SALOME_MED::medConnectivity, SALOME_MED::medEntityMesh) {return SALOME::SenderInt::_nil();} + SALOME::SenderInt_ptr getSenderForPolyhedronConnectivity(SALOME_MED::medConnectivity) {return SALOME::SenderInt::_nil();} + SALOME::SenderInt_ptr getSenderForPolyhedronIndex(SALOME_MED::medConnectivity) {return SALOME::SenderInt::_nil();} + SALOME::SenderInt_ptr getSenderForPolyhedronFacesIndex() {return SALOME::SenderInt::_nil();} + + char *getName() throw(SALOME::SALOME_Exception); + CORBA::Long getSpaceDimension() throw(SALOME::SALOME_Exception); + + CORBA::Long getMeshDimension() throw(SALOME::SALOME_Exception); + + CORBA::Boolean getIsAGrid() throw (SALOME::SALOME_Exception); + + CORBA::Boolean + existConnectivity(SALOME_MED::medConnectivity connectivityType, + SALOME_MED::medEntityMesh entity) throw (SALOME::SALOME_Exception); - Engines::string_array* getCoordinatesUnits() - throw (SALOME::SALOME_Exception); - CORBA::Long getNumberOfNodes() + + char *getCoordinatesSystem() throw(SALOME::SALOME_Exception); + + CORBA::Double getCoordinate(CORBA::Long Number, CORBA::Long Axis) throw (SALOME::SALOME_Exception); + + SALOME_MED::double_array * getCoordinates(SALOME_MED::medModeSwitch typeSwitch) + throw(SALOME::SALOME_Exception); - CORBA::Long getNumberOfTypes (SALOME_MED::medEntityMesh entity) - throw (SALOME::SALOME_Exception); - SALOME_MED::medGeometryElement_array* getTypes(SALOME_MED::medEntityMesh entity) + SALOME_MED::string_array * getCoordinatesNames() + throw(SALOME::SALOME_Exception); + + SALOME_MED::string_array * getCoordinatesUnits() + throw(SALOME::SALOME_Exception); + + CORBA::Long getNumberOfNodes() throw(SALOME::SALOME_Exception); + + CORBA::Long getNumberOfTypes(SALOME_MED::medEntityMesh entity) + throw(SALOME::SALOME_Exception); + + SALOME_MED::medGeometryElement_array * + getTypes(SALOME_MED::medEntityMesh entity) throw(SALOME:: + SALOME_Exception); + + SALOME_MED::medGeometryElement + getElementType(SALOME_MED::medEntityMesh entity, + CORBA::Long number) throw (SALOME::SALOME_Exception); - - CORBA::Long getNumberOfElements (SALOME_MED::medEntityMesh entity, - SALOME_MED::medGeometryElement geomElement) - throw (SALOME::SALOME_Exception); - Engines::long_array* getConnectivity (SALOME_MED::medModeSwitch typeSwitch, - SALOME_MED::medConnectivity mode, - SALOME_MED::medEntityMesh entity, - SALOME_MED::medGeometryElement geomElement) - throw (SALOME::SALOME_Exception); - Engines::long_array* getConnectivityIndex(SALOME_MED::medConnectivity mode, - SALOME_MED::medEntityMesh entity) - throw (SALOME::SALOME_Exception); - - CORBA::Long getElementNumber(SALOME_MED::medConnectivity mode, - SALOME_MED::medEntityMesh entity, - SALOME_MED::medGeometryElement type, - const Engines::long_array & connectivity) + + CORBA::Long getNumberOfElements(SALOME_MED::medEntityMesh entity, + SALOME_MED::medGeometryElement geomElement) + throw(SALOME::SALOME_Exception); + + SALOME_MED::long_array * + getConnectivity(SALOME_MED::medModeSwitch typeSwitch, + SALOME_MED::medConnectivity mode, + SALOME_MED::medEntityMesh entity, + SALOME_MED::medGeometryElement geomElement) + throw(SALOME::SALOME_Exception); + + SALOME_MED::long_array * + getConnectivityIndex(SALOME_MED::medConnectivity mode, + SALOME_MED::medEntityMesh entity) + throw(SALOME::SALOME_Exception); + + SALOME_MED::long_array* + getGlobalNumberingIndex(SALOME_MED::medEntityMesh entity) throw (SALOME::SALOME_Exception); - - Engines::long_array* getReverseConnectivity(SALOME_MED::medConnectivity mode) - - throw (SALOME::SALOME_Exception); - Engines::long_array* getReverseConnectivityIndex(SALOME_MED::medConnectivity mode) - throw (SALOME::SALOME_Exception); - + + CORBA::Long getElementNumber(SALOME_MED::medConnectivity mode, + SALOME_MED::medEntityMesh entity, + SALOME_MED::medGeometryElement type, + const SALOME_MED::long_array & connectivity) + throw(SALOME::SALOME_Exception); + + SALOME_MED::long_array * + getReverseConnectivity(SALOME_MED::medConnectivity mode) + throw(SALOME::SALOME_Exception); + + SALOME_MED::long_array * + getReverseConnectivityIndex(SALOME_MED::medConnectivity mode) + throw(SALOME::SALOME_Exception); + // Family and Group - CORBA::Long getNumberOfFamilies (SALOME_MED::medEntityMesh entity) - throw (SALOME::SALOME_Exception); - CORBA::Long getNumberOfGroups (SALOME_MED::medEntityMesh entity) - throw (SALOME::SALOME_Exception); - SALOME_MED::Family_array* getFamilies (SALOME_MED::medEntityMesh entity) - throw (SALOME::SALOME_Exception); - SALOME_MED::FAMILY_ptr getFamily (SALOME_MED::medEntityMesh entity, - CORBA::Long i) - throw (SALOME::SALOME_Exception); - SALOME_MED::Group_array* getGroups (SALOME_MED::medEntityMesh entity) - throw (SALOME::SALOME_Exception); - SALOME_MED::GROUP_ptr getGroup (SALOME_MED::medEntityMesh entity, - CORBA::Long i) - throw (SALOME::SALOME_Exception); - // - SALOME_MED::FIELD_ptr getVolume (SALOME_MED::SUPPORT_ptr mySupport) - throw (SALOME::SALOME_Exception); - SALOME_MED::FIELD_ptr getArea (SALOME_MED::SUPPORT_ptr mySupport) - throw (SALOME::SALOME_Exception); - SALOME_MED::FIELD_ptr getLength (SALOME_MED::SUPPORT_ptr mySupport) - throw (SALOME::SALOME_Exception); - SALOME_MED::FIELD_ptr getNormal (SALOME_MED::SUPPORT_ptr mySupport) - throw (SALOME::SALOME_Exception); - SALOME_MED::FIELD_ptr getBarycenter (SALOME_MED::SUPPORT_ptr mySupport) + CORBA::Long getNumberOfFamilies(SALOME_MED::medEntityMesh entity) + throw(SALOME::SALOME_Exception); + + CORBA::Long getNumberOfGroups(SALOME_MED::medEntityMesh entity) + throw(SALOME::SALOME_Exception); + + SALOME_MED::Family_array * + getFamilies(SALOME_MED::medEntityMesh entity) + throw(SALOME::SALOME_Exception); + + SALOME_MED::FAMILY_ptr getFamily(SALOME_MED::medEntityMesh entity, + CORBA::Long i) + throw(SALOME::SALOME_Exception); + + SALOME_MED::Group_array * getGroups(SALOME_MED::medEntityMesh entity) + throw(SALOME::SALOME_Exception); + + SALOME_MED::GROUP_ptr getGroup(SALOME_MED::medEntityMesh entity, + CORBA::Long i) + throw(SALOME::SALOME_Exception); + + SALOME_MED::SUPPORT_ptr + getBoundaryElements(SALOME_MED::medEntityMesh entity) throw (SALOME::SALOME_Exception); - SALOME_MED::FIELD_ptr getNeighbourhood (SALOME_MED::SUPPORT_ptr mySupport) + + SALOME_MED::SUPPORT_ptr getSkin(SALOME_MED::SUPPORT_ptr mySupport3D) throw (SALOME::SALOME_Exception); - - + + SALOME_MED::FIELD_ptr getVolume(SALOME_MED::SUPPORT_ptr mySupport) + throw(SALOME::SALOME_Exception); + + SALOME_MED::FIELD_ptr getArea(SALOME_MED::SUPPORT_ptr mySupport) + throw(SALOME::SALOME_Exception); + + SALOME_MED::FIELD_ptr getLength(SALOME_MED::SUPPORT_ptr mySupport) + throw(SALOME::SALOME_Exception); + + SALOME_MED::FIELD_ptr getNormal(SALOME_MED::SUPPORT_ptr mySupport) + throw(SALOME::SALOME_Exception); + + SALOME_MED::FIELD_ptr getBarycenter(SALOME_MED::SUPPORT_ptr mySupport) + throw(SALOME::SALOME_Exception); + + SALOME_MED::FIELD_ptr getNeighbourhood(SALOME_MED::SUPPORT_ptr mySupport) + throw(SALOME::SALOME_Exception); + // Others - void addInStudy (SALOMEDS::Study_ptr myStudy, - SALOME_MED::MESH_ptr myIor) - throw (SALOME::SALOME_Exception); - CORBA::Long addDriver (SALOME_MED::medDriverTypes driverType, - const char* fileName, const char* meshName) - throw (SALOME::SALOME_Exception); - void rmDriver (CORBA::Long i) + void addInStudy(SALOMEDS::Study_ptr myStudy, + SALOME_MED::MESH_ptr myIor) + throw(SALOME::SALOME_Exception); + CORBA::Long addDriver(SALOME_MED::medDriverTypes driverType, + const char *fileName, const char *meshName) + throw(SALOME::SALOME_Exception); + void rmDriver(CORBA::Long i) throw(SALOME::SALOME_Exception); + void read(CORBA::Long i) throw(SALOME::SALOME_Exception); + void write(CORBA::Long i, const char *driverMeshName) + throw(SALOME::SALOME_Exception); + + // Cuisine interne + CORBA::Long getCorbaIndex() + throw(SALOME::SALOME_Exception); + + SALOME_MED::MESH::meshInfos * getMeshGlobal() throw (SALOME::SALOME_Exception); - void read (CORBA::Long i) + + bool areEquals(SALOME_MED::MESH_ptr other) { return false;}; + + SALOME_MED::MESH::coordinateInfos * getCoordGlobal() throw (SALOME::SALOME_Exception); - void write (CORBA::Long i, const char* driverMeshName) + + SALOME_MED::MESH::connectivityInfos * + getConnectGlobal(SALOME_MED::medEntityMesh entity) throw (SALOME::SALOME_Exception); - - // Cuisine interne - CORBA::Long getCorbaIndex() throw (SALOME::SALOME_Exception); - + // - void calculeNbElts() throw (SALOME::SALOME_Exception); - void createFamilies() throw (SALOME::SALOME_Exception); + void calculeNbElts() throw(SALOME::SALOME_Exception); + void createFamilies() throw(SALOME::SALOME_Exception); }; #endif /* _MED_MESH_I_HXX_ */