50 dataHelper_(branchMap_->getLuminosityBlockTree(),
55 throw cms::Exception(
"NoFile")<<
"The TFile pointer passed to the constructor was null";
66 TTree* luminosityBlockTree =
branchMap_->getLuminosityBlockTree();
72 <<
" does not contain a branch named 'LuminosityBlockAuxiliary'";
76 throw cms::Exception(
"OldFileVersion")<<
"The FWLite Luminosity Block code des not support old file versions";
92 branchMap_(branchMap),
96 dataHelper_(branchMap_->getLuminosityBlockTree(),
99 runFactory_(runFactory)
109 TTree* luminosityBlockTree =
branchMap_->getLuminosityBlockTree();
115 <<
" does not contain a branch named 'LuminosityBlockAuxiliary'";
119 throw cms::Exception(
"OldFileVersion")<<
"The FWLite Luminosity Block code des not support old file versions";
139 for(std::vector<char const*>::iterator it =
labels_.begin(), itEnd=
labels_.end();
154 Long_t luminosityBlockIndex =
branchMap_->getLuminosityBlockEntry();
155 if(luminosityBlockIndex <
size())
157 branchMap_->updateLuminosityBlock(++luminosityBlockIndex);
171 return branchMap_->updateLuminosityBlock(entry);
187 return branchMap_->getLuminosityBlockTree()->GetEntries();
193 Long_t luminosityBlockIndex =
branchMap_->getLuminosityBlockEntry();
194 return luminosityBlockIndex!=-1 and luminosityBlockIndex <
size();
206 Long_t luminosityBlockIndex =
branchMap_->getLuminosityBlockEntry();
207 return luminosityBlockIndex==-1
or luminosityBlockIndex ==
size();
213 char const* iModuleLabel,
214 char const* iProductInstanceLabel,
215 char const* iProcessLabel)
const
223 std::type_info
const& iInfo,
224 char const* iModuleLabel,
225 char const* iProductInstanceLabel,
226 char const* iProcessLabel,
229 throw cms::Exception(
"OffEnd")<<
"You have requested data past the last lumi";
231 Long_t lumiIndex =
branchMap_->getLuminosityBlockEntry();
232 return dataHelper_.
getByLabel(iInfo, iModuleLabel, iProductInstanceLabel, iProcessLabel, oData, lumiIndex);
237 char const* iModuleLabel,
238 char const* iProductInstanceLabel,
239 char const* iProcessLabel,
242 throw cms::Exception(
"OffEnd") <<
"You have requested data past the last lumi";
244 Long_t lumiIndex =
branchMap_->getLuminosityBlockEntry();
245 return dataHelper_.
getByLabel(iInfo, iModuleLabel, iProductInstanceLabel, iProcessLabel, holder, lumiIndex);
251 Long_t luminosityBlockIndex =
branchMap_->getLuminosityBlockEntry();
259 if(
auxBranch_->GetEntryNumber() != luminosityBlockIndex) {
274 bool newFormat =
false;
276 Long_t lumiIndex =
branchMap_->getLuminosityBlockEntry();
286 throw cms::Exception(
"NoMetaTree")<<
"The TFile does not appear to contain a TTree named "
293 b->SetAddress(&pPhm);
299 b->SetAddress(&pPhv);
301 for (edm::ProcessHistoryVector::const_iterator
i = historyVector.begin(),
e = historyVector.end();
335 Long_t luminosityBlockIndex =
branchMap_->getLuminosityBlockEntry();
348 <<
"'\n productInstance='"<<((0!=iProduct)?iProduct:
"")<<
"'\n process='"<<((0!=iProcess)?iProcess:
"")<<
"'\n"
349 "but no data is available for this LuminosityBlock";
355 void operator()(
void*){}
std::string const & BranchTypeToAuxiliaryBranchName(BranchType const &branchType)
DataGetterHelper dataHelper_
static void throwProductNotFoundException(std::type_info const &, char const *, char const *, char const *)
The Signals That Services Can Subscribe To This is based on ActivityRegistry and is current per Services can connect to the signals distributed by the ActivityRegistry in order to monitor the activity of the application Each possible callback has some defined which we here list in angle e< void, edm::EventIDconst &, edm::Timestampconst & > We also list in braces which AR_WATCH_USING_METHOD_ is used for those or
bool to(edm::RunNumber_t run, edm::LuminosityBlockNumber_t lumi)
Go to event by Run & LuminosityBlock number.
boost::shared_ptr< fwlite::Run > run_
edm::LuminosityBlockAuxiliary aux_
ProcessHistoryID const & processHistoryID() const
virtual std::string const getBranchNameFor(std::type_info const &, char const *, char const *, char const *) const
ProcessHistoryRegistry::collection_type ProcessHistoryMap
LuminosityBlock(TFile *iFile)
std::string const & luminosityBlockTreeName()
edm::LuminosityBlockAux * pOldAux_
unsigned int LuminosityBlockNumber_t
std::vector< char const * > labels_
boost::shared_ptr< RunFactory > runFactory_
edm::WrapperHolder getByProductID(edm::ProductID const &) const
virtual bool atEnd() const
std::string const & processHistoryMapBranchName()
edm::IndexIntoFile::EntryNumber_t EntryNumber_t
virtual std::string const getBranchNameFor(std::type_info const &, char const *, char const *, char const *) const
fwlite::Run const & getRun() const
std::pair< std::string, MonitorElement * > entry
edm::LuminosityBlockAuxiliary * pAux_
std::vector< std::string > procHistoryNames_
ProcessHistoryRegistry::vector_type ProcessHistoryVector
void fillIndex(BranchMapReader const &branchMap)
std::string const & metaDataTreeName()
std::string className() const
const edm::ProcessHistory & history() const
const LuminosityBlock & operator++()
static EntryNumber_t const invalidEntry
std::string const & processHistoryBranchName()
void updateAux(Long_t lumiIndex) const
void conversion(EventAux const &from, EventAuxiliary &to)
virtual bool getByLabel(std::type_info const &, char const *, char const *, char const *, void *) const
edm::ProcessHistoryMap historyMap_
const LuminosityBlock & toBegin()
virtual bool getByLabel(std::type_info const &, char const *, char const *, char const *, void *, Long_t) const
virtual edm::LuminosityBlockAuxiliary const & luminosityBlockAuxiliary() const
virtual ~LuminosityBlock()
edm::WrapperHolder getByProductID(edm::ProductID const &, Long_t) const
boost::shared_ptr< BranchMapReader > branchMap_
EntryNumber_t findLumi(edm::RunNumber_t const &run, edm::LuminosityBlockNumber_t const &lumi) const