File indexing completed on 2024-04-06 12:05:24
0001 #ifndef DDI_PseudoTrap_h
0002 #define DDI_PseudoTrap_h
0003
0004 #include <iostream>
0005 #include <vector>
0006
0007 #include "DetectorDescription/Core/interface/DDSolidShapes.h"
0008 #include "Solid.h"
0009
0010 namespace DDI {
0011
0012 class PseudoTrap : public Solid {
0013 public:
0014 PseudoTrap(double x1, double x2, double y1, double y2, double z, double radius, bool minusZ)
0015 : Solid(DDSolidShape::ddpseudotrap) {
0016 p_.emplace_back(x1);
0017 p_.emplace_back(x2);
0018 p_.emplace_back(y1);
0019 p_.emplace_back(y2);
0020 p_.emplace_back(z);
0021 p_.emplace_back(radius);
0022 p_.emplace_back(minusZ);
0023 }
0024
0025 ~PseudoTrap() override {}
0026
0027 double volume() const override { return -1; }
0028
0029 void stream(std::ostream& os) const override;
0030 };
0031
0032 }
0033
0034 #endif