File indexing completed on 2026-05-02 08:22:56
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _Interface_ShareFlags_HeaderFile
0018 #define _Interface_ShareFlags_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022 #include <Standard_Handle.hxx>
0023
0024 #include <Interface_BitMap.hxx>
0025 #include <TColStd_HSequenceOfTransient.hxx>
0026 #include <Standard_Integer.hxx>
0027 class Interface_InterfaceModel;
0028 class Interface_GeneralLib;
0029 class Interface_GTool;
0030 class Interface_Protocol;
0031 class Interface_Graph;
0032 class Standard_Transient;
0033 class Interface_EntityIterator;
0034
0035
0036
0037
0038 class Interface_ShareFlags
0039 {
0040 public:
0041 DEFINE_STANDARD_ALLOC
0042
0043
0044
0045
0046 Standard_EXPORT Interface_ShareFlags(const Handle(Interface_InterfaceModel)& amodel,
0047 const Interface_GeneralLib& lib);
0048
0049
0050 Standard_EXPORT Interface_ShareFlags(const Handle(Interface_InterfaceModel)& amodel,
0051 const Handle(Interface_GTool)& gtool);
0052
0053
0054 Standard_EXPORT Interface_ShareFlags(const Handle(Interface_InterfaceModel)& amodel,
0055 const Handle(Interface_Protocol)& protocol);
0056
0057
0058 Standard_EXPORT Interface_ShareFlags(const Handle(Interface_InterfaceModel)& amodel);
0059
0060
0061
0062 Standard_EXPORT Interface_ShareFlags(const Interface_Graph& agraph);
0063
0064
0065 Standard_EXPORT Handle(Interface_InterfaceModel) Model() const;
0066
0067
0068
0069 Standard_EXPORT Standard_Boolean IsShared(const Handle(Standard_Transient)& ent) const;
0070
0071
0072 Standard_EXPORT Interface_EntityIterator RootEntities() const;
0073
0074
0075 Standard_EXPORT Standard_Integer NbRoots() const;
0076
0077
0078
0079 Standard_EXPORT Handle(Standard_Transient) Root(const Standard_Integer num = 1) const;
0080
0081 protected:
0082 private:
0083
0084
0085
0086
0087
0088 Standard_EXPORT void Evaluate(const Interface_GeneralLib& lib,
0089 const Handle(Interface_GTool)& gtool);
0090
0091 Handle(Interface_InterfaceModel) themodel;
0092 Interface_BitMap theflags;
0093 Handle(TColStd_HSequenceOfTransient) theroots;
0094 };
0095
0096 #endif