X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESH_I%2FSMESH_Filter_i.hxx;h=f218b98a66d67a71ee85c825bbb3ffa49145a876;hp=a629f6791deef1fba5f9eadbe3d6885475ab1054;hb=d9f4b53e489dd5857db264ede6acded7b076c9f1;hpb=24fe0efaab9725fa5e51ec24bb653ec526df5445 diff --git a/src/SMESH_I/SMESH_Filter_i.hxx b/src/SMESH_I/SMESH_Filter_i.hxx index a629f6791..f218b98a6 100644 --- a/src/SMESH_I/SMESH_Filter_i.hxx +++ b/src/SMESH_I/SMESH_Filter_i.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2015 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 @@ -20,7 +20,7 @@ // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com // -// SMESH SMESH_I : idl implementation based on 'SMESH' unit's calsses +// SMESH SMESH_I : idl implementation based on 'SMESH' unit's classes // File : SMESH_Filter_i.hxx // Author : Alexey Petrov, OCC // Module : SMESH @@ -55,7 +55,7 @@ namespace SMESH */ struct NotifyerAndWaiter { - virtual void OnBaseObjModified(NotifyerAndWaiter* obj, bool removed) {}; + virtual void OnBaseObjModified(NotifyerAndWaiter* /*obj*/, bool /*removed*/) {}; // specific reaction on modification of a base object void Modified( bool removed=false, NotifyerAndWaiter* who = 0); @@ -73,7 +73,7 @@ namespace SMESH /* Class : Functor_i - Description : An abstact class for all functors + Description : An abstract class for all functors */ class SMESH_I_EXPORT Functor_i: public virtual POA_SMESH::Functor, public virtual SALOME::GenericObj_i @@ -98,7 +98,8 @@ namespace SMESH public virtual Functor_i { public: - CORBA::Double GetValue( CORBA::Long theElementId ); + CORBA::Double GetValue( SMESH::smIdType theElementId ); + CORBA::Boolean IsApplicable( SMESH::smIdType theElementId ); SMESH::Histogram* GetHistogram(CORBA::Short nbIntervals, CORBA::Boolean isLogarithmic); SMESH::Histogram* GetLocalHistogram(CORBA::Short nbIntervals, @@ -266,11 +267,39 @@ namespace SMESH Length2D_i(); SMESH::Length2D::Values* GetValues(); FunctorType GetFunctorType(); - + protected: Controls::Length2DPtr myLength2DPtr; }; - + + /* + Class : Length3D_i + Description : Functor for calculating length of edge + */ + class SMESH_I_EXPORT Length3D_i: public virtual POA_SMESH::Length3D, + public virtual NumericalFunctor_i + { + public: + Length3D_i(); + //SMESH::Length2D::Values* GetValues(); + FunctorType GetFunctorType(); + + protected: + Controls::Length3DPtr myLength3DPtr; + }; + + /* + Class : Deflection2D_i + Description : Functor for calculating distance between a face and geometry + */ + class SMESH_I_EXPORT Deflection2D_i: public virtual POA_SMESH::Deflection2D, + public virtual NumericalFunctor_i + { + public: + Deflection2D_i(); + FunctorType GetFunctorType(); + }; + /* Class : MultiConnection_i Description : Functor for calculating number of faces conneted to the edge @@ -311,6 +340,18 @@ namespace SMESH FunctorType GetFunctorType(); }; + /* + Class : NodeConnectivityNumber_i + Description : Functor returning diameter of a ball element + */ + class SMESH_I_EXPORT NodeConnectivityNumber_i: public virtual POA_SMESH::NodeConnectivityNumber, + public virtual NumericalFunctor_i + { + public: + NodeConnectivityNumber_i(); + FunctorType GetFunctorType(); + }; + /* PREDICATES @@ -663,7 +704,7 @@ namespace SMESH { public: RangeOfIds_i(); - void SetRange( const SMESH::long_array& theIds ); + void SetRange( const SMESH::smIdType_array& theIds ); CORBA::Boolean SetRangeStr( const char* theRange ); char* GetRangeStr(); @@ -692,7 +733,7 @@ namespace SMESH /* Class : GroupColor_i - Description : Functor for check color of group to whic mesh element belongs to + Description : Functor for check color of group to which mesh element belongs to */ class SMESH_I_EXPORT GroupColor_i: public virtual POA_SMESH::GroupColor, public virtual Predicate_i @@ -781,13 +822,10 @@ namespace SMESH void SetElementType( ElementType theType ); void SetPoint( CORBA::Double x, CORBA::Double y, CORBA::Double z ); - void SetVertex( GEOM::GEOM_Object_ptr vertex ) - throw (SALOME::SALOME_Exception); - void SetNode ( CORBA::Long nodeID ) - throw (SALOME::SALOME_Exception); + void SetVertex( GEOM::GEOM_Object_ptr vertex ); + void SetNode ( SMESH::smIdType nodeID ); void SetThreshold ( const char* threshold, - SMESH::ConnectedElements::ThresholdType type ) - throw (SALOME::SALOME_Exception); + SMESH::ConnectedElements::ThresholdType type ); char* GetThreshold ( SMESH::ConnectedElements::ThresholdType& type ); private: @@ -968,11 +1006,15 @@ namespace SMESH Controls::Filter::TIdSequence& ); virtual - long_array* + smIdType_array* GetElementsId( SMESH_Mesh_ptr ); virtual - ElementType + smIdType_array* + GetElementsIdFromParts( const ListOfIDSources& theParts ); + + virtual + ElementType GetElementType(); virtual @@ -998,9 +1040,9 @@ namespace SMESH // ========================= // SMESH_IDSource interface // ========================= - virtual SMESH::long_array* GetIDs(); - virtual SMESH::long_array* GetMeshInfo(); - virtual SMESH::long_array* GetNbElementsByType(); + virtual SMESH::smIdType_array* GetIDs(); + virtual SMESH::smIdType_array* GetMeshInfo(); + virtual SMESH::smIdType_array* GetNbElementsByType(); virtual SMESH::array_of_ElementType* GetTypes(); virtual SMESH::SMESH_Mesh_ptr GetMesh(); virtual bool IsMeshInfoCorrect() { return true; } @@ -1075,6 +1117,9 @@ namespace SMESH MaxElementLength3D_ptr CreateMaxElementLength3D(); Length_ptr CreateLength(); Length2D_ptr CreateLength2D(); + Length3D_ptr CreateLength3D(); + Deflection2D_ptr CreateDeflection2D(); + NodeConnectivityNumber_ptr CreateNodeConnectivityNumber(); MultiConnection_ptr CreateMultiConnection(); MultiConnection2D_ptr CreateMultiConnection2D(); BallDiameter_ptr CreateBallDiameter();