File indexing completed on 2026-09-27 09:19:16
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016
0017 #ifndef _STEPSelections_Counter_HeaderFile
0018 #define _STEPSelections_Counter_HeaderFile
0019
0020 #include <Standard.hxx>
0021 #include <Standard_DefineAlloc.hxx>
0022 #include <Standard_Handle.hxx>
0023
0024 #include <Standard_Integer.hxx>
0025 #include <Standard_Transient.hxx>
0026 #include <NCollection_Map.hxx>
0027 class Interface_Graph;
0028 class Standard_Transient;
0029 class StepShape_ConnectedFaceSet;
0030 class StepGeom_CompositeCurve;
0031
0032 class STEPSelections_Counter
0033 {
0034 public:
0035 DEFINE_STANDARD_ALLOC
0036
0037 Standard_EXPORT STEPSelections_Counter();
0038
0039 Standard_EXPORT void Count(const Interface_Graph& graph,
0040 const occ::handle<Standard_Transient>& start);
0041
0042 Standard_EXPORT void Clear();
0043
0044 int NbInstancesOfFaces() const;
0045
0046 int POP() const;
0047
0048 int POP2() const;
0049
0050 int NbInstancesOfShells() const;
0051
0052 int NbInstancesOfSolids() const;
0053
0054 int NbInstancesOfEdges() const;
0055
0056 int NbInstancesOfWires() const;
0057
0058 int NbSourceFaces() const;
0059
0060 int NbSourceShells() const;
0061
0062 int NbSourceSolids() const;
0063
0064 int NbSourceEdges() const;
0065
0066 int NbSourceWires() const;
0067
0068 private:
0069 Standard_EXPORT void AddShell(const occ::handle<StepShape_ConnectedFaceSet>& cfs);
0070
0071 Standard_EXPORT void AddCompositeCurve(const occ::handle<StepGeom_CompositeCurve>& ccurve);
0072
0073 int myNbFaces;
0074 int myNbShells;
0075 int myNbSolids;
0076 int myNbEdges;
0077 int myNbWires;
0078 NCollection_Map<occ::handle<Standard_Transient>> myMapOfFaces;
0079 NCollection_Map<occ::handle<Standard_Transient>> myMapOfShells;
0080 NCollection_Map<occ::handle<Standard_Transient>> myMapOfSolids;
0081 NCollection_Map<occ::handle<Standard_Transient>> myMapOfEdges;
0082 NCollection_Map<occ::handle<Standard_Transient>> myMapOfWires;
0083 };
0084
0085 #include <STEPSelections_Counter.lxx>
0086
0087 #endif