DetectorDescription
Core
src
EllipticalTube.h
Go to the documentation of this file.
1
#ifndef DDI_EllipticalTube_h
2
#define DDI_EllipticalTube_h
3
4
#include <
DataFormats/GeometryVector/interface/Pi.h
>
5
#include <iosfwd>
6
#include <vector>
7
8
#include "
DetectorDescription/Core/interface/DDSolidShapes.h
"
9
#include "
Solid.h
"
10
11
namespace
DDI
{
12
13
class
EllipticalTube
:
public
Solid
{
14
public
:
15
EllipticalTube
(
double
xSemiAxis,
double
ySemiAxis,
double
zHeight) :
Solid
(
DDSolidShape
::
ddellipticaltube
) {
16
p_
.emplace_back(xSemiAxis);
17
p_
.emplace_back(ySemiAxis);
18
p_
.emplace_back(zHeight);
19
}
20
~EllipticalTube
()
override
{}
21
23
double
volume
()
const override
;
24
void
stream
(std::ostream& os)
const override
;
25
};
26
27
}
// namespace DDI
28
#endif // DDI_EllipticalTube_h
DDSolidShapes.h
DDI
Definition:
DDCompactView.h:24
DDSolidShape
DDSolidShape
Definition:
DDSolidShapes.h:6
DDI::EllipticalTube::EllipticalTube
EllipticalTube(double xSemiAxis, double ySemiAxis, double zHeight)
Definition:
EllipticalTube.h:15
Solid.h
DDSolidShape::ddellipticaltube
Pi.h
DDI::EllipticalTube::volume
double volume() const override
Not as flexible and possibly less accurate than G4 volume.
Definition:
EllipticalTube.cc:13
DDI::EllipticalTube
Definition:
EllipticalTube.h:13
DDI::Solid
Definition:
Solid.h:10
DDI::Solid::p_
std::vector< double > p_
Definition:
Solid.h:30
DDI::EllipticalTube::stream
void stream(std::ostream &os) const override
Definition:
EllipticalTube.cc:8
DDI::EllipticalTube::~EllipticalTube
~EllipticalTube() override
Definition:
EllipticalTube.h:20
Generated for CMSSW Reference Manual by
1.8.16