Definition at line 62 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 87 of file TFWLiteSelectorBasic.cc.
References edm::ObjectWithDict::address(), edm::BranchDescription::branchName(), edm::TypeWithDict::byName(), edm::ObjectWithDict::castObject(), edm::BranchDescription::className(), entry_, eventTree_, edm::hlt::Exception, newFWLiteAna::fullName, relval_steps::k, parseEventContent::prod, edm::errors::ProductNotFound, AlCaHLTBitMon_QueryRunRegistry::string, and edm::wrappedClassName().
Referenced by getProduct_().
88 ProductRegistry::ProductList::const_iterator itFind= reg_->productList().find(
k);
89 if(itFind == reg_->productList().end()) {
92 BranchDescription
const& bDesc = itFind->second;
94 TBranch* branch=
eventTree_->GetBranch(bDesc.branchName().c_str());
95 if(
nullptr == branch) {
97 <<
"could not find branch named '" << bDesc.branchName() <<
"'"
98 <<
"\n Perhaps the data being requested was not saved in this file?";
103 if(!
bool(classType)) {
105 <<
"could not find dictionary for type '" << fullName <<
"'"
106 <<
"\n Please make sure all the necessary libraries are available.";
110 ObjectWithDict wrapperObj = classType.construct();
111 if(
nullptr == wrapperObj.address()) {
112 throw cms::Exception(
"FailedToCreate") <<
"could not create an instance of '" << fullName <<
"'";
114 void* address = wrapperObj.address();
115 branch->SetAddress(&address);
118 WrapperBase*
prod =
reinterpret_cast<WrapperBase*
>(edProdObj.address());
120 if(
nullptr == prod) {
122 <<
"failed to convert a '" << fullName
123 <<
"' to a edm::WrapperBase."
124 <<
"Please contact developers since something is very wrong.";
127 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 |