TPC Geometry Classes - unified design
EDIT: 2022-09-19
- MpdTpcSectorGeo class was moved into legacy and replaced by ~~~ TpcSectorGeoAZ: public BaseTpcGeo ~~~
- all macros are now calling geometry by dependency injection !392 (merged) !393 (merged)
EDIT: 2022-09-07 - BaseTpcGeometry class will be written. All custom geometry classes will inherit from it.
This class will follow pad numbering as in current MpdTpcSectorGeo class.
For the purposes of not interfering with other developments, the BaseTpcGeometry class will be completely isolated from the rest of the system, until fully tested and ported (together with its derived classes).
Moving to unified TPC consists of:
- removing MpdTpcGeometry classes singleton nature, and replace their singleton instance calls in TPC classes with dependency injection
- creating BaseTpcSectorGeo class based on AZ's pad count reference system
- all Tpc geometry classes must inherit from BaseTpcSectorGeo
We currently have multiple TPC Geometry classes
- in our repository MpdTpcSectorGeo
- @abychkov has MpdTpcSectorGeoV2
- then there is another one for the alignment MpdTpcSectorGeoVK
these must be unified
It's becoming quite an issue, for example I would like to move to comparing 2 different realizations of clustering algo, and they take geometry from different classes with different naming etc.
Edited by Slavomir Hnatic