ReferenceCountedObjectPtr has getObject() while ScopedPointer has get(). A template class or template function would have to be specialized to handle both of these (since the name of the routines are different).
Yes, that is a bit messy, and I should probably tidy it up…
But: they both respond to a static_cast to the target type, and that’s probably a more appropriate mechanism to use in templated code anyway, as it’ll also work on raw pointer types.
Ah! Good idea