CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
edm::ScheduleInfo Class Reference

#include <ScheduleInfo.h>

Public Member Functions

void availableModuleLabels (std::vector< std::string > &oLabelsToFill) const
 adds to oLabelsToFill the labels for all modules used in the process More...
 
void availablePaths (std::vector< std::string > &oLabelsToFill) const
 adds to oLabelsToFill the labels for all paths in the process More...
 
void modulesInPath (const std::string &iPathLabel, std::vector< std::string > &oLabelsToFill) const
 add to oLabelsToFill in execution order the labels of all modules in path iPathLabel More...
 
const edm::ParameterSetparametersForModule (const std::string &iLabel) const
 
 ScheduleInfo (const Schedule *)
 
virtual ~ScheduleInfo ()
 

Private Attributes

const Scheduleschedule_
 

Detailed Description

Definition at line 32 of file ScheduleInfo.h.

Constructor & Destructor Documentation

ScheduleInfo::ScheduleInfo ( const Schedule iSchedule)

Definition at line 37 of file ScheduleInfo.cc.

37  :
38 schedule_(iSchedule)
39 {
40 }
const Schedule * schedule_
Definition: ScheduleInfo.h:64
ScheduleInfo::~ScheduleInfo ( )
virtual

Definition at line 47 of file ScheduleInfo.cc.

48 {
49 }

Member Function Documentation

void ScheduleInfo::availableModuleLabels ( std::vector< std::string > &  oLabelsToFill) const

adds to oLabelsToFill the labels for all modules used in the process

Definition at line 71 of file ScheduleInfo.cc.

References edm::Schedule::getAllModuleDescriptions(), edm::ModuleDescription::moduleLabel(), schedule_, and create_public_lumi_plots::transform.

72 {
73  std::vector<ModuleDescription const*> desc = schedule_->getAllModuleDescriptions();
74 
75  oLabelsToFill.reserve(oLabelsToFill.size()+desc.size());
76  std::transform(desc.begin(),desc.end(),
77  std::back_inserter(oLabelsToFill),
78  boost::bind(&ModuleDescription::moduleLabel,_1));
79 }
std::string const & moduleLabel() const
std::vector< ModuleDescription const * > getAllModuleDescriptions() const
Definition: Schedule.cc:956
const Schedule * schedule_
Definition: ScheduleInfo.h:64
void ScheduleInfo::availablePaths ( std::vector< std::string > &  oLabelsToFill) const

adds to oLabelsToFill the labels for all paths in the process

Definition at line 98 of file ScheduleInfo.cc.

References edm::Schedule::availablePaths(), and schedule_.

Referenced by FWPSetTableManager::updateSchedule().

99 {
100  schedule_->availablePaths(oLabelsToFill);
101 }
void availablePaths(std::vector< std::string > &oLabelsToFill) const
adds to oLabelsToFill the labels for all paths in the process
Definition: Schedule.cc:973
const Schedule * schedule_
Definition: ScheduleInfo.h:64
void ScheduleInfo::modulesInPath ( const std::string &  iPathLabel,
std::vector< std::string > &  oLabelsToFill 
) const

add to oLabelsToFill in execution order the labels of all modules in path iPathLabel

Definition at line 104 of file ScheduleInfo.cc.

References edm::Schedule::modulesInPath(), and schedule_.

Referenced by FWPSetTableManager::updateSchedule().

106 {
107  schedule_->modulesInPath(iPathLabel, oLabelsToFill);
108 }
void modulesInPath(std::string const &iPathLabel, std::vector< std::string > &oLabelsToFill) const
adds to oLabelsToFill in execution order the labels of all modules in path iPathLabel ...
Definition: Schedule.cc:978
const Schedule * schedule_
Definition: ScheduleInfo.h:64
const ParameterSet * ScheduleInfo::parametersForModule ( const std::string &  iLabel) const

returns a pointer to the parameters for the module with label iLabel, returns 0 if no module exists with that label.

Definition at line 82 of file ScheduleInfo.cc.

References edm::Schedule::getAllModuleDescriptions(), edm::pset::Registry::getMapped(), edm::pset::Registry::instance(), edm::ModuleDescription::moduleLabel(), and schedule_.

Referenced by FWPSetTableManager::updateSchedule().

83 {
84  std::vector<ModuleDescription const*> desc = schedule_->getAllModuleDescriptions();
85 
86  std::vector<ModuleDescription const*>::iterator itFound = std::find_if(desc.begin(),
87  desc.end(),
88  boost::bind(std::equal_to<std::string>(),
89  iLabel,
90  boost::bind(&ModuleDescription::moduleLabel,_1)));
91  if (itFound == desc.end()) {
92  return 0;
93  }
94  return pset::Registry::instance()->getMapped((*itFound)->parameterSetID());
95 }
std::string const & moduleLabel() const
bool getMapped(key_type const &k, value_type &result) const
Definition: Registry.cc:20
std::vector< ModuleDescription const * > getAllModuleDescriptions() const
Definition: Schedule.cc:956
static Registry * instance()
Definition: Registry.cc:14
const Schedule * schedule_
Definition: ScheduleInfo.h:64

Member Data Documentation

const Schedule* edm::ScheduleInfo::schedule_
private