-# <b>Containers and component life cycle, File transfer service</b>
- Engines : engines CORBA module.
- - Engines::Component : generic component interface. All %SALOME components inherit this interface.
+ - Engines::EngineComponent : generic component interface. All %SALOME components inherit this interface.
- Engines::Container : host for C++ and Python components components instances
- Engines::fileTransfer : agent for file transfer created by a container copy a local file to a distent client
- Engines::fileRef : reference to a file, used by a container for file transfers
.
-# <b>Other idl for test purposes</b>
- NSTEST : for naming service test
- - SALOME_TestComponent.idl : for Component test
+ - SALOME_TestComponent.idl : for EngineComponent test
- SALOME_TestModuleCatalog : for SALOME_ModuleCatalog test
- SALOME_TestMPIComponent.idl : \copybrief SALOME_TestMPIComponent.idl
- TestNotif.idl : \copybrief TestNotif.idl
SALOMEDS methods : FindOrCreateAttribute, SaveAs, FindComponent FindAttribute Open\n
Attribute methods : SetValue, Value
*/
-
<td bgcolor= "lightgreen"><div align="center"><b>return_value = start_impl ( ContainerName )</b></div></td>
</tr>
<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Component load_impl ( in string nameToRegister, in string componentName )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>EngineComponent load_impl ( in string nameToRegister, in string componentName )</b></div></td>
<td bgcolor= "lightgreen"><div align="center"><b>return_value = load_impl ( nameToRegister, componentName )</b></div></td>
</tr>
<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>void remove_impl ( in Component component_i )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>void remove_impl ( in EngineComponent component_i )</b></div></td>
<td bgcolor= "lightgreen"><div align="center"><b>remove_impl ( component_i )</b></div></td>
</tr>
<tr>
</table><br>
<table width="100%" BORDER>
<tr bgcolor="#FFFFCC">
-<td colspan="11"><font size="+3"><b><div align="center"><i>interface Component</i></div></b></font></td>
+<td colspan="11"><font size="+3"><b><div align="center"><i>interface EngineComponent</i></div></b></font></td>
</tr>
<td width="50%" bgcolor= "lightgreen" ><font size="+2"><div align="center"><b><i>IDL file</i></b></div></font></td>
<td width="50%" bgcolor= "lightgreen"><font size="+2"><div align="center"><b><i>Python</i></b></div></font></td>
<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetComponent ( componentname )</b></div></td>
</tr>
<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Component GetComponentInfo ( in string componentName )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>EngineComponent GetComponentInfo ( in string componentName )</b></div></td>
<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetComponentInfo ( componentName )</b></div></td>
</tr>
<tr>
<td bgcolor= "lightgreen"><div align="center"><b>GetInterface ( )</b></div></td>
</tr>
<tr>
-<td bgcolor= "lightgreen"><div align="center"><b>Component GetVisuComponent ( )</b></div></td>
+<td bgcolor= "lightgreen"><div align="center"><b>EngineComponent GetVisuComponent ( )</b></div></td>
<td bgcolor= "lightgreen"><div align="center"><b>return_value = GetVisuComponent ( )</b></div></td>
</tr>
<tr>
<br>
<br>
<div align="left"><big><b><a class="el"
- href="interfaceEngines_1_1Component.html">Component</a>
+ href="interfaceEngines_1_1EngineComponent.html">EngineComponent</a>
load_impl (in string <i>nameToRegister</i>, in string <i>componentName</i>)</b></big><br>
<br>
<i><u><a name="load_com_ex"></a>Load component with defined component name:</u></i><br>
<br>
SALOME_LifeCycleCORBA _LCC(&_NS) ;<br>
<br>
- Engines::Component_var myComponent = _LCC.FindOrLoad_Component("FactoryServerPy","TestComponentPy");<br>
+ Engines::EngineComponent_var myComponent = _LCC.FindOrLoad_Component("FactoryServerPy","TestComponentPy");<br>
if(!CORBA::is_nil(myComponent)){<br>
Engines::TestComponent_var
myConcreateComponent = TestComponent::_narrow(myComponent);<br>
SALOME_NamingService aNamingService(orb);<br>
CORBA::Object_ptr anObject = aNamingService.Resolve("/Kernel/Session");<br>
SALOME::Session_var aSession = SALOME::Session::_narrow(anObject);<br>
-Engines::Component_var aComponent = aSession->GetVisuGen();<br>
+Engines::EngineComponent_var aComponent = aSession->GetVisuGen();<br>
myVisuGen = VISU::VISU_Gen::_narrow(aComponent);<br>
<br>
</body>
<li><a href="#3_6">3.6 Resource catalog </a></li>
<li><a href="#3_7">3.7 Engine </a></li>
<ul>
- <li><a href="#3_7_1">3.7.1 Component class </a></li>
+ <li><a href="#3_7_1">3.7.1 EngineComponent class </a></li>
<li><a href="#3_7_2">3.7.2 Container class </a></li>
</ul>
</ul>
which constructs the CORBA Engine servant object.</p>
<p>The SALOME engine in
the current version of the application is implemented
- as <b>Engines</b> package of interfaces. It encapsulates two classes: Component, Container.</p>
+ as <b>Engines</b> package of interfaces. It encapsulates two classes: EngineComponent, Container.</p>
<p>The API refernce for <b>Engines</b> package can be found <a href="namespaceEngines.html">here</a>.
</p>
-<a name="3_7_1"></a><h4>3.7.1 Component class</h4>
+<a name="3_7_1"></a><h4>3.7.1 EngineComponent class</h4>
<p>This class is used for interaction between the container and the component and between the components inside the container.
</p>
-<p>The API reference for this class can be found <a href="interfaceEngines_1_1Component.html">here</a>.</p>
+<p>The API reference for this class can be found <a href="interfaceEngines_1_1EngineComponent.html">here</a>.</p>
<a name="3_7_2"></a><h4>3.7.2 Container class</h4>
<p>This class provides a set of methods which are necessary for definition of the process of loading and registration of new components in SALOME application.</p>
<p>From general point of view, the SALOME Life Cycle service allows to <i>find</i> or <i>load</i> with the help of a given container a definte SALOME component with its further
initialization and registration in the Naming service.</p>
<p><b>Container</b> - it's a certain engine realizing the mechanism of loading a SALOME module.</p>
- <p><b>Component</b> - it's a certain abstract shell wrapping SALOME modules, performing all operations concerned with their initialization and registration. </p>
+ <p><b>EngineComponent</b> - it's a certain abstract shell wrapping SALOME modules, performing all operations concerned with their initialization and registration. </p>
<p>From the point of view of the service user, the Life Cycle provides a set of functions allowing to :</p>
<ul>
<li>Locate a machine (more generally a container) by a logical set of required features (of both container and
insDoc(aux1, gLnk("SALOMEDS::Callback", "", "interfaceSALOMEDS_1_1Callback.html"))
insDoc(aux1, gLnk("SALOMEDS::ChildIterator", "", "interfaceSALOMEDS_1_1ChildIterator.html"))
insDoc(aux1, gLnk("SALOMEDS::Color", "", "structSALOMEDS_1_1Color.html"))
- insDoc(aux1, gLnk("Engines::Component", "", "interfaceEngines_1_1Component.html"))
+ insDoc(aux1, gLnk("Engines::EngineComponent", "", "interfaceEngines_1_1EngineComponent.html"))
insDoc(aux1, gLnk("Engines::Container", "", "interfaceEngines_1_1Container.html"))
insDoc(aux1, gLnk("SALOME_ModuleCatalog::DefinitionInterface", "", "structSALOME__ModuleCatalog_1_1DefinitionInterface.html"))
insDoc(aux1, gLnk("SALOMEDS::Driver", "", "interfaceSALOMEDS_1_1Driver.html"))
insDoc(aux1, gLnk("SALOMEDS::Callback", "", "interfaceSALOMEDS_1_1Callback.html"))
insDoc(aux1, gLnk("SALOMEDS::ChildIterator", "", "interfaceSALOMEDS_1_1ChildIterator.html"))
insDoc(aux1, gLnk("SALOMEDS::Color", "", "structSALOMEDS_1_1Color.html"))
- aux2 = insFld(aux1, gFld("Engines::Component", "", "interfaceEngines_1_1Component.html"))
+ aux2 = insFld(aux1, gFld("Engines::EngineComponent", "", "interfaceEngines_1_1EngineComponent.html"))
insDoc(aux1, gLnk("Engines::Container", "", "interfaceEngines_1_1Container.html"))
insDoc(aux1, gLnk("SALOME_ModuleCatalog::DefinitionInterface", "", "structSALOME__ModuleCatalog_1_1DefinitionInterface.html"))
aux2 = insFld(aux1, gFld("SALOMEDS::Driver", "", "interfaceSALOMEDS_1_1Driver.html"))
insDoc(aux1, gLnk("Life Cycle Service Description ", "", "overview_Life_Cycle.html"))
insDoc(aux1, gLnk("Salome_LifeCycleCorba Class Reference", "", "classSALOME__LifeCycleCORBA.html"))
insDoc(aux1, gLnk("Examples", "", "examples_Life_cycle.html"))
-
-
- First part permits to add an get ports of a component.
- Second part permits to connect/disconnect ports.
*/
- interface DSC : Engines::Component {
+ interface DSC : Engines::EngineComponent {
/*--------------------------------------------------------------------------------------------*/
/*-------------------------------------- Types Part ------------------------------------------*/
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-
// File : SALOME_Component.idl
// Author : Paul RASCLE, EDF
-// $Header:
-//
+
#ifndef _SALOME_COMPONENT_IDL_
#define _SALOME_COMPONENT_IDL_
#include "SALOME_Exception.idl"
#include "SALOME_PyNode.idl"
-/*! \file SALOME_Component.idl \brief interfaces for Component and Container
+/*! \file SALOME_Component.idl \brief interfaces for EngineComponent and Container
*/
/*! \brief
typedef sequence<KeyValuePair> FieldsDict;
- interface Component ;
+ interface EngineComponent ;
interface fileRef ;
interface fileTransfer ;
interface Salome_file;
>0 otherwise (== study id)
\return a loaded component
*/
- Engines::Component create_component_instance(in string componentName,
- in long studyId);
+ Engines::EngineComponent create_component_instance(in string componentName,
+ in long studyId);
//! Create a new servant instance of a component with environment variables specified.
/*!
\param reason in case of error (return nil) a string explaining the error
\return a loaded component
*/
- Engines::Component create_component_instance_env(in string componentName,
- in long studyId, in FieldsDict env,
- out string reason);
+ Engines::EngineComponent create_component_instance_env(in string componentName,
+ in long studyId, in FieldsDict env,
+ out string reason);
//! Find a servant instance of a component
/*!
\param registeredName Name of the component in Registry or Name Service,
>0 otherwise (== study id)
\return the first instance found with same studyId
*/
- Component find_component_instance(in string registeredName,
- in long studyId);
+ EngineComponent find_component_instance(in string registeredName,
+ in long studyId);
//! Find a servant instance of a component, or create a new one.
/*!
(not used any more, give empty string)
\return a loaded component
*/
- Component load_impl(in string nameToRegister,
- in string componentName);
+ EngineComponent load_impl(in string nameToRegister,
+ in string componentName);
//! Remove the component servant, and deletes all related objects
/*!
\param component_i Component to be removed
*/
- void remove_impl(in Component component_i);
+ void remove_impl(in EngineComponent component_i);
//! Unload component libraries from the container.
void finalize_removal() ;
This interface is used for interaction between the %container and the
%component and between the components inside the container.
*/
- interface Component
+ interface EngineComponent
{
//! The name of the instance of the %Component
readonly attribute string instanceName ;
the data model of component
*/
TMPFile DumpPython(in Object theStudy,
- in boolean isPublished,
- out boolean isValidScript);
+ in boolean isPublished,
+ out boolean isValidScript);
//! Returns a CORBA Ref of a input Salome_file managed by a service.
sends the file's reference.
*/
Engines::Salome_file getInputFileToService(in string service_name,
- in string Salome_file_name) raises(SALOME::SALOME_Exception);
+ in string Salome_file_name) raises(SALOME::SALOME_Exception);
//! Check service input files (transfer them if needed)
/*!
\exception contains informations about files that are not in a good state.
*/
- void checkInputFilesToService(in string service_name) raises(SALOME::SALOME_Exception);
+ void checkInputFilesToService(in string service_name) raises(SALOME::SALOME_Exception);
//! This method adds a input Salome_file to a service of the component.
/*!
a Salome_file with this name for the service.
*/
Engines::Salome_file setInputFileToService(in string service_name,
- in string Salome_file_name) raises(SALOME::SALOME_Exception);
+ in string Salome_file_name) raises(SALOME::SALOME_Exception);
//! Returns a CORBA Ref of a output Salome_file managed by a service.
/*!
sends the file's reference.
*/
Engines::Salome_file getOutputFileToService(in string service_name,
- in string Salome_file_name) raises(SALOME::SALOME_Exception);
+ in string Salome_file_name) raises(SALOME::SALOME_Exception);
//! Check service output files (transfer them if needed)
/*!
\exception contains informations about files that are not in a good state.
*/
- void checkOutputFilesToService(in string service_name) raises(SALOME::SALOME_Exception);
+ void checkOutputFilesToService(in string service_name) raises(SALOME::SALOME_Exception);
//! This method adds an output Salome_file to a service of the component.
/*!
a Salome_file with this name for the service.
*/
Engines::Salome_file setOutputFileToService(in string service_name,
- in string Salome_file_name) raises(SALOME::SALOME_Exception);
+ in string Salome_file_name) raises(SALOME::SALOME_Exception);
//! Indicate if the component instance provides custom information about its objects.
/*!
\exception contains informations of errors if the loading doesn't succeed.
*/
- void load(in string hdf5_file) raises (SALOME::SALOME_Exception);
+ void load(in string hdf5_file) raises (SALOME::SALOME_Exception);
//! Save a Salome_file into a hdf5_file.
/*!
\exception contains informations of errors if the save doesn't succeed.
*/
- void save(in string hdf5_file) raises (SALOME::SALOME_Exception);
+ void save(in string hdf5_file) raises (SALOME::SALOME_Exception);
//! Save a Salome_file into a hdf5_file.
/*!
\exception contains informations of errors if the save doesn't succeed.
*/
- void save_all(in string hdf5_file) raises (SALOME::SALOME_Exception);
+ void save_all(in string hdf5_file) raises (SALOME::SALOME_Exception);
/**************/
\exception raised if the file doesn't exist.
*/
void connectDistributedFile(in string file_name,
- in Engines::Salome_file source_Salome_file) raises (SALOME::SALOME_Exception);
+ in Engines::Salome_file source_Salome_file) raises (SALOME::SALOME_Exception);
//! Connect the file_name with a Distributed file_name.
/*!
\exception raised if the file doesn't exist.
*/
void setDistributedSourceFile(in string file_name,
- in string source_file_name) raises (SALOME::SALOME_Exception);
+ in string source_file_name) raises (SALOME::SALOME_Exception);
/**************/
\exception raised if some of the files are not ok.
*/
- void recvFiles() raises (SALOME::SALOME_Exception) ;
+ void recvFiles() raises (SALOME::SALOME_Exception) ;
/**************/
\exception raised if the file doesn't exist.
*/
- void removeFile(in string file_name) raises (SALOME::SALOME_Exception);
+ void removeFile(in string file_name) raises (SALOME::SALOME_Exception);
//! Remove all the files of the Salome_file.
void removeFiles();
\exception raised if the file doesn't exist.
*/
- Engines::file getFileInfos(in string file_name) raises (SALOME::SALOME_Exception);
+ Engines::file getFileInfos(in string file_name) raises (SALOME::SALOME_Exception);
//! Return the state of the Salome_file.
Engines::SfState getSalome_fileState();
Container getContainer();
boolean addRef(in string machine,
- in string fileName);
+ in string fileName);
string getRef(in string machine);
};
</Method>
</Interface>
<Interface>
- <Name>Component</Name>
+ <Name>EngineComponent</Name>
<Method>
<Name>ping</Name>
<Type>distributed</Type>
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-
// File : SALOME_PACOExtension.idl
// Author : André RIBES, EDF
-// $Header:
-//
+
#ifndef _SALOME_PACOExtension_IDL_
#define _SALOME_PACOExtension_IDL_
module Engines
{
- interface Parallel_Component : Engines::Component {
+ interface Parallel_Component : Engines::EngineComponent {
void send_parallel_proxy_object(in Object proxy_ref);
};
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-
// File : SALOME_Session.idl
// Author : Paul RASCLE, EDF
-// $Header$
-//
+
#include "SALOME_Component.idl"
/*! \file SALOME_Session.idl \brief file that contains interface of the session
module SALOME
{
/*! \brief State of the session
-
+
This enumeration contains values defining the state of the session
-
-*/
+
+*/
enum SessionState {asleep, /*!< Session is inactive */
- running /*!< Session is running */
+ running /*!< Session is running */
} ;
/*! \brief %Session State and Statistics
-
- This struct contains a field list with general information about the session
+ This struct contains a field list with general information about the session
*/
-
+
struct StatSession
{
/*! \brief State of the session
-
+
It can be:
-# asleep : no running study
-# running : one or more running studies
*/
- SessionState state ;
-//! Number of running studies
+ SessionState state ;
+ //! Number of running studies
short runningStudies ;
-//! It is True if GUI is active in the session
+ //! It is True if GUI is active in the session
boolean activeGUI ;
} ;
//! This exception is raised when trying to stop the %session with active GUI
exception GUIActive {} ;
//! This exception is raised when trying to stop the %session with a number of running studies.
- exception RunningStudies {} ;
+ exception RunningStudies {} ;
//! Launches GUI in the session
- void GetInterface();
+ void GetInterface();
//! Returns a standalone component
- Engines::Component GetComponent(in string theLibraryName);
+ Engines::EngineComponent GetComponent(in string theLibraryName);
//! Stops the %Session (It must be idle)
void StopSession() raises(GUIActive, RunningStudies) ;
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-
// File : SALOME_TestComponent.idl
// Author : Paul RASCLE, EDF - MARC TAJCHMAN, CEA
-// $Header$
-//
+
#include "SALOME_Component.idl"
-/*! \file SALOME_TestComponent.idl \brief an interface for testing Component and Container
+/*! \file SALOME_TestComponent.idl \brief an interface for testing EngineComponent and Container
*/
module Engines
{
-
+
/*! \brief a component with 2 operations (Coucou and Setenv)
*/
- interface TestComponent : Component
+ interface TestComponent : EngineComponent
{
string Coucou(in long L);
void Setenv();
};
};
-
module Engines
{
- interface TestMPIComponent : Component, MPIObject
+ interface TestMPIComponent : EngineComponent, MPIObject
{
// version synchrone (process 0)
void Coucou(in long L);
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-
// File : SALOME_TestModuleCatalog.idl
// Author :
-//
+
#ifndef _TestModuleCatalog_IDL
#define _TestModuleCatalog_IDL
interface Adder ;
- interface AddComponent : Engines::Component {
+ interface AddComponent : Engines::EngineComponent {
// DataStreamPorts Addition istream(INTEGER, in, T), ostream(STRING, out, I)
// DataStreamPorts Addition Ostream(FLOAT, out, T)
double LastResult() ;
};
- interface Adder : Engines::Component {
+ interface Adder : Engines::EngineComponent {
double Add( in double x , in double y , out double z ) ;
double AddAndCompare( in double x , in double y , in Adder anOtherAdder,
out double z ) ;
/* For each component contained in this container
* tell it to self-destroy
*/
- std::map<std::string, Engines::Component_var>::iterator itm;
+ std::map<std::string, Engines::EngineComponent_var>::iterator itm;
for (itm = _listInstances_map.begin(); itm != _listInstances_map.end(); itm++)
{
try
* \return a loaded component
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Engines_Container_i::create_component_instance(const char*genericRegisterName,
CORBA::Long studyId)
{
Engines::FieldsDict_var env = new Engines::FieldsDict;
char* reason;
- Engines::Component_ptr compo = create_component_instance_env(genericRegisterName, studyId, env, reason);
+ Engines::EngineComponent_ptr compo =
+ create_component_instance_env(genericRegisterName, studyId, env, reason);
CORBA::string_free(reason);
return compo;
}
* \return a loaded component
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Engines_Container_i::create_component_instance_env(const char*genericRegisterName,
CORBA::Long studyId,
const Engines::FieldsDict& env,
{
INFOS("studyId must be > 0 for mono study instance, =0 for multiStudy");
reason=CORBA::string_dup("studyId must be > 0 for mono study instance, =0 for multiStudy");
- return Engines::Component::_nil() ;
+ return Engines::EngineComponent::_nil() ;
}
std::string error;
if (_library_map.count(genericRegisterName) != 0)
{
// It's a Python component
- Engines::Component_ptr compo = createPythonInstance(genericRegisterName, studyId, error);
+ Engines::EngineComponent_ptr compo = createPythonInstance(genericRegisterName, studyId, error);
reason=CORBA::string_dup(error.c_str());
return compo;
}
{
// It's a C++ component
void* handle = _library_map[impl_name];
- Engines::Component_ptr compo = createInstance(genericRegisterName, handle, studyId, error);
+ Engines::EngineComponent_ptr compo = createInstance(genericRegisterName, handle, studyId, error);
reason=CORBA::string_dup(error.c_str());
return compo;
}
if (_library_map.count(impl_name) != 0)
{
//It's an executable component
- Engines::Component_ptr compo = createExecutableInstance(genericRegisterName, studyId, env, error);
+ Engines::EngineComponent_ptr compo = createExecutableInstance(genericRegisterName, studyId, env, error);
reason=CORBA::string_dup(error.c_str());
return compo;
}
error += genericRegisterName;
INFOS(error);
reason=CORBA::string_dup(error.c_str());
- return Engines::Component::_nil() ;
+ return Engines::EngineComponent::_nil() ;
}
//=============================================================================
* it's registration.
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Engines_Container_i::createExecutableInstance(std::string CompName, int studyId,
const Engines::FieldsDict& env,
std::string& reason)
{
- Engines::Component_var iobject = Engines::Component::_nil() ;
+ Engines::EngineComponent_var iobject = Engines::EngineComponent::_nil() ;
_numInstanceMutex.lock() ; // lock on the instance number
_numInstance++ ;
{
reason="SALOME_Container::create_component_instance system failed (system command status -1)";
MESSAGE(reason);
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
#ifndef WIN32
else if (WEXITSTATUS(status) == 217)
{
reason="SALOME_Container::create_component_instance system failed (system command status 217)";
MESSAGE(reason);
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
#endif
else
{
reason="SALOME_Container::create_component_instance failed";
MESSAGE(reason);
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
else
{
MESSAGE("SALOME_Container::create_component_instance successful");
- iobject=Engines::Component::_narrow(obj);
+ iobject = Engines::EngineComponent::_narrow(obj);
_listInstances_map[instanceName] = iobject;
return iobject._retn();
}
* \return a loaded component
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Engines_Container_i::createPythonInstance(std::string CompName, int studyId,
std::string& reason)
{
- Engines::Component_var iobject = Engines::Component::_nil() ;
+ Engines::EngineComponent_var iobject = Engines::EngineComponent::_nil() ;
_numInstanceMutex.lock() ; // lock on the instance number
_numInstance++ ;
if( iors!="" )
{
CORBA::Object_var obj = _orb->string_to_object(iors.c_str());
- iobject = Engines::Component::_narrow( obj ) ;
+ iobject = Engines::EngineComponent::_narrow( obj ) ;
_listInstances_map[instanceName] = iobject;
}
return iobject._retn();
* - component_registerName = /Containers/cli76ce/FactoryServer/COMPONENT_inst_1
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Engines_Container_i::createInstance(std::string genericRegisterName,
void *handle,
int studyId,
reason=dlerror();
INFOS(reason);
#endif
- return Engines::Component::_nil() ;
+ return Engines::EngineComponent::_nil() ;
}
// --- create instance
- Engines::Component_var iobject = Engines::Component::_nil() ;
+ Engines::EngineComponent_var iobject = Engines::EngineComponent::_nil() ;
try
{
// --- get reference & servant from id
CORBA::Object_var obj = _poa->id_to_reference(*id);
- iobject = Engines::Component::_narrow( obj ) ;
+ iobject = Engines::EngineComponent::_narrow( obj ) ;
Engines_Component_i *servant =
dynamic_cast<Engines_Component_i*>(_poa->reference_to_servant(iobject));
* \return the first instance found with same studyId
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Engines_Container_i::find_component_instance( const char* registeredName,
CORBA::Long studyId)
{
- Engines::Component_var anEngine = Engines::Component::_nil();
- std::map<std::string,Engines::Component_var>::iterator itm =_listInstances_map.begin();
+ Engines::EngineComponent_var anEngine = Engines::EngineComponent::_nil();
+ std::map<std::string,Engines::EngineComponent_var>::iterator itm =_listInstances_map.begin();
while (itm != _listInstances_map.end())
{
std::string instance = (*itm).first;
*/
//=============================================================================
-void Engines_Container_i::remove_impl(Engines::Component_ptr component_i)
+void Engines_Container_i::remove_impl(Engines::EngineComponent_ptr component_i)
{
ASSERT(! CORBA::is_nil(component_i));
std::string instanceName = component_i->instanceName() ;
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Engines_Container_i::load_impl( const char* genericRegisterName,
const char* componentName )
{
char* reason;
std::string impl_name = std::string(LIB) + genericRegisterName + ENGINESO;
- Engines::Component_var iobject = Engines::Component::_nil() ;
+ Engines::EngineComponent_var iobject = Engines::EngineComponent::_nil() ;
if (load_component_Library(genericRegisterName,reason))
iobject = find_or_create_instance(genericRegisterName, impl_name);
CORBA::string_free(reason);
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Engines_Container_i::find_or_create_instance(std::string genericRegisterName,
std::string componentLibraryName)
{
if (_library_map.count(impl_name) == 0)
{
INFOS("shared library " << impl_name <<" must be loaded before creating instance");
- return Engines::Component::_nil() ;
+ return Engines::EngineComponent::_nil() ;
}
else
{
void* handle = _library_map[impl_name];
std::string component_registerBase =
_containerName + "/" + aGenRegisterName;
- Engines::Component_var iobject = Engines::Component::_nil() ;
+ Engines::EngineComponent_var iobject = Engines::EngineComponent::_nil() ;
std::string reason;
try
{
}
else
{
- iobject = Engines::Component::_narrow( obj ) ;
+ iobject = Engines::EngineComponent::_narrow( obj ) ;
Engines_Component_i *servant =
dynamic_cast<Engines_Component_i*>
(_poa->reference_to_servant(iobject));
}
else // monoStudy instance: NOK
{
- iobject = Engines::Component::_nil();
+ iobject = Engines::EngineComponent::_nil();
INFOS("load_impl & find_component_instance methods "
<< "NOT SUITABLE for mono study components");
}
}
return found;
}
-
## define an implementation of the component interface Engines::Component
#
#
-class SALOME_ComponentPy_i (Engines__POA.Component):
+class SALOME_ComponentPy_i (Engines__POA.EngineComponent):
_orb = None
_poa = None
_fieldsDict = []
class Engines_Container_i;
class CONTAINER_EXPORT Engines_Component_i:
- public virtual POA_Engines::Component,
+ public virtual POA_Engines::EngineComponent,
public virtual PortableServer::ServantBase
{
public:
virtual bool load_component_Library(const char* componentName, CORBA::String_out reason);
- virtual Engines::Component_ptr
+ virtual Engines::EngineComponent_ptr
create_component_instance( const char* componentName,
CORBA::Long studyId); // 0 for multiStudy
- virtual Engines::Component_ptr
+ virtual Engines::EngineComponent_ptr
create_component_instance_env( const char* componentName,
CORBA::Long studyId, // 0 for multiStudy
const Engines::FieldsDict& env,
CORBA::String_out reason);
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
find_component_instance( const char* registeredName,
CORBA::Long studyId); // 0 for multiStudy
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
load_impl(const char* nameToRegister,
const char* componentName);
- void remove_impl(Engines::Component_ptr component_i);
+ void remove_impl(Engines::EngineComponent_ptr component_i);
void finalize_removal();
virtual void ping();
Engines::PyScriptNode_ptr createPyScriptNode(const char* nodeName, const char* code);
// --- local C++ methods
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
find_or_create_instance( std::string genericRegisterName,
std::string componentLibraryName);
bool load_component_PythonImplementation(const char* componentName,std::string& reason);
bool load_component_ExecutableImplementation(const char* componentName,std::string& reason);
- Engines::Component_ptr createPythonInstance(std::string CompName, int studyId, std::string& error);
- Engines::Component_ptr createExecutableInstance(std::string CompName, int studyId, const Engines::FieldsDict& env, std::string& error);
- Engines::Component_ptr createInstance(std::string genericRegisterName, void *handle, int studyId, std::string& error);
+ Engines::EngineComponent_ptr createPythonInstance(std::string CompName, int studyId, std::string& error);
+ Engines::EngineComponent_ptr createExecutableInstance(std::string CompName, int studyId, const Engines::FieldsDict& env, std::string& error);
+ Engines::EngineComponent_ptr createInstance(std::string genericRegisterName, void *handle, int studyId, std::string& error);
static bool isPythonContainer(const char* ContainerName);
static void decInstanceCnt(std::string genericRegisterName);
PortableServer::POA_var _poa;
PortableServer::ObjectId * _id ;
int _numInstance ;
- std::map<std::string,Engines::Component_var> _listInstances_map;
+ std::map<std::string,Engines::EngineComponent_var> _listInstances_map;
std::map<std::string,Engines::fileRef_var> _fileRef_map;
std::map<std::string,Engines::Salome_file_var> _Salome_file_map;
Engines::fileTransfer_var _fileTransfer;
};
#endif
-
Engines::DSC_base_serv(orb, ior, rank),
Engines::Superv_Component_serv(orb, ior, rank),
Engines::Superv_Component_base_serv(orb, ior, rank),
- Engines::Component_serv(orb, ior, rank),
- Engines::Component_base_serv(orb, ior, rank),
+ Engines::EngineComponent_serv(orb, ior, rank),
+ Engines::EngineComponent_base_serv(orb, ior, rank),
Engines::Parallel_Component_serv(orb, ior, rank),
Engines::Parallel_Component_base_serv(orb, ior, rank),
InterfaceParallel_impl(orb, ior, rank)
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
// SALOME LifeCycleCORBA : implementation of containers and engines life cycle both in Python and C++
// File : SALOME_LifeCycleCORBA.cxx
// Author : Paul RASCLE, EDF
// Module : SALOME
-// $Header$
-//
+
#include <iostream>
#include <fstream>
#include <sstream>
* \return a CORBA reference of the component instance, or _nil if not found
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
SALOME_LifeCycleCORBA::FindComponent(const Engines::MachineParameters& params,
const char *componentName,
int studyId)
{
if (! isKnownComponentClass(componentName))
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
Engines::ContainerParameters new_params;
convert(params, new_params);
}
catch( const SALOME::SALOME_Exception& ex )
{
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
- Engines::Component_var compo = _FindComponent(new_params,
+ Engines::EngineComponent_var compo = _FindComponent(new_params,
componentName,
studyId,
listOfResources);
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
SALOME_LifeCycleCORBA::LoadComponent(const Engines::MachineParameters& params,
const char *componentName,
int studyId)
// --- Check if Component Name is known in ModuleCatalog
if (! isKnownComponentClass(componentName))
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
Engines::ContainerParameters new_params;
convert(params, new_params);
}
catch( const SALOME::SALOME_Exception& ex )
{
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
new_params.resource_params.resList = listOfResources;
- Engines::Component_var compo = _LoadComponent(new_params,
+ Engines::EngineComponent_var compo = _LoadComponent(new_params,
componentName,
studyId);
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
SALOME_LifeCycleCORBA::
FindOrLoad_Component(const Engines::MachineParameters& params,
const char *componentName,
// --- Check if Component Name is known in ModuleCatalog
if (! isKnownComponentClass(componentName))
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
Engines::ContainerParameters new_params;
convert(params, new_params);
}
catch( const SALOME::SALOME_Exception& ex )
{
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
- Engines::Component_var compo = _FindComponent(new_params,
+ Engines::EngineComponent_var compo = _FindComponent(new_params,
componentName,
studyId,
listOfResources);
return compo._retn();
}
-Engines::Component_ptr
+Engines::EngineComponent_ptr
SALOME_LifeCycleCORBA::
FindOrLoad_Component(const Engines::ContainerParameters& params,
const char *componentName,
// --- Check if Component Name is known in ModuleCatalog
if (! isKnownComponentClass(componentName))
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
Engines::ContainerParameters new_params(params);
new_params.resource_params.componentList.length(1);
}
catch( const SALOME::SALOME_Exception& ex )
{
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
- Engines::Component_var compo = _FindComponent(new_params,
+ Engines::EngineComponent_var compo = _FindComponent(new_params,
componentName,
studyId,
listOfResources);
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
SALOME_LifeCycleCORBA::FindOrLoad_Component(const char *containerName,
const char *componentName)
{
// --- Check if Component Name is known in ModuleCatalog
if (! isKnownComponentClass(componentName))
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
// --- Check if containerName contains machine name (if yes: rg>0)
char *stContainer=strdup(containerName);
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
SALOME_LifeCycleCORBA::
_FindComponent(const Engines::ContainerParameters& params,
const char *componentName,
containerName,
componentName,
nbproc);
- return Engines::Component::_narrow(obj);
+ return Engines::EngineComponent::_narrow(obj);
}
else
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
//=============================================================================
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
SALOME_LifeCycleCORBA::
_LoadComponent(const Engines::ContainerParameters& params,
const char *componentName,
Engines::ContainerParameters local_params(params);
local_params.mode = CORBA::string_dup("findorstart");
Engines::Container_var cont = _ContManager->GiveContainer(local_params);
- if (CORBA::is_nil(cont)) return Engines::Component::_nil();
+ if (CORBA::is_nil(cont)) return Engines::EngineComponent::_nil();
char* reason;
bool isLoadable = cont->load_component_Library(componentName,reason);
{
//std::cerr << reason << std::endl;
CORBA::string_free(reason);
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
CORBA::string_free(reason);
- Engines::Component_var myInstance =
+ Engines::EngineComponent_var myInstance =
cont->create_component_instance(componentName, studyId);
return myInstance._retn();
}
* \return a CORBA reference of the parallel component instance, or _nil if problem
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
SALOME_LifeCycleCORBA::Load_ParallelComponent(const Engines::ContainerParameters& params,
const char *componentName,
int studyId)
Engines::Container_var cont = _ContManager->GiveContainer(parms);
if (CORBA::is_nil(cont)) {
INFOS("FindOrStartParallelContainer() returns a NULL container !");
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
MESSAGE("Loading component library");
INFOS(componentName <<" library is not loadable !");
//std::cerr << reason << std::endl;
CORBA::string_free(reason);
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
CORBA::string_free(reason);
// @PARALLEL@ permits to identify that the component requested
// is a parallel component.
std::string name = std::string(componentName);
- Engines::Component_var myInstance = cont->create_component_instance(name.c_str(), studyId);
+ Engines::EngineComponent_var myInstance = cont->create_component_instance(name.c_str(), studyId);
if (CORBA::is_nil(myInstance))
INFOS("create_component_instance returns a NULL component !");
return myInstance._retn();
{
return _NS->orb();
}
-
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-
// SALOME LifeCycleCORBA : implementation of containers and engines life cycle both in Python and C++
// File : SALOME_LifeCycleCORBA.hxx
// Author : Paul RASCLE, EDF - MARC TAJCHMAN, CEA
// Module : SALOME
-// $Header$
-//
+
#ifndef _SALOME_LIFECYCLECORBA_HXX_
#define _SALOME_LIFECYCLECORBA_HXX_
SALOME_LifeCycleCORBA(SALOME_NamingService *ns = 0);
virtual ~SALOME_LifeCycleCORBA();
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
FindComponent(const Engines::MachineParameters& params,
const char *componentName,
int studyId=0);
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
LoadComponent(const Engines::MachineParameters& params,
const char *componentName,
int studyId=0);
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
FindOrLoad_Component(const Engines::MachineParameters& params,
const char *componentName,
int studyId =0);
// SALOME 6 - Interface
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
FindOrLoad_Component(const Engines::ContainerParameters& params,
const char *componentName,
int studyId =0);
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
FindOrLoad_Component(const char *containerName,
const char *componentName); // for compatibility
// Parallel extension
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
Load_ParallelComponent(const Engines::ContainerParameters& params,
const char *componentName,
int studyId);
* exists among the list of resources in "listOfMachines".
* This method uses Naming Service to find the component.
*/
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
_FindComponent(const Engines::ContainerParameters& params,
const char *componentName,
int studyId,
const Engines::ResourceList& listOfResources);
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
_LoadComponent(const Engines::ContainerParameters& params,
const char *componentName,
int studyId);
// load an engine, check that the CORBA object is not null
std::string containerName = "myContainer";
- Engines::Component_var mycompo =
+ Engines::EngineComponent_var mycompo =
_LCC.FindOrLoad_Component(containerName.c_str(),"SalomeTestComponent");
CPPUNIT_ASSERT(!CORBA::is_nil(mycompo));
std::string containerName = "myContainer";
- Engines::Component_var mycompo1 =
+ Engines::EngineComponent_var mycompo1 =
_LCC.FindOrLoad_Component(containerName.c_str(),"SalomeTestComponent");
CPPUNIT_ASSERT(!CORBA::is_nil(mycompo1));
- Engines::Component_var mycompo2 =
+ Engines::EngineComponent_var mycompo2 =
_LCC.FindOrLoad_Component(containerName.c_str(),"SalomeTestComponent");
CPPUNIT_ASSERT(!CORBA::is_nil(mycompo2));
std::string containerName = "myContainer";
- Engines::Component_var mycompo1 =
+ Engines::EngineComponent_var mycompo1 =
_LCC.FindOrLoad_Component(containerName.c_str(),"SALOME_TestComponentPy");
CPPUNIT_ASSERT(!CORBA::is_nil(mycompo1));
std::string containerName = "myContainer";
- Engines::Component_var mycompo1 =
+ Engines::EngineComponent_var mycompo1 =
_LCC.FindOrLoad_Component(containerName.c_str(),"SALOME_TestComponentPy");
CPPUNIT_ASSERT(!CORBA::is_nil(mycompo1));
- Engines::Component_var mycompo2 =
+ Engines::EngineComponent_var mycompo2 =
_LCC.FindOrLoad_Component(containerName.c_str(),"SALOME_TestComponentPy");
CPPUNIT_ASSERT(!CORBA::is_nil(mycompo2));
std::string containerName = "myContainer";
- Engines::Component_var mycompo1 =
+ Engines::EngineComponent_var mycompo1 =
_LCC.FindOrLoad_Component(containerName.c_str(),"MyNewComponent");
CPPUNIT_ASSERT(CORBA::is_nil(mycompo1));
}
std::string containerName = Kernel_Utils::GetHostname();
containerName += "/theContainer";
DEVTRACE("containerName = " << containerName);
- Engines::Component_var mycompo =
+ Engines::EngineComponent_var mycompo =
_LCC.FindOrLoad_Component(containerName.c_str(),"SalomeTestComponent");
CPPUNIT_ASSERT(!CORBA::is_nil(mycompo));
std::string containerName = "aContainer";
- Engines::Component_var mycompo1 =
+ Engines::EngineComponent_var mycompo1 =
_LCC.FindOrLoad_Component(containerName.c_str(),"SalomeTestComponent");
CPPUNIT_ASSERT(!CORBA::is_nil(mycompo1));
containerName = Kernel_Utils::GetHostname();
containerName += "/aContainer";
DEVTRACE("containerName = " << containerName);
- Engines::Component_var mycompo2 =
+ Engines::EngineComponent_var mycompo2 =
_LCC.FindOrLoad_Component(containerName.c_str(),"SalomeTestComponent");
CPPUNIT_ASSERT(!CORBA::is_nil(mycompo2));
// _LCC.FindOrLoad_Component(containerName.c_str(),"SalomeTestComponent");,SALOME::SALOME_Exception);
try
{
- Engines::Component_var mycompo =
+ Engines::EngineComponent_var mycompo =
_LCC.FindOrLoad_Component(containerName.c_str(),"SalomeTestComponent");
}
catch(const SALOME::SALOME_Exception &ex)
Engines::MachineParameters params;
_LCC.preSet(params);
- Engines::Component_var mycompo =
+ Engines::EngineComponent_var mycompo =
_LCC.FindOrLoad_Component(params,"SalomeTestComponent");
CPPUNIT_ASSERT(!CORBA::is_nil(mycompo));
_LCC.preSet(params);
std::string hostname=Kernel_Utils::GetHostname();
params.hostname=hostname.c_str();
- Engines::Component_var mycompo =
+ Engines::EngineComponent_var mycompo =
_LCC.FindOrLoad_Component(params,"SalomeTestComponent");
CPPUNIT_ASSERT(!CORBA::is_nil(mycompo));
_LCC.preSet(params);
std::string containerName = "myContainer";
params.container_name = containerName.c_str();
- Engines::Component_var mycompo =
+ Engines::EngineComponent_var mycompo =
_LCC.FindOrLoad_Component(params,"SalomeTestComponent");
CPPUNIT_ASSERT(!CORBA::is_nil(mycompo));
std::string containerName = remoteHost;
containerName += "/aContainer";
DEVTRACE("containerName = " << containerName);
- Engines::Component_var mycompo1 =
+ Engines::EngineComponent_var mycompo1 =
_LCC.FindOrLoad_Component(containerName.c_str(),"SalomeTestComponent");
CPPUNIT_ASSERT_MESSAGE("Test validity requires connection to remote "\
"computers from ResourcesCatalog",
_LCC.preSet(params);
params.hostname = remoteHost.c_str();
- Engines::Component_var mycompo1 =
+ Engines::EngineComponent_var mycompo1 =
_LCC.FindOrLoad_Component(params,"SalomeTestComponent");
CPPUNIT_ASSERT_MESSAGE("Test validity requires connection to remote "\
"computers from ResourcesCatalog",
params.hostname = remoteHost.c_str();
params.container_name = "anotherContainer";
- Engines::Component_var mycompo1 =
+ Engines::EngineComponent_var mycompo1 =
_LCC.FindOrLoad_Component(params,"SalomeTestComponent");
CPPUNIT_ASSERT_MESSAGE("Test validity requires connection to remote "\
"computers from ResourcesCatalog",
std::map<std::string, int> cycle;
std::map<std::string, int> first;
Engines::Container_ptr cont;
- Engines::Component_ptr compo;
+ Engines::EngineComponent_ptr compo;
bool error = false;
bool bestImplemented;
int status;
std::string containerName = "myServer";
MESSAGE("FindOrLoadComponent " + containerName + "/" + "SalomeTestComponent" );
- Engines::Component_var mycompo =
+ Engines::EngineComponent_var mycompo =
_LCC.FindOrLoad_Component(containerName.c_str(),"SalomeTestComponent");
ASSERT(!CORBA::is_nil(mycompo));
Engines::TestComponent_var m1;
std::string containerName2 = "otherServer";
- Engines::Component_var mycompo2 =
+ Engines::EngineComponent_var mycompo2 =
_LCC.FindOrLoad_Component(containerName2.c_str(),"SALOME_TestComponentPy");
ASSERT(!CORBA::is_nil(mycompo2));
Engines::TestComponent_var m2;
// --- get a third container,
// load an engine, and invoque methods on that engine
- Engines::Component_var mycompo3 =
+ Engines::EngineComponent_var mycompo3 =
_LCC.FindOrLoad_Component("totoPy","SALOME_TestComponentPy");
ASSERT(!CORBA::is_nil(mycompo3));
Engines::TestComponent_var m3 = Engines::TestComponent::_narrow(mycompo3);
std::string containerName4 = Kernel_Utils::GetHostname();
containerName4 += "/titiPy";
- Engines::Component_var mycompo4 =
+ Engines::EngineComponent_var mycompo4 =
_LCC.FindOrLoad_Component(containerName4.c_str(),"SALOME_TestComponentPy");
ASSERT(!CORBA::is_nil(mycompo4));
Engines::TestComponent_var m4 = Engines::TestComponent::_narrow(mycompo4);
return 0;
}
-
// ----------------------------------------------------------------------------
-%typemap(out) Engines::Container_ptr, Engines::Component_ptr, Engines::fileRef_ptr,
+%typemap(out) Engines::Container_ptr, Engines::EngineComponent_ptr, Engines::fileRef_ptr,
Engines::ContainerManager_ptr, Engines::ResourcesManager_ptr
{
MESSAGE("typemap out on CORBA object ptr");
%include <SALOME_LifeCycleCORBA.hxx>
%include <SALOME_FileTransferCORBA.hxx>
-
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-
// SALOME MPIContainer : implemenation of container based on MPI libraries
// File : MPIContainer_i.cxx
// Module : SALOME
-//
+
#include <iostream>
#include <dlfcn.h>
#include <stdio.h>
(Engines::MPIContainer::_narrow((*_tior)[ip]))->Shutdown();
}
- std::map<std::string, Engines::Component_var>::iterator itm;
+ std::map<std::string, Engines::EngineComponent_var>::iterator itm;
for (itm = _listInstances_map.begin(); itm != _listInstances_map.end(); itm++)
{
try
}
// Create an instance of component
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Engines_MPIContainer_i::create_component_instance_env( const char* componentName,
CORBA::Long studyId,
const Engines::FieldsDict& env,
}
}
- Engines::Component_ptr cptr = Lcreate_component_instance(componentName,studyId);
+ Engines::EngineComponent_ptr cptr = Lcreate_component_instance(componentName,studyId);
if(_numproc == 0){
for(int ip=1;ip<_nbproc;ip++)
return cptr;
}
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Engines_MPIContainer_i::Lcreate_component_instance( const char* genericRegisterName, CORBA::Long studyId)
{
if (studyId < 0) {
INFOS("studyId must be > 0 for mono study instance, =0 for multiStudy");
- return Engines::Component::_nil() ;
+ return Engines::EngineComponent::_nil() ;
}
- Engines::Component_var iobject = Engines::Component::_nil() ;
+ Engines::EngineComponent_var iobject = Engines::EngineComponent::_nil() ;
Engines::MPIObject_var pobj;
std::string aCompName = genericRegisterName;
if (_library_map[aCompName]) { // Python component
if (_isSupervContainer) {
INFOS("Supervision Container does not support Python Component Engines");
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
_numInstanceMutex.lock() ; // lock on the instance number
_numInstance++ ;
Py_RELEASE_NEW_THREAD;
CORBA::Object_var obj = _orb->string_to_object(iors.c_str());
- iobject = Engines::Component::_narrow( obj ) ;
+ iobject = Engines::EngineComponent::_narrow( obj ) ;
pobj = Engines::MPIObject::_narrow(obj) ;
if( _numproc == 0 )
_NS->Register(iobject, component_registerName.c_str()) ;
return iobject._retn();
}
- return Engines::Component::_nil() ;
+ return Engines::EngineComponent::_nil() ;
}
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Engines_MPIContainer_i::createMPIInstance(std::string genericRegisterName,
void *handle,
int studyId)
{
- Engines::Component_var iobject;
+ Engines::EngineComponent_var iobject;
Engines::MPIObject_var pobj;
// --- find the factory
SCRUTE( dlerror() );
pobj = Engines::MPIObject::_nil();
BCastIOR(_orb,pobj,false);
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
// --- create instance
- iobject = Engines::Component::_nil() ;
+ iobject = Engines::EngineComponent::_nil() ;
try
{
// --- get reference & servant from id
CORBA::Object_var obj = _poa->id_to_reference(*id);
- iobject = Engines::Component::_narrow( obj ) ;
+ iobject = Engines::EngineComponent::_narrow( obj ) ;
pobj = Engines::MPIObject::_narrow(obj) ;
- Engines_Component_i *servant =
+ Engines_EngineComponent_i *servant =
dynamic_cast<Engines_Component_i*>(_poa->reference_to_servant(iobject));
ASSERT(servant);
//SCRUTE(servant->pd_refCount);
}
catch(const std::exception &ex){
INFOS( ex.what() ) ;
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
return iobject._retn();
}
// Load component
-Engines::Component_ptr Engines_MPIContainer_i::load_impl(const char* nameToRegister,
+Engines::EngineComponent_ptr Engines_MPIContainer_i::load_impl(const char* nameToRegister,
const char* componentName)
{
pthread_t *th;
}
}
- Engines::Component_ptr cptr = Lload_impl(nameToRegister,componentName);
+ Engines::EngineComponent_ptr cptr = Lload_impl(nameToRegister,componentName);
if(_numproc == 0){
for(int ip=1;ip<_nbproc;ip++)
}
// Load component
-Engines::Component_ptr Engines_MPIContainer_i::Lload_impl(
+Engines::EngineComponent_ptr Engines_MPIContainer_i::Lload_impl(
const char* nameToRegister,
const char* componentName)
{
- Engines::Component_var iobject;
+ Engines::EngineComponent_var iobject;
Engines::MPIObject_var pobj;
char cproc[4];
if(!handle){
INFOS("[" << _numproc << "] Can't load shared library : " << absolute_impl_name);
INFOS("[" << _numproc << "] error dlopen: " << dlerror());
- return Engines::Component::_nil() ;
+ return Engines::EngineComponent::_nil() ;
}
std::string factory_name = _nameToRegister + std::string("Engine_factory");
MESSAGE("[" << _numproc << "] Try to load a sequential component");
_numInstanceMutex.unlock() ;
iobject = Engines_Container_i::load_impl(nameToRegister,componentName);
- if( CORBA::is_nil(iobject) ) return Engines::Component::_duplicate(iobject);
+ if( CORBA::is_nil(iobject) ) return Engines::EngineComponent::_duplicate(iobject);
}
else{
// Instanciation du composant parallele
// get reference from id
CORBA::Object_var o = _poa->id_to_reference(*id);
pobj = Engines::MPIObject::_narrow(o) ;
- iobject = Engines::Component::_narrow(o) ;
+ iobject = Engines::EngineComponent::_narrow(o) ;
}
if( _numproc == 0 ){
BCastIOR(_orb,pobj,false);
END_OF("[" <<_numproc << "] MPIContainer_i::Lload_impl");
- return Engines::Component::_duplicate(iobject);
+ return Engines::EngineComponent::_duplicate(iobject);
}
-void Engines_MPIContainer_i::remove_impl(Engines::Component_ptr component_i)
+void Engines_MPIContainer_i::remove_impl(Engines::EngineComponent_ptr component_i)
{
Engines::MPIObject_ptr pcptr;
Engines::MPIObject_ptr spcptr;
st->ip = ip;
st->tior = _tior;
spcptr = Engines::MPIObject::_narrow((*(pcptr->tior()))[ip]);
- st->cptr = (Engines::Component_ptr)spcptr;
+ st->cptr = (Engines::EngineComponent_ptr)spcptr;
pthread_create(&(th[ip]),NULL,th_removeimpl,(void*)st);
}
}
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-
// SALOME MPIContainer : implemenation of container based on MPI libraries
// File : MPIContainer_i.hxx
// Module : SALOME
-//
+
#ifndef _SALOME_PCONTAINER_
#define _SALOME_PCONTAINER_
std::string compoName;
std::string nameToRegister;
long studyId;
- Engines::Component_ptr cptr;
+ Engines::EngineComponent_ptr cptr;
} thread_st;
class Engines_MPIContainer_i : public POA_Engines::MPIContainer,
// Create an instance of component
// synchronous version for process 0
- virtual Engines::Component_ptr
+ virtual Engines::EngineComponent_ptr
create_component_instance_env( const char* componentName,
CORBA::Long studyId, // 0 for multiStudy
const Engines::FieldsDict& env,
// Load a component in current MPI container
// synchronous version for process 0
- Engines::Component_ptr load_impl(const char* nameToRegister,
+ Engines::EngineComponent_ptr load_impl(const char* nameToRegister,
const char* componentName);
// Unload a component from current MPI container
// synchronous version for process 0
- void remove_impl(Engines::Component_ptr component_i);
+ void remove_impl(Engines::EngineComponent_ptr component_i);
// synchronous version for process 0
void finalize_removal();
private:
bool Lload_component_Library(const char* componentName);
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
Lcreate_component_instance( const char* componentName,
CORBA::Long studyId); // 0 for multiStudy
- Engines::Component_ptr Lload_impl(const char* nameToRegister,
+ Engines::EngineComponent_ptr Lload_impl(const char* nameToRegister,
const char* componentName);
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
createMPIInstance(std::string genericRegisterName,
void *handle,
int studyId);
a partir d'un fichier idl <fichier.idl>
Le fichier idl contient un composant et une interface CORBA
qui n'est pas un composant Salome (i.e. ne derive pas de
- Engines::Component).
+ Engines::EngineComponent).
_________________________________________
2. Un meme fichier idl est lu deux fois
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-
// File : AddComponent.idl
// Author : Jean Rahuel
-//
+
#ifndef _ADDCOMPONENT_IDL
#define _ADDCOMPONENT_IDL
interface Adder ;
- interface AddComponent : Engines::Component {
+ interface AddComponent : Engines::EngineComponent {
double Add( in double x , in double y , out double z ) ;
double AddWithoutSleep( in double x , in double y , out double z ) ;
void Setx( in double x ) ;
out AddComponent RetAdder3 ) ;
};
- interface Adder : Engines::Component {
+ interface Adder : Engines::EngineComponent {
double Add( in double x , in double y , out double z ) ;
double AddWithoutSleep( in double x , in double y , out double z ) ;
double AddAndCompare( in double x , in double y , in Adder anOtherAdder,
out double z ) ;
void SetLastResult( in double z ) ;
void LastResult( out double z ) ;
- Engines::Component LccAddComponent( in string aContainer ,
- in string aComponentName ) ;
+ Engines::EngineComponent LccAddComponent( in string aContainer ,
+ in string aComponentName ) ;
};
} ;
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-
// File : SubComponent.idl
// Author : Jean Rahuel
-//
+
#ifndef _SUBCOMPONENT_IDL
#define _SUBCOMPONENT_IDL
module SuperVisionTest {
- interface SubComponent : Engines::Component {
+ interface SubComponent : Engines::EngineComponent {
void Sub( in double x , in double y , out double z ) ;
} ;
};
bool notif,
bool regist) :
InterfaceParallel_impl(orb,ior,rank),
- Engines::Component_serv(orb,ior,rank),
- Engines::Component_base_serv(orb,ior,rank),
+ Engines::EngineComponent_serv(orb,ior,rank),
+ Engines::EngineComponent_base_serv(orb,ior,rank),
Engines::Parallel_Component_serv(orb,ior,rank),
Engines::Parallel_Component_base_serv(orb,ior,rank),
_instanceName(instanceName),
{
// By default this method does nothing
}
-
return ret;
}
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Container_proxy_impl_final::create_component_instance(const char* componentName, ::CORBA::Long studyId)
{
Engines::FieldsDict_var env = new Engines::FieldsDict;
char* reason;
- Engines::Component_ptr compo = create_component_instance_env(componentName, studyId, env, reason);
+ Engines::EngineComponent_ptr compo = create_component_instance_env(componentName, studyId, env, reason);
CORBA::string_free(reason);
return compo;
}
// Composant sequentiel -> on le créer sur le noeud 0 (on pourrait faire une répartition de charge)
// Composant parallèle -> création du proxy ici puis appel de la création de chaque objet participant
// au composant parallèle
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Container_proxy_impl_final::create_component_instance_env(const char* componentName, ::CORBA::Long studyId,
const Engines::FieldsDict& env, CORBA::String_out reason)
{
{
// Component is not loaded !
INFOS("Proxy: component is not loaded ! : " << aCompName);
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
// If it is a sequential component
}
// Parallel Component !
- Engines::Component_var component_proxy = Engines::Component::_nil();
+ Engines::EngineComponent_var component_proxy = Engines::EngineComponent::_nil();
// On commence par créer le proxy
#ifndef WIN32
#ifndef WIN32
INFOS("dlerror() result is : " << dlerror());
#endif
- return Engines::Component::_nil() ;
+ return Engines::EngineComponent::_nil() ;
}
try {
_numInstanceMutex.lock() ; // lock on the instance number
// --- get reference & servant from id
CORBA::Object_var obj = _poa->id_to_reference(*(proxy->proxy_id));
- component_proxy = Engines::Component::_narrow(obj);
+ component_proxy = Engines::EngineComponent::_narrow(obj);
proxy->proxy_corba_ref = component_proxy;
if (!CORBA::is_nil(component_proxy))
else
{
INFOS("The factory returns a nil object !");
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
}
catch (...)
{
INFOS( "Exception catched in Proxy creation" );
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
// Create on each node a work node
catch (SALOME::SALOME_Exception & ex)
{
INFOS("SALOME_EXCEPTION : " << ex.details.text);
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
catch (...)
{
INFOS("Unknown Exception catch during create_paco_component_node_instance on node : " << i);
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
}
else
{
INFOS("Cannot call create_paco_component_node_instance on node " << i << " ref is nil !");
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
}
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-
// SALOME_ParallelContainerProxy : implementation of container and engine for Parallel Kernel
// File : SALOME_ParallelContainerProxy_i.hxx
// Author : André RIBES, EDF
-//
+
#ifndef _SALOME_PARALLEL_CONTAINER_PROXY_I_HXX_
#define _SALOME_PARALLEL_CONTAINER_PROXY_I_HXX_
virtual void Shutdown();
virtual ::CORBA::Boolean load_component_Library(const char* componentName,CORBA::String_out reason);
- virtual Engines::Component_ptr create_component_instance(const char* componentName, ::CORBA::Long studyId);
- virtual Engines::Component_ptr create_component_instance_env( const char* componentName,
- CORBA::Long studyId, // 0 for multiStudy
- const Engines::FieldsDict& env,
- CORBA::String_out reason);
+ virtual Engines::EngineComponent_ptr create_component_instance (const char* componentName,
+ ::CORBA::Long studyId);
+ virtual Engines::EngineComponent_ptr create_component_instance_env (const char* componentName,
+ CORBA::Long studyId, // 0 for multiStudy
+ const Engines::FieldsDict& env,
+ CORBA::String_out reason);
private:
std::map<std::string, std::string> _libtype_map; // libname -> libtype (seq ou par)
struct proxy_object
{
- Engines::Component_var proxy_corba_ref;
- PortableServer::ObjectId * proxy_id;
- RegistryConnexion * proxy_regist;
+ Engines::EngineComponent_var proxy_corba_ref;
+ PortableServer::ObjectId * proxy_id;
+ RegistryConnexion * proxy_regist;
};
// Cette liste contient les references vers les différentes
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-
// SALOME_ParallelContainer : implementation of container and engine for ParallelKernel
// File : SALOME_ParallelContainer_i.cxx
// Author : André RIBES, EDF
-//
+
#include "SALOME_ParallelContainer_i.hxx"
#include "SALOME_Component_i.hxx"
#include "SALOME_FileRef_i.hxx"
/* For each seq component contained in this container
* tell it to self-destroy
*/
- std::map<std::string, Engines::Component_var>::iterator itm;
+ std::map<std::string, Engines::EngineComponent_var>::iterator itm;
for (itm = _listInstances_map.begin(); itm != _listInstances_map.end(); itm++)
{
try
* \return a loaded component
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Engines_Parallel_Container_i::create_component_instance(const char*genericRegisterName,
CORBA::Long studyId)
{
Engines::FieldsDict_var env = new Engines::FieldsDict;
char* reason;
- Engines::Component_ptr compo = create_component_instance_env(genericRegisterName,studyId,env, reason);
+ Engines::EngineComponent_ptr compo = create_component_instance_env(genericRegisterName,studyId,env, reason);
CORBA::string_free(reason);
return compo;
}
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Engines_Parallel_Container_i::create_component_instance_env(const char*genericRegisterName,
CORBA::Long studyId,
const Engines::FieldsDict& env,
if (studyId < 0)
{
INFOS("studyId must be > 0 for mono study instance, =0 for multiStudy");
- return Engines::Component::_nil() ;
+ return Engines::EngineComponent::_nil() ;
}
std::string aCompName = genericRegisterName;
{
std::cerr << "Component library is not loaded or imported ! lib was : " << aCompName << std::endl;
_numInstanceMutex.unlock();
- return Engines::Component::_nil();
+ return Engines::EngineComponent::_nil();
}
- Engines::Component_var iobject = Engines::Component::_nil();
+ Engines::EngineComponent_var iobject = Engines::EngineComponent::_nil();
if (type_of_lib == "cpp")
iobject = createCPPInstance(aCompName, handle, studyId);
else
*/
//=============================================================================
-Engines::Component_ptr Engines_Parallel_Container_i::find_component_instance( const char* registeredName,
+Engines::EngineComponent_ptr Engines_Parallel_Container_i::find_component_instance( const char* registeredName,
CORBA::Long studyId)
{
- Engines::Component_var anEngine = Engines::Component::_nil();
- std::map<std::string,Engines::Component_var>::iterator itm =_listInstances_map.begin();
+ Engines::EngineComponent_var anEngine = Engines::EngineComponent::_nil();
+ std::map<std::string,Engines::EngineComponent_var>::iterator itm =_listInstances_map.begin();
while (itm != _listInstances_map.end())
{
std::string instance = (*itm).first;
*/
//=============================================================================
-Engines::Component_ptr Engines_Parallel_Container_i::load_impl( const char* genericRegisterName,
+Engines::EngineComponent_ptr Engines_Parallel_Container_i::load_impl( const char* genericRegisterName,
const char* componentName )
{
- Engines::Component_var iobject = Engines::Component::_nil();
+ Engines::EngineComponent_var iobject = Engines::EngineComponent::_nil();
char* reason;
if (load_component_Library(genericRegisterName,reason))
iobject = find_or_create_instance(genericRegisterName);
*/
//=============================================================================
-void Engines_Parallel_Container_i::remove_impl(Engines::Component_ptr component_i)
+void Engines_Parallel_Container_i::remove_impl(Engines::EngineComponent_ptr component_i)
{
ASSERT(!CORBA::is_nil(component_i));
std::string instanceName = component_i->instanceName();
_numInstanceMutex.lock() ; // lock to be alone (stl container write)
// Test if the component is in this container
- std::map<std::string, Engines::Component_var>::iterator itm;
+ std::map<std::string, Engines::EngineComponent_var>::iterator itm;
itm = _listInstances_map.find(instanceName);
if (itm != _listInstances_map.end())
{
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Engines_Parallel_Container_i::find_or_create_instance(std::string genericRegisterName)
{
- Engines::Component_var iobject = Engines::Component::_nil();
+ Engines::EngineComponent_var iobject = Engines::EngineComponent::_nil();
try
{
std::string aGenRegisterName = genericRegisterName;
}
else
{
- iobject = Engines::Component::_narrow(obj) ;
+ iobject = Engines::EngineComponent::_narrow(obj) ;
Engines_Component_i *servant = dynamic_cast<Engines_Component_i*>(_poa->reference_to_servant(iobject));
ASSERT(servant)
int studyId = servant->getStudyId();
ASSERT (studyId >= 0);
if (studyId != 0) // monoStudy instance: NOK
{
- iobject = Engines::Component::_nil();
+ iobject = Engines::EngineComponent::_nil();
INFOS("load_impl & find_component_instance methods "
<< "NOT SUITABLE for mono study components");
}
* component_registerName = /Containers/cli76ce/FactoryServer/COMPONENT_inst_1
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Engines_Parallel_Container_i::createPythonInstance(std::string genericRegisterName, int studyId)
{
- Engines::Component_var iobject = Engines::Component::_nil();
+ Engines::EngineComponent_var iobject = Engines::EngineComponent::_nil();
int numInstance = _numInstance;
char aNumI[12];
if( iors!="" )
{
CORBA::Object_var obj = _orb->string_to_object(iors.c_str());
- iobject = Engines::Component::_narrow(obj);
+ iobject = Engines::EngineComponent::_narrow(obj);
_listInstances_map[instanceName] = iobject;
}
else
* component_registerName = /Containers/cli76ce/FactoryServer/COMPONENT_inst_1
*/
//=============================================================================
-Engines::Component_ptr
+Engines::EngineComponent_ptr
Engines_Parallel_Container_i::createCPPInstance(std::string genericRegisterName,
void *handle,
int studyId)
#ifndef WIN32
INFOS("dlerror() result is : " << dlerror());
#endif
- return Engines::Component::_nil() ;
+ return Engines::EngineComponent::_nil() ;
}
// --- create instance
- Engines::Component_var iobject = Engines::Component::_nil() ;
+ Engines::EngineComponent_var iobject = Engines::EngineComponent::_nil() ;
try
{
int numInstance = _numInstance;
// --- get reference & servant from id
CORBA::Object_var obj = _poa->id_to_reference(*id);
- iobject = Engines::Component::_narrow(obj);
+ iobject = Engines::EngineComponent::_narrow(obj);
Engines_Component_i *servant =
dynamic_cast<Engines_Component_i*>(_poa->reference_to_servant(iobject));
// Step 1 : Get proxy !
string component_registerName = _proxy_containerName + "/" + instanceName;
CORBA::Object_var temp = _NS->Resolve(component_registerName.c_str());
- Engines::Component_var obj_proxy = Engines::Component::_narrow(temp);
+ Engines::EngineComponent_var obj_proxy = Engines::EngineComponent::_narrow(temp);
if (CORBA::is_nil(obj_proxy))
{
INFOS("Proxy reference from NamingService is nil !");
}
}
#endif
-
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
//
-
// SALOME_ParallelContainer : implementation of container and engine for Parallel Kernel
// File : SALOME_ParallelContainer_i.hxx
// Author : André RIBES, EDF
-//
+
#ifndef _SALOME_PARALLEL_CONTAINER_I_HXX_
#define _SALOME_PARALLEL_CONTAINER_I_HXX_
virtual bool load_component_Library(const char* componentName, CORBA::String_out reason);
- virtual Engines::Component_ptr
+ virtual Engines::EngineComponent_ptr
create_component_instance( const char* componentName,
CORBA::Long studyId); // 0 for multiStudy
- virtual Engines::Component_ptr
+ virtual Engines::EngineComponent_ptr
create_component_instance_env( const char* componentName,
CORBA::Long studyId, // 0 for multiStudy
const Engines::FieldsDict& env,
CORBA::String_out reason);
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
find_component_instance( const char* registeredName,
CORBA::Long studyId); // 0 for multiStudy
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
load_impl(const char* nameToRegister,
const char* componentName);
void updateInstanceNumber();
- void remove_impl(Engines::Component_ptr component_i);
+ void remove_impl(Engines::EngineComponent_ptr component_i);
void finalize_removal();
virtual void ping();
bool Kill_impl() ;
// --- local C++ methods
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
find_or_create_instance(std::string genericRegisterName);
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
createCPPInstance(std::string genericRegisterName,
void *handle,
int studyId);
- Engines::Component_ptr
+ Engines::EngineComponent_ptr
createPythonInstance(std::string genericRegisterName,
int studyId);
bool _isServantAloneInProcess;
Engines::fileTransfer_var _fileTransfer;
- typedef std::map<std::string,Engines::Component_var> _listInstances_map_t;
+ typedef std::map<std::string,Engines::EngineComponent_var> _listInstances_map_t;
typedef std::map<std::string,Engines::fileRef_var> _fileRef_map_t;
typedef std::map<std::string,Engines::Salome_file_var> _Salome_file_map_t;
_listInstances_map_t _listInstances_map;
};
#endif
-
// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
//
// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
-//
#include "SALOMEDS_Driver_i.hxx"
#include "SALOMEDS_TMPFile_i.hxx"
{
SALOMEDS_Study_i * st_servant = SALOMEDS_Study_i::GetStudyServant(theStudy, _orb);//new SALOMEDS_Study_i (theStudy, _orb);
SALOMEDS::Study_var st = SALOMEDS::Study::_narrow(st_servant->_this());
- Engines::Component_ptr aComponent = Engines::Component::_narrow(_driver);
+ Engines::EngineComponent_ptr aComponent = Engines::EngineComponent::_narrow(_driver);
SALOMEDS::unlock();
CORBA::Boolean aValidScript, aPublished = isPublished;