CMS 3D CMS Logo

Public Member Functions | Private Member Functions | Private Attributes

HLTConfigData Class Reference

#include <HLTConfigData.h>

List of all members.

Public Member Functions

const std::vector< std::string > & datasetContent (unsigned int dataset) const
 names of trigger paths in dataset with index i
const std::vector< std::string > & datasetContent (const std::string &dataset) const
 names of trigger paths in dataset with name
const std::vector< std::vector
< std::string > > & 
datasetContents () const
 names of trigger paths for all datasets
unsigned int datasetIndex (const std::string &dataset) const
 index of dataset with name
const std::string & datasetName (unsigned int dataset) const
 name of dataset with index i
const std::vector< std::string > & datasetNames () const
 Datasets.
void dump (const std::string &what) const
 Dumping config info to cout.
 HLTConfigData (const edm::ParameterSet *iID)
 HLTConfigData ()
const std::vector< std::vector
< std::pair< bool, std::string > > > & 
hltL1GTSeeds () const
const std::vector< std::pair
< bool, std::string > > & 
hltL1GTSeeds (const std::string &trigger) const
 HLTLevel1GTSeed modules for trigger path with name.
const std::vector< std::pair
< bool, std::string > > & 
hltL1GTSeeds (unsigned int trigger) const
 HLTLevel1GTSeed modules for trigger path with index i.
edm::ParameterSetID id () const
 technical: id() function needed for use with ThreadSafeRegistry
const std::string moduleEDMType (const std::string &module) const
 C++ base class name of module.
unsigned int moduleIndex (unsigned int trigger, const std::string &module) const
 slot position of module on trigger path (0 - size-1)
unsigned int moduleIndex (const std::string &trigger, const std::string &module) const
const std::string & moduleLabel (const std::string &trigger, unsigned int module) const
const std::string & moduleLabel (unsigned int trigger, unsigned int module) const
const std::vector< std::string > & moduleLabels (unsigned int trigger) const
 label(s) of module(s) on a trigger path
const std::vector< std::string > & moduleLabels (const std::string &trigger) const
const edm::ParameterSetmodulePSet (const std::string &module) const
 ParameterSet of module.
const std::string moduleType (const std::string &module) const
 C++ class name of module.
const std::vector< std::string > & prescaleLabels () const
 low-level data member access
unsigned int prescaleSize () const
const std::map< std::string,
std::vector< unsigned int > > & 
prescaleTable () const
unsigned int prescaleValue (unsigned int set, const std::string &trigger) const
 HLT prescale value in specific prescale set for a specific trigger path.
const std::string & processName () const
 Accessors (const methods)
const edm::ParameterSetprocessPSet () const
 ParameterSet of process.
const bool saveTags (const std::string &module) const
 Is module an L3 filter (ie, tracked saveTags=true)
const std::vector< std::string > & saveTagsModules (unsigned int trigger) const
const std::vector< std::string > & saveTagsModules (const std::string &trigger) const
unsigned int size (unsigned int trigger) const
 number of modules on a specific trigger path
unsigned int size () const
 number of trigger paths in trigger table
unsigned int size (const std::string &trigger) const
const std::vector< std::string > & streamContent (unsigned int stream) const
 names of datasets in stream with index i
const std::vector< std::string > & streamContent (const std::string &stream) const
 names of datasets in stream with name
const std::vector< std::vector
< std::string > > & 
streamContents () const
 names of datasets for all streams
unsigned int streamIndex (const std::string &stream) const
 index of stream with name
const std::string & streamName (unsigned int stream) const
 name of stream with index i
const std::vector< std::string > & streamNames () const
 Streams.
const std::string & tableName () const
 HLT ConfDB table name.
unsigned int triggerIndex (const std::string &triggerName) const
 slot position of trigger path in trigger table (0 - size-1)
const std::string & triggerName (unsigned int triggerIndex) const
const std::vector< std::string > & triggerNames () const
 names of trigger paths

Private Member Functions

void extract ()
 extract information into data members - called by init() methods

Private Attributes

std::vector< std::vector
< std::string > > 
datasetContents_
std::map< std::string,
unsigned int > 
datasetIndex_
std::vector< std::string > datasetNames_
std::vector< std::vector
< std::pair< bool, std::string > > > 
hltL1GTSeeds_
trigger::HLTPrescaleTable hltPrescaleTable_
std::vector< std::map
< std::string, unsigned int > > 
moduleIndex_
std::vector< std::vector
< std::string > > 
moduleLabels_
std::string processName_
const edm::ParameterSetprocessPSet_
std::vector< std::vector
< std::string > > 
saveTagsModules_
std::vector< std::vector
< std::string > > 
streamContents_
std::map< std::string,
unsigned int > 
streamIndex_
std::vector< std::string > streamNames_
std::string tableName_
std::map< std::string,
unsigned int > 
triggerIndex_
std::vector< std::string > triggerNames_

Detailed Description

This class provides access routines to get hold of the HLT Configuration

Date:
2011/05/01 10:32:13
Revision:
1.13
Author:
Martin Grunewald

See header file for documentation

Date:
2011/05/01 10:32:16
Revision:
1.15
Author:
Martin Grunewald

Definition at line 27 of file HLTConfigData.h.


Constructor & Destructor Documentation

HLTConfigData::HLTConfigData ( )
HLTConfigData::HLTConfigData ( const edm::ParameterSet iID)

Member Function Documentation

const std::vector< std::string > & HLTConfigData::datasetContent ( unsigned int  dataset) const

names of trigger paths in dataset with index i

Definition at line 484 of file HLTConfigData.cc.

References datasetContents_.

Referenced by datasetContent(), and HLTConfigProvider::datasetContent().

                                                                                    {
  return datasetContents_.at(dataset);
}
const std::vector< std::string > & HLTConfigData::datasetContent ( const std::string &  dataset) const

names of trigger paths in dataset with name

Definition at line 488 of file HLTConfigData.cc.

References datasetContent(), and datasetIndex().

const std::vector< std::vector< std::string > > & HLTConfigData::datasetContents ( ) const

names of trigger paths for all datasets

Definition at line 480 of file HLTConfigData.cc.

References datasetContents_.

Referenced by HLTConfigProvider::datasetContents().

                                                                             {
  return datasetContents_;
}
unsigned int HLTConfigData::datasetIndex ( const std::string &  dataset) const

index of dataset with name

Definition at line 471 of file HLTConfigData.cc.

References datasetIndex_, datasetNames_, and getHLTprescales::index.

Referenced by datasetContent(), and HLTConfigProvider::datasetIndex().

                                                                       {
  const std::map<std::string,unsigned int>::const_iterator index(datasetIndex_.find(dataset));
  if (index==datasetIndex_.end()) {
    return datasetNames_.size();
  } else {
    return index->second;
  }
}
const std::string & HLTConfigData::datasetName ( unsigned int  dataset) const

name of dataset with index i

Definition at line 467 of file HLTConfigData.cc.

References datasetNames_.

Referenced by HLTConfigProvider::datasetName().

                                                                      {
  return datasetNames_.at(dataset);
}
const std::vector< std::string > & HLTConfigData::datasetNames ( ) const

Datasets.

Datasets list of names of all datasets

Definition at line 463 of file HLTConfigData.cc.

References datasetNames_.

Referenced by HLTConfigProvider::datasetNames().

                                                              {
  return datasetNames_;
}
void HLTConfigData::dump ( const std::string &  what) const

Dumping config info to cout.

Definition at line 209 of file HLTConfigData.cc.

References gather_cfg::cout, datasetContents_, datasetNames_, hltL1GTSeeds_, hltPrescaleTable_, i, j, label, trigger::HLTPrescaleTable::labels(), L1TDQM_cfg::labels, m, moduleEDMType(), moduleLabels_, moduleType(), n, processName_, processPSet_, saveTags(), trigger::HLTPrescaleTable::size(), size(), streamContents_, streamNames_, asciidump::table, trigger::HLTPrescaleTable::table(), tableName_, o2o::tags, and triggerNames_.

Referenced by HLTConfigProvider::dump().

                                                    {
   using namespace std;
   using namespace edm;

   if (what=="ProcessPSet") {
     cout << "HLTConfigData::dump: ProcessPSet = " << endl << *processPSet_ << endl;
   } else if (what=="ProcessName") {
     cout << "HLTConfigData::dump: ProcessName = " << processName_ << endl;

   } else if (what=="TableName") {
     cout << "HLTConfigData::dump: TableName = " << tableName_ << endl;
   } else if (what=="Triggers") {
     const unsigned int n(size());
     cout << "HLTConfigData::dump: Triggers: " << n << endl;
     for (unsigned int i=0; i!=n; ++i) {
       cout << "  " << i << " " << triggerNames_[i] << endl;
     }
   } else if (what=="TriggerSeeds") {
     const unsigned int n(size());
     cout << "HLTConfigData::dump: TriggerSeeds: " << n << endl;
     for (unsigned int i=0; i!=n; ++i) {
       const unsigned int m(hltL1GTSeeds_[i].size());
       cout << "  " << i << " " << triggerNames_[i] << " " << m << endl;
       for (unsigned int j=0; j!=m; ++j) {
         cout << "    " << j
              << " " << hltL1GTSeeds_[i][j].first
              << "/" << hltL1GTSeeds_[i][j].second << endl;
       }
     }
   } else if (what=="Modules") {
     const unsigned int n(size());
     cout << "HLTConfigData::dump Triggers and Modules: " << n << endl;
     for (unsigned int i=0; i!=n; ++i) {
       const unsigned int m(size(i));
       cout << i << " " << triggerNames_[i] << " " << m << endl;
       cout << " - Modules: ";
       unsigned int nHLTPrescalers(0);
       unsigned int nHLTLevel1GTSeed(0);
       for (unsigned int j=0; j!=m; ++j) {
         const string& label(moduleLabels_[i][j]);
         const string  type(moduleType(label));
         const string  edmtype(moduleEDMType(label));
         const bool    tags(saveTags(label));
         cout << " " << j << ":" << label << "/" << type << "/" << edmtype << "/" << tags;
         if (type=="HLTPrescaler") nHLTPrescalers++;
         if (type=="HLTLevel1GTSeed") nHLTLevel1GTSeed++;
       }
       cout << endl;
       cout << " - Number of HLTPrescaler/HLTLevel1GTSeed modules: " 
            << nHLTPrescalers << "/" << nHLTLevel1GTSeed << endl;
     }
   } else if (what=="StreamNames") {
     const unsigned int n(streamNames_.size());
     cout << "HLTConfigData::dump: StreamNames: " << n << endl;
     for (unsigned int i=0; i!=n; ++i) {
       cout << "  " << i << " " << streamNames_[i] << endl;
     }
   } else if (what=="Streams") {
     const unsigned int n(streamNames_.size());
     cout << "HLTConfigData::dump: Streams: " << n << endl;
     for (unsigned int i=0; i!=n; ++i) {
       const unsigned int m(streamContents_[i].size());
       cout << "  " << i << " " << streamNames_[i] << " " << m << endl;
       for (unsigned int j=0; j!=m; ++j) {
         cout << "    " << j << " " << streamContents_[i][j] << endl;
       }
     }
   } else if (what=="DatasetNames") {
     const unsigned int n(datasetNames_.size());
     cout << "HLTConfigData::dump: DatasetNames: " << n << endl;
     for (unsigned int i=0; i!=n; ++i) {
       cout << "  " << i << " " << datasetNames_[i] << endl;
     }
   } else if (what=="Datasets") {
     const unsigned int n(datasetNames_.size());
     cout << "HLTConfigData::dump: Datasets: " << n << endl;
     for (unsigned int i=0; i!=n; ++i) {
       const unsigned int m(datasetContents_[i].size());
       cout << "  " << i << " " << datasetNames_[i] << " " << m << endl;
       for (unsigned int j=0; j!=m; ++j) {
         cout << "    " << j << " " << datasetContents_[i][j] << endl;
       }
     }
   } else if (what=="PrescaleTable") {
     const unsigned int n (hltPrescaleTable_.size());
     cout << "HLTConfigData::dump: PrescaleTable: # of sets : " << n << endl;
     const vector<string>& labels(hltPrescaleTable_.labels());
     for (unsigned int i=0; i!=n; ++i) {
       cout << " " << i << "/'" << labels.at(i) << "'";
     }
     if (n>0) cout << endl;
     const map<string,vector<unsigned int> >& table(hltPrescaleTable_.table());
     cout << "HLTConfigData::dump: PrescaleTable: # of paths: " << table.size() << endl;
     const map<string,vector<unsigned int> >::const_iterator tb(table.begin());
     const map<string,vector<unsigned int> >::const_iterator te(table.end());
     for (map<string,vector<unsigned int> >::const_iterator ti=tb; ti!=te; ++ti) {
       for (unsigned int i=0; i!=n; ++i) {
         cout << " " << ti->second.at(i);
       }
       cout << " " << ti->first << endl;
     }
   } else {
     cout << "HLTConfigData::dump: Unkown dump request: " << what << endl;
   }
   return;
}
void HLTConfigData::extract ( ) [private]

extract information into data members - called by init() methods

Definition at line 54 of file HLTConfigData.cc.

References begin, datasetContents_, datasetIndex_, datasetNames_, RecoTau_DiTaus_pt_20-420_cfg::datasets, end, edm::ParameterSet::existsAs(), edm::ParameterSet::getParameter(), edm::ParameterSet::getParameterSet(), hltL1GTSeeds_, hltPrescaleTable_, i, j, label, L1TDQM_cfg::labels, m, moduleIndex_, moduleLabels(), moduleLabels_, modulePSet(), moduleType(), n, processName_, processPSet_, MultipleCompare::pset, saveTags(), saveTagsModules_, size(), python::multivaluedict::sort(), streamContents_, streamIndex_, streamNames_, hcal_dqm_sourceclient-file_cfg::streams, asciidump::table, tableName(), tableName_, triggerIndex_, and triggerNames_.

Referenced by HLTConfigData().

{
   using namespace std;
   using namespace edm;
   using namespace trigger;

   // Extract process name
   if (processPSet_->existsAs<string>("@process_name",true)) {
     processName_= processPSet_->getParameter<string>("@process_name");
   }

   // Obtain PSet containing table name (available only in 2_1_10++ files)
   if (processPSet_->existsAs<ParameterSet>("HLTConfigVersion",true)) {
     const ParameterSet& HLTPSet(processPSet_->getParameterSet("HLTConfigVersion"));
     if (HLTPSet.existsAs<string>("tableName",true)) {
       tableName_=HLTPSet.getParameter<string>("tableName");
     }
   }
   LogVerbatim("HLTConfigData") << "ProcessPSet with: "
                                << processName_ << " "
                                << tableName();

   // Extract trigger paths (= paths - end_paths)
   if (processPSet_->existsAs<ParameterSet>("@trigger_paths",true)) {
     const ParameterSet& HLTPSet(processPSet_->getParameterSet("@trigger_paths"));
     if (HLTPSet.existsAs<vector<string> >("@trigger_paths",true)) {
       triggerNames_= HLTPSet.getParameter<vector<string> >("@trigger_paths");
     }
   }

   // Obtain module labels of all modules on all trigger paths
   const unsigned int n(size());
   moduleLabels_.reserve(n);
   for (unsigned int i=0;i!=n; ++i) {
     if (processPSet_->existsAs<vector<string> >(triggerNames_[i],true)) {
       moduleLabels_.push_back(processPSet_->getParameter<vector<string> >(triggerNames_[i]));
     }
   }
   saveTagsModules_.reserve(n);
   vector<string> labels;
   for (unsigned int i=0;i!=n; ++i) {
     labels.clear();
     const vector<string>& modules(moduleLabels(i));
     const unsigned int m(modules.size());
     labels.reserve(m);
     for (unsigned int j=0;j!=m; ++j) {
       const string& label(modules[j]);
       if (saveTags(label)) labels.push_back(label);
     }
     saveTagsModules_.push_back(labels);
   }

   // Fill index maps for fast lookup
   moduleIndex_.resize(n);
   for (unsigned int i=0; i!=n; ++i) {
     triggerIndex_[triggerNames_[i]]=i;
     moduleIndex_[i].clear();
     const unsigned int m(size(i));
     for (unsigned int j=0; j!=m; ++j) {
       moduleIndex_[i][moduleLabels_[i][j]]=j;
     }
   }

   // Extract and fill HLTLevel1GTSeed information for each trigger path
   hltL1GTSeeds_.resize(n);
   for (unsigned int i=0; i!=n; ++i) {
     hltL1GTSeeds_[i].clear();
     const unsigned int m(size(i));
     for (unsigned int j=0; j!=m; ++j) {
       const string& label(moduleLabels_[i][j]);
       if (moduleType(label) == "HLTLevel1GTSeed") {
         const ParameterSet& pset(modulePSet(label));
         if (pset!=ParameterSet()) {
           const bool   l1Tech(pset.getParameter<bool>("L1TechTriggerSeeding"));
           const string l1Seed(pset.getParameter<string>("L1SeedsLogicalExpression"));
           hltL1GTSeeds_[i].push_back(pair<bool,string>(l1Tech,l1Seed));
         }
       }
     }
   }

   // Extract and fill streams information
   if (processPSet_->existsAs<ParameterSet>("streams",true)) {
     const ParameterSet& streams(processPSet_->getParameterSet("streams"));
     streamNames_=streams.getParameterNamesForType<vector<string> >();
     sort(streamNames_.begin(),streamNames_.end());
     const unsigned int n(streamNames_.size());
     streamContents_.resize(n);
     for (unsigned int i=0; i!=n; ++i) {
       streamIndex_[streamNames_[i]]=i;
       streamContents_[i]=streams.getParameter<vector<string> >(streamNames_[i]);
       sort(streamContents_[i].begin(),streamContents_[i].end());
     }
     
   }

   // Extract and fill datasets information
   if (processPSet_->existsAs<ParameterSet>("datasets",true)) {
     const ParameterSet& datasets(processPSet_->getParameterSet("datasets"));
     datasetNames_=datasets.getParameterNamesForType<vector<string> >();
     sort(datasetNames_.begin(),datasetNames_.end());
     const unsigned int n(datasetNames_.size());
     datasetContents_.resize(n);
     for (unsigned int i=0; i!=n; ++i) {
       datasetIndex_[datasetNames_[i]]=i;
       datasetContents_[i]=datasets.getParameter< vector<string> >(datasetNames_[i]);
       sort(datasetContents_[i].begin(),datasetContents_[i].end());
     }
   }

   // Extract and fill Prescale information

   // Check various possibilities to get the HLT prescale sets:
   string prescaleName("");
   const string preS("PrescaleService");
   const string preT("PrescaleTable");
   if (processPSet_->existsAs<ParameterSet>(preS,true)) {
     prescaleName=preS;
   } else if ( processPSet_->existsAs<ParameterSet>(preT,true)) {
     prescaleName=preT;
   }
   if (prescaleName=="") {
     hltPrescaleTable_=HLTPrescaleTable();
   } else {
     const ParameterSet& iPS(processPSet_->getParameterSet(prescaleName));
     string defaultLabel(iPS.getUntrackedParameter<string>("lvl1DefaultLabel",""));
     vector<string> labels;
     if (iPS.existsAs<vector<string> >("lvl1Labels",true)) {
       labels = iPS.getParameter<vector<string> >("lvl1Labels");
     }
     unsigned int set(0);
     const unsigned int n(labels.size());
     for (unsigned int i=0; i!=n; ++i) {
       if (labels[i]==defaultLabel) set=i;
     }
     map<string,vector<unsigned int> > table;
     if (iPS.existsAs< vector<ParameterSet> >("prescaleTable",true)) {
       const vector<ParameterSet>& vpTable(iPS.getParameterSetVector("prescaleTable"));
       const unsigned int m (vpTable.size());
       for (unsigned int i=0; i!=m; ++i) {
         table[vpTable[i].getParameter<std::string>("pathName")] = 
           vpTable[i].getParameter<std::vector<unsigned int> >("prescales");
       }
     }
     if (n>0) {
       hltPrescaleTable_=HLTPrescaleTable(set,labels,table);
     } else {
       hltPrescaleTable_=HLTPrescaleTable();
     }

   }

   return;
}
const std::vector< std::vector< std::pair< bool, std::string > > > & HLTConfigData::hltL1GTSeeds ( ) const

HLTLevel1GTSeed module HLTLevel1GTSeed modules for all trigger paths

Definition at line 420 of file HLTConfigData.cc.

References hltL1GTSeeds_.

Referenced by hltL1GTSeeds(), and HLTConfigProvider::hltL1GTSeeds().

                                                                                         {
  return hltL1GTSeeds_;
}
const std::vector< std::pair< bool, std::string > > & HLTConfigData::hltL1GTSeeds ( const std::string &  trigger) const

HLTLevel1GTSeed modules for trigger path with name.

Definition at line 424 of file HLTConfigData.cc.

References hltL1GTSeeds(), and triggerIndex().

                                                                                                     {
  return hltL1GTSeeds(triggerIndex(trigger));
}
const std::vector< std::pair< bool, std::string > > & HLTConfigData::hltL1GTSeeds ( unsigned int  trigger) const

HLTLevel1GTSeed modules for trigger path with index i.

Definition at line 428 of file HLTConfigData.cc.

References hltL1GTSeeds_.

                                                                                                 {
  return hltL1GTSeeds_.at(trigger);
}
edm::ParameterSetID HLTConfigData::id ( void  ) const

technical: id() function needed for use with ThreadSafeRegistry

Definition at line 507 of file HLTConfigData.cc.

References edm::ParameterSet::id(), and processPSet_.

Referenced by HLTConfigProvider::init().

                                          {
  return processPSet_->id();
}
const std::string HLTConfigData::moduleEDMType ( const std::string &  module) const

C++ base class name of module.

Definition at line 390 of file HLTConfigData.cc.

References edm::ParameterSet::existsAs(), edm::ParameterSet::getParameter(), modulePSet(), and MultipleCompare::pset.

Referenced by dump(), and HLTConfigProvider::moduleEDMType().

                                                                          {
  const edm::ParameterSet& pset(modulePSet(module));
  if (pset.existsAs<std::string>("@module_edm_type",true)) {
    return pset.getParameter<std::string>("@module_edm_type");
  } else {
    return "";
  }
}
unsigned int HLTConfigData::moduleIndex ( unsigned int  trigger,
const std::string &  module 
) const

slot position of module on trigger path (0 - size-1)

Definition at line 369 of file HLTConfigData.cc.

References getHLTprescales::index, moduleIndex_, and size().

Referenced by HLTConfigProvider::moduleIndex(), and moduleIndex().

                                                                                           {
  const std::map<std::string,unsigned int>::const_iterator index(moduleIndex_.at(trigger).find(module));
  if (index==moduleIndex_.at(trigger).end()) {
    return size(trigger);
  } else {
    return index->second;
  }
}
unsigned int HLTConfigData::moduleIndex ( const std::string &  trigger,
const std::string &  module 
) const

Definition at line 377 of file HLTConfigData.cc.

References moduleIndex(), and triggerIndex().

                                                                                               {
  return moduleIndex(triggerIndex(trigger),module);
}
const std::string & HLTConfigData::moduleLabel ( const std::string &  trigger,
unsigned int  module 
) const

Definition at line 365 of file HLTConfigData.cc.

References moduleLabels_, and triggerIndex().

                                                                                               {
  return moduleLabels_.at(triggerIndex(trigger)).at(module);
}
const std::string & HLTConfigData::moduleLabel ( unsigned int  trigger,
unsigned int  module 
) const

Definition at line 362 of file HLTConfigData.cc.

References moduleLabels_.

Referenced by HLTConfigProvider::moduleLabel().

                                                                                           {
  return moduleLabels_.at(trigger).at(module);
}
const std::vector< std::string > & HLTConfigData::moduleLabels ( unsigned int  trigger) const

label(s) of module(s) on a trigger path

Definition at line 348 of file HLTConfigData.cc.

References moduleLabels_.

Referenced by extract(), and HLTConfigProvider::moduleLabels().

                                                                                  {
  return moduleLabels_.at(trigger);
}
const std::vector< std::string > & HLTConfigData::moduleLabels ( const std::string &  trigger) const

Definition at line 351 of file HLTConfigData.cc.

References moduleLabels_, and triggerIndex().

                                                                                      {
  return moduleLabels_.at(triggerIndex(trigger));
}
const edm::ParameterSet & HLTConfigData::modulePSet ( const std::string &  module) const
const std::string HLTConfigData::moduleType ( const std::string &  module) const

C++ class name of module.

Definition at line 381 of file HLTConfigData.cc.

References edm::ParameterSet::existsAs(), edm::ParameterSet::getParameter(), modulePSet(), and MultipleCompare::pset.

Referenced by dump(), extract(), and HLTConfigProvider::moduleType().

                                                                       {
  const edm::ParameterSet& pset(modulePSet(module));
  if (pset.existsAs<std::string>("@module_type",true)) {
    return pset.getParameter<std::string>("@module_type");
  } else {
    return "";
  }
}
const std::vector< std::string > & HLTConfigData::prescaleLabels ( ) const

low-level data member access

Definition at line 500 of file HLTConfigData.cc.

References hltPrescaleTable_, and trigger::HLTPrescaleTable::labels().

Referenced by HLTConfigProvider::prescaleLabels().

                                                                {
  return hltPrescaleTable_.labels();
}
unsigned int HLTConfigData::prescaleSize ( ) const

HLT prescale info Number of HLT prescale sets

Definition at line 493 of file HLTConfigData.cc.

References hltPrescaleTable_, and trigger::HLTPrescaleTable::size().

Referenced by HLTConfigProvider::prescaleSize().

                                               {
  return hltPrescaleTable_.size();
}
const std::map< std::string, std::vector< unsigned int > > & HLTConfigData::prescaleTable ( ) const
unsigned int HLTConfigData::prescaleValue ( unsigned int  set,
const std::string &  trigger 
) const

HLT prescale value in specific prescale set for a specific trigger path.

Definition at line 496 of file HLTConfigData.cc.

References hltPrescaleTable_, and trigger::HLTPrescaleTable::prescale().

Referenced by HLTConfigProvider::prescaleValue().

                                                                                          {
  return hltPrescaleTable_.prescale(set,trigger);
}
const std::string & HLTConfigData::processName ( ) const

Accessors (const methods)

process name

Definition at line 316 of file HLTConfigData.cc.

References processName_.

Referenced by HLTConfigProvider::processName().

                                                  {
  return processName_;
}
const edm::ParameterSet & HLTConfigData::processPSet ( ) const

ParameterSet of process.

Definition at line 399 of file HLTConfigData.cc.

References processPSet_.

Referenced by HLTConfigProvider::processPSet().

                                                        {
  return *processPSet_;
}
const bool HLTConfigData::saveTags ( const std::string &  module) const

Is module an L3 filter (ie, tracked saveTags=true)

Definition at line 411 of file HLTConfigData.cc.

References edm::ParameterSet::existsAs(), edm::ParameterSet::getParameter(), modulePSet(), and MultipleCompare::pset.

Referenced by dump(), extract(), and HLTConfigProvider::saveTags().

                                                                {
  const edm::ParameterSet& pset(modulePSet(module));
  if (pset.existsAs<bool>("saveTags",true)) {
    return pset.getParameter<bool>("saveTags");
  } else {
    return false;
  }
}
const std::vector< std::string > & HLTConfigData::saveTagsModules ( unsigned int  trigger) const

Definition at line 355 of file HLTConfigData.cc.

References saveTagsModules_.

Referenced by HLTConfigProvider::saveTagsModules().

                                                                                     {
  return saveTagsModules_.at(trigger);
}
const std::vector< std::string > & HLTConfigData::saveTagsModules ( const std::string &  trigger) const

Definition at line 358 of file HLTConfigData.cc.

References saveTagsModules_, and triggerIndex().

                                                                                         {
  return saveTagsModules_.at(triggerIndex(trigger));
}
unsigned int HLTConfigData::size ( unsigned int  trigger) const

number of modules on a specific trigger path

Definition at line 323 of file HLTConfigData.cc.

References moduleLabels_.

                                                           {
  return moduleLabels_.at(trigger).size();
}
unsigned int HLTConfigData::size ( const std::string &  trigger) const

Definition at line 326 of file HLTConfigData.cc.

References size(), and triggerIndex().

                                                               {
  return size(triggerIndex(trigger));
}
unsigned int HLTConfigData::size ( void  ) const

number of trigger paths in trigger table

Definition at line 320 of file HLTConfigData.cc.

References triggerNames_.

Referenced by dump(), extract(), moduleIndex(), HLTConfigProvider::size(), size(), and triggerIndex().

                                       {
  return triggerNames_.size();
}
const std::vector< std::string > & HLTConfigData::streamContent ( unsigned int  stream) const

names of datasets in stream with index i

Definition at line 454 of file HLTConfigData.cc.

References streamContents_.

Referenced by HLTConfigProvider::streamContent(), and streamContent().

                                                                                  {
  return streamContents_.at(stream);
}
const std::vector< std::string > & HLTConfigData::streamContent ( const std::string &  stream) const

names of datasets in stream with name

Definition at line 458 of file HLTConfigData.cc.

References streamContent(), and streamIndex().

                                                                                      {
  return streamContent(streamIndex(stream));
}
const std::vector< std::vector< std::string > > & HLTConfigData::streamContents ( ) const

names of datasets for all streams

Definition at line 450 of file HLTConfigData.cc.

References streamContents_.

Referenced by HLTConfigProvider::streamContents().

                                                                            {
  return streamContents_;
}
unsigned int HLTConfigData::streamIndex ( const std::string &  stream) const

index of stream with name

Definition at line 441 of file HLTConfigData.cc.

References getHLTprescales::index, streamIndex_, and streamNames_.

Referenced by streamContent(), and HLTConfigProvider::streamIndex().

                                                                     {
  const std::map<std::string,unsigned int>::const_iterator index(streamIndex_.find(stream));
  if (index==streamIndex_.end()) {
    return streamNames_.size();
  } else {
    return index->second;
  }
}
const std::string & HLTConfigData::streamName ( unsigned int  stream) const

name of stream with index i

Definition at line 437 of file HLTConfigData.cc.

References streamNames_.

Referenced by HLTConfigProvider::streamName().

                                                                    {
  return streamNames_.at(stream);
}
const std::vector< std::string > & HLTConfigData::streamNames ( ) const

Streams.

Streams list of names of all streams

Definition at line 433 of file HLTConfigData.cc.

References streamNames_.

Referenced by HLTConfigProvider::streamNames().

                                                             {
  return streamNames_;
}
const std::string & HLTConfigData::tableName ( ) const

HLT ConfDB table name.

Definition at line 330 of file HLTConfigData.cc.

References tableName_.

Referenced by extract(), and HLTConfigProvider::tableName().

                                                {
  return tableName_;
}
unsigned int HLTConfigData::triggerIndex ( const std::string &  triggerName) const

slot position of trigger path in trigger table (0 - size-1)

Definition at line 339 of file HLTConfigData.cc.

References getHLTprescales::index, size(), and triggerIndex_.

Referenced by hltL1GTSeeds(), moduleIndex(), moduleLabel(), moduleLabels(), saveTagsModules(), size(), and HLTConfigProvider::triggerIndex().

                                                                       {
  const std::map<std::string,unsigned int>::const_iterator index(triggerIndex_.find(trigger));
  if (index==triggerIndex_.end()) {
    return size();
  } else {
    return index->second;
  }
}
const std::string & HLTConfigData::triggerName ( unsigned int  triggerIndex) const

Definition at line 336 of file HLTConfigData.cc.

References triggerNames_.

Referenced by HLTConfigProvider::triggerName().

                                                                      {
  return triggerNames_.at(trigger);
}
const std::vector< std::string > & HLTConfigData::triggerNames ( ) const

names of trigger paths

Definition at line 333 of file HLTConfigData.cc.

References triggerNames_.

Referenced by HLTConfigProvider::triggerNames().

                                                              {
  return triggerNames_;
}

Member Data Documentation

std::vector<std::vector<std::string> > HLTConfigData::datasetContents_ [private]

Definition at line 163 of file HLTConfigData.h.

Referenced by datasetContent(), datasetContents(), dump(), and extract().

std::map<std::string,unsigned int> HLTConfigData::datasetIndex_ [private]

Definition at line 162 of file HLTConfigData.h.

Referenced by datasetIndex(), and extract().

std::vector<std::string> HLTConfigData::datasetNames_ [private]

Definition at line 161 of file HLTConfigData.h.

Referenced by datasetIndex(), datasetName(), datasetNames(), dump(), and extract().

std::vector<std::vector<std::pair<bool,std::string> > > HLTConfigData::hltL1GTSeeds_ [private]

Definition at line 155 of file HLTConfigData.h.

Referenced by dump(), extract(), and hltL1GTSeeds().

std::vector<std::map<std::string,unsigned int> > HLTConfigData::moduleIndex_ [private]

Definition at line 153 of file HLTConfigData.h.

Referenced by extract(), and moduleIndex().

std::vector<std::vector<std::string> > HLTConfigData::moduleLabels_ [private]

Definition at line 149 of file HLTConfigData.h.

Referenced by dump(), extract(), moduleLabel(), moduleLabels(), and size().

std::string HLTConfigData::processName_ [private]

Definition at line 146 of file HLTConfigData.h.

Referenced by dump(), extract(), and processName().

Definition at line 144 of file HLTConfigData.h.

Referenced by dump(), extract(), HLTConfigData(), id(), modulePSet(), and processPSet().

std::vector<std::vector<std::string> > HLTConfigData::saveTagsModules_ [private]

Definition at line 150 of file HLTConfigData.h.

Referenced by extract(), and saveTagsModules().

std::vector<std::vector<std::string> > HLTConfigData::streamContents_ [private]

Definition at line 159 of file HLTConfigData.h.

Referenced by dump(), extract(), streamContent(), and streamContents().

std::map<std::string,unsigned int> HLTConfigData::streamIndex_ [private]

Definition at line 158 of file HLTConfigData.h.

Referenced by extract(), and streamIndex().

std::vector<std::string> HLTConfigData::streamNames_ [private]

Definition at line 157 of file HLTConfigData.h.

Referenced by dump(), extract(), streamIndex(), streamName(), and streamNames().

std::string HLTConfigData::tableName_ [private]

Definition at line 147 of file HLTConfigData.h.

Referenced by dump(), extract(), and tableName().

std::map<std::string,unsigned int> HLTConfigData::triggerIndex_ [private]

Definition at line 152 of file HLTConfigData.h.

Referenced by extract(), and triggerIndex().

std::vector<std::string> HLTConfigData::triggerNames_ [private]

Definition at line 148 of file HLTConfigData.h.

Referenced by dump(), extract(), size(), triggerName(), and triggerNames().