feat: move ROOT surface material map I/O to plugins#4400
feat: move ROOT surface material map I/O to plugins#4400asalzburger merged 38 commits intoacts-project:mainfrom
Conversation
paulgessinger
left a comment
There was a problem hiding this comment.
I like the approach, but have a few comments on the implementation.
...Algorithms/MaterialMapping/include/ActsExamples/MaterialMapping/MappingMaterialDecorator.hpp
Outdated
Show resolved
Hide resolved
Examples/Io/Root/include/ActsExamples/Io/Root/RootMaterialDecorator.hpp
Outdated
Show resolved
Hide resolved
Plugins/Json/include/Acts/Plugins/Json/JsonMaterialDecorator.hpp
Outdated
Show resolved
Hide resolved
Plugins/Root/include/Acts/Plugins/Root/RootMaterialMapAccessor.hpp
Outdated
Show resolved
Hide resolved
b4e65eb to
899d502
Compare
|
Mac OsX did strike again - the combination of capital / small letters and git is horrendous when removing. I just changed "IO" to "Io" in the tests, so I suppose the "approval" is still valid. |
|
|
This breaks the Athena build. I'm reverting this until we have a fix in #4424 Failing job: https://gitlab.cern.ch/acts/acts-athena-ci/-/jobs/58703357#L1885 |
|
Interesting ... do we have a dependency in Athena on ActsExamples? |
|
Ah no, it was the consistent naming as we use the Plugins/Json for reading the map. |
|
We could reintroduce the old aliases as deprecated for the moment, or mark this breaking and prepare a patch. |
This PR moves the I/O for material map reading/writing into `Plugins/Root` and removes the duplicated code from `RootMaterialWriter` and `RootMaterialDecorator`. It also harmonizes the usage/definition of `SurfaceMaterialMaps`. `VolumeMaterialMaps`, and `DetectorMaterialMaps` consistently by declaring them once. It is backward compatible, and introduces a new, common ROOT I/O material backend that can be shared between all material classes (homongeneous, binned, grid, indexed). This PR also allows UnitTests to be added for Material writing, the first ones are done with it, and it removes roughly 100 SonarCloud issues, mainly related to how we call and use ROOT. This will be followed by a PRs doing the same for Volume material and updated Grid based surface material. The reading gis kept backward-compatible. --- END COMMIT MESSAGE --- Any further description goes here, @-mentions are ok here! - Use a *conventional commits* prefix: [quick summary](https://www.conventionalcommits.org/en/v1.0.0/#summary) - We mostly use `feat`, `fix`, `refactor`, `docs`, `chore` and `build` types. - A milestone will be assigned by one of the maintainers --------- Co-authored-by: Paul Gessinger <hello@paulgessinger.com> Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
This PR moves the I/O for material map reading/writing into `Plugins/Root` and removes the duplicated code from `RootMaterialWriter` and `RootMaterialDecorator`. It also harmonizes the usage/definition of `SurfaceMaterialMaps`. `VolumeMaterialMaps`, and `DetectorMaterialMaps` consistently by declaring them once. It is backward compatible, and introduces a new, common ROOT I/O material backend that can be shared between all material classes (homongeneous, binned, grid, indexed). This PR also allows UnitTests to be added for Material writing, the first ones are done with it, and it removes roughly 100 SonarCloud issues, mainly related to how we call and use ROOT. This will be followed by a PRs doing the same for Volume material and updated Grid based surface material. The reading gis kept backward-compatible. --- END COMMIT MESSAGE --- Any further description goes here, @-mentions are ok here! - Use a *conventional commits* prefix: [quick summary](https://www.conventionalcommits.org/en/v1.0.0/#summary) - We mostly use `feat`, `fix`, `refactor`, `docs`, `chore` and `build` types. - A milestone will be assigned by one of the maintainers --------- Co-authored-by: Paul Gessinger <hello@paulgessinger.com> Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Reintroduction of #4400 with the previous typedefs added back in as deprecated. Co-authored-by: Andreas Salzburger <asalzburger@gmail.com>
This PR moves the I/O for material map reading/writing into `Plugins/Root` and removes the duplicated code from `RootMaterialWriter` and `RootMaterialDecorator`. It also harmonizes the usage/definition of `SurfaceMaterialMaps`. `VolumeMaterialMaps`, and `DetectorMaterialMaps` consistently by declaring them once. It is backward compatible, and introduces a new, common ROOT I/O material backend that can be shared between all material classes (homongeneous, binned, grid, indexed). This PR also allows UnitTests to be added for Material writing, the first ones are done with it, and it removes roughly 100 SonarCloud issues, mainly related to how we call and use ROOT. This will be followed by a PRs doing the same for Volume material and updated Grid based surface material. The reading gis kept backward-compatible. --- END COMMIT MESSAGE --- Any further description goes here, @-mentions are ok here! - Use a *conventional commits* prefix: [quick summary](https://www.conventionalcommits.org/en/v1.0.0/#summary) - We mostly use `feat`, `fix`, `refactor`, `docs`, `chore` and `build` types. - A milestone will be assigned by one of the maintainers --------- Co-authored-by: Paul Gessinger <hello@paulgessinger.com> Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Reintroduction of acts-project#4400 with the previous typedefs added back in as deprecated. Co-authored-by: Andreas Salzburger <asalzburger@gmail.com>
This PR moves the I/O for material map reading/writing into `Plugins/Root` and removes the duplicated code from `RootMaterialWriter` and `RootMaterialDecorator`. It also harmonizes the usage/definition of `SurfaceMaterialMaps`. `VolumeMaterialMaps`, and `DetectorMaterialMaps` consistently by declaring them once. It is backward compatible, and introduces a new, common ROOT I/O material backend that can be shared between all material classes (homongeneous, binned, grid, indexed). This PR also allows UnitTests to be added for Material writing, the first ones are done with it, and it removes roughly 100 SonarCloud issues, mainly related to how we call and use ROOT. This will be followed by a PRs doing the same for Volume material and updated Grid based surface material. The reading gis kept backward-compatible. --- END COMMIT MESSAGE --- Any further description goes here, @-mentions are ok here! - Use a *conventional commits* prefix: [quick summary](https://www.conventionalcommits.org/en/v1.0.0/#summary) - We mostly use `feat`, `fix`, `refactor`, `docs`, `chore` and `build` types. - A milestone will be assigned by one of the maintainers --------- Co-authored-by: Paul Gessinger <hello@paulgessinger.com> Co-authored-by: kodiakhq[bot] <49736102+kodiakhq[bot]@users.noreply.github.com>
Reintroduction of acts-project#4400 with the previous typedefs added back in as deprecated. Co-authored-by: Andreas Salzburger <asalzburger@gmail.com>



This PR moves the I/O for material map reading/writing into
Plugins/Rootand removes the duplicated code fromRootMaterialWriterandRootMaterialDecorator.It also harmonizes the usage/definition of
SurfaceMaterialMaps.VolumeMaterialMaps, andDetectorMaterialMapsconsistently by declaring them once.It is backward compatible, and introduces a new, common ROOT I/O material backend that can be shared between all material classes (homongeneous, binned, grid, indexed).
This PR also allows UnitTests to be added for Material writing, the first ones are done with it, and it removes roughly 100 SonarCloud issues, mainly related to how we call and use ROOT.
This will be followed by a PRs doing the same for Volume material and updated Grid based surface material.
The reading gis kept backward-compatible.
--- END COMMIT MESSAGE ---
Any further description goes here, @-mentions are ok here!
feat,fix,refactor,docs,choreandbuildtypes.