X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModuleCatalog%2FSALOME_ModuleCatalog_Acomponent_impl.hxx;h=c7b580a177ca6a405ea4101cb8fd4580f94175b4;hb=954e65a018fc5f2c0d2ffb4f4814e199ecdda5a5;hp=0a7c715d5d4b3c49c890e7723c11de383b64d163;hpb=e2926da4bf6c85b85058a717ecd523a03ccea90d;p=modules%2Fkernel.git diff --git a/src/ModuleCatalog/SALOME_ModuleCatalog_Acomponent_impl.hxx b/src/ModuleCatalog/SALOME_ModuleCatalog_Acomponent_impl.hxx index 0a7c715d5..c7b580a17 100644 --- a/src/ModuleCatalog/SALOME_ModuleCatalog_Acomponent_impl.hxx +++ b/src/ModuleCatalog/SALOME_ModuleCatalog_Acomponent_impl.hxx @@ -17,7 +17,7 @@ // License along with this library; if not, write to the Free Software // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // -// See http://www.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // // // @@ -29,24 +29,18 @@ #ifndef ACOMPONENT_IMPL_H #define ACOMPONENT_IMPL_H -#include "utilities.h" -#include "PathPrefix.hxx" +#include + +#include "SALOME_ModuleCatalog_Parser.hxx" #include + #include CORBA_SERVER_HEADER(SALOME_ModuleCatalog) -class SALOME_ModuleCatalog_AcomponentImpl: public POA_SALOME_ModuleCatalog::Acomponent, - public PortableServer::RefCountServantBase +class MODULECATALOG_EXPORT SALOME_ModuleCatalog_AcomponentImpl: public POA_SALOME_ModuleCatalog::Acomponent { public: //! standard constructor - SALOME_ModuleCatalog_AcomponentImpl(const char* name, - const char* username, - const char* constraint, - SALOME_ModuleCatalog::ComponentType componenttype, - CORBA::Boolean componentmultistudy, - const char* icone, - SALOME_ModuleCatalog::ListOfDefInterface list_interfaces, - ListOfPathPrefix pathes); + SALOME_ModuleCatalog_AcomponentImpl(SALOME_ModuleCatalog::Component &C); //! standard destructor virtual ~SALOME_ModuleCatalog_AcomponentImpl(); @@ -137,27 +131,53 @@ public: //! method to obtain the component icone (for IAPP) /*! - \return the component icone + \return the component icon */ virtual char* component_icone(); + //! method to define if a component is implemented in C++ or Python + /*! + \return true if it's a C++ component + */ + virtual CORBA::Boolean implementation_type(); + private : - char* _component_name ; - char* _component_user_name ; - char* _constraint; - char* _icone; - SALOME_ModuleCatalog::ComponentType _componenttype; - CORBA::Boolean _componentmultistudy; - SALOME_ModuleCatalog::ListOfDefInterface _list_interfaces; - ListOfPathPrefix _pathes ; - + + SALOME_ModuleCatalog::Component _Component; + + //! method to duplicate an interface + /*! + \param service SALOME_ModuleCatalog::DefinitionInterface arguments + \return the interface + */ + void duplicate(SALOME_ModuleCatalog::DefinitionInterface &I_out, + const SALOME_ModuleCatalog::DefinitionInterface &I_in); //! method to duplicate a service /*! \param service SALOME_ModuleCatalog::Service arguments \return the service */ - virtual SALOME_ModuleCatalog::Service_var _duplicate_service(SALOME_ModuleCatalog::Service service); + void duplicate(SALOME_ModuleCatalog::Service & S_out, + const SALOME_ModuleCatalog::Service &S_in); + + //! method to duplicate a parameter + /*! + \param parameter SALOME_ModuleCatalog::ServicesParameter arguments + \return the parameter + */ + void duplicate(SALOME_ModuleCatalog::ServicesParameter & P_out, + const SALOME_ModuleCatalog::ServicesParameter & P_in); + + //! method to duplicate a parameter + /*! + \param parameter SALOME_ModuleCatalog::ServicesDataStreamParameter arguments + \return the parameter + */ + void duplicate(SALOME_ModuleCatalog::ServicesDataStreamParameter & P_out, + const SALOME_ModuleCatalog::ServicesDataStreamParameter &P_in); + }; + #endif // ACOMPONENT_IMPL_H