X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESH_I%2FSMESH_Filter_i.hxx;h=b6036a13da01a54316c1fbae5cb98d76ed901c5d;hb=f7a3186af6db39a417d1afdb1dfe83dfef58f792;hp=2186b42ea4629d61ed7c543332d1fc2b5d241ea9;hpb=7aebb99e42c6b0c3c056a5eecb0f29033db2231a;p=modules%2Fsmesh.git diff --git a/src/SMESH_I/SMESH_Filter_i.hxx b/src/SMESH_I/SMESH_Filter_i.hxx index 2186b42ea..b6036a13d 100644 --- a/src/SMESH_I/SMESH_Filter_i.hxx +++ b/src/SMESH_I/SMESH_Filter_i.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2013 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 @@ -18,6 +18,7 @@ // Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA // // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// // SMESH SMESH_I : idl implementation based on 'SMESH' unit's calsses // File : SMESH_Filter_i.hxx @@ -141,10 +142,10 @@ namespace SMESH public virtual SALOME::GenericObj_i { public: - void SetMesh( SMESH_Mesh_ptr theMesh ); - Controls::FunctorPtr GetFunctor(){ return myFunctorPtr;} + virtual void SetMesh( SMESH_Mesh_ptr theMesh ); + Controls::FunctorPtr GetFunctor() { return myFunctorPtr; } ElementType GetElementType(); - + protected: Functor_i(); ~Functor_i(); @@ -161,7 +162,11 @@ namespace SMESH { public: CORBA::Double GetValue( CORBA::Long theElementId ); - SMESH::Histogram* GetHistogram(CORBA::Short nbIntervals, CORBA::Boolean isLogarithmic); + SMESH::Histogram* GetHistogram(CORBA::Short nbIntervals, + CORBA::Boolean isLogarithmic); + SMESH::Histogram* GetLocalHistogram(CORBA::Short nbIntervals, + CORBA::Boolean isLogarithmic, + SMESH::SMESH_IDSource_ptr object); void SetPrecision( CORBA::Long thePrecision ); CORBA::Long GetPrecision(); Controls::NumericalFunctorPtr GetNumericalFunctor(); @@ -382,6 +387,7 @@ namespace SMESH { public: CORBA::Boolean IsSatisfy( CORBA::Long theElementId ); + CORBA::Long NbSatisfying( SMESH::SMESH_IDSource_ptr obj ); Controls::PredicatePtr GetPredicate(); protected: @@ -801,6 +807,34 @@ namespace SMESH private: Controls::CoplanarFacesPtr myCoplanarFacesPtr; }; + + /* + * Class : ConnectedElements_i + * Description : Returns true if an element is connected via other elements to the element + * located at a given point. + */ + class SMESH_I_EXPORT ConnectedElements_i: public virtual POA_SMESH::ConnectedElements, + public virtual Predicate_i + { + public: + ConnectedElements_i(); + FunctorType GetFunctorType(); + + 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 SetThreshold ( const char* threshold, + SMESH::ConnectedElements::ThresholdType type ) + throw (SALOME::SALOME_Exception); + char* GetThreshold ( SMESH::ConnectedElements::ThresholdType& type ); + + private: + Controls::ConnectedElementsPtr myConnectedElementsPtr; + std::string myVertexID; + }; /* Class : Comparator_i @@ -1000,6 +1034,7 @@ namespace SMESH // ========================= virtual SMESH::long_array* GetIDs(); virtual SMESH::long_array* GetMeshInfo(); + virtual SMESH::long_array* GetNbElementsByType(); virtual SMESH::array_of_ElementType* GetTypes(); virtual SMESH::SMESH_Mesh_ptr GetMesh(); virtual bool IsMeshInfoCorrect() { return true; } @@ -1115,6 +1150,7 @@ namespace SMESH ElemGeomType_ptr CreateElemGeomType(); ElemEntityType_ptr CreateElemEntityType(); CoplanarFaces_ptr CreateCoplanarFaces(); + ConnectedElements_ptr CreateConnectedElements(); LessThan_ptr CreateLessThan(); MoreThan_ptr CreateMoreThan();