Definition at line 63 of file TFWLiteSelectorBasic.cc.
edm::root::FWLiteDelayedReader::FWLiteDelayedReader |
( |
| ) |
|
|
inline |
std::unique_ptr< WrapperBase > edm::root::FWLiteDelayedReader::getTheProduct |
( |
BranchKey const & |
k | ) |
const |
|
private |
Definition at line 88 of file TFWLiteSelectorBasic.cc.
References edm::ObjectWithDict::address(), edm::BranchDescription::branchName(), edm::TypeWithDict::byName(), edm::ObjectWithDict::castObject(), edm::BranchDescription::className(), entry_, eventTree_, Exception, newFWLiteAna::fullName, relval_2017::k, parseEventContent::prod, edm::errors::ProductNotFound, AlCaHLTBitMon_QueryRunRegistry::string, and edm::wrappedClassName().
Referenced by getProduct_().
89 ProductRegistry::ProductList::const_iterator itFind= reg_->productList().find(
k);
90 if(itFind == reg_->productList().end()) {
93 BranchDescription
const& bDesc = itFind->second;
95 TBranch* branch=
eventTree_->GetBranch(bDesc.branchName().c_str());
96 if(
nullptr == branch) {
98 <<
"could not find branch named '" << bDesc.branchName() <<
"'"
99 <<
"\n Perhaps the data being requested was not saved in this file?";
104 if(!
bool(classType)) {
106 <<
"could not find dictionary for type '" << fullName <<
"'"
107 <<
"\n Please make sure all the necessary libraries are available.";
111 ObjectWithDict wrapperObj = classType.construct();
112 if(
nullptr == wrapperObj.address()) {
113 throw cms::Exception(
"FailedToCreate") <<
"could not create an instance of '" << fullName <<
"'";
115 void* address = wrapperObj.address();
116 branch->SetAddress(&address);
119 WrapperBase*
prod =
reinterpret_cast<WrapperBase*
>(edProdObj.address());
121 if(
nullptr == prod) {
123 <<
"failed to convert a '" << fullName
124 <<
"' to a edm::WrapperBase."
125 <<
"Please contact developers since something is very wrong.";
128 return std::unique_ptr<WrapperBase>(
prod);
static TypeWithDict byName(std::string const &name)
std::string wrappedClassName(std::string const &iFullName)
virtual void edm::root::FWLiteDelayedReader::mergeReaders_ |
( |
DelayedReader * |
| ) |
|
|
inlineoverrideprivatevirtual |
virtual void edm::root::FWLiteDelayedReader::reset_ |
( |
| ) |
|
|
inlineoverrideprivatevirtual |
void edm::root::FWLiteDelayedReader::set |
( |
std::shared_ptr< ProductRegistry const > |
iReg | ) |
|
|
inline |
void edm::root::FWLiteDelayedReader::setEntry |
( |
Long64_t |
iEntry | ) |
|
|
inline |
void edm::root::FWLiteDelayedReader::setTree |
( |
TTree * |
iTree | ) |
|
|
inline |
edm::root::FWLiteDelayedReader::std::shared_ptr |
( |
reg_ |
| ) |
|
|
private |
Long64_t edm::root::FWLiteDelayedReader::entry_ |
|
private |
TTree* edm::root::FWLiteDelayedReader::eventTree_ |
|
private |