CMS 3D CMS Logo

Public Member Functions | Protected Member Functions | Private Member Functions | Private Attributes

DQMProvInfo Class Reference

#include <DQMProvInfo.h>

Inheritance diagram for DQMProvInfo:
edm::EDAnalyzer edm::EDConsumerBase

List of all members.

Public Member Functions

 DQMProvInfo (const edm::ParameterSet &ps)
 Constructor.
virtual ~DQMProvInfo ()
 Destructor.

Protected Member Functions

void analyze (const edm::Event &e, const edm::EventSetup &c)
 Analyze.
void beginRun (const edm::Run &r, const edm::EventSetup &c)
void endLuminosityBlock (const edm::LuminosityBlock &l, const edm::EventSetup &c)

Private Member Functions

std::string getShowTags (void)
void makeDcsInfo (const edm::Event &e)
void makeGtInfo (const edm::Event &e)
void makeHLTKeyInfo (const edm::Run &r, const edm::EventSetup &c)
void makeProvInfo ()

Private Attributes

int beamMode_
DQMStoredbe_
bool dcs25 [25]
MonitorElementfileVersion_
std::string globalTag_
bool gotProcessParameterSet_
MonitorElementhBeamMode_
MonitorElementhHltKey_
MonitorElementhIntensity1_
MonitorElementhIntensity2_
MonitorElementhIsCollisionsRun_
MonitorElementhLhcFill_
MonitorElementhMomentum_
MonitorElementhostName_
int intensity1_
int intensity2_
MonitorElementisComplete_
 The PID associated with this job.
int lastlumi_
int lhcFill_
int momentum_
std::string nameProcess_
edm::ParameterSet parameters_
bool physDecl_
MonitorElementprocessId_
 Current working directory of the job.
std::string provinfofolder_
MonitorElementreportSummary_
MonitorElementreportSummaryMap_
std::string runType_
std::string subsystemname_
MonitorElementversCMSSW_
MonitorElementversDataset_
MonitorElementversGlobaltag_
MonitorElementversRuntype_
MonitorElementversTaglist_
MonitorElementworkingDir_
 Hostname of the local machine.

Detailed Description

Definition at line 27 of file DQMProvInfo.h.


Constructor & Destructor Documentation

DQMProvInfo::DQMProvInfo ( const edm::ParameterSet ps)

Constructor.

Definition at line 25 of file DQMProvInfo.cc.

References dbe_, dcs25, edm::ParameterSet::getUntrackedParameter(), globalTag_, gotProcessParameterSet_, i, lastlumi_, nameProcess_, cppFunctionSkipper::operator, parameters_, physDecl_, provinfofolder_, runType_, AlCaHLTBitMon_QueryRunRegistry::string, and subsystemname_.

                                                 {
  
  parameters_ = ps;
  
  dbe_ = edm::Service<DQMStore>().operator->();
  globalTag_ = "MODULE::DEFAULT"; 
  runType_ = parameters_.getUntrackedParameter<std::string>("runType", "No run type selected") ;
  provinfofolder_ = parameters_.getUntrackedParameter<std::string>("provInfoFolder", "ProvInfo") ;
  subsystemname_ = parameters_.getUntrackedParameter<std::string>("subSystemFolder", "Info") ;
  
  // initialize
  nameProcess_ = "HLT"; // the process name is not contained in this ps
  gotProcessParameterSet_=false;
  physDecl_=true; // set true and switch off in case a single event in a given LS does not have it set.
  for (int i=0;i<25;i++) dcs25[i]=true;
  lastlumi_=0;
}
DQMProvInfo::~DQMProvInfo ( ) [virtual]

Destructor.

Definition at line 43 of file DQMProvInfo.cc.

                         {
}

Member Function Documentation

void DQMProvInfo::analyze ( const edm::Event e,
const edm::EventSetup c 
) [protected, virtual]
void DQMProvInfo::beginRun ( const edm::Run r,
const edm::EventSetup c 
) [protected, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 47 of file DQMProvInfo.cc.

References DQMStore::book1D(), DQMStore::book2D(), DQMStore::bookFloat(), DQMStore::bookInt(), DQMStore::cd(), dbe_, dcs25, MonitorElement::Fill(), MonitorElement::getTH1F(), MonitorElement::getTH2F(), hBeamMode_, hIntensity1_, hIntensity2_, hIsCollisionsRun_, hLhcFill_, hMomentum_, i, lastlumi_, makeHLTKeyInfo(), makeProvInfo(), physDecl_, reportSummary_, reportSummaryMap_, MonitorElement::setAxisTitle(), MonitorElement::setBinContent(), MonitorElement::setBinLabel(), DQMStore::setCurrentFolder(), subsystemname_, XBINS, and YBINS.

                                                              {

  makeProvInfo();
  makeHLTKeyInfo(r,c);

  dbe_->cd(); 
  dbe_->setCurrentFolder(subsystemname_ +"/EventInfo/");

  reportSummary_=dbe_->bookFloat("reportSummary");
  reportSummaryMap_ = dbe_->book2D("reportSummaryMap",
                     "HV and Beam Status vs Lumi", XBINS, 1., XBINS+1, YBINS+1, 0., YBINS+1);
  reportSummaryMap_->setBinLabel(1," CSC+",2);   
  reportSummaryMap_->setBinLabel(2," CSC-",2);   
  reportSummaryMap_->setBinLabel(3," DT0",2);    
  reportSummaryMap_->setBinLabel(4," DT+",2);    
  reportSummaryMap_->setBinLabel(5," DT-",2);    
  reportSummaryMap_->setBinLabel(6," EB+",2);    
  reportSummaryMap_->setBinLabel(7," EB-",2);    
  reportSummaryMap_->setBinLabel(8," EE+",2);    
  reportSummaryMap_->setBinLabel(9," EE-",2);    
  reportSummaryMap_->setBinLabel(10,"ES+",2);    
  reportSummaryMap_->setBinLabel(11,"ES-",2);   
  reportSummaryMap_->setBinLabel(12,"HBHEa",2); 
  reportSummaryMap_->setBinLabel(13,"HBHEb",2); 
  reportSummaryMap_->setBinLabel(14,"HBHEc",2); 
  reportSummaryMap_->setBinLabel(15,"HF",2);    
  reportSummaryMap_->setBinLabel(16,"HO",2);    
  reportSummaryMap_->setBinLabel(17,"BPIX",2);  
  reportSummaryMap_->setBinLabel(18,"FPIX",2);  
  reportSummaryMap_->setBinLabel(19,"RPC",2);   
  reportSummaryMap_->setBinLabel(20,"TIBTID",2);
  reportSummaryMap_->setBinLabel(21,"TOB",2);   
  reportSummaryMap_->setBinLabel(22,"TECp",2);  
  reportSummaryMap_->setBinLabel(23,"TECm",2);  
  reportSummaryMap_->setBinLabel(24,"CASTOR",2);
  reportSummaryMap_->setBinLabel(25,"ZDC",2);
  reportSummaryMap_->setBinLabel(26,"PhysDecl",2);
  reportSummaryMap_->setBinLabel(27,"8 TeV",2);
  reportSummaryMap_->setBinLabel(28,"Stable B",2);
  reportSummaryMap_->setBinLabel(29,"Valid",2);
  reportSummaryMap_->setAxisTitle("Luminosity Section");
  reportSummaryMap_->getTH2F()->SetBit(TH1::kCanRebin);

  dbe_->cd();  
  dbe_->setCurrentFolder(subsystemname_ +"/LhcInfo/");
  hBeamMode_=dbe_->book1D("beamMode","beamMode",XBINS,1.,XBINS+1);
  hBeamMode_->getTH1F()->GetYaxis()->Set(21,0.5,21.5);
  hBeamMode_->getTH1F()->SetMaximum(21.5);
  hBeamMode_->getTH1F()->SetBit(TH1::kCanRebin);

  hBeamMode_->setAxisTitle("Luminosity Section",1);
  hBeamMode_->setBinLabel(1,"no mode",2);
  hBeamMode_->setBinLabel(2,"setup",2);
  hBeamMode_->setBinLabel(3,"inj pilot",2);
  hBeamMode_->setBinLabel(4,"inj intr",2);
  hBeamMode_->setBinLabel(5,"inj nomn",2);
  hBeamMode_->setBinLabel(6,"pre ramp",2);
  hBeamMode_->setBinLabel(7,"ramp",2);
  hBeamMode_->setBinLabel(8,"flat top",2);
  hBeamMode_->setBinLabel(9,"squeeze",2);
  hBeamMode_->setBinLabel(10,"adjust",2);
  hBeamMode_->setBinLabel(11,"stable",2);
  hBeamMode_->setBinLabel(12,"unstable",2);
  hBeamMode_->setBinLabel(13,"beam dump",2);
  hBeamMode_->setBinLabel(14,"ramp down",2);
  hBeamMode_->setBinLabel(15,"recovery",2);
  hBeamMode_->setBinLabel(16,"inj dump",2);
  hBeamMode_->setBinLabel(17,"circ dump",2);
  hBeamMode_->setBinLabel(18,"abort",2);
  hBeamMode_->setBinLabel(19,"cycling",2);
  hBeamMode_->setBinLabel(20,"warn b-dump",2);
  hBeamMode_->setBinLabel(21,"no beam",2);
  hBeamMode_->setBinContent(0.,22.);
  

  hLhcFill_=dbe_->book1D("lhcFill","LHC Fill Number",XBINS,1.,XBINS+1);
  hLhcFill_->setAxisTitle("Luminosity Section",1);
  hLhcFill_->getTH1F()->SetBit(TH1::kCanRebin);
  
  hMomentum_=dbe_->book1D("momentum","Beam Energy [GeV]",XBINS,1.,XBINS+1);
  hMomentum_->setAxisTitle("Luminosity Section",1);
  hMomentum_->getTH1F()->SetBit(TH1::kCanRebin);

  hIntensity1_=dbe_->book1D("intensity1","Intensity Beam 1",XBINS,1.,XBINS+1);
  hIntensity1_->setAxisTitle("Luminosity Section",1);
  hIntensity1_->setAxisTitle("N [E10]",2);
  hIntensity1_->getTH1F()->SetBit(TH1::kCanRebin);
  hIntensity2_=dbe_->book1D("intensity2","Intensity Beam 2",XBINS,1.,XBINS+1);
  hIntensity2_->setAxisTitle("Luminosity Section",1);
  hIntensity2_->setAxisTitle("N [E10]",2);
  hIntensity2_->getTH1F()->SetBit(TH1::kCanRebin);

  dbe_->cd();  
  dbe_->setCurrentFolder(subsystemname_ +"/ProvInfo/");
  hIsCollisionsRun_ = dbe_->bookInt("isCollisionsRun");
  hIsCollisionsRun_->Fill(0);
  
  // initialize
  physDecl_=true;
  for (int i=0;i<25;i++) dcs25[i]=true;
  lastlumi_=0;
} 
void DQMProvInfo::endLuminosityBlock ( const edm::LuminosityBlock l,
const edm::EventSetup c 
) [protected, virtual]

Reimplemented from edm::EDAnalyzer.

Definition at line 168 of file DQMProvInfo.cc.

References beamMode_, dcs25, MonitorElement::Fill(), MonitorElement::getBinContent(), MonitorElement::getTH1F(), hBeamMode_, hIntensity1_, hIntensity2_, hIsCollisionsRun_, hLhcFill_, hMomentum_, i, edm::LuminosityBlockBase::id(), intensity1_, intensity2_, lastlumi_, lhcFill_, momentum_, physDecl_, reportSummary_, reportSummaryMap_, MonitorElement::setBinContent(), XBINS, and YBINS.

{

  int nlumi = l.id().luminosityBlock();
  
  edm::LogInfo("DQMProvInfo") << "nlumi: " <<  nlumi << " / number of bins: " << hBeamMode_->getTH1F()->GetNbinsX() << std::endl;

  if (nlumi <= lastlumi_ ) return;

  hBeamMode_->setBinContent(nlumi,beamMode_);
  hLhcFill_->setBinContent(nlumi,lhcFill_);
  hMomentum_->setBinContent(nlumi,momentum_);
  hIntensity1_->setBinContent(nlumi,intensity1_);
  hIntensity2_->setBinContent(nlumi,intensity2_);

  // set to previous in case there was a jump or no previous fill
  for (int l=lastlumi_+1;l<nlumi;l++)
  {
    if (lastlumi_ > 0 && reportSummaryMap_->getBinContent(lastlumi_,YBINS+1) == 1) 
    {
      reportSummaryMap_->setBinContent(l,YBINS+1,0.);
      for (int i=0;i<YBINS;i++)
      {
          float lastvalue = reportSummaryMap_->getBinContent(lastlumi_,i+1);
          reportSummaryMap_->setBinContent(l,i+1,lastvalue);
      }
    }
    else
    {
      reportSummaryMap_->setBinContent(l,YBINS+1,0.);
      for (int i=0;i<YBINS;i++)
        reportSummaryMap_->setBinContent(l,i+1,-1.);
    }
  }

      
  // fill dcs vs lumi
  reportSummaryMap_->setBinContent(nlumi,YBINS+1,1.);
  for (int i=0;i<25;i++)
  {
    if (dcs25[i])
      reportSummaryMap_->setBinContent(nlumi,i+1,1.);
    else
      reportSummaryMap_->setBinContent(nlumi,i+1,0.);

    // set next lumi to -1 for better visibility
    if (nlumi < XBINS)
      reportSummaryMap_->setBinContent(nlumi+1,i+1,-1.);
    dcs25[i]=true;
  }

  // fill physics decl. bit in y bin 26
  if (physDecl_) 
  {
    reportSummary_->Fill(1.); 
    reportSummaryMap_->setBinContent(nlumi,25+1,1.);
    if (nlumi < XBINS) 
      reportSummaryMap_->setBinContent(nlumi+1,25+1,-1.);
  }
  else
  {
    reportSummary_->Fill(0.); 
    reportSummaryMap_->setBinContent(nlumi,25+1,0.);
    if (nlumi < XBINS) 
      reportSummaryMap_->setBinContent(nlumi+1,25+1,-1.);
  }
  
  // fill 7 TeV bit in y bin 27
  if (momentum_ == 3500 || momentum_ == 4000 ) 
  {
    reportSummary_->Fill(1.); 
    reportSummaryMap_->setBinContent(nlumi,26+1,1.);
    if (nlumi < XBINS) 
      reportSummaryMap_->setBinContent(nlumi+1,26+1,-1.);
  }
  else
  {
    reportSummary_->Fill(0.); 
    reportSummaryMap_->setBinContent(nlumi,26+1,0.);
    if (nlumi < XBINS) 
      reportSummaryMap_->setBinContent(nlumi+1,26+1,-1.);
  }

  // fill stable beams bit in y bin 28
  if (beamMode_ == 11) 
  {
    hIsCollisionsRun_->Fill(1);
    reportSummary_->Fill(1.); 
    reportSummaryMap_->setBinContent(nlumi,27+1,1.);
    if (nlumi < XBINS) 
      reportSummaryMap_->setBinContent(nlumi+1,27+1,-1.);
  }
  else
  {
    reportSummary_->Fill(0.); 
    reportSummaryMap_->setBinContent(nlumi,27+1,0.);
    if (nlumi < XBINS) 
      reportSummaryMap_->setBinContent(nlumi+1,27+1,-1.);
  }

  // reset   
  physDecl_=true;  
  lastlumi_=nlumi;

  return;
  
}
std::string DQMProvInfo::getShowTags ( void  ) [private]

Definition at line 278 of file DQMProvInfo.cc.

References cmsCodeRulesChecker::cwd, newFWLiteAna::found, geometryCSVtoXML::line, dbtoconf::out, pipe::pipe(), alignCSCRings::r, AlCaHLTBitMon_QueryRunRegistry::string, and XBINS.

Referenced by makeProvInfo().

{
   TString out;
   TString cwd;
   TString showtagswd;
   cwd=gSystem->pwd();
   showtagswd=gSystem->ExpandPathName("$CMSSW_BASE/");
   gSystem->ChangeDirectory(showtagswd);
   FILE *pipe = gSystem->OpenPipe("showtags u -t", "r");

   TString line;
   while (line.Gets(pipe,true)) {
     if (line.Contains("Test Release")) continue;
     if (line.Contains("Base Release")) continue;
     if (line.Contains("Test release")) continue;
     if (line.Contains("--- Tag ---")) continue;
     if (line.Contains(" ")) line.Replace(line.First(" "),1,":");
     line.ReplaceAll(" ","");
     out = out + line + ";";
     if (line.Contains("-------------------")) break;
     if (out.Length()>XBINS) break;
   }
   out.ReplaceAll("--","");
   out.ReplaceAll(";-",";");
   out.ReplaceAll(";;",";");
   out.ReplaceAll("\n","");

   Int_t r = gSystem->ClosePipe(pipe);
   gSystem->ChangeDirectory(cwd);
   if (r) {
     gSystem->Error("ShowTags","problem running command showtags -u -t");
   }

   std::string str(out);
   if (str.length()>2000) str.resize(2000);

   std::string safestr =
     "/ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789_-;:";
   size_t found=str.find_first_not_of(safestr);
   if (found!=std::string::npos)
   {
     edm::LogWarning("DQMProvInfo::ShowTags") << " Illegal character found: " 
               << str[found] 
               << " at position " 
               << int(found) ;
     return "notags";
   }   
   return str;
}
void DQMProvInfo::makeDcsInfo ( const edm::Event e) [private]

Definition at line 355 of file DQMProvInfo.cc.

References DcsStatus::BPIX, DcsStatus::CASTOR, DcsStatus::CSCm, DcsStatus::CSCp, dcs25, DcsStatus::DT0, DcsStatus::DTm, DcsStatus::DTp, DcsStatus::EBm, DcsStatus::EBp, DcsStatus::EEm, DcsStatus::EEp, DcsStatus::ESm, DcsStatus::ESp, DcsStatus::FPIX, edm::Event::getByLabel(), DcsStatus::HBHEa, DcsStatus::HBHEb, DcsStatus::HBHEc, DcsStatus::HF, DcsStatus::HO, DcsStatus::RPC, DcsStatus::TECm, DcsStatus::TECp, DcsStatus::TIBTID, DcsStatus::TOB, and DcsStatus::ZDC.

Referenced by analyze().

{

  edm::Handle<DcsStatusCollection> dcsStatus;
  e.getByLabel("scalersRawToDigi", dcsStatus);
  for (DcsStatusCollection::const_iterator dcsStatusItr = dcsStatus->begin(); 
                            dcsStatusItr != dcsStatus->end(); ++dcsStatusItr) 
  {
      // edm::LogInfo("DQMProvInfo") << "DCS status: 0x" << std::hex << dcsStatusItr->ready() << std::dec << std::endl;
      if (!dcsStatusItr->ready(DcsStatus::CSCp))   dcs25[0]=false;
      if (!dcsStatusItr->ready(DcsStatus::CSCm))   dcs25[1]=false;   
      if (!dcsStatusItr->ready(DcsStatus::DT0))    dcs25[2]=false;
      if (!dcsStatusItr->ready(DcsStatus::DTp))    dcs25[3]=false;
      if (!dcsStatusItr->ready(DcsStatus::DTm))    dcs25[4]=false;
      if (!dcsStatusItr->ready(DcsStatus::EBp))    dcs25[5]=false;
      if (!dcsStatusItr->ready(DcsStatus::EBm))    dcs25[6]=false;
      if (!dcsStatusItr->ready(DcsStatus::EEp))    dcs25[7]=false;
      if (!dcsStatusItr->ready(DcsStatus::EEm))    dcs25[8]=false;
      if (!dcsStatusItr->ready(DcsStatus::ESp))    dcs25[9]=false;
      if (!dcsStatusItr->ready(DcsStatus::ESm))    dcs25[10]=false; 
      if (!dcsStatusItr->ready(DcsStatus::HBHEa))  dcs25[11]=false;
      if (!dcsStatusItr->ready(DcsStatus::HBHEb))  dcs25[12]=false;
      if (!dcsStatusItr->ready(DcsStatus::HBHEc))  dcs25[13]=false; 
      if (!dcsStatusItr->ready(DcsStatus::HF))     dcs25[14]=false;
      if (!dcsStatusItr->ready(DcsStatus::HO))     dcs25[15]=false;
      if (!dcsStatusItr->ready(DcsStatus::BPIX))   dcs25[16]=false;
      if (!dcsStatusItr->ready(DcsStatus::FPIX))   dcs25[17]=false;
      if (!dcsStatusItr->ready(DcsStatus::RPC))    dcs25[18]=false;
      if (!dcsStatusItr->ready(DcsStatus::TIBTID)) dcs25[19]=false;
      if (!dcsStatusItr->ready(DcsStatus::TOB))    dcs25[20]=false;
      if (!dcsStatusItr->ready(DcsStatus::TECp))   dcs25[21]=false;
      if (!dcsStatusItr->ready(DcsStatus::TECm))   dcs25[22]=false;
      if (!dcsStatusItr->ready(DcsStatus::CASTOR)) dcs25[23]=false;
      if (!dcsStatusItr->ready(DcsStatus::ZDC))    dcs25[24]=false;
  }
      
  return ;
}
void DQMProvInfo::makeGtInfo ( const edm::Event e) [private]

Definition at line 424 of file DQMProvInfo.cc.

References L1GtfeExtWord::beamMode(), beamMode_, L1GtfeExtWord::beamMomentum(), edm::Event::getByLabel(), L1GlobalTriggerReadoutRecord::gtFdlWord(), L1GlobalTriggerEvmReadoutRecord::gtfeWord(), intensity1_, intensity2_, lhcFill_, L1GtfeExtWord::lhcFillNumber(), momentum_, physDecl_, L1GtFdlWord::physicsDeclared(), edm::Handle< T >::product(), L1GtfeExtWord::totalIntensityBeam1(), and L1GtfeExtWord::totalIntensityBeam2().

Referenced by analyze().

{

  edm::Handle<L1GlobalTriggerReadoutRecord> gtrr_handle;
  e.getByLabel("gtDigis", gtrr_handle);
  L1GlobalTriggerReadoutRecord const* gtrr = gtrr_handle.product();
  L1GtFdlWord fdlWord ; 
  if (gtrr)
    fdlWord = gtrr->gtFdlWord();
  else
  {
    edm::LogWarning("DQMProvInfo") << " phys decl. bit not accessible !!!" ;
    physDecl_=false;
    return;
  }
  // cout << "phys decl. bit =" << static_cast<int>(fdlWord.physicsDeclared()) << endl;
  if (fdlWord.physicsDeclared() !=1) physDecl_=false;


  //
  edm::Handle<L1GlobalTriggerEvmReadoutRecord> gtEvm_handle;
  e.getByLabel("gtEvmDigis", gtEvm_handle);
  L1GlobalTriggerEvmReadoutRecord const* gtevm = gtEvm_handle.product();

  L1GtfeWord gtfeEvmWord;
  L1GtfeExtWord gtfeEvmExtWord;
  if (gtevm)
  {
     gtfeEvmWord = gtevm->gtfeWord();
     gtfeEvmExtWord = gtevm->gtfeWord();
  }
  else
    edm::LogInfo("DQMProvInfo") << " gtfeEvmWord inaccessible" ;
   
  lhcFill_ = gtfeEvmExtWord.lhcFillNumber();
  beamMode_ = gtfeEvmExtWord.beamMode();
  momentum_ = gtfeEvmExtWord.beamMomentum();
  intensity1_ = gtfeEvmExtWord.totalIntensityBeam1();
  intensity2_ = gtfeEvmExtWord.totalIntensityBeam2();
  
  edm::LogInfo("DQMProvInfo") << lhcFill_ << " " << beamMode_ << " " 
            << momentum_ << " " 
            << intensity1_ << " " << intensity2_ 
            << std::endl;

  return;
}
void DQMProvInfo::makeHLTKeyInfo ( const edm::Run r,
const edm::EventSetup c 
) [private]

Definition at line 394 of file DQMProvInfo.cc.

References DQMStore::bookString(), DQMStore::cd(), dbe_, hHltKey_, HltComparatorCreateWorkflow::hltConfig, relval_steps::hltKey, HLTConfigProvider::init(), nameProcess_, provinfofolder_, DQMStore::setCurrentFolder(), HLTConfigProvider::size(), AlCaHLTBitMon_QueryRunRegistry::string, subsystemname_, and HLTConfigProvider::tableName().

Referenced by beginRun().

{
  
  std::string hltKey = "";
  HLTConfigProvider hltConfig;
  bool changed( true );
  if ( ! hltConfig.init( r, c, nameProcess_, changed) ) 
  {
    // edm::LogInfo("DQMProvInfo") << "errorHltConfigExtraction" << std::endl;
    hltKey = "error extraction" ;
  } 
  else if ( hltConfig.size() <= 0 ) 
  {
   // edm::LogInfo("DQMProvInfo") << "hltConfig" << std::endl;
    hltKey = "error key of length 0" ;
  } 
  else 
  {
    edm::LogInfo("DQMProvInfo") << "HLT key (run)  : " << hltConfig.tableName() << std::endl;
    hltKey =  hltConfig.tableName() ;
  }

  dbe_->cd() ;
  dbe_->setCurrentFolder( subsystemname_ + "/" +  provinfofolder_) ;
  hHltKey_= dbe_->bookString("hltKey",hltKey);

  return ;
  
}
void DQMProvInfo::makeProvInfo ( ) [private]

Definition at line 330 of file DQMProvInfo.cc.

References DQMStore::bookInt(), DQMStore::bookString(), DQMStore::cd(), dbe_, fileVersion_, MonitorElement::Fill(), edm::getReleaseVersion(), getShowTags(), globalTag_, hostName_, isComplete_, processId_, provinfofolder_, runType_, DQMStore::setCurrentFolder(), subsystemname_, versCMSSW_, versGlobaltag_, versRuntype_, versTaglist_, and workingDir_.

Referenced by beginRun().

{
    dbe_->cd() ;
    dbe_->setCurrentFolder( subsystemname_ + "/" +  provinfofolder_) ;

    // if (dbe_->get("ProvInfo/CMSSW")) return ;
    
    versCMSSW_     = dbe_->bookString("CMSSW",edm::getReleaseVersion().c_str() );
    hostName_      = dbe_->bookString("hostName",gSystem->HostName());
    workingDir_    = dbe_->bookString("workingDir",gSystem->pwd());
    processId_     = dbe_->bookInt("processID"); processId_->Fill(gSystem->GetPid());

    //versDataset_   = dbe_->bookString("Dataset",workflow_);
    versGlobaltag_ = dbe_->bookString("Globaltag",globalTag_);
    versRuntype_ = dbe_->bookString("Run Type",runType_);
    versTaglist_   = dbe_->bookString("Taglist",getShowTags()); 

    isComplete_ = dbe_->bookInt("runIsComplete"); 
    //isComplete_->Fill((runIsComplete_?1:0));
    fileVersion_ = dbe_->bookInt("fileVersion");
    //fileVersion_->Fill(version_);
    
    return ;
}

Member Data Documentation

int DQMProvInfo::beamMode_ [private]

Definition at line 68 of file DQMProvInfo.h.

Referenced by endLuminosityBlock(), and makeGtInfo().

Definition at line 52 of file DQMProvInfo.h.

Referenced by beginRun(), DQMProvInfo(), makeHLTKeyInfo(), and makeProvInfo().

bool DQMProvInfo::dcs25[25] [private]

Definition at line 63 of file DQMProvInfo.h.

Referenced by beginRun(), DQMProvInfo(), endLuminosityBlock(), and makeDcsInfo().

Definition at line 86 of file DQMProvInfo.h.

Referenced by makeProvInfo().

std::string DQMProvInfo::globalTag_ [private]

Definition at line 58 of file DQMProvInfo.h.

Referenced by analyze(), DQMProvInfo(), and makeProvInfo().

Definition at line 64 of file DQMProvInfo.h.

Referenced by analyze(), and DQMProvInfo().

Definition at line 88 of file DQMProvInfo.h.

Referenced by beginRun(), and endLuminosityBlock().

Definition at line 95 of file DQMProvInfo.h.

Referenced by makeHLTKeyInfo().

Definition at line 91 of file DQMProvInfo.h.

Referenced by beginRun(), and endLuminosityBlock().

Definition at line 92 of file DQMProvInfo.h.

Referenced by beginRun(), and endLuminosityBlock().

Definition at line 94 of file DQMProvInfo.h.

Referenced by beginRun(), and endLuminosityBlock().

Definition at line 89 of file DQMProvInfo.h.

Referenced by beginRun(), and endLuminosityBlock().

Definition at line 90 of file DQMProvInfo.h.

Referenced by beginRun(), and endLuminosityBlock().

Definition at line 81 of file DQMProvInfo.h.

Referenced by makeProvInfo().

int DQMProvInfo::intensity1_ [private]

Definition at line 70 of file DQMProvInfo.h.

Referenced by endLuminosityBlock(), and makeGtInfo().

int DQMProvInfo::intensity2_ [private]

Definition at line 71 of file DQMProvInfo.h.

Referenced by endLuminosityBlock(), and makeGtInfo().

The PID associated with this job.

Definition at line 85 of file DQMProvInfo.h.

Referenced by makeProvInfo().

int DQMProvInfo::lastlumi_ [private]

Definition at line 66 of file DQMProvInfo.h.

Referenced by beginRun(), DQMProvInfo(), and endLuminosityBlock().

int DQMProvInfo::lhcFill_ [private]

Definition at line 67 of file DQMProvInfo.h.

Referenced by endLuminosityBlock(), and makeGtInfo().

int DQMProvInfo::momentum_ [private]

Definition at line 69 of file DQMProvInfo.h.

Referenced by endLuminosityBlock(), and makeGtInfo().

std::string DQMProvInfo::nameProcess_ [private]

Definition at line 60 of file DQMProvInfo.h.

Referenced by analyze(), DQMProvInfo(), and makeHLTKeyInfo().

Definition at line 54 of file DQMProvInfo.h.

Referenced by DQMProvInfo().

bool DQMProvInfo::physDecl_ [private]

Definition at line 62 of file DQMProvInfo.h.

Referenced by beginRun(), DQMProvInfo(), endLuminosityBlock(), and makeGtInfo().

Current working directory of the job.

Definition at line 84 of file DQMProvInfo.h.

Referenced by makeProvInfo().

std::string DQMProvInfo::provinfofolder_ [private]

Definition at line 56 of file DQMProvInfo.h.

Referenced by DQMProvInfo(), makeHLTKeyInfo(), and makeProvInfo().

Definition at line 97 of file DQMProvInfo.h.

Referenced by beginRun(), and endLuminosityBlock().

Definition at line 98 of file DQMProvInfo.h.

Referenced by beginRun(), and endLuminosityBlock().

std::string DQMProvInfo::runType_ [private]

Definition at line 59 of file DQMProvInfo.h.

Referenced by DQMProvInfo(), and makeProvInfo().

std::string DQMProvInfo::subsystemname_ [private]

Definition at line 57 of file DQMProvInfo.h.

Referenced by beginRun(), DQMProvInfo(), makeHLTKeyInfo(), and makeProvInfo().

Definition at line 76 of file DQMProvInfo.h.

Referenced by makeProvInfo().

Definition at line 77 of file DQMProvInfo.h.

Definition at line 79 of file DQMProvInfo.h.

Referenced by analyze(), and makeProvInfo().

Definition at line 80 of file DQMProvInfo.h.

Referenced by makeProvInfo().

Definition at line 78 of file DQMProvInfo.h.

Referenced by makeProvInfo().

Hostname of the local machine.

Definition at line 83 of file DQMProvInfo.h.

Referenced by makeProvInfo().