1 #ifndef __SALOMECONTAINER_HXX__
2 #define __SALOMECONTAINER_HXX__
4 #include "Container.hxx"
8 #include <SALOMEconfig.h>
9 #include CORBA_CLIENT_HEADER(SALOME_Component)
10 #include CORBA_CLIENT_HEADER(SALOME_ContainerManager)
16 class SalomeComponent;
18 class SalomeContainer : public Container
20 friend class SalomeComponent;
23 SalomeContainer(const SalomeContainer& other);
24 //! For thread safety for concurrent load operation on same Container.
26 //! For thread safety for concurrent load operation on same Container.
28 bool isAlreadyStarted() const;
29 void start() throw (Exception);
30 Container *clone() const;
31 std::string getPlacementId() const;
32 void checkCapabilityToDealWith(const ComponentInstance *inst) const throw (Exception);
33 virtual void setProperty(const std::string& name, const std::string& value);
34 bool isAPaCOContainer() const;
35 virtual void addComponentName(std::string name);
37 virtual ~SalomeContainer();
39 //! thread safety in Salome ???
40 YACS::BASES::Mutex _mutex;
41 Engines::Container_var _trueCont;
42 std::vector<std::string> _componentNames;
44 Engines::MachineParameters _params;