Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refactor: Python binding bits and pieces #3717

Merged
merged 15 commits into from
Oct 13, 2024

Conversation

paulgessinger
Copy link
Member

@paulgessinger paulgessinger commented Oct 11, 2024

This is a collection of python bindings bits that have accumulated.

Related #3502.


This pull request includes several updates to the Acts geometry and Python binding code. The most important changes involve the introduction of new enums and the addition of Python bindings for new geometry classes and methods.

Geometry and Enum Updates:

  • Added Face enum to CylinderVolumeBounds to describe possible faces of a cylinder volume. (Core/include/Acts/Geometry/CylinderVolumeBounds.hpp)
  • Refactored PortalShellBase to use the Face enum from CylinderVolumeBounds instead of defining its own. (Core/include/Acts/Geometry/PortalShell.hpp)

Python Bindings Enhancements:

  • Added new binning values to the addBinning function in Base.cpp. (Examples/Python/src/Base.cpp)
  • Extended addGeometry function to include new methods and enums for CylinderVolumeBounds and ExtentEnvelope. (Examples/Python/src/Geometry.cpp) [1] [2]
  • Introduced Python bindings for CylinderVolumeStack and its enums AttachmentStrategy and ResizeStrategy. (Examples/Python/src/Geometry.cpp)

Code Cleanup:

  • Removed redundant includes and updated include paths to reflect new dependencies. (Core/include/Acts/Geometry/PortalShell.hpp, Examples/Python/src/Geometry.cpp) [1] [2] [3]

These changes improve the modularity and functionality of the geometry components and enhance the Python interface for better usability.

@paulgessinger paulgessinger added this to the next milestone Oct 11, 2024
@github-actions github-actions bot added Component - Core Affects the Core module Component - Examples Affects the Examples module labels Oct 11, 2024
@paulgessinger paulgessinger mentioned this pull request Oct 11, 2024
Copy link

github-actions bot commented Oct 11, 2024

📊: Physics performance monitoring for 79d4f35

Full contents

physmon summary

Copy link
Member

@benjaminhuth benjaminhuth 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 to me!

Copy link

sonarcloud bot commented Oct 13, 2024

@kodiakhq kodiakhq bot merged commit 6709342 into acts-project:main Oct 13, 2024
42 checks passed
@acts-project-service acts-project-service added the Breaks Athena build This PR breaks the Athena build label Oct 13, 2024
@paulgessinger paulgessinger removed this from the next milestone Oct 16, 2024
@paulgessinger paulgessinger added this to the v37.1.0 milestone Oct 16, 2024
Rosie-Hasan pushed a commit to Rosie-Hasan/acts that referenced this pull request Nov 13, 2024
This is a collection of python bindings bits that have accumulated.

Related acts-project#3502.

---

This pull request includes several updates to the `Acts` geometry and Python binding code. The most important changes involve the introduction of new enums and the addition of Python bindings for new geometry classes and methods.

### Geometry and Enum Updates:

* Added `Face` enum to `CylinderVolumeBounds` to describe possible faces of a cylinder volume. (`Core/include/Acts/Geometry/CylinderVolumeBounds.hpp`)
* Refactored `PortalShellBase` to use the `Face` enum from `CylinderVolumeBounds` instead of defining its own. (`Core/include/Acts/Geometry/PortalShell.hpp`)

### Python Bindings Enhancements:

* Added new binning values to the `addBinning` function in `Base.cpp`. (`Examples/Python/src/Base.cpp`)
* Extended `addGeometry` function to include new methods and enums for `CylinderVolumeBounds` and `ExtentEnvelope`. (`Examples/Python/src/Geometry.cpp`) [[1]](diffhunk://#diff-a103b5682fb7c6e7ea58777983e4381b62783b2facd3e367e03ff0a7aa49816dL181-R213) [[2]](diffhunk://#diff-a103b5682fb7c6e7ea58777983e4381b62783b2facd3e367e03ff0a7aa49816dL212-R303)
* Introduced Python bindings for `CylinderVolumeStack` and its enums `AttachmentStrategy` and `ResizeStrategy`. (`Examples/Python/src/Geometry.cpp`)

### Code Cleanup:

* Removed redundant includes and updated include paths to reflect new dependencies. (`Core/include/Acts/Geometry/PortalShell.hpp`, `Examples/Python/src/Geometry.cpp`) [[1]](diffhunk://#diff-80595cf723b4c4b0a2cf3de28ac0da38793f2955a2e0ce1dc4fd87381fac79aeL11-R11) [[2]](diffhunk://#diff-a103b5682fb7c6e7ea58777983e4381b62783b2facd3e367e03ff0a7aa49816dR40) [[3]](diffhunk://#diff-a103b5682fb7c6e7ea58777983e4381b62783b2facd3e367e03ff0a7aa49816dR51)

These changes improve the modularity and functionality of the geometry components and enhance the Python interface for better usability.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Breaks Athena build This PR breaks the Athena build Component - Core Affects the Core module Component - Examples Affects the Examples module
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants