X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESH_I%2FSMESH_Hypothesis_i.hxx;h=184e737173eede9b6f3b1d972cee3e242aeb75ab;hb=499f29d24922cec66e41b41a0039a954993bc6df;hp=f713bfd2dfdb3aed84d9ba012b1aa1fd88b3e5ce;hpb=560f8b2d0c2a7fdb4047f981cfac56ed3629bc1a;p=modules%2Fsmesh.git diff --git a/src/SMESH_I/SMESH_Hypothesis_i.hxx b/src/SMESH_I/SMESH_Hypothesis_i.hxx index f713bfd2d..184e73717 100644 --- a/src/SMESH_I/SMESH_Hypothesis_i.hxx +++ b/src/SMESH_I/SMESH_Hypothesis_i.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2022 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 @@ -40,6 +40,7 @@ #include #include +#include class TCollection_AsciiString; @@ -68,7 +69,7 @@ public: void SetLibName( const char* theLibName ); // Get unique id of hypothesis - virtual CORBA::Long GetId(); + virtual CORBA::Short GetId(); // Return true if a hypothesis has parameters virtual CORBA::Boolean HasParameters(); @@ -97,7 +98,18 @@ public: // Persistence virtual char* SaveTo(); virtual void LoadFrom( const char* theStream ); - virtual void UpdateAsMeshesRestored(); // for hyps needing full data restored + virtual void UpdateAsMeshesRestored(); // for hyps needing full study data restored + + + // Methods for copying mesh definition to other geometry + + // Return geometry this hypothesis depends on. Return false if there is no geometry parameter + virtual bool getObjectsDependOn( std::vector< std::string > & entryArray, + std::vector< int > & subIDArray ) const = 0; + + // Set new geometry instead of that returned by getObjectsDependOn() + virtual bool setObjectsDependOn( std::vector< std::string > & entryArray, + std::vector< int > & subIDArray ) = 0; protected: @@ -119,10 +131,10 @@ public: // method used to convert variable parameters stored in an old study // into myMethod2VarParams. It should return a method name for an index of // variable parameters. Index is countered from zero - virtual std::string getMethodOfParameter(const int paramIndex, int nbVars) const { return ""; } + virtual std::string getMethodOfParameter(const int /*paramIndex*/, int /*nbVars*/) const { return ""; } // method intended to remove explicit treatment of Netgen hypotheses from SMESH_NoteBook - virtual int getParamIndex(const TCollection_AsciiString& method, int nbVars) const { return -1; } + virtual int getParamIndex(const TCollection_AsciiString& /*method*/, int /*nbVars*/) const { return -1; } }; // ====================================================== @@ -136,9 +148,17 @@ public: ::SMESH_Gen* theGenImpl) = 0; virtual ~GenericHypothesisCreator_i() {} - // return the name of IDL module + // Return the name of IDL module virtual std::string GetModuleName() = 0; - virtual bool IsApplicable( const TopoDS_Shape &S, bool toCheckAll ) {return true;} + + // Check if an algorithm is applicable to a shape + virtual bool IsApplicable( const TopoDS_Shape &S, bool /*toCheckAll*/, int algoDim ) + { + return IsShapeOfDim( S, algoDim ); + } + + // Check if a shape includes sub-shapes of a given dimension + static bool IsShapeOfDim( const TopoDS_Shape &S, int dim ); }; //=============================================================================