Surface : Add by value local to global methods
requested to merge ATLAS-EGamma/athena:Surface_allow_localtoGlobal_globalToLocal_with_with_RVO into master
Mentioning @oda.
It seems that we do a few possible avoidable allocation when calling the local to global methods.
-
Add a set of functions
localtoGlobalPos
that return by value , no memory allocation. -
Tag the methods that perform memory allocation and explain it in the comments
-
Also since the caller is the owner of the allocated parameters, they are not shared and the caller has to do the delete, not need to be
const
(there is no sharing so no MT issues).
Edited by Christos Anastopoulos