acts: Fatal Error in local-to-global transformations
Sometimes when running the Acts::Propagator
, there are cases where the CovarianceEngine
throws a fatal error when trying to perform a global to local transformation here. This fatal error throws an exception and then immediately stops the code from continuing to process, rather than just returning an error message and continuing. I think it would be an improvement if instead an error message was thrown that could be caught at the user level of the API, e.g. as in
auto result = propagator.propagate(arguments);
/// If there was this global-to-local transformation problem, then result.ok() == false
if(!result.ok())
/// The user can then do whatever they want to here
std::cout << "there was a global to local transformation problem" << result.error() << std::endl;
This way the error does not crash the code and the user can handle it however they want (e.g. by skipping that particular propagation).
About this issue
- Original URL
- State: closed
- Created 4 years ago
- Comments: 26 (23 by maintainers)
Ok. I think this function should in turn use
Result
to let the error bubble up if it encounters one.I will put it on my list for Thursday, so I hope we can check/update this by the end of the week.