Skip to content

23.0-cleanup-PixelCalibAlgs

Shaun Roe requested to merge sroe/athena:23.0-cleanup-PixelCalibAlgs into master

image

This cleanup is not full and has one basic aim: To reduce the cyclomatic complexity of InnerDetector/InDetCalibAlgs/PixelCalibAlgs/ChargeCalibration/ibl/pixelMapping.h, which currently stands at 2049 and which appears to be killing my cppcheck runs,extending the run time to over three days.

Along the way I discovered that this file appears, identically, twice in the code in two different paths of the same package. The algorithm has been rationalised using std::array and std::find (there may be better ways, if performance is an issue). Further, the two files were combined in one in a new path of the package which I have called 'common'. With the changes in place, the CC is reduced to 2.

In addition to this there is a python executable in the package (recover.py) which parses the .h file to obtain a list of module names. This has been updated to reflect the new algorithm in the file, but remains extremely fragile; code reformatting would break the executable. A JIRA ticket has been created to address this: ATLASRECTS-7418

Edited by Johannes Junggeburth

Merge request reports