]> SALOME platform Git repositories - modules/kernel.git/commitdiff
Salome HOME
NRI : VISU dependence.
authornri <nri@opencascade.com>
Tue, 20 May 2003 13:05:14 +0000 (13:05 +0000)
committernri <nri@opencascade.com>
Tue, 20 May 2003 13:05:14 +0000 (13:05 +0000)
idl/SALOME_Session.idl
src/Session/SALOME_Session_i.cxx
src/Session/SALOME_Session_i.hxx

index 81c95996c466b0b324340b982ef34a9824e9da87..9601cb102b14255305f75f7a3fe2ba98a2eeec51 100644 (file)
@@ -9,6 +9,7 @@
 
 
 //***//#include "VISU_Gen.idl"
+#include "SALOME_Component.idl"
 /*! \defgroup Kernel SALOME KERNEL module
 */
 
@@ -69,6 +70,7 @@ module SALOME
 */
     void GetInterface(); 
     //***//    VISU::VISU_Gen GetVisuGen();
+    Engines::Component GetVisuComponent();
 
 /*! 
   Stops the %Session (It must be idle)
index 49acc589706f46a6aa5d4610f47c813fff984036..258842f4bc07be3c83171c345eb192b379c14c4b 100644 (file)
@@ -51,6 +51,18 @@ SALOME_Session_i::SALOME_Session_i(int argc, char ** argv, CORBA::ORB_ptr orb, P
 //***//  return VISU::VISU_Gen::_nil();
 //***//} 
 
+typedef Engines::Component_ptr VisuGen(CORBA::ORB_var,PortableServer::POA_ptr,QMutex*);
+Engines::Component_ptr SALOME_Session_i::GetVisuComponent() {
+  MESSAGE("SALOME_Session_i::GetVisuGen");
+  OSD_SharedLibrary  visuSharedLibrary("libVISUEngine.so");
+  if(visuSharedLibrary.DlOpen(OSD_RTLD_LAZY))
+    if(OSD_Function osdFun = visuSharedLibrary.DlSymb("GetVisuGen"))
+      return ((VisuGen (*)) osdFun)(_orb,_poa,&_GUIMutex);
+
+  MESSAGE ( "nil" )
+  return Engines::Component::_nil();
+}
+
 //=============================================================================
 /*! ~SALOME_Session_i
  *  destructor
index 15ae3696c41dcad39700b609daf62c80bffb5c96..ef7a55f086d632f285f69206ee0b3f8693ecde8b 100644 (file)
@@ -13,6 +13,7 @@
 #include <qthread.h> 
 
 #include <SALOMEconfig.h>
+#include CORBA_SERVER_HEADER(SALOME_Component)
 //***//#include CORBA_SERVER_HEADER(VISU_Gen)
 #include CORBA_SERVER_HEADER(SALOME_Session)
 class SALOME_NamingService;
@@ -30,6 +31,7 @@ public:
   //! Launch Graphical User Interface
   void GetInterface();
   //***//VISU::VISU_Gen_ptr GetVisuGen();
+  Engines::Component_ptr GetVisuComponent();
 
   //! Stop the Session (must be idle): kill servant & server
   void StopSession();