CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Public Attributes | Private Member Functions
dirstructure.Directory Class Reference
Inheritance diagram for dirstructure.Directory:
dirstructure.Weighted

Public Member Functions

def __init__
 
def __repr__
 
def calcStats
 
def get_fail_rate
 
def get_null_rate
 
def get_skiped_rate
 
def get_subdirs_dict
 
def get_subdirs_names
 
def get_success_rate
 
def get_summary_chart_ajax
 
def get_summary_chart_name
 
def is_empty
 
def print_report
 
def prune
 
- Public Member Functions inherited from dirstructure.Weighted
def __init__
 

Public Attributes

 comparisons
 
 different_histograms
 
 do_pngs
 
 draw_success
 
 filename1
 
 filename2
 
 full_path
 
 meta
 
 mother_dir
 
 n_comp_fails
 
 n_comp_nulls
 
 n_comp_skiped
 
 n_comp_successes
 
 n_fails
 
 n_missing_objs
 
 n_nulls
 
 n_skiped
 
 n_successes
 
 rank_histo
 
 stats_calculated
 
 subdirs
 
 weight
 
- Public Attributes inherited from dirstructure.Weighted
 name
 
 weight
 

Private Member Functions

def __create_on_disk
 
def __create_pie_image
 
def __get_full_path
 

Detailed Description

Definition at line 62 of file dirstructure.py.

Constructor & Destructor Documentation

def dirstructure.Directory.__init__ (   self,
  name,
  mother_dir = "",
  meta = CompInfo(),
  draw_success = False,
  do_pngs = False 
)

Definition at line 63 of file dirstructure.py.

63 
64  def __init__(self,name,mother_dir="",meta=CompInfo(),draw_success=False,do_pngs=False):
65  self.mother_dir=mother_dir
66  self.meta=meta
67  self.subdirs=[]
68  self.comparisons=[]
69  self.n_fails=0
70  self.n_successes=0
71  self.n_nulls=0
72  self.n_skiped = 0
73  self.n_comp_skiped = 0
74  self.n_comp_fails=0
76  self.n_comp_nulls=0
77  self.weight=0
78  self.stats_calculated=False
79  Weighted.__init__(self,name)
80  self.draw_success=draw_success
81  self.do_pngs=do_pngs
82  self.rank_histo=TH1I("rh%s"%name,"",50,-0.01,1.001)
83  self.rank_histo.SetDirectory(0)
84  self.different_histograms = {}
85  self.different_histograms['file1']= {}
86  self.different_histograms['file2']= {}
87  self.filename1 = ""
88  self.filename2 = ""
89  self.n_missing_objs = 0
90  self.full_path = ""

Member Function Documentation

def dirstructure.Directory.__create_on_disk (   self)
private

Definition at line 226 of file dirstructure.py.

References dirstructure.Directory.__get_full_path(), and dirstructure.Directory.mother_dir.

Referenced by dirstructure.Directory.__create_pie_image().

227  def __create_on_disk(self):
228  if not exists(self.mother_dir) and len(self.mother_dir)!=0:
229  makedirs(self.mother_dir)
230  full_path=self.__get_full_path()
231  if not exists(full_path) and len(full_path)>0:
232  makedirs(full_path)
def dirstructure.Directory.__create_pie_image (   self)
private

Definition at line 236 of file dirstructure.py.

References dirstructure.Directory.__create_on_disk(), dirstructure.Directory.get_fail_rate(), dirstructure.Directory.get_null_rate(), dirstructure.Directory.get_skiped_rate(), dirstructure.Directory.get_success_rate(), dirstructure.Directory.get_summary_chart_name(), dirstructure.Directory.n_fails, dirstructure.Directory.n_nulls, dirstructure.Directory.n_skiped, dirstructure.Directory.n_successes, cond::TagInfo.name, entry.name, genericValidation.GenericValidation.name, TmModule.name, Select.name, ora::RecordSpecImpl::Item.name, GifDisplay.name, alignment.Alignment.name, FWTGeoRecoGeometry::Info.name, Types._Untracked.name, Button.name, PixelDCSObject< class >::Item.name, fit::RootMinuitCommand.name, ParameterSet.name, SeedingLayerSetsBuilder::LayerSpec.name, DQMRivetClient::LumiOption.name, MagCylinder.name, PFTauMVAInputDiscriminantTranslator::DiscriminantInfo.name, PrintSensitive.name, RHStopTracer::StopPoint.name, CombinedMVAJetTagComputer::Computer.name, DQMRivetClient::ScaleFactorOption.name, EgHLTOfflineSummaryClient::SumHistBinData.name, PhysicsTools::Source.name, XMLHTRZeroSuppressionLoader::_loaderBaseConfig.name, XMLRBXPedestalsLoader::_loaderBaseConfig.name, CSCDCCExaminer::OStream.name, MyWatcher.name, lumi::TriggerInfo.name, SingleObjectCondition.name, cond::TimeTypeSpecs.name, PrintMaterialBudgetInfo.name, perftools::EdmEventSize::BranchRecord.name, PixelEndcapLinkMaker::Item.name, DQMGenericClient::EfficOption.name, edm::PathSummary.name, dirstructure.Weighted.name, FWTableViewManager::TableEntry.name, PixelBarrelLinkMaker::Item.name, options.ConnectionHLTMenu.name, Mapper::definition< ScannerT >.name, McSelector.name, EcalLogicID.name, ExpressionHisto< T >.name, MEtoEDM< T >::MEtoEDMObject.name, RecoSelector.name, python.rootplot.utilities.Hist2D.name, TreeCrawler.Package.name, SensitiveDetector.name, XMLProcessor::_loaderBaseConfig.name, CaloTrkProcessing::Detector.name, PrintGeomInfoAction.name, HcalForwardLibWriter::FileHandle.name, PrintGeomMatInfo.name, MagGeoBuilderFromDDD::volumeHandle.name, DQMGenericClient::NormOption.name, PhysicsTools::Calibration::Variable.name, DQMGenericClient::CDOption.name, h4DSegm.name, PhysicsTools::Variable::Value.name, options.HLTProcessOptions.name, ProcTMVA::Method.name, EDMtoMEConverter.name, TreeSaver::Var.name, python.rootplot.tree2hists.Plot.name, PhysicsTools::TrainProcessor.name, MuonGeometrySanityCheckPoint.name, PhysicsTools::TreeReader::Value.name, TotemSD.name, PhysicsTools::MVAModuleHelper< Record, Object, Filler >::Value.name, PhysicsTools::ProcessRegistry< Base_t, CalibBase_t, Parent_t >.name, PhysicsTools::MVATrainer.name, EfficiencyHandler.name, h2DSegm.name, python.rootplot.utilities.Hist.name, BscSD.name, stor::DataSenderMonitorCollection::OutputModuleRecord.name, DQMNet::WaitObject.name, SiStripMonitorDigi.name, AlpgenParameterName.name, FP420SD.name, Vardesc.name, public_plots_tools.ColorScheme.name, PhysicsTools::Variable.name, Namelist.name, PhysicsTools::TrainerMonitoring::Object.name, stor::DataSenderMonitorCollection::OutputModuleResult.name, plotscripts.SawTeethFunction.name, @16190::Id.name, python.rootplot.utilities.RootFile.name, hTMaxCell.name, cscdqm::ParHistoDef.name, @16186::Id.name, BeautifulSoup.SoupStrainer.name, and TiXmlAttribute.name.

237  def __create_pie_image(self):
238  self.__create_on_disk()
239  vals=[]
240  colors=[]
241  for n,col in zip((self.n_fails,self.n_nulls,self.n_successes,self.n_skiped),(kRed,kYellow,kGreen,kBlue)):
242  if n!=0:
243  vals.append(n)
244  colors.append(col)
245  valsa=array('f',vals)
246  colorsa=array('i',colors)
247  can = TCanvas("cpie","TPie test",100,100);
248  try:
249  pie = TPie("ThePie",self.name,len(vals),valsa,colorsa);
250  label_n=0
251  if self.n_fails!=0:
252  pie.SetEntryLabel(label_n, "Fail: %.1f(%i)" %(self.get_fail_rate(),self.n_fails) );
253  label_n+=1
254  if self.n_nulls!=0:
255  pie.SetEntryLabel(label_n, "Null: %.1f(%i)" %(self.get_null_rate(),self.n_nulls) );
256  label_n+=1
257  if self.n_successes!=0:
258  pie.SetEntryLabel(label_n, "Success: %.1f(%i)" %(self.get_success_rate(),self.n_successes) );
259  if self.n_skiped!=0:
260  pie.SetEntryLabel(label_n, "Skipped: %.1f(%i)" %(self.get_skiped_rate(),self.n_skiped));
261  pie.SetY(.52);
262  pie.SetAngularOffset(0.);
263  pie.SetLabelsOffset(-.3);
264  #pie.SetLabelFormat("#splitline{%val (%perc)}{%txt}");
265  pie.Draw("3d nol");
266  can.Print(self.get_summary_chart_name());
267  except:
268  print "self.name = %s" %self.name
269  print "len(vals) = %s (vals=%s)" %(len(vals),vals)
270  print "valsa = %s" %valsa
271  print "colorsa = %s" %colorsa
def dirstructure.Directory.__get_full_path (   self)
private

Definition at line 220 of file dirstructure.py.

References join(), dirstructure.Directory.mother_dir, cond::TagInfo.name, entry.name, genericValidation.GenericValidation.name, TmModule.name, ora::RecordSpecImpl::Item.name, Select.name, alignment.Alignment.name, FWTGeoRecoGeometry::Info.name, Types._Untracked.name, GifDisplay.name, Button.name, PixelDCSObject< class >::Item.name, fit::RootMinuitCommand.name, ParameterSet.name, SeedingLayerSetsBuilder::LayerSpec.name, DQMRivetClient::LumiOption.name, MagCylinder.name, PFTauMVAInputDiscriminantTranslator::DiscriminantInfo.name, PrintSensitive.name, RHStopTracer::StopPoint.name, CombinedMVAJetTagComputer::Computer.name, DQMRivetClient::ScaleFactorOption.name, EgHLTOfflineSummaryClient::SumHistBinData.name, PhysicsTools::Source.name, CSCDCCExaminer::OStream.name, MyWatcher.name, lumi::TriggerInfo.name, XMLHTRZeroSuppressionLoader::_loaderBaseConfig.name, SingleObjectCondition.name, XMLRBXPedestalsLoader::_loaderBaseConfig.name, cond::TimeTypeSpecs.name, PrintMaterialBudgetInfo.name, DQMGenericClient::EfficOption.name, edm::PathSummary.name, dirstructure.Weighted.name, PixelEndcapLinkMaker::Item.name, perftools::EdmEventSize::BranchRecord.name, FWTableViewManager::TableEntry.name, PixelBarrelLinkMaker::Item.name, Mapper::definition< ScannerT >.name, options.ConnectionHLTMenu.name, McSelector.name, EcalLogicID.name, ExpressionHisto< T >.name, MEtoEDM< T >::MEtoEDMObject.name, RecoSelector.name, python.rootplot.utilities.Hist2D.name, TreeCrawler.Package.name, CaloTrkProcessing::Detector.name, SensitiveDetector.name, XMLProcessor::_loaderBaseConfig.name, PrintGeomInfoAction.name, HcalForwardLibWriter::FileHandle.name, PrintGeomMatInfo.name, MagGeoBuilderFromDDD::volumeHandle.name, DQMGenericClient::NormOption.name, PhysicsTools::Calibration::Variable.name, DQMGenericClient::CDOption.name, h4DSegm.name, PhysicsTools::Variable::Value.name, options.HLTProcessOptions.name, EDMtoMEConverter.name, ProcTMVA::Method.name, TreeSaver::Var.name, python.rootplot.tree2hists.Plot.name, PhysicsTools::TrainProcessor.name, MuonGeometrySanityCheckPoint.name, TotemSD.name, PhysicsTools::TreeReader::Value.name, PhysicsTools::MVAModuleHelper< Record, Object, Filler >::Value.name, PhysicsTools::ProcessRegistry< Base_t, CalibBase_t, Parent_t >.name, PhysicsTools::MVATrainer.name, EfficiencyHandler.name, h2DSegm.name, python.rootplot.utilities.Hist.name, BscSD.name, stor::DataSenderMonitorCollection::OutputModuleRecord.name, DQMNet::WaitObject.name, SiStripMonitorDigi.name, AlpgenParameterName.name, FP420SD.name, Vardesc.name, public_plots_tools.ColorScheme.name, PhysicsTools::Variable.name, Namelist.name, PhysicsTools::TrainerMonitoring::Object.name, stor::DataSenderMonitorCollection::OutputModuleResult.name, plotscripts.SawTeethFunction.name, @16190::Id.name, python.rootplot.utilities.RootFile.name, hTMaxCell.name, cscdqm::ParHistoDef.name, @16186::Id.name, BeautifulSoup.SoupStrainer.name, and TiXmlAttribute.name.

Referenced by dirstructure.Directory.__create_on_disk(), and dirstructure.Directory.get_summary_chart_name().

221  def __get_full_path(self):
222  #print "Mother is %s" %self.mother_dir
223  if len(self.mother_dir)==0:
224  return self.name
225  return join(self.mother_dir,self.name)
static std::string join(char **cmd)
Definition: RemoteFile.cc:18
def dirstructure.Directory.__repr__ (   self)

Definition at line 316 of file dirstructure.py.

References dirstructure.Directory.comparisons, dirstructure.Directory.get_fail_rate(), dirstructure.Directory.get_null_rate(), dirstructure.Directory.get_success_rate(), DEutils< T >.is_empty(), DEcompare< T >.is_empty(), dirstructure.Directory.is_empty(), create_public_lumi_plots.LumiDataBlock.is_empty(), dirstructure.Directory.n_fails, dirstructure.Directory.n_nulls, dirstructure.Directory.n_successes, cond::TagInfo.name, entry.name, genericValidation.GenericValidation.name, TmModule.name, Select.name, ora::RecordSpecImpl::Item.name, GifDisplay.name, alignment.Alignment.name, FWTGeoRecoGeometry::Info.name, Types._Untracked.name, Button.name, PixelDCSObject< class >::Item.name, fit::RootMinuitCommand.name, ParameterSet.name, SeedingLayerSetsBuilder::LayerSpec.name, DQMRivetClient::LumiOption.name, MagCylinder.name, PFTauMVAInputDiscriminantTranslator::DiscriminantInfo.name, PrintSensitive.name, RHStopTracer::StopPoint.name, CombinedMVAJetTagComputer::Computer.name, DQMRivetClient::ScaleFactorOption.name, EgHLTOfflineSummaryClient::SumHistBinData.name, PhysicsTools::Source.name, XMLHTRZeroSuppressionLoader::_loaderBaseConfig.name, XMLRBXPedestalsLoader::_loaderBaseConfig.name, CSCDCCExaminer::OStream.name, MyWatcher.name, lumi::TriggerInfo.name, SingleObjectCondition.name, cond::TimeTypeSpecs.name, PrintMaterialBudgetInfo.name, edm::PathSummary.name, DQMGenericClient::EfficOption.name, dirstructure.Weighted.name, PixelEndcapLinkMaker::Item.name, perftools::EdmEventSize::BranchRecord.name, FWTableViewManager::TableEntry.name, PixelBarrelLinkMaker::Item.name, Mapper::definition< ScannerT >.name, options.ConnectionHLTMenu.name, McSelector.name, EcalLogicID.name, ExpressionHisto< T >.name, MEtoEDM< T >::MEtoEDMObject.name, RecoSelector.name, python.rootplot.utilities.Hist2D.name, TreeCrawler.Package.name, SensitiveDetector.name, CaloTrkProcessing::Detector.name, XMLProcessor::_loaderBaseConfig.name, PrintGeomInfoAction.name, HcalForwardLibWriter::FileHandle.name, PrintGeomMatInfo.name, MagGeoBuilderFromDDD::volumeHandle.name, DQMGenericClient::NormOption.name, PhysicsTools::Calibration::Variable.name, DQMGenericClient::CDOption.name, h4DSegm.name, PhysicsTools::Variable::Value.name, options.HLTProcessOptions.name, ProcTMVA::Method.name, EDMtoMEConverter.name, TreeSaver::Var.name, python.rootplot.tree2hists.Plot.name, PhysicsTools::TrainProcessor.name, MuonGeometrySanityCheckPoint.name, PhysicsTools::TreeReader::Value.name, TotemSD.name, PhysicsTools::MVAModuleHelper< Record, Object, Filler >::Value.name, PhysicsTools::ProcessRegistry< Base_t, CalibBase_t, Parent_t >.name, PhysicsTools::MVATrainer.name, EfficiencyHandler.name, h2DSegm.name, python.rootplot.utilities.Hist.name, BscSD.name, DQMNet::WaitObject.name, stor::DataSenderMonitorCollection::OutputModuleRecord.name, SiStripMonitorDigi.name, AlpgenParameterName.name, FP420SD.name, Vardesc.name, public_plots_tools.ColorScheme.name, PhysicsTools::Variable.name, Namelist.name, PhysicsTools::TrainerMonitoring::Object.name, stor::DataSenderMonitorCollection::OutputModuleResult.name, plotscripts.SawTeethFunction.name, @16190::Id.name, python.rootplot.utilities.RootFile.name, hTMaxCell.name, cscdqm::ParHistoDef.name, @16186::Id.name, BeautifulSoup.SoupStrainer.name, TiXmlAttribute.name, and dirstructure.Directory.subdirs.

317  def __repr__(self):
318  if self.is_empty():
319  return "%s seems to be empty. Please check!" %self.name
320  content="%s , Rates: Success %.2f%%(%s) - Fail %.2f%%(%s) - Null %.2f%%(%s)\n" %(self.name,self.get_success_rate(),self.n_successes,self.get_fail_rate(),self.n_fails,self.get_null_rate(),self.n_nulls)
321  for subdir in self.subdirs:
322  content+=" %s\n" % subdir
323  for comp in self.comparisons:
324  content+=" %s\n" % comp
325  return content
326 
#-------------------------------------------------------------------------------
def dirstructure.Directory.calcStats (   self,
  make_pie = True 
)
Walk all subdirs and calculate weight,fails and successes.
Moreove propagate the sample and releases names.

Definition at line 96 of file dirstructure.py.

References dirstructure.Directory.comparisons, dirstructure.Directory.different_histograms, dirstructure.Directory.filename1, dirstructure.Directory.filename2, alcazmumu_cfi.filter, dirstructure.Directory.full_path, join(), relativeConstraints.keys, dirstructure.Directory.meta, dirstructure.Directory.mother_dir, dirstructure.Directory.n_comp_fails, dirstructure.Directory.n_comp_nulls, dirstructure.Directory.n_comp_skiped, dirstructure.Directory.n_comp_successes, dirstructure.Directory.n_fails, dirstructure.Directory.n_missing_objs, dirstructure.Directory.n_nulls, dirstructure.Directory.n_skiped, dirstructure.Directory.n_successes, cond::TagInfo.name, entry.name, genericValidation.GenericValidation.name, TmModule.name, Select.name, ora::RecordSpecImpl::Item.name, alignment.Alignment.name, FWTGeoRecoGeometry::Info.name, Types._Untracked.name, GifDisplay.name, Button.name, PixelDCSObject< class >::Item.name, ParameterSet.name, fit::RootMinuitCommand.name, DQMRivetClient::LumiOption.name, MagCylinder.name, SeedingLayerSetsBuilder::LayerSpec.name, PFTauMVAInputDiscriminantTranslator::DiscriminantInfo.name, PrintSensitive.name, RHStopTracer::StopPoint.name, DQMRivetClient::ScaleFactorOption.name, CombinedMVAJetTagComputer::Computer.name, EgHLTOfflineSummaryClient::SumHistBinData.name, PhysicsTools::Source.name, CSCDCCExaminer::OStream.name, MyWatcher.name, XMLHTRZeroSuppressionLoader::_loaderBaseConfig.name, XMLRBXPedestalsLoader::_loaderBaseConfig.name, lumi::TriggerInfo.name, SingleObjectCondition.name, cond::TimeTypeSpecs.name, PrintMaterialBudgetInfo.name, dirstructure.Weighted.name, DQMGenericClient::EfficOption.name, edm::PathSummary.name, PixelEndcapLinkMaker::Item.name, perftools::EdmEventSize::BranchRecord.name, FWTableViewManager::TableEntry.name, PixelBarrelLinkMaker::Item.name, options.ConnectionHLTMenu.name, Mapper::definition< ScannerT >.name, McSelector.name, EcalLogicID.name, RecoSelector.name, ExpressionHisto< T >.name, MEtoEDM< T >::MEtoEDMObject.name, python.rootplot.utilities.Hist2D.name, TreeCrawler.Package.name, SensitiveDetector.name, XMLProcessor::_loaderBaseConfig.name, CaloTrkProcessing::Detector.name, PrintGeomInfoAction.name, HcalForwardLibWriter::FileHandle.name, PrintGeomMatInfo.name, MagGeoBuilderFromDDD::volumeHandle.name, DQMGenericClient::NormOption.name, PhysicsTools::Calibration::Variable.name, DQMGenericClient::CDOption.name, h4DSegm.name, PhysicsTools::Variable::Value.name, options.HLTProcessOptions.name, EDMtoMEConverter.name, ProcTMVA::Method.name, TreeSaver::Var.name, python.rootplot.tree2hists.Plot.name, MuonGeometrySanityCheckPoint.name, PhysicsTools::TrainProcessor.name, PhysicsTools::TreeReader::Value.name, TotemSD.name, PhysicsTools::MVAModuleHelper< Record, Object, Filler >::Value.name, PhysicsTools::ProcessRegistry< Base_t, CalibBase_t, Parent_t >.name, PhysicsTools::MVATrainer.name, EfficiencyHandler.name, h2DSegm.name, python.rootplot.utilities.Hist.name, BscSD.name, DQMNet::WaitObject.name, stor::DataSenderMonitorCollection::OutputModuleRecord.name, SiStripMonitorDigi.name, AlpgenParameterName.name, FP420SD.name, Vardesc.name, public_plots_tools.ColorScheme.name, PhysicsTools::Variable.name, Namelist.name, PhysicsTools::TrainerMonitoring::Object.name, stor::DataSenderMonitorCollection::OutputModuleResult.name, plotscripts.SawTeethFunction.name, @16190::Id.name, python.rootplot.utilities.RootFile.name, hTMaxCell.name, cscdqm::ParHistoDef.name, @16186::Id.name, BeautifulSoup.SoupStrainer.name, TiXmlAttribute.name, linker.replace(), dirstructure.Directory.stats_calculated, dirstructure.Directory.subdirs, RPCDQMObject::DQMObjectItem.weight, JetAnaPythia< Jet >.weight, TtFullLepKinSolver::NeutrinoSolution.weight, ZIterativeAlgorithmWithFit::ZIterativeAlgorithmWithFitPlots.weight, SeedCandidate.weight, materialEffect::Effect.weight, dirstructure.Weighted.weight, ExtendedPerigeeTrajectoryError.weight, LHEProducer.weight, MuIsolatorResultProducer< BT >::DepositConf.weight, DTTrigTest.weight, TreeSaver.weight, L1PromptAnalysis.weight, ProcTMVA.weight, and areaInfo.weight.

Referenced by dirstructure.Directory.print_report().

96 
97  def calcStats(self,make_pie=True):
98  '''Walk all subdirs and calculate weight,fails and successes.
99  Moreove propagate the sample and releases names.
100  '''
101  if self.stats_calculated:
102  return 0
103 
104  self.n_fails=0
105  self.n_successes=0
106  self.n_nulls=0
107  self.n_comp_fails=0
108  self.n_comp_successes=0
109  self.n_comp_nulls=0
110  self.weight=0
111 
112  self.n_skiped = 0
113  self.n_comp_skiped = 0
114  self.n_missing_objs = len(self.different_histograms['file1'].keys())+len(self.different_histograms['file2'].keys())
115  if self.n_missing_objs != 0:
116  print " [*] Missing in %s: %s" %(self.filename1, self.different_histograms['file1'])
117  print " [*] Missing in %s: %s" %(self.filename2, self.different_histograms['file2'])
118  # clean from empty dirs
119  self.subdirs = filter(lambda subdir: not subdir.is_empty(),self.subdirs)
120 
121  for comp in self.comparisons:
122  if comp.status == SKIPED: #in case its in black list & skiped
123  self.n_skiped += 1
124  self.n_comp_skiped += 1
125  self.weight+=1
126  else: #else original code -> to check for Fails and Successes
127  self.rank_histo.Fill(comp.rank)
128  self.weight+=1
129  if comp.status == FAIL:
130  self.n_fails+=1
131  self.n_comp_fails+=1
132  elif comp.status == SUCCESS:
133  self.n_successes+=1
134  self.n_comp_successes+=1
135  else:
136  self.n_nulls+=1
137  self.n_comp_nulls+=1
138 
139  for subdir in self.subdirs:
140  subdir.mother_dir=join(self.mother_dir,self.name)
141  subdir.full_path = join(self.mother_dir,self.name).replace("/Run summary","")
142  subdir.calcStats(make_pie)
143  subdir.meta=self.meta
144  self.weight+=subdir.weight
145  self.n_fails+=subdir.n_fails
146  self.n_successes+=subdir.n_successes
147  self.n_nulls+=subdir.n_nulls
148 
149  self.n_skiped+=subdir.n_skiped
150  self.n_missing_objs += subdir.n_missing_objs
151 
152  self.rank_histo.Add(subdir.rank_histo)
153 
154  self.stats_calculated=True
155  self.full_path = join(self.mother_dir,self.name).replace("/Run summary","")
156  #if make_pie:
157  #self.__create_pie_image()
def replace
Definition: linker.py:10
static std::string join(char **cmd)
Definition: RemoteFile.cc:18
def dirstructure.Directory.get_fail_rate (   self)

Definition at line 208 of file dirstructure.py.

References dirstructure.Directory.n_fails, RPCDQMObject::DQMObjectItem.weight, JetAnaPythia< Jet >.weight, TtFullLepKinSolver::NeutrinoSolution.weight, ZIterativeAlgorithmWithFit::ZIterativeAlgorithmWithFitPlots.weight, SeedCandidate.weight, materialEffect::Effect.weight, dirstructure.Weighted.weight, ExtendedPerigeeTrajectoryError.weight, LHEProducer.weight, MuIsolatorResultProducer< BT >::DepositConf.weight, DTTrigTest.weight, TreeSaver.weight, L1PromptAnalysis.weight, ProcTMVA.weight, and areaInfo.weight.

Referenced by dirstructure.Directory.__create_pie_image(), dirstructure.Directory.__repr__(), dirstructure.Directory.get_summary_chart_ajax(), and dirstructure.Directory.print_report().

209  def get_fail_rate(self):
210  if self.weight == 0:return 0
211  return 100.*self.n_fails/self.weight
def dirstructure.Directory.get_null_rate (   self)

Definition at line 216 of file dirstructure.py.

References dirstructure.Directory.n_nulls, RPCDQMObject::DQMObjectItem.weight, JetAnaPythia< Jet >.weight, TtFullLepKinSolver::NeutrinoSolution.weight, ZIterativeAlgorithmWithFit::ZIterativeAlgorithmWithFitPlots.weight, SeedCandidate.weight, materialEffect::Effect.weight, dirstructure.Weighted.weight, ExtendedPerigeeTrajectoryError.weight, LHEProducer.weight, MuIsolatorResultProducer< BT >::DepositConf.weight, DTTrigTest.weight, TreeSaver.weight, L1PromptAnalysis.weight, ProcTMVA.weight, and areaInfo.weight.

Referenced by dirstructure.Directory.__create_pie_image(), dirstructure.Directory.__repr__(), dirstructure.Directory.get_summary_chart_ajax(), and dirstructure.Directory.print_report().

217  def get_null_rate(self):
218  if self.weight == 0:return 0
219  return 100.*self.n_nulls/self.weight
def dirstructure.Directory.get_skiped_rate (   self)

Definition at line 205 of file dirstructure.py.

References dirstructure.Directory.n_skiped, RPCDQMObject::DQMObjectItem.weight, JetAnaPythia< Jet >.weight, TtFullLepKinSolver::NeutrinoSolution.weight, ZIterativeAlgorithmWithFit::ZIterativeAlgorithmWithFitPlots.weight, SeedCandidate.weight, materialEffect::Effect.weight, dirstructure.Weighted.weight, ExtendedPerigeeTrajectoryError.weight, LHEProducer.weight, MuIsolatorResultProducer< BT >::DepositConf.weight, DTTrigTest.weight, TreeSaver.weight, L1PromptAnalysis.weight, ProcTMVA.weight, and areaInfo.weight.

Referenced by dirstructure.Directory.__create_pie_image(), dirstructure.Directory.get_summary_chart_ajax(), and dirstructure.Directory.print_report().

206  def get_skiped_rate(self):
207  if self.weight == 0: return 0
return 100.*self.n_skiped/self.weight
def dirstructure.Directory.get_subdirs_dict (   self)

Definition at line 158 of file dirstructure.py.

References dirstructure.Directory.subdirs.

159  def get_subdirs_dict(self):
160  subdirdict={}
161  for subdir in self.subdirs:
162  subdirdict[subdir.name]=subdir
163  return subdirdict
def dirstructure.Directory.get_subdirs_names (   self)

Definition at line 164 of file dirstructure.py.

References dirstructure.Directory.subdirs.

165  def get_subdirs_names(self):
166  subdirnames=[]
167  for subdir in self.subdirs:
168  subdirnames.append(subdir.name)
169  return subdirnames
def dirstructure.Directory.get_success_rate (   self)

Definition at line 212 of file dirstructure.py.

References dirstructure.Directory.n_successes, RPCDQMObject::DQMObjectItem.weight, JetAnaPythia< Jet >.weight, TtFullLepKinSolver::NeutrinoSolution.weight, ZIterativeAlgorithmWithFit::ZIterativeAlgorithmWithFitPlots.weight, SeedCandidate.weight, materialEffect::Effect.weight, dirstructure.Weighted.weight, ExtendedPerigeeTrajectoryError.weight, LHEProducer.weight, MuIsolatorResultProducer< BT >::DepositConf.weight, DTTrigTest.weight, TreeSaver.weight, L1PromptAnalysis.weight, ProcTMVA.weight, and areaInfo.weight.

Referenced by dirstructure.Directory.__create_pie_image(), dirstructure.Directory.__repr__(), dirstructure.Directory.get_summary_chart_ajax(), and dirstructure.Directory.print_report().

213  def get_success_rate(self):
214  if self.weight == 0:return 1
215  return 100.*self.n_successes/self.weight
def dirstructure.Directory.get_summary_chart_ajax (   self,
  w = 400,
  h = 300 
)
Emit the ajax to build a pie chart using google apis...

Definition at line 170 of file dirstructure.py.

References dirstructure.Directory.get_fail_rate(), dirstructure.Directory.get_null_rate(), dirstructure.Directory.get_skiped_rate(), and dirstructure.Directory.get_success_rate().

171  def get_summary_chart_ajax(self,w=400,h=300):
172  """Emit the ajax to build a pie chart using google apis...
173  """
174  url = "https://chart.googleapis.com/chart?"
175  url+= "cht=p3" # Select the 3d chart
176  #url+= "&chl=Success|Null|Fail" # give labels
177  url+= "&chco=00FF00|FFFF00|FF0000|7A7A7A" # give colours to labels
178  url+= "&chs=%sx%s" %(w,h)
179  #url+= "&chtt=%s" %self.name
180  url+= "&chd=t:%.2f,%.2f,%.2f,%.2f"%(self.get_success_rate(),self.get_null_rate(),self.get_fail_rate(),self.get_skiped_rate())
181 
182  return url
def dirstructure.Directory.get_summary_chart_name (   self)

Definition at line 233 of file dirstructure.py.

References dirstructure.Directory.__get_full_path(), and join().

Referenced by dirstructure.Directory.__create_pie_image().

234  def get_summary_chart_name(self):
235  return join(self.__get_full_path(),"summary_chart.png")
static std::string join(char **cmd)
Definition: RemoteFile.cc:18
def dirstructure.Directory.is_empty (   self)

Definition at line 91 of file dirstructure.py.

References dirstructure.Directory.comparisons, and dirstructure.Directory.subdirs.

Referenced by dirstructure.Directory.__repr__(), and utils_v2.StatisticalTest.do_test().

91 
92  def is_empty(self):
93  if len(self.subdirs)==0 and len(self.comparisons)==0:
94  return True
95  return False
def dirstructure.Directory.print_report (   self,
  indent = "",
  verbose = False 
)

Definition at line 183 of file dirstructure.py.

References dirstructure.Directory.calcStats(), dirstructure.Directory.comparisons, alcazmumu_cfi.filter, dirstructure.Directory.get_fail_rate(), dirstructure.Directory.get_null_rate(), dirstructure.Directory.get_skiped_rate(), dirstructure.Directory.get_success_rate(), dirstructure.Directory.mother_dir, dirstructure.Directory.n_fails, dirstructure.Directory.n_missing_objs, dirstructure.Directory.n_nulls, dirstructure.Directory.n_skiped, dirstructure.Directory.n_successes, cond::TagInfo.name, entry.name, genericValidation.GenericValidation.name, TmModule.name, Select.name, ora::RecordSpecImpl::Item.name, GifDisplay.name, alignment.Alignment.name, FWTGeoRecoGeometry::Info.name, Types._Untracked.name, Button.name, PixelDCSObject< class >::Item.name, fit::RootMinuitCommand.name, ParameterSet.name, SeedingLayerSetsBuilder::LayerSpec.name, DQMRivetClient::LumiOption.name, MagCylinder.name, PFTauMVAInputDiscriminantTranslator::DiscriminantInfo.name, PrintSensitive.name, RHStopTracer::StopPoint.name, CombinedMVAJetTagComputer::Computer.name, DQMRivetClient::ScaleFactorOption.name, EgHLTOfflineSummaryClient::SumHistBinData.name, PhysicsTools::Source.name, XMLHTRZeroSuppressionLoader::_loaderBaseConfig.name, XMLRBXPedestalsLoader::_loaderBaseConfig.name, CSCDCCExaminer::OStream.name, MyWatcher.name, lumi::TriggerInfo.name, SingleObjectCondition.name, cond::TimeTypeSpecs.name, PrintMaterialBudgetInfo.name, DQMGenericClient::EfficOption.name, edm::PathSummary.name, dirstructure.Weighted.name, PixelEndcapLinkMaker::Item.name, perftools::EdmEventSize::BranchRecord.name, FWTableViewManager::TableEntry.name, PixelBarrelLinkMaker::Item.name, Mapper::definition< ScannerT >.name, options.ConnectionHLTMenu.name, McSelector.name, EcalLogicID.name, ExpressionHisto< T >.name, MEtoEDM< T >::MEtoEDMObject.name, RecoSelector.name, python.rootplot.utilities.Hist2D.name, TreeCrawler.Package.name, XMLProcessor::_loaderBaseConfig.name, CaloTrkProcessing::Detector.name, SensitiveDetector.name, PrintGeomInfoAction.name, HcalForwardLibWriter::FileHandle.name, PrintGeomMatInfo.name, MagGeoBuilderFromDDD::volumeHandle.name, PhysicsTools::Calibration::Variable.name, DQMGenericClient::NormOption.name, DQMGenericClient::CDOption.name, h4DSegm.name, PhysicsTools::Variable::Value.name, options.HLTProcessOptions.name, ProcTMVA::Method.name, EDMtoMEConverter.name, TreeSaver::Var.name, python.rootplot.tree2hists.Plot.name, PhysicsTools::TrainProcessor.name, MuonGeometrySanityCheckPoint.name, PhysicsTools::TreeReader::Value.name, TotemSD.name, PhysicsTools::MVAModuleHelper< Record, Object, Filler >::Value.name, PhysicsTools::ProcessRegistry< Base_t, CalibBase_t, Parent_t >.name, PhysicsTools::MVATrainer.name, EfficiencyHandler.name, h2DSegm.name, python.rootplot.utilities.Hist.name, BscSD.name, stor::DataSenderMonitorCollection::OutputModuleRecord.name, DQMNet::WaitObject.name, SiStripMonitorDigi.name, AlpgenParameterName.name, FP420SD.name, Vardesc.name, public_plots_tools.ColorScheme.name, PhysicsTools::Variable.name, Namelist.name, PhysicsTools::TrainerMonitoring::Object.name, stor::DataSenderMonitorCollection::OutputModuleResult.name, plotscripts.SawTeethFunction.name, @16190::Id.name, python.rootplot.utilities.RootFile.name, hTMaxCell.name, cscdqm::ParHistoDef.name, @16186::Id.name, BeautifulSoup.SoupStrainer.name, TiXmlAttribute.name, dirstructure.Directory.subdirs, RPCDQMObject::DQMObjectItem.weight, JetAnaPythia< Jet >.weight, TtFullLepKinSolver::NeutrinoSolution.weight, ZIterativeAlgorithmWithFit::ZIterativeAlgorithmWithFitPlots.weight, SeedCandidate.weight, materialEffect::Effect.weight, dirstructure.Weighted.weight, ExtendedPerigeeTrajectoryError.weight, LHEProducer.weight, MuIsolatorResultProducer< BT >::DepositConf.weight, DTTrigTest.weight, TreeSaver.weight, L1PromptAnalysis.weight, ProcTMVA.weight, and areaInfo.weight.

184  def print_report(self,indent="",verbose=False):
185  if len(indent)==0:
186  self.calcStats(make_pie=False)
187  # print small failure report
188  if verbose:
189  fail_comps=filter(lambda comp:comp.status==FAIL,self.comparisons)
190  fail_comps=sorted(fail_comps,key=lambda comp:comp.name )
191  if len(fail_comps)>0:
192  print indent+"* %s/%s:" %(self.mother_dir,self.name)
193  for comp in fail_comps:
194  print indent+" - %s: %s Test Failed (pval = %s) " %(comp.name,comp.test_name,comp.rank)
195  for subdir in self.subdirs:
196  subdir.print_report(indent+" ",verbose)
197 
198  if len(indent)==0:
199  print "\n%s - summary of %s tests:" %(self.name,self.weight)
200  print " o Failiures: %.2f%% (%s/%s)" %(self.get_fail_rate(),self.n_fails,self.weight)
201  print " o Nulls: %.2f%% (%s/%s) " %(self.get_null_rate(),self.n_nulls,self.weight)
202  print " o Successes: %.2f%% (%s/%s) " %(self.get_success_rate(),self.n_successes,self.weight)
203  print " o Skipped: %.2f%% (%s/%s) " %(self.get_skiped_rate(),self.n_skiped,self.weight)
204  print " o Missing objects: %s" %(self.n_missing_objs)
def dirstructure.Directory.prune (   self,
  expandable_dir 
)
Eliminate from the tree the directory the expandable ones.

Definition at line 272 of file dirstructure.py.

References dirstructure.Directory.comparisons, dirstructure.Directory.n_comp_fails, dirstructure.Directory.n_comp_nulls, dirstructure.Directory.n_comp_skiped, dirstructure.Directory.n_comp_successes, TtEventPartons.prune(), dirstructure.Directory.prune(), Config.Process.prune(), and dirstructure.Directory.subdirs.

Referenced by dirstructure.Directory.prune().

273  def prune(self,expandable_dir):
274  """Eliminate from the tree the directory the expandable ones.
275  """
276  #print "pruning %s" %self.name
277  exp_index=-1
278  counter=0
279  for subdir in self.subdirs:
280  # Eliminate any trace of the expandable path in the mother directories
281  # for depths higher than 1
282  subdir.mother_dir=subdir.mother_dir.replace("/"+expandable_dir,"")
283  if subdir.name==expandable_dir:
284  exp_index=counter
285  counter+=1
286 
287  # Did we find an expandable?
288  if exp_index>=0:
289  exp_dir=self.subdirs[exp_index]
290  for subsubdir in exp_dir.subdirs:
291  #print "*******",subsubdir.mother_dir,
292  subsubdir.mother_dir=subsubdir.mother_dir.replace("/"+expandable_dir,"")
293  while "//" in subsubdir.mother_dir:
294  print subsubdir.mother_dir
295  subsubdir.mother_dir=subsubdir.mother_dir.replace("//","/")
296  #print "*******",subsubdir.mother_dir
297  self.subdirs.append(subsubdir)
298 
299  for comp in exp_dir.comparisons:
300  comp.mother_dir=comp.mother_dir.replace("/"+expandable_dir,"")
301  while "//" in comp.mother_dir:
302  comp.mother_dir
303  comp.mother_dir=comp.mother_dir.replace("/")
304  if not comp in self.comparisons: #in case not to append same comparisons few times
305  self.comparisons.append(comp) # add a comparison
306  self.n_comp_fails = exp_dir.n_comp_fails #copy to-be removed directory
307  self.n_comp_nulls = exp_dir.n_comp_nulls # numbers to parent directory
308  self.n_comp_successes = exp_dir.n_comp_successes
309  self.n_comp_skiped = exp_dir.n_comp_skiped
310 
311  del self.subdirs[exp_index]
312  self.prune(expandable_dir)
313 
314  for subdir in self.subdirs:
315  subdir.prune(expandable_dir)

Member Data Documentation

dirstructure.Directory.comparisons

Definition at line 67 of file dirstructure.py.

Referenced by dirstructure.Directory.__repr__(), dirstructure.Directory.calcStats(), dirstructure.Directory.is_empty(), dirstructure.Directory.print_report(), and dirstructure.Directory.prune().

dirstructure.Directory.different_histograms

Definition at line 83 of file dirstructure.py.

Referenced by dirstructure.Directory.calcStats(), and dqm_interfaces.DirWalkerFile.ls().

dirstructure.Directory.do_pngs

Definition at line 80 of file dirstructure.py.

Referenced by dqm_interfaces.DirWalkerDB.run().

dirstructure.Directory.draw_success

Definition at line 79 of file dirstructure.py.

dirstructure.Directory.filename1

Definition at line 86 of file dirstructure.py.

Referenced by dirstructure.Directory.calcStats().

dirstructure.Directory.filename2

Definition at line 87 of file dirstructure.py.

Referenced by dirstructure.Directory.calcStats().

dirstructure.Directory.full_path

Definition at line 89 of file dirstructure.py.

Referenced by dirstructure.Directory.calcStats().

dirstructure.Directory.meta

Definition at line 65 of file dirstructure.py.

Referenced by dirstructure.Directory.calcStats().

dirstructure.Directory.mother_dir

Definition at line 64 of file dirstructure.py.

Referenced by dirstructure.Directory.__create_on_disk(), dirstructure.Directory.__get_full_path(), dirstructure.Comparison.__get_img_name(), dirstructure.Comparison.__make_img_dir(), dirstructure.Directory.calcStats(), and dirstructure.Directory.print_report().

dirstructure.Directory.n_comp_fails

Definition at line 73 of file dirstructure.py.

Referenced by dirstructure.Directory.calcStats(), and dirstructure.Directory.prune().

dirstructure.Directory.n_comp_nulls

Definition at line 75 of file dirstructure.py.

Referenced by dirstructure.Directory.calcStats(), and dirstructure.Directory.prune().

dirstructure.Directory.n_comp_skiped

Definition at line 72 of file dirstructure.py.

Referenced by dirstructure.Directory.calcStats(), and dirstructure.Directory.prune().

dirstructure.Directory.n_comp_successes

Definition at line 74 of file dirstructure.py.

Referenced by dirstructure.Directory.calcStats(), and dirstructure.Directory.prune().

dirstructure.Directory.n_fails

Definition at line 68 of file dirstructure.py.

Referenced by dirstructure.Directory.__create_pie_image(), dirstructure.Directory.__repr__(), dirstructure.Directory.calcStats(), dirstructure.Directory.get_fail_rate(), and dirstructure.Directory.print_report().

dirstructure.Directory.n_missing_objs

Definition at line 88 of file dirstructure.py.

Referenced by dirstructure.Directory.calcStats(), and dirstructure.Directory.print_report().

dirstructure.Directory.n_nulls

Definition at line 70 of file dirstructure.py.

Referenced by dirstructure.Directory.__create_pie_image(), dirstructure.Directory.__repr__(), dirstructure.Directory.calcStats(), dirstructure.Directory.get_null_rate(), and dirstructure.Directory.print_report().

dirstructure.Directory.n_skiped

Definition at line 71 of file dirstructure.py.

Referenced by dirstructure.Directory.__create_pie_image(), dirstructure.Directory.calcStats(), dirstructure.Directory.get_skiped_rate(), and dirstructure.Directory.print_report().

dirstructure.Directory.n_successes

Definition at line 69 of file dirstructure.py.

Referenced by dirstructure.Directory.__create_pie_image(), dirstructure.Directory.__repr__(), dirstructure.Directory.calcStats(), dirstructure.Directory.get_success_rate(), and dirstructure.Directory.print_report().

dirstructure.Directory.rank_histo

Definition at line 81 of file dirstructure.py.

dirstructure.Directory.stats_calculated

Definition at line 77 of file dirstructure.py.

Referenced by dirstructure.Directory.calcStats().

dirstructure.Directory.subdirs

Definition at line 66 of file dirstructure.py.

Referenced by dirstructure.Directory.__repr__(), dirstructure.Directory.calcStats(), dirstructure.Directory.get_subdirs_dict(), dirstructure.Directory.get_subdirs_names(), dirstructure.Directory.is_empty(), dirstructure.Directory.print_report(), and dirstructure.Directory.prune().

dirstructure.Directory.weight

Definition at line 76 of file dirstructure.py.

Referenced by cuy.ValElement.__init__(), cuy.additionElement.__init__(), cuy.superimposeElement.__init__(), and cuy.graphElement.__init__().