Introduce common NotImplemented exception and display its stacktrace
Introduce common NotImplemented exception and display its stacktrace: in case a method is not implemented, the current printout ends up in the gaudi log:
ConditionDepend... ERROR +++ Exception while creating dependent Condition /world#AlgorithmSpecific-MuonRawToHits-TilePositionCalculator:
ConditionDepend... ERROR not implemented
with this MR, one gets for example:
ConditionDepend... ERROR +++ Exception while creating dependent Condition /world#AlgorithmSpecific-MuonRawToHits-TilePositionCalculator:
ConditionDepend... ERROR Not implemented:
#1 0x7fab2cacff98 LHCb::Detector::DeMuonElement<LHCb::Detector::detail::DeMuonObject>::position(LHCb::Detector::Muon::TileID) const [/home/lben/develop/geoinfo/LHCb/build.x86_64_v2-centos7-gcc11+dd4hep-dbg/Det/MuonDet/libMuonDetLib.so]
#2 0x7fab2cace32a LHCb::Muon::ComputeTilePosition::ComputeTilePosition(LHCb::Detector::DeMuonElement<LHCb::Detector::detail::DeMuonObject> const&) [/home/lben/develop/geoinfo/LHCb/build.x86_64_v2-centos7-gcc11+dd4hep-dbg/Det/MuonDet/libMuonDetLib.so]
#3 0 local [/home/lben/develop/geoinfo/LHCb/build.x86_64_v2-centos7-gcc11+dd4hep-dbg/Muon/MuonDAQ/libMuonDAQ.so]
#4 0x7fab05b35e9a LHCb::Det::LbDD4hep::GenericConditionUpdateCall::GenericConditionUpdateCall<LHCb::Muon::ComputeTilePosition (*)(LHCb::Detector::DeMuonElement<LHCb::Detector::detail::DeMuonObject> const&)>(LHCb::Muon::ComputeTilePosition (*)(LHCb::Detector::DeMuonElement<LHCb::Detector::detail::DeMuonObject> const&), std::experimental::fundamentals_v2::source_location)::{lambda(dd4hep::detail::ConditionObject*, dd4hep::cond::ConditionUpdateContext const&)#1}::operator()(dd4hep::detail::ConditionObject*, dd4hep::cond::ConditionUpdateContext const&) const [/home/lben/develop/geoinfo/LHCb/build.x86_64_v2-centos7-gcc11+dd4hep-dbg/Muon/MuonDAQ/libMuonDAQ.so]
#5 0x7fab05b361cf std::_Function_handler<void (dd4hep::detail::ConditionObject*, dd4hep::cond::ConditionUpdateContext&), LHCb::Det::LbDD4hep::GenericConditionUpdateCall::GenericConditionUpdateCall<LHCb::Muon::ComputeTilePosition (*)(LHCb::Detector::DeMuonElement<LHCb::Detector::detail::DeMuonObject> const&)>(LHCb::Muon::ComputeTilePosition (*)(LHCb::Detector::DeMuonElement<LHCb::Detector::detail::DeMuonObject> const&), std::experimental::fundamentals_v2::source_location)::{lambda(dd4hep::detail::ConditionObject*, dd4hep::cond::ConditionUpdateContext const&)#1}>::_M_invoke(std::_Any_data const&, dd4hep::detail::ConditionObject*&&, dd4hep::cond::ConditionUpdateContext&) [/home/lben/develop/geoinfo/LHCb/build.x86_64_v2-centos7-gcc11+dd4hep-dbg/Muon/MuonDAQ/libMuonDAQ.so]
#6 0x7fab05dbc98c LHCb::Det::LbDD4hep::GenericConditionUpdateCall::operator()(dd4hep::ConditionKey const&, dd4hep::cond::ConditionUpdateContext&) [/home/lben/develop/geoinfo/LHCb/build.x86_64_v2-centos7-gcc11+dd4hep-dbg/Det/LbDD4hep/libLbDD4hep.so]
#7 0x7fab232f0ef8 dd4hep::cond::ConditionsDependencyHandler::do_callback(dd4hep::cond::ConditionsDependencyHandler::Work*) [/cvmfs/lhcb.cern.ch/lib/lcg/releases/DD4hep/01.19-e2ca1/x86_64-centos7-gcc11-dbg/lib/libDDCond.so.1.19]
#8 0x7fab232f02e0 dd4hep::cond::ConditionsDependencyHandler::compute() [/cvmfs/lhcb.cern.ch/lib/lcg/releases/DD4hep/01.19-e2ca1/x86_64-centos7-gcc11-dbg/lib/libDDCond.so.1.19]
#9 0x7fab059a8da4 dd4hep::cond::ConditionsMappedUserPool<std::map<unsigned long long, dd4hep::detail::ConditionObject*, std::less<unsigned long long>, std::allocator<std::pair<unsigned long long const, dd4hep::detail::ConditionObject*> > > >::compute(dd4hep::IOV const&, dd4hep::cond::ConditionsSlice&, dd4hep::cond::ConditionUpdateUserContext*) [/cvmfs/lhcb.cern.ch/lib/lcg/releases/DD4hep/01.19-e2ca1/x86_64-centos7-gcc11-dbg/lib/libDDCondPlugins.so.1.19]
#10 0x7fab0597ad28 dd4hep::cond::Manager_Type1::compute(dd4hep::IOV const&, dd4hep::cond::ConditionsSlice&, dd4hep::cond::ConditionUpdateUserContext*) [/cvmfs/lhcb.cern.ch/lib/lcg/releases/DD4hep/01.19-e2ca1/x86_64-centos7-gcc11-dbg/lib/libDDCondPlugins.so.1.19]
#11 0x7fab232fb69c dd4hep::cond::ConditionsManager::compute(dd4hep::IOV const&, dd4hep::cond::ConditionsSlice&, dd4hep::cond::ConditionUpdateUserContext*) const [/cvmfs/lhcb.cern.ch/lib/lcg/releases/DD4hep/01.19-e2ca1/x86_64-centos7-gcc11-dbg/lib/libDDCond.so.1.19]
#12 0x7fab238400fc LHCb::Detector::DetectorDataService::load_slice(unsigned long) [/home/lben/develop/geoinfo/Detector/InstallArea/x86_64_v2-centos7-gcc11+dd4hep-dbg/lib/libDetectorLib.so]
#13 0x7fab238404e0 LHCb::Detector::DetectorDataService::get_slice(unsigned long) [/home/lben/develop/geoinfo/Detector/InstallArea/x86_64_v2-centos7-gcc11+dd4hep-dbg/lib/libDetectorLib