CMS 3D CMS Logo

List of all members | Public Member Functions | Private Member Functions | Private Attributes
Mixins._Labelable Class Reference
Inheritance diagram for Mixins._Labelable:
Modules._Module Modules.ESPrefer Modules.ESProducer Modules.ESSource SequenceTypes._ModuleSequenceType SequenceTypes.DummyBooleanModule SequenceTypes.DummyModule SequenceTypes.Task Types.EDAlias Types.PSet Types.SecSource Types.VPSet

Public Member Functions

def __str__ (self)
 
def dumpSequenceConfig (self)
 
def dumpSequencePython (self, options=PrintOptions())
 
def hasLabel_ (self)
 
def label (self)
 
def label_ (self)
 
def setLabel (self, label)
 

Private Member Functions

def _findDependencies (self, knownDeps, presentDeps)
 

Private Attributes

 __label
 

Detailed Description

A 'mixin' used to denote that the class can be paired with a label (e.g. an EDProducer)

Definition at line 487 of file Mixins.py.

Member Function Documentation

def Mixins._Labelable.__str__ (   self)

Definition at line 516 of file Mixins.py.

References Mixins._Labelable.__label, and str.

516  def __str__(self):
517  #this is probably a bad idea
518  # I added this so that when we ask a path to print
519  # we will see the label that has been assigned
520  return str(self.__label)
def __str__(self)
Definition: Mixins.py:516
#define str(s)
def Mixins._Labelable._findDependencies (   self,
  knownDeps,
  presentDeps 
)
private

Definition at line 525 of file Mixins.py.

References CTPPSPixelDAQMappingAnalyzer.label_, XMLIdealGeometryESProducer.label_, Vispa.Plugins.ConfigEditor.ConfigDataAccessor.ConfigFolder.label_(), edm::eventsetup::ComponentDescription.label_, SiStripLorentzAngleReader.label_, XMLIdealMagneticFieldGeometryESProducer.label_, StripSubClusterShapeFilterBase.label_, ESDigiToRaw.label_, pat::TriggerFilter.label_, HistoProviderDQM.label_, RetrieveCTPPSBeamParameters.label_, CTPPSPixelRawToDigi.label_, VertexCompositeCandidateCollectionSelector.label_, WriteCTPPSPixelAnalysisMask.label_, WriteCTPPSPixelDAQMapping.label_, edm::ESOutlet< T, TRec >::Getter.label_, VertexMonitor.label_, RawEventOutputModuleForBU< Consumer >.label_, PythiaFilterHT.label_, RandomEngineState.label_, EffPurFromHistos2D.label_, PythiaMomDauFilter.label_, edm::ConsumesInfo.label_, SiPixelStatusManager.label_, edm::InputTag.label_, SiPixelStatusHarvester.label_, edm::SecSourceAnalyzer.label_, TPGCheck.label_, reco::Centrality.label_, pat::helper::AnyNumberAssociationAdaptor.label_, EcalTrigPrimAnalyzer.label_, EffPurFromHistos.label_, edm::test::Run.label_, pat::TauJetCorrFactors.label_, edm::test::LuminosityBlock.label_, edm::test::Event.label_, edm::DataMixingSiStripWorker.label_, edm::DataMixingSiPixelWorker.label_, StallStatistics.label_, edm::DataMixingPileupCopy.label_, SiPixelCalibDigiProducer.label_, edm::DataMixingSiStripRawWorker.label_, edm::HiMixingWorkerBase.label_, edm::ParameterDescriptionBase.label_, HLTOfflineDQMTopSingleLepton::MonitorSingleLepton.label_, fwlite::ObjectCountSelector< Collection >.label_, PileupJetIdAlgo::AlgoGBRForestsAndConstants.label_, npstat::UniformAxis.label_, HLTOfflineDQMTopDiLepton::MonitorDiLepton.label_, edm::DataMixingEMWorker.label_, pat::JetCorrFactors.label_, edm::DataMixingHcalWorker.label_, TopSingleLepton_miniAOD::MonitorEnsemble.label_, edm::DataMixingHcalDigiWorkerProd.label_, SingleTopTChannelLepton_miniAOD::MonitorEnsemble.label_, pat::JetCorrFactorsProducer.label_, edm::DataMixingEMDigiWorker.label_, edm::DataMixingMuonWorker.label_, edm::messagedrop::StringProducerWithPhase.label_, npstat::NUHistoAxis.label_, edm::DataMixingHcalDigiWorker.label_, TopSingleLepton::MonitorEnsemble.label_, SingleTopTChannelLepton::MonitorEnsemble.label_, HLTObjectsMonitor.label_, npstat::GridAxis.label_, SummaryGenerator.label_, npstat::HistoAxis.label_, TopDiLeptonOffline::MonitorEnsemble.label_, edm::service::RandomNumberGeneratorService::LabelAndEngine.label_, edm::MixingWorker< T >.label_, edm::DataMixingModule.label_, Mixins._Labelable.label_(), fwlite::Scanner< Collection >.label_, and str.

525  def _findDependencies(self,knownDeps,presentDeps):
526  #print 'in labelled'
527  myDeps=knownDeps.get(self.label_(),None)
528  if myDeps!=None:
529  if presentDeps != myDeps:
530  raise RuntimeError("the module "+self.label_()+" has two dependencies \n"
531  +str(presentDeps)+"\n"
532  +str(myDeps)+"\n"
533  +"Please modify sequences to rectify this inconsistency")
534  else:
535  myDeps=set(presentDeps)
536  knownDeps[self.label_()]=myDeps
537  presentDeps.add(self.label_())
538 
539 
def label_(self)
Definition: Mixins.py:489
def _findDependencies(self, knownDeps, presentDeps)
Definition: Mixins.py:525
#define str(s)
def Mixins._Labelable.dumpSequenceConfig (   self)

Definition at line 521 of file Mixins.py.

References Mixins._Labelable.__label, and str.

522  return str(self.__label)
def dumpSequenceConfig(self)
Definition: Mixins.py:521
#define str(s)
def Mixins._Labelable.dumpSequencePython (   self,
  options = PrintOptions() 
)

Definition at line 523 of file Mixins.py.

References Mixins._Labelable.__label, and str.

523  def dumpSequencePython(self, options=PrintOptions()):
524  return 'process.'+str(self.__label)
#define str(s)
def dumpSequencePython(self, options=PrintOptions())
Definition: Mixins.py:523
def Mixins._Labelable.hasLabel_ (   self)

Definition at line 493 of file Mixins.py.

References Mixins._Labelable.__label.

Referenced by SequenceTypes._ModuleSequenceType.dumpSequenceConfig(), SequenceTypes._ModuleSequenceType.dumpSequencePython(), SequenceTypes.Task.fillContents(), and Mixins._Labelable.setLabel().

493  def hasLabel_(self):
494  return hasattr(self, "_Labelable__label") and self.__label is not None
def hasLabel_(self)
Definition: Mixins.py:493
def Mixins._Labelable.label (   self)

Definition at line 513 of file Mixins.py.

References Mixins._Labelable.__label.

513  def label(self):
514  #print "WARNING: _Labelable::label() needs to be changed to label_()"
515  return self.__label
def label(self)
Definition: Mixins.py:513
def Mixins._Labelable.label_ (   self)

Definition at line 489 of file Mixins.py.

References Mixins._Labelable.__label.

Referenced by SequenceTypes.DummyModule.__repr__(), Mixins._Labelable._findDependencies(), and Mixins._Labelable.setLabel().

489  def label_(self):
490  if not hasattr(self, "_Labelable__label"):
491  raise RuntimeError("module has no label. Perhaps it wasn't inserted into the process?")
492  return self.__label
def label_(self)
Definition: Mixins.py:489
def Mixins._Labelable.setLabel (   self,
  label 
)

Definition at line 495 of file Mixins.py.

References Mixins._Labelable.hasLabel_(), CTPPSPixelDAQMappingAnalyzer.label_, XMLIdealGeometryESProducer.label_, Vispa.Plugins.ConfigEditor.ConfigDataAccessor.ConfigFolder.label_(), edm::eventsetup::ComponentDescription.label_, SiStripLorentzAngleReader.label_, XMLIdealMagneticFieldGeometryESProducer.label_, StripSubClusterShapeFilterBase.label_, ESDigiToRaw.label_, pat::TriggerFilter.label_, HistoProviderDQM.label_, CTPPSPixelRawToDigi.label_, RetrieveCTPPSBeamParameters.label_, VertexCompositeCandidateCollectionSelector.label_, WriteCTPPSPixelAnalysisMask.label_, WriteCTPPSPixelDAQMapping.label_, edm::ESOutlet< T, TRec >::Getter.label_, VertexMonitor.label_, RawEventOutputModuleForBU< Consumer >.label_, PythiaFilterHT.label_, RandomEngineState.label_, EffPurFromHistos2D.label_, PythiaMomDauFilter.label_, edm::ConsumesInfo.label_, SiPixelStatusManager.label_, SiPixelStatusHarvester.label_, edm::InputTag.label_, edm::SecSourceAnalyzer.label_, TPGCheck.label_, reco::Centrality.label_, pat::helper::AnyNumberAssociationAdaptor.label_, EcalTrigPrimAnalyzer.label_, EffPurFromHistos.label_, edm::test::Run.label_, pat::TauJetCorrFactors.label_, edm::test::LuminosityBlock.label_, edm::test::Event.label_, edm::DataMixingSiStripWorker.label_, edm::DataMixingSiPixelWorker.label_, StallStatistics.label_, edm::DataMixingPileupCopy.label_, SiPixelCalibDigiProducer.label_, edm::DataMixingSiStripRawWorker.label_, edm::HiMixingWorkerBase.label_, edm::ParameterDescriptionBase.label_, HLTOfflineDQMTopSingleLepton::MonitorSingleLepton.label_, PileupJetIdAlgo::AlgoGBRForestsAndConstants.label_, fwlite::ObjectCountSelector< Collection >.label_, npstat::UniformAxis.label_, HLTOfflineDQMTopDiLepton::MonitorDiLepton.label_, edm::DataMixingEMWorker.label_, pat::JetCorrFactors.label_, edm::DataMixingHcalWorker.label_, edm::DataMixingHcalDigiWorkerProd.label_, TopSingleLepton_miniAOD::MonitorEnsemble.label_, SingleTopTChannelLepton_miniAOD::MonitorEnsemble.label_, pat::JetCorrFactorsProducer.label_, edm::DataMixingEMDigiWorker.label_, edm::DataMixingMuonWorker.label_, edm::messagedrop::StringProducerWithPhase.label_, edm::DataMixingHcalDigiWorker.label_, npstat::NUHistoAxis.label_, TopSingleLepton::MonitorEnsemble.label_, SingleTopTChannelLepton::MonitorEnsemble.label_, HLTObjectsMonitor.label_, npstat::GridAxis.label_, SummaryGenerator.label_, npstat::HistoAxis.label_, TopDiLeptonOffline::MonitorEnsemble.label_, edm::service::RandomNumberGeneratorService::LabelAndEngine.label_, edm::MixingWorker< T >.label_, edm::DataMixingModule.label_, Mixins._Labelable.label_(), fwlite::Scanner< Collection >.label_, and str.

Referenced by SequenceTypes.DummyModule.__init__(), and SequenceTypes.DummyBooleanModule.__init__().

495  def setLabel(self,label):
496  if self.hasLabel_() :
497  if self.label_() != label and label is not None :
498  msg100 = "Attempting to change the label of a Labelable object, possibly an attribute of the Process\n"
499  msg101 = "Old label = "+self.label_()+" New label = "+label+"\n"
500  msg102 = "Type = "+str(type(self))+"\n"
501  msg103 = "Some possible solutions:\n"
502  msg104 = " 1. Clone modules instead of using simple assignment. Cloning is\n"
503  msg105 = " also preferred for other types when possible.\n"
504  msg106 = " 2. Declare new names starting with an underscore if they are\n"
505  msg107 = " for temporaries you do not want propagated into the Process. The\n"
506  msg108 = " underscore tells \"from x import *\" and process.load not to import\n"
507  msg109 = " the name.\n"
508  msg110 = " 3. Reorganize so the assigment is not necessary. Giving a second\n"
509  msg111 = " name to the same object usually causes confusion and problems.\n"
510  msg112 = " 4. Compose Sequences: newName = cms.Sequence(oldName)\n"
511  raise ValueError(msg100+msg101+msg102+msg103+msg104+msg105+msg106+msg107+msg108+msg109+msg110+msg111+msg112)
512  self.__label = label
def label_(self)
Definition: Mixins.py:489
def setLabel(self, label)
Definition: Mixins.py:495
def hasLabel_(self)
Definition: Mixins.py:493
#define str(s)

Member Data Documentation

Mixins._Labelable.__label
private