Salome HOME
taking into account of the xml file for the component test of ther Corba
[modules/med.git] / src / MedMem / Support_i.hxx
1 //=============================================================================
2 // File      : Support_i.hxx
3 // Project   : SALOME
4 // Author    : EDF 
5 // Copyright : EDF 2002
6 // $Header: /export/home/CVS/SALOME_ROOT/MED/src/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 class SUPPORT;
20 class SALOME_MED::MESH;
21
22 class SUPPORT_i: 
23                 public POA_SALOME_MED::SUPPORT,
24                 public PortableServer::RefCountServantBase 
25 {
26 public :
27     static map < int,::SUPPORT *> supportMap;
28 private :
29     static int supportIndex;
30
31 protected :
32
33      // C++ object containing values
34      const ::SUPPORT * const _support;
35      const int   _corbaIndex ;
36      string      _supportId ;
37
38 public:
39
40     SUPPORT_i();
41     ~SUPPORT_i();
42
43     // Constructors and associated internal methods
44     SUPPORT_i(const ::SUPPORT * const s);
45     SUPPORT_i(const SUPPORT_i & s);
46
47     // IDL Methods
48     char *               getName()         throw (SALOME::SALOME_Exception);
49     char *               getDescription()  throw (SALOME::SALOME_Exception);
50     SALOME_MED::MESH_ptr getMesh()         throw (SALOME::SALOME_Exception);
51     CORBA::Boolean       isOnAllElements() throw (SALOME::SALOME_Exception);
52     SALOME_MED::medEntityMesh getEntity()  throw (SALOME::SALOME_Exception);
53     CORBA::Long          getNumberOfElements(SALOME_MED::medGeometryElement geomElement) 
54                                            throw (SALOME::SALOME_Exception);
55     Engines::long_array* getNumber(SALOME_MED::medGeometryElement geomElement) 
56                                            throw (SALOME::SALOME_Exception);
57     Engines::long_array* getNumberIndex() 
58                                            throw (SALOME::SALOME_Exception);
59     CORBA::Long          getNumberOfGaussPoints(SALOME_MED::medGeometryElement geomElement) 
60                                            throw (SALOME::SALOME_Exception);
61     SALOME_MED::medGeometryElement_array* getTypes() 
62                                            throw (SALOME::SALOME_Exception);
63
64   // Others
65   void           addInStudy (SALOMEDS::Study_ptr myStudy, 
66                           SALOME_MED::SUPPORT_ptr myIor)
67     throw (SALOME::SALOME_Exception);
68   
69   //                                    Cuisine interne
70   CORBA::Long    getCorbaIndex()   throw (SALOME::SALOME_Exception);
71 };
72
73 #endif /* _MED_SUPPORT_I_HXX_ */