29 inputType_(inputType),
30 wrapperBaseTClass_(TClass::GetClass(
"edm::WrapperBase")) {
53 return std::shared_ptr<WrapperBase>();
56 TBranch*
br = branchInfo->productBranch_;
61 return std::shared_ptr<WrapperBase>();
67 std::shared_ptr<void> refCoreStreamerGuard(
nullptr, [](
void*) {
71 TClass*
cp = branchInfo->classCache_;
73 branchInfo->classCache_ = TClass::GetClass(branchInfo->branchDescription_.wrappedName().c_str());
74 cp = branchInfo->classCache_;
78 std::unique_ptr<WrapperBase> edp =
getWrapperBasePtr(
p, branchInfo->offsetToWrapperBase_);
84 exception.addContext(
"Rethrowing an exception that happened on a different thread.");