src/MedClient/src/SUPPORTClient.hxx

Go to the documentation of this file.
00001 // Copyright (C) 2005  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
00002 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
00003 // 
00004 // This library is free software; you can redistribute it and/or
00005 // modify it under the terms of the GNU Lesser General Public
00006 // License as published by the Free Software Foundation; either 
00007 // version 2.1 of the License.
00008 // 
00009 // This library is distributed in the hope that it will be useful 
00010 // but WITHOUT ANY WARRANTY; without even the implied warranty of 
00011 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU 
00012 // Lesser General Public License for more details.
00013 //
00014 // You should have received a copy of the GNU Lesser General Public  
00015 // License along with this library; if not, write to the Free Software 
00016 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
00017 //
00018 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
00019 //
00020 #ifndef _SUPPORTCLIENT_HXX
00021 #define _SUPPORTCLIENT_HXX
00022 
00023 #include <SALOMEconfig.h>
00024 #include <utilities.h>
00025 #include "MEDMEM_Support.hxx"
00026 #include CORBA_CLIENT_HEADER(MED)
00027 
00028 
00029 namespace MEDMEM {
00030 class SUPPORTClient : virtual public SUPPORT {
00031 
00032 private :
00033 
00034   const SALOME_MED::SUPPORT_var IOR_Support;
00035 
00036   mutable bool _complete_support;
00037 
00038   mutable int _refCounter;
00039 
00040 protected:
00041 
00042   virtual ~SUPPORTClient();
00043 
00044 public :
00045 
00046   SUPPORTClient(const SALOME_MED::SUPPORT_ptr S, 
00047           MESH * M = NULL);
00048 
00049   void blankCopy();
00050   void fillCopy();
00051 
00052   MEDSKYLINEARRAY *  getnumber()
00053     const throw (MEDEXCEPTION);
00054   const int *  getNumber(MED_EN::medGeometryElement GeometricType) 
00055     const throw (MEDEXCEPTION);
00056   const int *  getNumberIndex()
00057     const throw (MEDEXCEPTION);
00058   int getValIndFromGlobalNumber(const int number) 
00059     const throw (MEDEXCEPTION);
00060   void addReference() const;
00061   void removeReference() const;
00062 };
00063 }
00064 
00065 
00066 #endif
00067