]> SALOME platform Git repositories - modules/med.git/blob - src/MEDMEM_I/MEDMEM_Support_i.hxx
Salome HOME
building the version 1.4.0 of the module: update in the main trunk just
[modules/med.git] / src / MEDMEM_I / MEDMEM_Support_i.hxx
1 //=============================================================================
2 // File      : MEDMEM_Support_i.hxx
3 // Project   : SALOME
4 // Author    : EDF 
5 // Copyright : EDF 2002
6 // $Header: /export/home/PAL/MED/src/MEDMEM_I/MEDMEM_Support_i.hxx
7 //=============================================================================
8
9 #ifndef _MED_SUPPORT_I_HXX_
10 #define _MED_SUPPORT_I_HXX_
11
12 #include <map>
13 #include <string>
14
15 #include <SALOMEconfig.h>
16
17 #include CORBA_SERVER_HEADER(MED)
18
19 namespace MEDMEM {
20 class SUPPORT;
21 class SALOME_MED::MESH;
22
23 class SUPPORT_i: 
24                 public POA_SALOME_MED::SUPPORT,
25                 public PortableServer::RefCountServantBase 
26 {
27 public :
28     static map < int,::MEDMEM::SUPPORT *> supportMap;
29 private :
30     static int supportIndex;
31
32 protected :
33
34      // C++ object containing values
35      const ::MEDMEM::SUPPORT * const _support;
36      const int   _corbaIndex ;
37      string      _supportId ;
38
39 public:
40
41     SUPPORT_i();
42     ~SUPPORT_i();
43
44     // Constructors and associated internal methods
45     SUPPORT_i(const ::MEDMEM::SUPPORT * const s);
46     SUPPORT_i(const SUPPORT_i & s);
47
48     // IDL Methods
49     char *               getName()         throw (SALOME::SALOME_Exception);
50     char *               getDescription()  throw (SALOME::SALOME_Exception);
51     SALOME_MED::MESH_ptr getMesh()         throw (SALOME::SALOME_Exception);
52     CORBA::Boolean       isOnAllElements() throw (SALOME::SALOME_Exception);
53     SALOME_MED::medEntityMesh getEntity()  throw (SALOME::SALOME_Exception);
54     CORBA::Long          getNumberOfElements(SALOME_MED::medGeometryElement geomElement) 
55                                            throw (SALOME::SALOME_Exception);
56     CORBA::Long          getNumberOfTypes()
57                                            throw (SALOME::SALOME_Exception);
58     SALOME_MED::long_array* getNumber(SALOME_MED::medGeometryElement geomElement) 
59                                            throw (SALOME::SALOME_Exception);
60     SALOME_MED::long_array* getNumberIndex() 
61                                            throw (SALOME::SALOME_Exception);
62     CORBA::Long          getNumberOfGaussPoint(SALOME_MED::medGeometryElement geomElement) 
63                                            throw (SALOME::SALOME_Exception);
64     SALOME_MED::long_array* getNumbersOfGaussPoint()
65                                            throw (SALOME::SALOME_Exception);
66
67     SALOME_MED::medGeometryElement_array* getTypes() 
68                                            throw (SALOME::SALOME_Exception);
69
70     void getBoundaryElements()             throw (SALOME::SALOME_Exception);
71
72
73   // Others
74   void           addInStudy (SALOMEDS::Study_ptr myStudy, 
75                           SALOME_MED::SUPPORT_ptr myIor)
76     throw (SALOME::SALOME_Exception, SALOMEDS::StudyBuilder::LockProtection);
77
78   
79   //                                    Cuisine interne
80   CORBA::Long    getCorbaIndex()   throw (SALOME::SALOME_Exception);
81   SALOME_MED::SUPPORT::supportInfos * getSupportGlobal()   throw (SALOME::SALOME_Exception);
82 };
83 }
84
85 #endif /* _MED_SUPPORT_I_HXX_ */