File indexing completed on 2026-08-26 09:15:37
0001
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015
0016 #ifndef _BRepMeshData_Edge_HeaderFile
0017 #define _BRepMeshData_Edge_HeaderFile
0018
0019 #include <IMeshData_Edge.hxx>
0020 #include <NCollection_IncAllocator.hxx>
0021 #include <IMeshData_Types.hxx>
0022
0023
0024 class BRepMeshData_Edge : public IMeshData_Edge
0025 {
0026 public:
0027 DEFINE_INC_ALLOC
0028
0029
0030 Standard_EXPORT BRepMeshData_Edge(const TopoDS_Edge& theEdge,
0031 const Handle(NCollection_IncAllocator)& theAllocator);
0032
0033
0034 Standard_EXPORT virtual ~BRepMeshData_Edge();
0035
0036
0037 Standard_EXPORT virtual Standard_Integer PCurvesNb() const Standard_OVERRIDE;
0038
0039
0040 Standard_EXPORT virtual const IMeshData::IPCurveHandle& AddPCurve(
0041 const IMeshData::IFacePtr& theDFace,
0042 const TopAbs_Orientation theOrientation) Standard_OVERRIDE;
0043
0044
0045 Standard_EXPORT virtual const IMeshData::IPCurveHandle& GetPCurve(
0046 const IMeshData::IFacePtr& theDFace,
0047 const TopAbs_Orientation theOrientation) const Standard_OVERRIDE;
0048
0049
0050 Standard_EXPORT virtual const IMeshData::IPCurveHandle& GetPCurve(
0051 const Standard_Integer theIndex) const Standard_OVERRIDE;
0052
0053 DEFINE_STANDARD_RTTIEXT(BRepMeshData_Edge, IMeshData_Edge)
0054
0055 private:
0056 Handle(NCollection_IncAllocator) myAllocator;
0057 IMeshData::VectorOfIPCurveHandles myPCurves;
0058 IMeshData::DMapOfIFacePtrsListOfInteger myPCurvesMap;
0059 };
0060
0061 #endif