CMS 3D CMS Logo

SubProcessBlockHelper.cc
Go to the documentation of this file.
2 
6 
7 #include <cassert>
8 #include <string>
9 
10 namespace edm {
11 
13 
14  std::vector<std::string> const& SubProcessBlockHelper::topProcessesWithProcessBlockProducts() const {
16  }
17 
20  }
21 
22  std::vector<std::vector<unsigned int>> const& SubProcessBlockHelper::processBlockCacheIndices() const {
24  }
25 
26  std::vector<std::vector<unsigned int>> const& SubProcessBlockHelper::nEntries() const {
28  }
29 
30  std::vector<unsigned int> const& SubProcessBlockHelper::cacheIndexVectorsPerFile() const {
32  }
33 
34  std::vector<unsigned int> const& SubProcessBlockHelper::cacheEntriesPerFile() const {
36  }
37 
39  std::string const& processName, EventToProcessBlockIndexes const& eventToProcessBlockIndexes) const {
40  return topProcessBlockHelper_->processBlockIndex(processName, eventToProcessBlockIndexes);
41  }
42 
44 
46  ProductRegistry const& productRegistry) {
47  topProcessBlockHelper_ = parentProcessBlockHelper.topProcessBlockHelper();
48 
49  // If a SubProcess keeps any ProcessBlock products from its parent process, then insert their
50  // process names.
52  for (auto const& processName : parentProcessBlockHelper.processesWithProcessBlockProducts()) {
53  for (auto const& item : productRegistry.productList()) {
54  BranchDescription const& desc = item.second;
55  if (desc.branchType() == InProcess && desc.present() && desc.processName() == processName) {
57  break;
58  }
59  }
60  }
61 
62  // Repeat for addedProcesses
64  for (auto const& processName : parentProcessBlockHelper.addedProcesses()) {
65  for (auto const& item : productRegistry.productList()) {
66  BranchDescription const& desc = item.second;
67  if (desc.branchType() == InProcess && desc.present() && desc.processName() == processName) {
69  break;
70  }
71  }
72  }
73  }
74 
75 } // namespace edm
edm::SubProcessBlockHelper::processBlockCacheIndices
std::vector< std::vector< unsigned int > > const & processBlockCacheIndices() const final
Definition: SubProcessBlockHelper.cc:22
edm::ProcessBlockHelperBase::topProcessBlockHelper
virtual ProcessBlockHelperBase const * topProcessBlockHelper() const =0
edm::EventToProcessBlockIndexes
Definition: EventToProcessBlockIndexes.h:12
BranchType.h
SubProcessBlockHelper.h
edm::SubProcessBlockHelper::cacheEntriesPerFile
std::vector< unsigned int > const & cacheEntriesPerFile() const final
Definition: SubProcessBlockHelper.cc:34
edm
HLT enums.
Definition: AlignableModifier.h:19
edm::ProcessBlockHelperBase::outerOffset
virtual unsigned int outerOffset() const =0
cms::cuda::assert
assert(be >=bs)
edm::ProcessBlockHelperBase::nProcessesInFirstFile
virtual unsigned int nProcessesInFirstFile() const =0
edm::ProcessBlockHelperBase::emplaceBackAddedProcessName
void emplaceBackAddedProcessName(std::string const &processName)
Definition: ProcessBlockHelperBase.h:34
ProductRegistry.h
edm::ProcessBlockHelperBase::cacheIndexVectorsPerFile
virtual std::vector< unsigned int > const & cacheIndexVectorsPerFile() const =0
edm::SubProcessBlockHelper::nProcessesInFirstFile
unsigned int nProcessesInFirstFile() const final
Definition: SubProcessBlockHelper.cc:18
edm::ProcessBlockHelperBase::addedProcesses
std::vector< std::string > const & addedProcesses() const
Definition: ProcessBlockHelperBase.h:32
edm::ProductRegistry
Definition: ProductRegistry.h:37
edm::InProcess
Definition: BranchType.h:11
edm::SubProcessBlockHelper::updateFromParentProcess
void updateFromParentProcess(ProcessBlockHelperBase const &parentProcessBlockHelper, ProductRegistry const &)
Definition: SubProcessBlockHelper.cc:45
edm::SubProcessBlockHelper::nEntries
std::vector< std::vector< unsigned int > > const & nEntries() const final
Definition: SubProcessBlockHelper.cc:26
BranchDescription.h
edm::ProcessBlockHelperBase
Definition: ProcessBlockHelperBase.h:18
edm::ProcessBlockHelperBase::processBlockIndex
virtual unsigned int processBlockIndex(std::string const &processName, EventToProcessBlockIndexes const &) const =0
edm::ProcessBlockHelperBase::processesWithProcessBlockProducts
std::vector< std::string > const & processesWithProcessBlockProducts() const
Definition: ProcessBlockHelperBase.h:22
edm::ProcessBlockHelperBase::cacheEntriesPerFile
virtual std::vector< unsigned int > const & cacheEntriesPerFile() const =0
B2GTnPMonitor_cfi.item
item
Definition: B2GTnPMonitor_cfi.py:147
edm::SubProcessBlockHelper::topProcessBlockHelper
ProcessBlockHelperBase const * topProcessBlockHelper() const final
Definition: SubProcessBlockHelper.cc:12
AlCaHLTBitMon_QueryRunRegistry.string
string string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
edm::SubProcessBlockHelper::cacheIndexVectorsPerFile
std::vector< unsigned int > const & cacheIndexVectorsPerFile() const final
Definition: SubProcessBlockHelper.cc:30
SimL1EmulatorRepack_CalouGT_cff.processName
processName
Definition: SimL1EmulatorRepack_CalouGT_cff.py:17
edm::ProcessBlockHelperBase::processBlockCacheIndices
virtual std::vector< std::vector< unsigned int > > const & processBlockCacheIndices() const =0
submitPVResolutionJobs.desc
string desc
Definition: submitPVResolutionJobs.py:251
edm::ProductRegistry::productList
ProductList const & productList() const
Definition: ProductRegistry.h:76
relativeConstraints.empty
bool empty
Definition: relativeConstraints.py:46
edm::SubProcessBlockHelper::topProcessBlockHelper_
ProcessBlockHelperBase const * topProcessBlockHelper_
Definition: SubProcessBlockHelper.h:32
edm::SubProcessBlockHelper::outerOffset
unsigned int outerOffset() const final
Definition: SubProcessBlockHelper.cc:43
edm::BranchDescription
Definition: BranchDescription.h:32
edm::ProcessBlockHelperBase::emplaceBackProcessName
void emplaceBackProcessName(std::string const &processName)
Definition: ProcessBlockHelperBase.h:28
edm::SubProcessBlockHelper::topProcessesWithProcessBlockProducts
std::vector< std::string > const & topProcessesWithProcessBlockProducts() const final
Definition: SubProcessBlockHelper.cc:14
edm::ProcessBlockHelperBase::nEntries
virtual std::vector< std::vector< unsigned int > > const & nEntries() const =0
edm::SubProcessBlockHelper::processBlockIndex
unsigned int processBlockIndex(std::string const &processName, EventToProcessBlockIndexes const &) const final
Definition: SubProcessBlockHelper.cc:38