Skip to content

WIP: Optimize RegistryEntry

Gerhard Raven requested to merge graven/Gaudi:optimize-registryentry into master
  • remove redundant parentEntry() (use existing parent() instead)
  • remove recursive assemblePath() -- instead concatenate fullpath of parent and own path
  • remove createDefaultObject(), use std::make_unique<DataObj>() instead
  • have leaves return a range of (const references to) leaves, instead of returning a const reference to a vector<unique_ptr>
  • make RegistryEntry::leaves(),size(),isEmpty() public (as they exposes less implementation details than already visible through RegistryEntry::begin() and RegistryEntry::end() -- the latter two should be deprecated at some point)
  • prefer direct use of RegistryEntry::leaves() over bouncing to the IDataManagerSvc and using IDataManagerSvc::objectLeaves()
  • prefer direct use of RegistryEntry::parent() over bouncing to the IDataManagerSvc and using IDataManagerSvc::objectParent()
  • streamline creation of new RegistryEntry: require object and datasvc to be passed as constructor arguments, and remove the corresponding setters.
  • remove some unnecessary try / catch(...) blocks

note: this is on top of !661 (merged)

Edited by Gerhard Raven

Merge request reports