Go to the documentation of this file. 1 #include "DD4hep/DetFactoryHelper.h"
16 double dx =
args.value<
double>(
"Dx");
17 double dz =
args.value<
double>(
"Dz");
18 double angwidth =
args.value<
double>(
"AngWidth");
19 int iaxis =
args.value<
int>(
"Axis");
20 std::vector<std::string>
names =
args.value<std::vector<std::string> >(
"Names");
23 edm::LogVerbatim(
"HCalGeom") <<
"DDHCalXtalAlgo::Parameters for positioning:"
27 for (
unsigned int i = 0;
i <
names.size();
i++)
30 <<
" NameSpace " << idNameSpace;
38 theta[1 - iaxis] = 90._deg;
46 phi[2] = iaxis * 90._deg;
49 phi[2] = (2 - 3 * iaxis) * 90._deg;
60 static const double tol = 0.01_deg;
72 edm::LogVerbatim(
"HCalGeom") <<
"DDHCalXtalAlgo: " << glog.name() <<
" number " <<
i + 1 <<
" positioned in "
#define DECLARE_DDCMS_DETELEMENT(name, func)
constexpr NumType convertRadToDeg(NumType radians)
DDRotationMatrix makeRotation3D(double thetaX, double phiX, double thetaY, double phiY, double thetaZ, double phiZ)
Sin< T >::type sin(const T &t)
const std::string names[nVars_]
Geom::Theta< T > theta() const
constexpr NumType convertCmToMm(NumType centimeters)
Log< level::Info, true > LogVerbatim
T angle(T x1, T y1, T z1, T x2, T y2, T z2)
Abs< T >::type abs(const T &t)
static long algorithm(dd4hep::Detector &, cms::DDParsingContext &ctxt, xml_h e)
std::string_view name() const
dd4hep::Volume volume(const std::string &name, bool exc=true) const