9 #include <boost/test/unit_test.hpp>
39 using namespace Acts::Experimental;
46 template <
typename surface_type,
typename surface_bounds_type>
51 const surface_bounds_type& sBounds,
56 m_surfaceBounds(sBounds),
62 std::vector<std::shared_ptr<DetectorVolume>> rootVolumes;
65 auto surface = Surface::makeShared<surface_type>(
66 (
m_transform), std::make_shared<surface_bounds_type>(m_surfaceBounds));
70 auto volume = DetectorVolumeFactory::construct(
75 rootVolumes.push_back(volume);
78 for (
auto [ip,
p] :
enumerate(volume->portalPtrs())) {
90 surface_bounds_type m_surfaceBounds;
94 BOOST_AUTO_TEST_SUITE(ActSvg)
98 auto beampipe = std::make_shared<
105 negZ.pretranslate(
Vector3(0., 0., -300.));
107 std::make_shared<CylindricalVolumeBuilder<DiscSurface, RadialBounds>>(
112 auto barrel0 = std::make_shared<
118 auto barrel1 = std::make_shared<
124 auto barrel2 = std::make_shared<
131 barrelRCfg.
builders = {barrel0, barrel1, barrel2};
132 barrelRCfg.binning = {
binR};
134 auto barrel = std::make_shared<CylindricalContainerBuilder>(
138 posZ.pretranslate(
Vector3(0., 0., 300.));
140 std::make_shared<CylindricalVolumeBuilder<DiscSurface, RadialBounds>>(
146 barrelEndcapCfg.
builders = {endcapN, barrel, endcapP};
147 barrelEndcapCfg.binning = {
binZ};
149 auto barrelEndcap = std::make_shared<CylindricalContainerBuilder>(
155 detectorCfg.
builders = {beampipe, barrelEndcap};
156 detectorCfg.binning = {
binR};
158 auto containerBuilder = std::make_shared<CylindricalContainerBuilder>(
163 auto gig = std::make_shared<GeometryIdGenerator>(gigConfig);
166 dCfg.
auxiliary =
"*** Test : Cylindrical Detector ***";
167 dCfg.name =
"CylindricalDetector";
168 dCfg.builder = containerBuilder;
169 dCfg.geoIdGenerator = gig;
185 std::vector<actsvg::style::color> colors = {gray, pink, brown,
187 for (
auto&
c : colors) {
191 pDetector.colorize(colors);
198 BOOST_AUTO_TEST_SUITE_END()