1 #ifndef FWCore_Framework_PathsAndConsumesOfModules_h 2 #define FWCore_Framework_PathsAndConsumesOfModules_h 29 class ModuleDescription;
30 class ProductRegistry;
43 unsigned int moduleID)
const;
46 std::vector<std::string>
const&
doPaths()
const override {
return paths_; }
52 std::vector<ModuleDescription const*>
const&
doModulesOnPath(
unsigned int pathIndex)
const override;
53 std::vector<ModuleDescription const*>
const&
doModulesOnEndPath(
unsigned int endPathIndex)
const override;
55 unsigned int moduleID,
BranchType branchType)
const override;
57 std::vector<ConsumesInfo>
doConsumesInfo(
unsigned int moduleID)
const override;
61 unsigned int moduleIndex(
unsigned int moduleID)
const;
81 std::shared_ptr<ProductRegistry const>
preg_;
std::vector< ModuleDescription const * > const & doAllModules() const override
unsigned int doLargestModuleID() const override
std::array< std::vector< std::vector< ModuleDescription const * > >, NumBranchTypes > modulesWhoseProductsAreConsumedBy_
std::vector< ModuleProcessName > const & modulesInPreviousProcessesWhoseProductsAreConsumedBy(unsigned int moduleID) const
std::vector< std::pair< unsigned int, unsigned int > > moduleIDToIndex_
std::vector< ModuleDescription const * > const & doModulesWhoseProductsAreConsumedBy(unsigned int moduleID, BranchType branchType) const override
std::vector< ModuleDescription const * > allModuleDescriptions_
std::vector< std::string > paths_
ModuleDescription const * doModuleDescription(unsigned int moduleID) const override
std::vector< std::string > const & doEndPaths() const override
std::vector< std::vector< ModuleDescription const * > > modulesOnPaths_
std::vector< std::vector< ModuleProcessName > > modulesInPreviousProcessesWhoseProductsAreConsumedBy_
std::vector< ModuleDescription const * > const & doModulesOnPath(unsigned int pathIndex) const override
void initialize(Schedule const *, std::shared_ptr< ProductRegistry const >)
std::vector< ModuleDescription const * > nonConsumedUnscheduledModules(edm::PathsAndConsumesOfModulesBase const &iPnC, std::vector< ModuleProcessName > &consumedByChildren)
std::vector< std::string > endPaths_
void checkForModuleDependencyCorrectness(edm::PathsAndConsumesOfModulesBase const &iPnC, bool iPrintDependencies)
std::vector< std::string > const & doPaths() const override
std::shared_ptr< ProductRegistry const > preg_
~PathsAndConsumesOfModules() override
Schedule const * schedule_
unsigned int moduleIndex(unsigned int moduleID) const
PathsAndConsumesOfModules()
void removeModules(std::vector< ModuleDescription const *> const &modules)
std::vector< ConsumesInfo > doConsumesInfo(unsigned int moduleID) const override
std::vector< ModuleDescription const * > const & doModulesOnEndPath(unsigned int endPathIndex) const override
std::vector< std::vector< ModuleDescription const * > > modulesOnEndPaths_