#include <PrincipalCache.h>
Public Types | |
enum | ProcessBlockType { ProcessBlockType::New, ProcessBlockType::Input } |
Public Member Functions | |
void | adjustEventsToNewProductRegistry (std::shared_ptr< ProductRegistry const >) |
void | adjustIndexesAfterProductRegistryAddition () |
EventPrincipal & | eventPrincipal (unsigned int iStreamIndex) const |
std::shared_ptr< LuminosityBlockPrincipal > | getAvailableLumiPrincipalPtr () |
std::shared_ptr< RunPrincipal > | getAvailableRunPrincipalPtr () |
ProcessBlockPrincipal & | inputProcessBlockPrincipal () const |
void | insert (std::unique_ptr< ProcessBlockPrincipal >) |
void | insert (std::unique_ptr< RunPrincipal >) |
void | insert (std::unique_ptr< LuminosityBlockPrincipal >) |
void | insert (std::shared_ptr< EventPrincipal >) |
void | insertForInput (std::unique_ptr< ProcessBlockPrincipal >) |
PrincipalCache () | |
PrincipalCache (PrincipalCache &&)=default | |
ProcessBlockPrincipal & | processBlockPrincipal () const |
ProcessBlockPrincipal & | processBlockPrincipal (ProcessBlockType processBlockType) const |
void | setNumberOfConcurrentPrincipals (PreallocationConfiguration const &) |
~PrincipalCache () | |
Private Attributes | |
std::vector< std::shared_ptr< EventPrincipal > > | eventPrincipals_ |
std::unique_ptr< ProcessBlockPrincipal > | inputProcessBlockPrincipal_ |
edm::ReusableObjectHolder< LuminosityBlockPrincipal > | lumiHolder_ |
std::unique_ptr< ProcessBlockPrincipal > | processBlockPrincipal_ |
edm::ReusableObjectHolder< RunPrincipal > | runHolder_ |
Definition at line 28 of file PrincipalCache.h.
|
strong |
edm::PrincipalCache::PrincipalCache | ( | ) |
Definition at line 13 of file PrincipalCache.cc.
edm::PrincipalCache::~PrincipalCache | ( | ) |
Definition at line 15 of file PrincipalCache.cc.
|
default |
void edm::PrincipalCache::adjustEventsToNewProductRegistry | ( | std::shared_ptr< ProductRegistry const > | reg | ) |
Definition at line 43 of file PrincipalCache.cc.
References edm::Principal::adjustIndexesAfterProductRegistryAddition(), edm::Principal::adjustToNewProductRegistry(), cms::cuda::assert(), eventPrincipal(), and eventPrincipals_.
Referenced by edm::test::TestSourceProcessor::openFile(), and edm::EventProcessor::readFile().
void edm::PrincipalCache::adjustIndexesAfterProductRegistryAddition | ( | ) |
Definition at line 53 of file PrincipalCache.cc.
References lumiHolder_, eostools::move(), AlCaHLTBitMon_ParallelJobs::p, and runHolder_.
Referenced by edm::test::TestSourceProcessor::openFile(), and edm::EventProcessor::readFile().
|
inline |
Definition at line 45 of file PrincipalCache.h.
References eventPrincipals_.
Referenced by adjustEventsToNewProductRegistry(), edm::EventProcessor::beginLumiAsync(), edm::test::TestProcessor::event(), edm::SubProcess::processAsync(), edm::EventProcessor::processEventAsyncImpl(), edm::test::TestSourceProcessor::readEvent(), edm::EventProcessor::readEvent(), and edm::test::TestProcessor::testImpl().
std::shared_ptr< LuminosityBlockPrincipal > edm::PrincipalCache::getAvailableLumiPrincipalPtr | ( | ) |
Definition at line 19 of file PrincipalCache.cc.
References lumiHolder_.
Referenced by edm::test::TestProcessor::beginLuminosityBlock(), edm::SubProcess::doBeginLuminosityBlockAsync(), edm::test::TestSourceProcessor::readLuminosityBlock(), and edm::EventProcessor::readLuminosityBlock().
std::shared_ptr< RunPrincipal > edm::PrincipalCache::getAvailableRunPrincipalPtr | ( | ) |
Definition at line 17 of file PrincipalCache.cc.
References runHolder_.
Referenced by edm::test::TestProcessor::beginRun(), edm::SubProcess::doBeginRunAsync(), edm::test::TestSourceProcessor::readRun(), and edm::EventProcessor::readRun().
|
inline |
Definition at line 35 of file PrincipalCache.h.
References inputProcessBlockPrincipal_.
Referenced by edm::SubProcess::doBeginProcessBlockAsync(), edm::SubProcess::doEndProcessBlockAsync(), edm::EventProcessor::inputProcessBlocks(), and edm::test::TestSourceProcessor::openFile().
void edm::PrincipalCache::insert | ( | std::unique_ptr< ProcessBlockPrincipal > | pb | ) |
Definition at line 27 of file PrincipalCache.cc.
References eostools::move(), and processBlockPrincipal_.
Referenced by SequenceTypes.Schedule::_replaceIfHeldDirectly(), edm::EventProcessor::init(), edm::SubProcess::SubProcess(), edm::test::TestProcessor::TestProcessor(), and edm::test::TestSourceProcessor::TestSourceProcessor().
void edm::PrincipalCache::insert | ( | std::unique_ptr< RunPrincipal > | rp | ) |
Definition at line 33 of file PrincipalCache.cc.
References eostools::move(), and runHolder_.
Referenced by SequenceTypes.Schedule::_replaceIfHeldDirectly().
void edm::PrincipalCache::insert | ( | std::unique_ptr< LuminosityBlockPrincipal > | lbp | ) |
Definition at line 35 of file PrincipalCache.cc.
References lumiHolder_, and eostools::move().
Referenced by SequenceTypes.Schedule::_replaceIfHeldDirectly().
void edm::PrincipalCache::insert | ( | std::shared_ptr< EventPrincipal > | ep | ) |
Definition at line 37 of file PrincipalCache.cc.
References cms::cuda::assert(), SiStripBadComponentsDQMServiceTemplate_cfg::ep, and eventPrincipals_.
Referenced by SequenceTypes.Schedule::_replaceIfHeldDirectly().
void edm::PrincipalCache::insertForInput | ( | std::unique_ptr< ProcessBlockPrincipal > | pb | ) |
Definition at line 29 of file PrincipalCache.cc.
References inputProcessBlockPrincipal_, and eostools::move().
Referenced by edm::EventProcessor::init(), and edm::SubProcess::SubProcess().
|
inline |
Definition at line 34 of file PrincipalCache.h.
References processBlockPrincipal_.
Referenced by edm::EventProcessor::beginProcessBlock(), edm::test::TestProcessor::beginProcessBlock(), edm::SubProcess::clearProcessBlockPrincipal(), edm::SubProcess::doBeginProcessBlockAsync(), edm::SubProcess::doEndProcessBlockAsync(), edm::EventProcessor::endProcessBlock(), edm::test::TestProcessor::endProcessBlock(), edm::test::TestProcessor::testBeginProcessBlockImpl(), edm::SubProcess::writeProcessBlockAsync(), and edm::EventProcessor::writeProcessBlockAsync().
|
inline |
Definition at line 38 of file PrincipalCache.h.
References Input, inputProcessBlockPrincipal_, and processBlockPrincipal_.
void edm::PrincipalCache::setNumberOfConcurrentPrincipals | ( | PreallocationConfiguration const & | iConfig | ) |
Definition at line 23 of file PrincipalCache.cc.
References eventPrincipals_, and edm::PreallocationConfiguration::numberOfStreams().
Referenced by edm::EventProcessor::init(), edm::SubProcess::SubProcess(), edm::test::TestProcessor::TestProcessor(), and edm::test::TestSourceProcessor::TestSourceProcessor().
|
private |
Definition at line 63 of file PrincipalCache.h.
Referenced by adjustEventsToNewProductRegistry(), eventPrincipal(), insert(), and setNumberOfConcurrentPrincipals().
|
private |
Definition at line 60 of file PrincipalCache.h.
Referenced by inputProcessBlockPrincipal(), insertForInput(), and processBlockPrincipal().
|
private |
Definition at line 62 of file PrincipalCache.h.
Referenced by adjustIndexesAfterProductRegistryAddition(), getAvailableLumiPrincipalPtr(), and insert().
|
private |
Definition at line 59 of file PrincipalCache.h.
Referenced by insert(), and processBlockPrincipal().
|
private |
Definition at line 61 of file PrincipalCache.h.
Referenced by adjustIndexesAfterProductRegistryAddition(), getAvailableRunPrincipalPtr(), and insert().