CMS 3D CMS Logo

Typedefs | Functions | Variables
edm::graph Namespace Reference

Typedefs

using EdgeToPathMap = std::map< SimpleEdge, std::vector< unsigned int > >
 
using SimpleEdge = std::pair< unsigned int, unsigned int >
 

Functions

void throwIfImproperDependencies (EdgeToPathMap const &, std::vector< std::vector< unsigned int >> const &iPathIndexToModuleIndexOrder, std::vector< std::string > const &iPathNames, std::unordered_map< unsigned int, std::string > const &iModuleIndexToNames)
 

Variables

constexpr auto kDataDependencyIndex = std::numeric_limits<unsigned int>::max()
 
constexpr auto kInvalidIndex = std::numeric_limits<unsigned int>::max()
 

Typedef Documentation

◆ EdgeToPathMap

using edm::graph::EdgeToPathMap = typedef std::map<SimpleEdge, std::vector<unsigned int> >

Definition at line 40 of file throwIfImproperDependencies.h.

◆ SimpleEdge

using edm::graph::SimpleEdge = typedef std::pair<unsigned int, unsigned int>

Definition at line 39 of file throwIfImproperDependencies.h.

Function Documentation

◆ throwIfImproperDependencies()

void edm::graph::throwIfImproperDependencies ( EdgeToPathMap const &  iEdgeToPathMap,
std::vector< std::vector< unsigned int >> const &  iPathIndexToModuleIndexOrder,
std::vector< std::string > const &  iPathNames,
std::unordered_map< unsigned int, std::string > const &  iModuleIndexToNames 
)

Definition at line 502 of file throwIfImproperDependencies.cc.

505  {
506  //Now use boost graph library to find cycles in the dependencies
507  std::vector<SimpleEdge> outList;
508  outList.reserve(iEdgeToPathMap.size());
509  for (auto const& edgeInfo : iEdgeToPathMap) {
510  outList.push_back(edgeInfo.first);
511  }
512 
513  Graph g(outList.begin(), outList.end(), iModuleIndexToNames.size());
514 
515  cycle_detector detector(iEdgeToPathMap, iPathIndexToModuleIndexOrder, iPathNames, iModuleIndexToNames);
516  boost::depth_first_search(g, boost::visitor(detector));
517 }

References hgcalTestNeighbor_cfi::detector, and g.

Referenced by edm::checkForModuleDependencyCorrectness().

Variable Documentation

◆ kDataDependencyIndex

constexpr auto edm::graph::kDataDependencyIndex = std::numeric_limits<unsigned int>::max()
constexpr

◆ kInvalidIndex

constexpr auto edm::graph::kInvalidIndex = std::numeric_limits<unsigned int>::max()
constexpr
hgcalTestNeighbor_cfi.detector
detector
Definition: hgcalTestNeighbor_cfi.py:6
math::Graph< DDLogicalPart, DDPosData * >
g
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 g
Definition: Activities.doc:4