|
|
|||
File indexing completed on 2026-09-15 09:15:57
0001 // Created on: 1996-09-25 0002 // Created by: Christian CAILLET 0003 // Copyright (c) 1996-1999 Matra Datavision 0004 // Copyright (c) 1999-2014 OPEN CASCADE SAS 0005 // 0006 // This file is part of Open CASCADE Technology software library. 0007 // 0008 // This library is free software; you can redistribute it and/or modify it under 0009 // the terms of the GNU Lesser General Public License version 2.1 as published 0010 // by the Free Software Foundation, with special exception defined in the file 0011 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT 0012 // distribution for complete text of the license and disclaimer of any warranty. 0013 // 0014 // Alternatively, this file may be used under the terms of Open CASCADE 0015 // commercial license or contractual agreement. 0016 0017 #ifndef _IFSelect_SelectSignedShared_HeaderFile 0018 #define _IFSelect_SelectSignedShared_HeaderFile 0019 0020 #include <Standard.hxx> 0021 0022 #include <TCollection_AsciiString.hxx> 0023 #include <IFSelect_SelectExplore.hxx> 0024 #include <Standard_Integer.hxx> 0025 class IFSelect_Signature; 0026 class Standard_Transient; 0027 class Interface_Graph; 0028 class Interface_EntityIterator; 0029 0030 //! In the graph, explore the Shareds of the input entities, 0031 //! until it encounters some which match a given Signature 0032 //! (for a limited level, filters the returned list) 0033 //! By default, fitted for any level 0034 class IFSelect_SelectSignedShared : public IFSelect_SelectExplore 0035 { 0036 0037 public: 0038 //! Creates a SelectSignedShared, defaulted for any level 0039 //! with a given Signature and text to match 0040 Standard_EXPORT IFSelect_SelectSignedShared(const occ::handle<IFSelect_Signature>& matcher, 0041 const char* const signtext, 0042 const bool exact = true, 0043 const int level = 0); 0044 0045 //! Returns the used Signature, then it is possible to access it, 0046 //! modify it as required 0047 Standard_EXPORT occ::handle<IFSelect_Signature> Signature() const; 0048 0049 //! Returns Text used to Sort Entity on its Signature 0050 Standard_EXPORT const TCollection_AsciiString& SignatureText() const; 0051 0052 //! Returns True if match must be exact 0053 Standard_EXPORT bool IsExact() const; 0054 0055 //! Explores an entity : its Shared entities 0056 //! <ent> to take if it matches the Signature 0057 //! At level max, filters the result. Else gives all Shareds 0058 Standard_EXPORT bool Explore(const int level, 0059 const occ::handle<Standard_Transient>& ent, 0060 const Interface_Graph& G, 0061 Interface_EntityIterator& explored) const override; 0062 0063 //! Returns a text defining the criterium. 0064 //! (it refers to the text and exact flag to be matched, and is 0065 //! qualified by the Name provided by the Signature) 0066 Standard_EXPORT TCollection_AsciiString ExploreLabel() const override; 0067 0068 DEFINE_STANDARD_RTTIEXT(IFSelect_SelectSignedShared, IFSelect_SelectExplore) 0069 0070 private: 0071 occ::handle<IFSelect_Signature> thematcher; 0072 TCollection_AsciiString thesigntext; 0073 bool theexact; 0074 }; 0075 0076 #endif // _IFSelect_SelectSignedShared_HeaderFile
| [ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
|
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
|