Skip to content

feat: Gen3 DD4hep construction#5193

Draft
paulgessinger wants to merge 55 commits intoacts-project:mainfrom
paulgessinger:feat/dd4hep-gen3
Draft

feat: Gen3 DD4hep construction#5193
paulgessinger wants to merge 55 commits intoacts-project:mainfrom
paulgessinger:feat/dd4hep-gen3

Conversation

@paulgessinger
Copy link
Member

No description provided.

@github-actions github-actions bot added this to the next milestone Mar 3, 2026
@github-actions github-actions bot added Component - Core Affects the Core module Component - Examples Affects the Examples module Component - Plugins Affects one or more Plugins labels Mar 3, 2026
@tmadlener
Copy link
Contributor

From my point of view, I am pretty happy with the state of this. I have exercised a few of the geometries we have in k4geo in key4hep/k4ActsTracking#36 and at least for me the still existing amount of boilerplate is acceptable (and probably also necessary) given the layouts of the tracking devices we have.

Comment on lines +213 to +215
/// @tparam BackendT Geometry backend satisfying @ref detail::BlueprintBackend.
template <detail::BlueprintBackend BackendT>
class ElementLayerAssembler {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Where would a layer assembler for planar layers / testbeam like setups go in this new scheme? In the original API we simply introduced a PlaneLayerHelper similar to the original LayerHelper for that. Should that go into a dedicated Assembler or is this one general enough to also accomodate a LayerType::Planar, you think?

Tagging @RainWindWang as well here, since she did the original implementation.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would think that it should scale to plane layers, it only needs to produce the corresponding container type. But I agree that this is something we should explicitly foresee!

paulgessinger and others added 29 commits March 20, 2026 17:31
tmadlener: Lifted from previous work on the old API proposal design
tmadlener: Lifted from earlier work done on the old API design proposal
Do not prescribe CylinderContainers
Some helpers and at least some of the necessary disambiguation
Move ODD TGeo constants/layer binning logic into the DD4hep builder path and remove the generic TGeoBackend constant-provider plumbing.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Component - Core Affects the Core module Component - Examples Affects the Examples module Component - Plugins Affects one or more Plugins

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants