18 #define DD4HEP_USE_SURFACEINSTALL_HELPER DD4hep_SiTrackerEndcapSurfacePlugin
22 template <
typename UserData>
29 if ( !comp_shape.isValid() || !mod_shape.
isValid() ) {
30 invalidInstaller(
"Components and/or modules are not Trapezoid -- invalid shapes");
32 else if ( !handleUsingCache(component,comp_vol) ) {
33 const double* trans = placementTranslation(component);
34 double half_mod_thickness = mod_shape->GetDy1();
36 double si_position = trans[1];
37 double outer_thickness = half_mod_thickness + si_position;
38 double inner_thickness = half_mod_thickness - si_position;
39 Vector3D u(0.,0.,-1.),
v(-1.,0.,0.), n(0.,-1.,0.), o(0.,0.,0.);
42 inner_thickness, outer_thickness, u,
v, n, o);
43 addSurface(component,surf);