GeoModel - GeoModelCore
GeoShapeAction.cxx
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #include "GeoModelKernel/GeoShapeAction.h"
6 
7 #include "GeoModelKernel/GeoShapeShift.h"
8 #include "GeoModelKernel/GeoShapeIntersection.h"
9 #include "GeoModelKernel/GeoShapeUnion.h"
10 #include "GeoModelKernel/GeoShapeSubtraction.h"
11 #include "GeoModelKernel/GeoBox.h"
12 #include "GeoModelKernel/GeoCons.h"
13 #include "GeoModelKernel/GeoPcon.h"
14 #include "GeoModelKernel/GeoPgon.h"
15 #include "GeoModelKernel/GeoTrap.h"
16 #include "GeoModelKernel/GeoTrd.h"
17 #include "GeoModelKernel/GeoTube.h"
18 #include "GeoModelKernel/GeoTubs.h"
19 #include "GeoModelKernel/GeoPara.h"
20 
21 #include "GeoModelKernel/GeoSimplePolygonBrep.h"
22 #include "GeoModelKernel/GeoTessellatedSolid.h"
23 #include "GeoModelKernel/GeoEllipticalTube.h"
24 #include "GeoModelKernel/GeoTorus.h"
25 #include "GeoModelKernel/GeoGenericTrap.h"
26 #include "GeoModelKernel/GeoUnidentifiedShape.h"
27 
28 GeoShapeAction::GeoShapeAction()
29  : m_terminate(false)
30 {
31 }
32 
33 GeoShapeAction::~GeoShapeAction()
34 {
35 }
36 
37 Query<unsigned int> GeoShapeAction::getDepthLimit ()
38 {
39  return m_depth;
40 }
41 
42 void GeoShapeAction::setDepthLimit (unsigned int limit)
43 {
44  m_depth=limit;
45 }
46 
47 void GeoShapeAction::clearDepthLimit ()
48 {
49  m_depth=Query<unsigned int> ();
50 }
51 
52 void GeoShapeAction::terminate ()
53 {
54  m_terminate=true;
55 }
56 
57 bool GeoShapeAction::shouldTerminate () const
58 {
59  return m_terminate;
60 }
61 
62 void GeoShapeAction::handleShape (const GeoShape *)
63 {
64 }
65 
66 void GeoShapeAction::handleShift (const GeoShapeShift *shift)
67 {
68  handleShape(shift);
69 }
70 
71 void GeoShapeAction::handleUnion (const GeoShapeUnion *unio)
72 {
73  handleShape(unio);
74 }
75 
76 void GeoShapeAction::handleIntersection (const GeoShapeIntersection *isect)
77 {
78  handleShape(isect);
79 }
80 
81 void GeoShapeAction::handleSubtraction (const GeoShapeSubtraction *subtract)
82 {
83  handleShape(subtract);
84 }
85 
86 void GeoShapeAction::handleBox (const GeoBox *box)
87 {
88  handleShape(box);
89 }
90 
91 void GeoShapeAction::handleCons (const GeoCons *cons)
92 {
93  handleShape(cons);
94 }
95 
96 void GeoShapeAction::handlePara (const GeoPara *para)
97 {
98  handleShape(para);
99 }
100 
101 void GeoShapeAction::handlePcon (const GeoPcon *pcon)
102 {
103  handleShape(pcon);
104 }
105 
106 void GeoShapeAction::handlePgon (const GeoPgon *pgon)
107 {
108  handleShape(pgon);
109 }
110 
111 void GeoShapeAction::handleTrap (const GeoTrap *trap)
112 {
113  handleShape(trap);
114 }
115 
116 void GeoShapeAction::handleTrd (const GeoTrd *trd)
117 {
118  handleShape(trd);
119 }
120 
121 void GeoShapeAction::handleTube (const GeoTube *tube)
122 {
123  handleShape(tube);
124 }
125 
126 void GeoShapeAction::handleTubs (const GeoTubs *tubs)
127 {
128  handleShape(tubs);
129 }
130 
131 GeoShapePath * GeoShapeAction::getPath ()
132 {
133  return &m_path;
134 }
135 
136 void GeoShapeAction::handleSimplePolygonBrep (const GeoSimplePolygonBrep* brep)
137 {
138  handleShape(brep);
139 }
140 
141 void GeoShapeAction::handleTessellatedSolid (const GeoTessellatedSolid* tessellated)
142 {
143  handleShape(tessellated);
144 }
145 
146 void GeoShapeAction::handleEllipticalTube (const GeoEllipticalTube * elltube)
147 {
148  handleShape(elltube);
149 }
150 
151 void GeoShapeAction::handleTorus (const GeoTorus * torus)
152 {
153  handleShape(torus);
154 }
155 
156 void GeoShapeAction::handleGenericTrap (const GeoGenericTrap * gentrap)
157 {
158  handleShape(gentrap);
159 }
160 
161 void GeoShapeAction::handleUnidentifiedShape (const GeoUnidentifiedShape * uShape)
162 {
163  handleShape(uShape);
164 }
165 
166 
This shape represents a BREP solid consisting of two equivalent polygonial faces perpendicular to Z a...
Definition: GeoTrd.h:10
This is a tube with elliptical cross section The equation of the surface in x/y is 1...
This shape represents a polycone. Specify the starting angle and delta angle (subtended angle) of the...
Definition: GeoPcon.h:20
Definition: GeoBox.h:10
This shape represents a very general trapezoid.
Definition: GeoTrap.h:16
This class describes a Shape. Shapes will be able to do the following things:
Definition: GeoShape.h:38