1 // Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE
3 // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
4 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
6 // This library is free software; you can redistribute it and/or
7 // modify it under the terms of the GNU Lesser General Public
8 // License as published by the Free Software Foundation; either
9 // version 2.1 of the License.
11 // This library is distributed in the hope that it will be useful,
12 // but WITHOUT ANY WARRANTY; without even the implied warranty of
13 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 // Lesser General Public License for more details.
16 // You should have received a copy of the GNU Lesser General Public
17 // License along with this library; if not, write to the Free Software
18 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
20 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
23 //=============================================================================
24 // File : MEDMEM_Mesh_i.hxx
27 // $Header: /export/home/PAL/MED_SRC/src/MEDMEM_I/MEDMEM_Mesh_i.hxx
28 //=============================================================================
30 #ifndef _MED_MESH_I_HXX_
31 #define _MED_MESH_I_HXX_
33 #include <MEDMEM_I.hxx>
38 #include <SALOMEconfig.h>
39 #include "SALOMEMultiComm.hxx"
40 #include "SALOME_GenericObj_i.hh"
41 #include "MEDMEM_GMesh_i.hxx"
42 #include CORBA_SERVER_HEADER(MED)
43 #include CORBA_SERVER_HEADER(SALOMEDS_Attributes)
44 #include CORBA_SERVER_HEADER(SALOME_Comm)
49 class MEDMEM_I_EXPORT MESH_i: virtual public POA_SALOME_MED::MESH,
50 virtual public GMESH_i
54 // Constructors and associated internal methods
56 MESH_i(::MEDMEM::MESH * const m);
61 CORBA::Boolean existConnectivity ( SALOME_MED::medConnectivity connectivityType,
62 SALOME_MED::medEntityMesh entity)
63 throw (SALOME::SALOME_Exception);
65 SALOME_TYPES::ListOfDouble* getCoordinates(SALOME_MED::medModeSwitch typeSwitch)
66 throw (SALOME::SALOME_Exception);
68 SALOME::SenderDouble_ptr getSenderForCoordinates(SALOME_MED::medModeSwitch typeSwitch)
69 throw (SALOME::SALOME_Exception);
71 CORBA::Double getCoordinate(CORBA::Long Number, CORBA::Long Axis)
72 throw (SALOME::SALOME_Exception);
74 SALOME_TYPES::ListOfLong* getConnectivity(SALOME_MED::medConnectivity mode,
75 SALOME_MED::medEntityMesh entity,
76 SALOME_MED::medGeometryElement geomElement)
77 throw (SALOME::SALOME_Exception);
79 SALOME::SenderInt_ptr getSenderForConnectivity(SALOME_MED::medConnectivity mode,
80 SALOME_MED::medEntityMesh entity,
81 SALOME_MED::medGeometryElement geomElement)
82 throw (SALOME::SALOME_Exception);
84 SALOME_TYPES::ListOfLong* getConnectivityIndex(SALOME_MED::medConnectivity mode,
85 SALOME_MED::medEntityMesh entity)
86 throw (SALOME::SALOME_Exception);
88 SALOME::SenderInt_ptr getSenderForConnectivityIndex(SALOME_MED::medConnectivity mode,
89 SALOME_MED::medEntityMesh entity,
90 SALOME_MED::medGeometryElement geomElement)
91 throw (SALOME::SALOME_Exception);
93 SALOME_TYPES::ListOfLong* getGlobalNumberingIndex(SALOME_MED::medEntityMesh entity)
94 throw (SALOME::SALOME_Exception);
96 CORBA::Long getElementNumber(SALOME_MED::medConnectivity mode,
97 SALOME_MED::medEntityMesh entity,
98 SALOME_MED::medGeometryElement type,
99 const SALOME_TYPES::ListOfLong& connectivity)
100 throw (SALOME::SALOME_Exception);
102 SALOME_TYPES::ListOfLong* getReverseConnectivity(SALOME_MED::medConnectivity mode)
103 throw (SALOME::SALOME_Exception);
105 SALOME_TYPES::ListOfLong* getReverseConnectivityIndex(SALOME_MED::medConnectivity mode)
106 throw (SALOME::SALOME_Exception);
110 ::MEDMEM::MESH * constructConstMesh() const;
111 SALOME_MED::MESH::connectivityInfos * getConnectGlobal (SALOME_MED::medEntityMesh entity)
112 throw (SALOME::SALOME_Exception);
113 CORBA::Boolean areEquals(SALOME_MED::MESH_ptr other);
117 #endif /* _MED_MESH_I_HXX_ */