X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FGEOM_I%2FGEOM_Gen_i.hh;h=0525170e14739dba4703d9319a3da6088a66ac6f;hb=c1d63ef1f803d255b61ee99fb618bf471add07f4;hp=16e68220f479d883efc2ade314fd48028ea40001;hpb=df260abc619ded3d424fed72772226ca63e3c90b;p=modules%2Fgeom.git diff --git a/src/GEOM_I/GEOM_Gen_i.hh b/src/GEOM_I/GEOM_Gen_i.hh index 16e68220f..0525170e1 100644 --- a/src/GEOM_I/GEOM_Gen_i.hh +++ b/src/GEOM_I/GEOM_Gen_i.hh @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2020 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2023 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -51,6 +51,8 @@ #include "GEOM_IMeasureOperations_i.hh" #include "GEOM_IGroupOperations_i.hh" #include "GEOM_IFieldOperations_i.hh" +#include "GEOM_ITestOperations_i.hh" +#include "GEOM_ICanonicalRecognition_i.hh" #include "GEOMUtils.hxx" #include @@ -81,7 +83,7 @@ class GEOM_I_EXPORT GEOM_GenericOperationsCreator //===================================================================== // GEOM_Gen_i : class definition //===================================================================== -class GEOM_I_EXPORT GEOM_Gen_i: virtual public POA_GEOM::GEOM_Gen, virtual public Engines_Component_i +class GEOM_I_EXPORT GEOM_Gen_i : public POA_GEOM::GEOM_Gen, public Engines_Component_i { public: @@ -95,22 +97,17 @@ class GEOM_I_EXPORT GEOM_Gen_i: virtual public POA_GEOM::GEOM_Gen, virtual publi PortableServer::POA_ptr poa, PortableServer::ObjectId * contId, const char *instanceName, - const char *interfaceName); + const char *interfaceName, + bool withRegistry = true); // destructor, doing nothing (for now) virtual ~GEOM_Gen_i(); - // generic method to be put in a super class - void register_name(char * name); - // Get ORB object CORBA::ORB_ptr GetORB() { return CORBA::ORB::_duplicate(_orb); } - // Get Naming Service object - SALOME_NamingService* GetNS() { return name_service; } - // Get Study - SALOMEDS::Study_var getStudyServant(); + virtual SALOMEDS::Study_var getStudyServant() = 0; //-----------------------------------------------------------------------// // Inherited methods from SALOMEDS::Driver // @@ -150,7 +147,7 @@ class GEOM_I_EXPORT GEOM_Gen_i: virtual public POA_GEOM::GEOM_Gen, virtual publi bool CanPublishInStudy(CORBA::Object_ptr theIOR); SALOMEDS::SObject_ptr PublishInStudy(SALOMEDS::SObject_ptr theSObject, CORBA::Object_ptr theObject, - const char* theName) throw (SALOME::SALOME_Exception) ; + const char* theName) ; GEOM::ListOfGO* PublishNamedShapesInStudy(CORBA::Object_ptr theObject); @@ -213,60 +210,61 @@ class GEOM_I_EXPORT GEOM_Gen_i: virtual public POA_GEOM::GEOM_Gen, virtual publi //-----------------------------------------------------------------------// //Returns a pointer to BasicOperations interface - virtual GEOM::GEOM_IBasicOperations_ptr GetIBasicOperations() - throw (SALOME::SALOME_Exception); + virtual GEOM::GEOM_IBasicOperations_ptr GetIBasicOperations(); //Returns a pointer to TransformOperations interface - virtual GEOM::GEOM_ITransformOperations_ptr GetITransformOperations() - throw (SALOME::SALOME_Exception); + virtual GEOM::GEOM_ITransformOperations_ptr GetITransformOperations(); //Returns a pointer to 3DPrimOperations interface - virtual GEOM::GEOM_I3DPrimOperations_ptr GetI3DPrimOperations() - throw (SALOME::SALOME_Exception); + virtual GEOM::GEOM_I3DPrimOperations_ptr GetI3DPrimOperations(); //Returns a pointer to ShapesOperations interface - virtual GEOM::GEOM_IShapesOperations_ptr GetIShapesOperations() - throw (SALOME::SALOME_Exception); + virtual GEOM::GEOM_IShapesOperations_ptr GetIShapesOperations(); //Returns a pointer to BlocksOperations interface - virtual GEOM::GEOM_IBlocksOperations_ptr GetIBlocksOperations() - throw (SALOME::SALOME_Exception); + virtual GEOM::GEOM_IBlocksOperations_ptr GetIBlocksOperations(); //Returns a pointer to BooleanOperations interface virtual GEOM::GEOM_IBooleanOperations_ptr GetIBooleanOperations() - throw (SALOME::SALOME_Exception); + ; //Returns a pointer to CurvesOperations interface virtual GEOM::GEOM_ICurvesOperations_ptr GetICurvesOperations() - throw (SALOME::SALOME_Exception); + ; //Returns a pointer to LocalOperations interface virtual GEOM::GEOM_ILocalOperations_ptr GetILocalOperations() - throw (SALOME::SALOME_Exception); + ; //Returns a pointer to HealingOperations interface virtual GEOM::GEOM_IHealingOperations_ptr GetIHealingOperations() - throw (SALOME::SALOME_Exception); + ; //Returns a pointer to InsertOperations interface virtual GEOM::GEOM_IInsertOperations_ptr GetIInsertOperations() - throw (SALOME::SALOME_Exception); + ; //Returns a pointer to MeasureOperations interface virtual GEOM::GEOM_IMeasureOperations_ptr GetIMeasureOperations() - throw (SALOME::SALOME_Exception); + ; //Returns a pointer to GroupOperations interface virtual GEOM::GEOM_IGroupOperations_ptr GetIGroupOperations() - throw (SALOME::SALOME_Exception); + ; //Returns a pointer to FiedlOperations interface virtual GEOM::GEOM_IFieldOperations_ptr GetIFieldOperations() - throw (SALOME::SALOME_Exception); + ; + + //Returns a pointer to TestOperations interface + virtual GEOM::GEOM_ITestOperations_ptr GetITestOperations() + ; + + virtual GEOM::GEOM_ICanonicalRecognition_ptr GetICanonicalRecognition(); //Returns a pointer to corresponding plugin operations interface virtual GEOM::GEOM_IOperations_ptr GetPluginOperations (const char* theLibName) - throw (SALOME::SALOME_Exception); + ; //Adds a new sub-shape virtual GEOM::GEOM_Object_ptr AddSubShape (GEOM::GEOM_Object_ptr theMainShape, @@ -325,6 +323,8 @@ class GEOM_I_EXPORT GEOM_Gen_i: virtual public POA_GEOM::GEOM_Gen, virtual publi virtual GEOM::GEOM_BaseObject_ptr GetObject(const char* theEntry); private: + SALOMEDS::SComponent_var findOrCreateComponent(); + GEOM::ListOfGO* RestoreSubShapes (GEOM::GEOM_Object_ptr theObject, SALOMEDS::SObject_ptr theSObject, const GEOM::ListOfGO& theArgs, @@ -391,7 +391,6 @@ class GEOM_I_EXPORT GEOM_Gen_i: virtual public POA_GEOM::GEOM_Gen, virtual publi private: ::GEOMImpl_Gen* _impl; - SALOME_NamingService * name_service; char * _name; // plugin operations managing