Reorganize into higher level module folders
Closes #594 (closed)
Here's the proposed new organisation for the Core modules:
| Module | Content | Comment |
|---|---|---|
Surfaces |
all top level surface classes and surface bounds | separated from rest of geometry because of EDM bindings |
Geometry |
all other geometry calls and geometry building tools |
GeometryID, GeometryContext moved from Utilities
|
EventData |
all event data objects | |
Material |
all material classes and material mapping tools |
MaterialInteractor to stay in Propagation
|
MagneticField |
all magnetic field related classes |
MagneticFieldContext, MagFieldUtils from Utilities
|
Propagator |
all propagation and extrapolation classes | including Navigator etc |
Fitter |
all fitting classes | KalmanFitter, GSF, etc. |
Seeding |
everything with seeding | might need a renaming to pattern recognition ? |
Vertexing |
everything with and for vertexing | |
Utilities |
the original utilities container |
The exact same modules should then also appear on the webpage (I have started working on this) as Core modules and in the Tests container.
Then, plugins should indicate some external dependency, e.g.
-
TGeoPlugin: binding toTGeogeometry -
DD4hepPlugin: binding toDD4h4pgeometry -
GeoModelPlugin: binding toGeoModelgeometry -
RootPlugin: binding torootreaders/writers -
JsonPlugin: json based reading/writing
In a follow-up MR, the following Plugins will disappear:
-
DigitizationPlugin: code will split intoacts-core/Corefor the SpacePoint building andacts-fatrasfor the digitisation -
IdentifiacationPlugin: not needed anymore afterDigitizationPlugingoes
Edited by Andreas Salzburger