OpenLexocad  28.0
Types.h
Go to the documentation of this file.
1 #pragma once
2 #include <memory>
3 
4 namespace Base
5 {
6 class BaseClass;
7 }
8 namespace Geom
9 {
10 class IndexedMesh;
11 class BrepData;
12 }
13 
14 namespace Topo
15 {
16 class TopologicalItem;
17 class Shape;
18 class LazyFacetedBrepShape;
19 class MeshShape;
20 class Compound;
21 class ShapeSet;
22 class Solid;
23 class Shell;
24 class Face;
25 class Wire;
26 class Edge;
27 class Coedge;
28 class Vertex;
29 class Geometry;
30 class ShapeAttributes;
31 
32 class FacetedShape;
33 class IndexedDrawable;
34 struct GeometricInformation;
35 enum class OrientationType
36 {
37  UNDEFINED,
38  FORWARD,
39  REVERSED,
40  INTERNAL,
41  EXTERNAL
42 };
43 } // namespace Topo
44 
45 typedef std::shared_ptr<Base::BaseClass> pBaseClass;
46 typedef std::shared_ptr<Topo::TopologicalItem> pTopologicalItem;
47 typedef std::shared_ptr<Topo::Shape> pShape;
48 typedef std::shared_ptr<Topo::LazyFacetedBrepShape> pLazyFacetedBrepShape;
49 typedef std::shared_ptr<Topo::MeshShape> pMesh;
50 typedef std::shared_ptr<Topo::Compound> pCompound;
51 typedef std::shared_ptr<Topo::Solid> pSolid;
52 typedef std::shared_ptr<Topo::Shell> pShell;
53 typedef std::shared_ptr<Topo::Face> pFace;
54 typedef std::shared_ptr<Topo::Wire> pWire;
55 typedef std::shared_ptr<Topo::Edge> pEdge;
56 typedef std::shared_ptr<Topo::Coedge> pCoedge;
57 typedef std::shared_ptr<Topo::Vertex> pVertex;
58 typedef std::shared_ptr<Topo::IndexedDrawable> pIndexedDrawable;
59 typedef std::shared_ptr<Geom::IndexedMesh> pIndexedMesh;
60 typedef std::shared_ptr<Geom::BrepData> pBrepData;
61 
62 typedef std::shared_ptr<Base::BaseClass const> pConstBaseClass;
63 typedef std::shared_ptr<Topo::TopologicalItem const> pConstTopologicalItem;
64 typedef std::shared_ptr<Topo::Shape const> pConstShape;
65 typedef std::shared_ptr<Topo::LazyFacetedBrepShape const> pConstLazyFacetedBrepShape;
66 typedef std::shared_ptr<Topo::MeshShape const> pConstMesh;
67 typedef std::shared_ptr<Topo::Compound const> pConstCompound;
68 typedef std::shared_ptr<Topo::Solid const> pConstSolid;
69 typedef std::shared_ptr<Topo::Shell const> pConstShell;
70 typedef std::shared_ptr<Topo::Face const> pConstFace;
71 typedef std::shared_ptr<Topo::Wire const> pConstWire;
72 typedef std::shared_ptr<Topo::Edge const> pConstEdge;
73 typedef std::shared_ptr<Topo::Coedge const> pConstCoedge;
74 typedef std::shared_ptr<Topo::Vertex const> pConstVertex;
75 typedef std::shared_ptr<const Geom::BrepData> pConstBrepData;
76 
77 typedef std::unique_ptr<Base::BaseClass> uniqueBaseClass;
78 typedef std::unique_ptr<Topo::TopologicalItem> uniqueTopologicalItem;
79 typedef std::unique_ptr<Topo::Shape> uniqueShape;
80 typedef std::unique_ptr<Topo::MeshShape> uniqueMesh;
81 typedef std::unique_ptr<Topo::Compound> uniqueCompound;
82 typedef std::unique_ptr<Topo::ShapeSet> uniqueShapeSet;
83 typedef std::unique_ptr<Topo::Solid> uniqueSolid;
84 typedef std::unique_ptr<Topo::Shell> uniqueShell;
85 typedef std::unique_ptr<Topo::Face> uniqueFace;
86 typedef std::unique_ptr<Topo::Wire> uniqueWire;
87 typedef std::unique_ptr<Topo::Edge> uniqueEdge;
88 typedef std::unique_ptr<Topo::Coedge> uniqueCoedge;
89 typedef std::unique_ptr<Topo::Vertex> uniqueVertex;
90 typedef std::unique_ptr<Topo::FacetedShape> uniqueFacetedShape;
91 
92 
pConstShell
std::shared_ptr< Topo::Shell const > pConstShell
Definition: Types.h:69
pConstVertex
std::shared_ptr< Topo::Vertex const > pConstVertex
Definition: Types.h:74
pConstShape
std::shared_ptr< Topo::Shape const > pConstShape
Definition: Types.h:64
pIndexedMesh
std::shared_ptr< Geom::IndexedMesh > pIndexedMesh
Definition: Types.h:59
uniqueFace
std::unique_ptr< Topo::Face > uniqueFace
Definition: Types.h:85
pConstBrepData
std::shared_ptr< const Geom::BrepData > pConstBrepData
Definition: Types.h:75
uniqueFacetedShape
std::unique_ptr< Topo::FacetedShape > uniqueFacetedShape
Definition: Types.h:90
pShape
std::shared_ptr< Topo::Shape > pShape
Definition: Types.h:47
uniqueShapeSet
std::unique_ptr< Topo::ShapeSet > uniqueShapeSet
Definition: Types.h:82
Topo::OrientationType::INTERNAL
@ INTERNAL
uniqueShell
std::unique_ptr< Topo::Shell > uniqueShell
Definition: Types.h:84
uniqueShape
std::unique_ptr< Topo::Shape > uniqueShape
Definition: Types.h:79
pConstSolid
std::shared_ptr< Topo::Solid const > pConstSolid
Definition: Types.h:68
uniqueCompound
std::unique_ptr< Topo::Compound > uniqueCompound
Definition: Types.h:81
pConstWire
std::shared_ptr< Topo::Wire const > pConstWire
Definition: Types.h:71
pBrepData
std::shared_ptr< Geom::BrepData > pBrepData
Definition: Types.h:60
Topo::OrientationType::EXTERNAL
@ EXTERNAL
uniqueEdge
std::unique_ptr< Topo::Edge > uniqueEdge
Definition: Types.h:87
pFace
std::shared_ptr< Topo::Face > pFace
Definition: Types.h:53
pConstLazyFacetedBrepShape
std::shared_ptr< Topo::LazyFacetedBrepShape const > pConstLazyFacetedBrepShape
Definition: Types.h:65
uniqueCoedge
std::unique_ptr< Topo::Coedge > uniqueCoedge
Definition: Types.h:88
uniqueBaseClass
std::unique_ptr< Base::BaseClass > uniqueBaseClass
Definition: Types.h:77
uniqueVertex
std::unique_ptr< Topo::Vertex > uniqueVertex
Definition: Types.h:89
Topo::OrientationType::REVERSED
@ REVERSED
pIndexedDrawable
std::shared_ptr< Topo::IndexedDrawable > pIndexedDrawable
Definition: Types.h:58
pEdge
std::shared_ptr< Topo::Edge > pEdge
Definition: Types.h:55
pWire
std::shared_ptr< Topo::Wire > pWire
Definition: Types.h:54
pConstCompound
std::shared_ptr< Topo::Compound const > pConstCompound
Definition: Types.h:67
uniqueMesh
std::unique_ptr< Topo::MeshShape > uniqueMesh
Definition: Types.h:80
pCompound
std::shared_ptr< Topo::Compound > pCompound
Definition: Types.h:50
pConstBaseClass
std::shared_ptr< Base::BaseClass const > pConstBaseClass
Definition: Types.h:62
pMesh
std::shared_ptr< Topo::MeshShape > pMesh
Definition: Types.h:49
pConstFace
std::shared_ptr< Topo::Face const > pConstFace
Definition: Types.h:70
pSolid
std::shared_ptr< Topo::Solid > pSolid
Definition: Types.h:51
pVertex
std::shared_ptr< Topo::Vertex > pVertex
Definition: Types.h:57
pConstMesh
std::shared_ptr< Topo::MeshShape const > pConstMesh
Definition: Types.h:66
pConstEdge
std::shared_ptr< Topo::Edge const > pConstEdge
Definition: Types.h:72
uniqueSolid
std::unique_ptr< Topo::Solid > uniqueSolid
Definition: Types.h:83
Topo
Definition: DbgInfo.h:17
Topo::OrientationType::UNDEFINED
@ UNDEFINED
uniqueWire
std::unique_ptr< Topo::Wire > uniqueWire
Definition: Types.h:86
pConstTopologicalItem
std::shared_ptr< Topo::TopologicalItem const > pConstTopologicalItem
Definition: Types.h:63
Topo::OrientationType::FORWARD
@ FORWARD
pShell
std::shared_ptr< Topo::Shell > pShell
Definition: Types.h:52
pBaseClass
std::shared_ptr< Base::BaseClass > pBaseClass
Definition: Types.h:45
pCoedge
std::shared_ptr< Topo::Coedge > pCoedge
Definition: Types.h:56
uniqueTopologicalItem
std::unique_ptr< Topo::TopologicalItem > uniqueTopologicalItem
Definition: Types.h:78
Topo::OrientationType
OrientationType
Definition: Types.h:36
Base
Definition: AbstractXMLReader.h:5
pTopologicalItem
std::shared_ptr< Topo::TopologicalItem > pTopologicalItem
Definition: Types.h:46
pConstCoedge
std::shared_ptr< Topo::Coedge const > pConstCoedge
Definition: Types.h:73
Geom
Definition: PropertyContainer.h:33
pLazyFacetedBrepShape
std::shared_ptr< Topo::LazyFacetedBrepShape > pLazyFacetedBrepShape
Definition: Types.h:48