Skip to content

refactor: Move Examples to Seeding2 EDM#5088

Merged
kodiakhq[bot] merged 42 commits intoacts-project:mainfrom
andiwand:ex-seeding2
Feb 26, 2026
Merged

refactor: Move Examples to Seeding2 EDM#5088
kodiakhq[bot] merged 42 commits intoacts-project:mainfrom
andiwand:ex-seeding2

Conversation

@andiwand
Copy link
Copy Markdown
Contributor

@andiwand andiwand commented Feb 10, 2026

Moves the Examples to the new Seeding2 EDM. This is the next step in fully replacing the old EDM and seeding API. Future changes will deprecate and later remove the old implementation.

Also contains

  • Singe space point container input for AdaptiveHoughTransformSeeder, HoughTransformSeeder, and TruthSeedingAlgorithm
  • Cleanups

--- END COMMIT MESSAGE ---

blocked by

@andiwand andiwand added this to the next milestone Feb 10, 2026
@github-actions github-actions Bot added Component - Plugins Affects one or more Plugins Component - Documentation Affects the documentation Changes Performance labels Feb 11, 2026
@github-actions github-actions Bot removed Component - Plugins Affects one or more Plugins Component - Documentation Affects the documentation Changes Performance labels Feb 11, 2026
@github-actions github-actions Bot added the Infrastructure Changes to build tools, continous integration, ... label Feb 11, 2026
@github-actions github-actions Bot removed the Infrastructure Changes to build tools, continous integration, ... label Feb 12, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions Bot commented Feb 12, 2026

📊: Physics performance monitoring for da49678

Full contents

physmon summary

❗️: Downstream build failure

  • eic-shell (cc @acts-project/epic-contacts)

Copy link
Copy Markdown
Member

@paulgessinger paulgessinger left a comment

Choose a reason for hiding this comment

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

Looks good as far as I can tell (diff is pretty large)

SimSpacePoint doesn't make sense as a name because those are the only space points we have here?

Comment thread Examples/Algorithms/Utilities/src/ProtoTracksToParameters.cpp Outdated
Comment thread Examples/Algorithms/Utilities/src/ProtoTracksToParameters.cpp Outdated
paulgessinger
paulgessinger previously approved these changes Feb 26, 2026
@kodiakhq kodiakhq Bot merged commit 5e526ca into acts-project:main Feb 26, 2026
41 checks passed
@andiwand andiwand deleted the ex-seeding2 branch February 26, 2026 23:01
@sonarqubecloud
Copy link
Copy Markdown

@andiwand andiwand modified the milestones: next, v45.3.0 Feb 27, 2026
github-merge-queue Bot pushed a commit to eic/EICrecon that referenced this pull request Mar 2, 2026
…ePointContainer<T>` (#2517)

Acts PR [#5088](acts-project/acts#5088) removed
the `ActsExamples::SpacePointContainer<T>` template adapter (replacing
`ActsExamples::SpacePointContainer` with an alias to
`Acts::SpacePointContainer2`), breaking EICrecon's orthogonal track
seeder which depends on it.

## Changes

- **`TrackSeeding.h`**: Guard the
`ActsExamples/EventData/SpacePointContainer.hpp` include with
`__has_include`. When absent, define a local drop-in replacement:

  ```cpp
  template <typename collection_t>
  class SpacePointContainerAdapter {
// Implements size_impl, x/y/z_impl, varianceR/Z_impl, get_impl,
component_impl
// matching the interface expected by
Acts::SpacePointContainer<container_t, holder_t>
  };
  ```

Introduce a `SpacePointContainerType` public alias that resolves to the
old `ActsExamples` type or the new adapter depending on the Acts version
detected at compile time:

  ```cpp
  #if __has_include(<ActsExamples/EventData/SpacePointContainer.hpp>)
using SpacePointContainerType =
ActsExamples::SpacePointContainer<std::vector<const SpacePoint*>>;
  #else
using SpacePointContainerType =
SpacePointContainerAdapter<std::vector<const SpacePoint*>>;
  #endif
using proxy_type = typename
Acts::SpacePointContainer<SpacePointContainerType,
Acts::detail::RefHolder>::SpacePointProxyType;
  ```

- **`TrackSeeding.cc`**: Replace the hardcoded
`ActsExamples::SpacePointContainer container(spacePoints)` with
`SpacePointContainerType container(spacePoints)`.

`Acts::SpacePointContainer<container_t, holder_t>` (Core) is unchanged
across versions, so the seeding pipeline itself requires no further
modification. `__has_include` is used rather than a version number guard
to avoid coupling to a specific Acts release number.

<!-- START COPILOT CODING AGENT TIPS -->
---

🔒 GitHub Advanced Security automatically protects Copilot coding agent
pull requests. You can protect all pull requests by enabling Advanced
Security for your repositories. [Learn more about Advanced
Security.](https://gh.io/cca-advanced-security)

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com>
Co-authored-by: wdconinc <4656391+wdconinc@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: epic-capybara <139920704+epic-capybara@users.noreply.github.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
kodiakhq Bot pushed a commit that referenced this pull request Mar 21, 2026
After we fully migrated to the new non-templated seeding and space point algorithms and EDM it is time to deprecate the templated ones. Apart from this tests are already removed. A future breaking change will remove the code completely and rename the new implementation to remove the `2`, for examples `SpacePointContainer2` -> `SpacePointContainer`.

Quick update guide:
- `SeedFinder` -> `TripletSeeder`
- `CylindricalSpacePointGrid` -> `CylindricalSpacePointGrid2`
- `Seed` -> `SeedContainer2`, `SeedProxy2`
- new space point EDM `SpacePointContainer2`, `SpacePointProxy2`
- `SpacePointBuilder` -> `PixelSpacePointBuilder`
- `StripSpacePointBuilder` -> `StripSpacePointBuilder`

Moving our Examples from the old EDM to the new one was done here #5088
kodiakhq Bot pushed a commit that referenced this pull request Mar 21, 2026
Fixes the association of spacepoints to tracks that was broken since #5088.

Also improve python scripts and add track finder performance writer and track selection to have meaningful metrics.
benjaminhuth pushed a commit to benjaminhuth/acts that referenced this pull request Mar 23, 2026
After we fully migrated to the new non-templated seeding and space point algorithms and EDM it is time to deprecate the templated ones. Apart from this tests are already removed. A future breaking change will remove the code completely and rename the new implementation to remove the `2`, for examples `SpacePointContainer2` -> `SpacePointContainer`.

Quick update guide:
- `SeedFinder` -> `TripletSeeder`
- `CylindricalSpacePointGrid` -> `CylindricalSpacePointGrid2`
- `Seed` -> `SeedContainer2`, `SeedProxy2`
- new space point EDM `SpacePointContainer2`, `SpacePointProxy2`
- `SpacePointBuilder` -> `PixelSpacePointBuilder`
- `StripSpacePointBuilder` -> `StripSpacePointBuilder`

Moving our Examples from the old EDM to the new one was done here acts-project#5088
benjaminhuth added a commit to benjaminhuth/acts that referenced this pull request Mar 23, 2026
Fixes the association of spacepoints to tracks that was broken since acts-project#5088.

Also improve python scripts and add track finder performance writer and track selection to have meaningful metrics.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants