SALOME_LifeCycleCORBA.hxx

Go to the documentation of this file.
00001 // SALOME LifeCycleCORBA : implementation of containers and engines life cycle both in Python and C++ 00002 // 00003 // Copyright (C) 2003 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, 00004 // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 00005 // 00006 // This library is free software; you can redistribute it and/or 00007 // modify it under the terms of the GNU Lesser General Public 00008 // License as published by the Free Software Foundation; either 00009 // version 2.1 of the License. 00010 // 00011 // This library is distributed in the hope that it will be useful, 00012 // but WITHOUT ANY WARRANTY; without even the implied warranty of 00013 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 00014 // Lesser General Public License for more details. 00015 // 00016 // You should have received a copy of the GNU Lesser General Public 00017 // License along with this library; if not, write to the Free Software 00018 // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA 00019 // 00020 // See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org 00021 // 00022 // 00023 // 00024 // File : SALOME_LifeCycleCORBA.hxx 00025 // Author : Paul RASCLE, EDF - MARC TAJCHMAN, CEA 00026 // Module : SALOME 00027 // $Header: /home/server/cvs/KERNEL/KERNEL_SRC/src/LifeCycleCORBA/SALOME_LifeCycleCORBA.hxx,v 1.9 2005/01/27 14:06:04 prascle Exp $ 00028 00029 #ifndef _SALOME_LIFECYCLECORBA_HXX_ 00030 #define _SALOME_LIFECYCLECORBA_HXX_ 00031 00032 #include <stdlib.h> 00033 #include <unistd.h> 00034 #include <string> 00035 00036 #include <SALOMEconfig.h> 00037 #include CORBA_CLIENT_HEADER(SALOME_ContainerManager) 00038 #include CORBA_CLIENT_HEADER(SALOME_Component) 00039 00040 class SALOME_NamingService; 00041 00042 class SALOME_LifeCycleCORBA 00043 { 00044 public: 00045 SALOME_LifeCycleCORBA(SALOME_NamingService *ns); 00046 virtual ~SALOME_LifeCycleCORBA(); 00047 Engines::Container_ptr FindContainer(const char *containerName); // for supervision 00048 Engines::Component_ptr FindOrLoad_Component(const Engines::MachineParameters& params, 00049 const char *componentName); 00050 Engines::Component_ptr FindOrLoad_Component(const char *containerName, 00051 const char *componentName); 00052 bool isKnownComponentClass(const char *componentName); 00053 protected: 00056 Engines::Component_ptr FindComponent(const char *containerName, 00057 const char *componentName, 00058 const Engines::MachineList& listOfMachines); 00059 00060 Engines::Component_ptr LoadComponent(const char *containerName, const char *componentName, const Engines::MachineList& listOfMachines); 00061 00062 SALOME_NamingService *_NS; 00063 Engines::ContainerManager_var _ContManager; 00064 00065 //private: 00066 std::string ContainerName( const char * aComputerContainer , 00067 std::string * theComputer , 00068 std::string * theContainer ) ; 00069 std::string ComputerPath( const char * theComputer ) ; 00070 Engines::Container_ptr FindOrStartContainer(const std::string aComputerContainer , 00071 const std::string theComputer , 00072 const std::string theContainer ) ; 00073 } ; 00074 00075 #endif

Generated on Tue Feb 7 22:07:28 2006 for SALOME v.2.2.8 by doxygen 1.3.7