CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Member Functions | Private Attributes
edm::ProvenanceAdaptor Class Reference

#include <ProvenanceAdaptor.h>

Public Types

typedef ParameterSetConverter::ParameterSetIdConverter ParameterSetIdConverter
 
typedef std::map< ProcessHistoryID, ProcessHistoryIDProcessHistoryIdConverter
 

Public Member Functions

std::shared_ptr< BranchIDLists const > branchIDLists () const
 
void branchListIndexes (BranchListIndexes &indexes) const
 
ParameterSetID const & convertID (ParameterSetID const &oldID) const
 
ProcessHistoryID const & convertID (ProcessHistoryID const &oldID) const
 
ProvenanceAdaptoroperator= (ProvenanceAdaptor const &)=delete
 
 ProvenanceAdaptor (ProductRegistry &productRegistry, ProcessHistoryMap &pHistMap, ProcessHistoryVector &pHistVector, ProcessConfigurationVector &procConfigVector, ParameterSetIdConverter const &parameterSetIdConverter, bool fullConversion)
 
 ProvenanceAdaptor (ProvenanceAdaptor const &)=delete
 
 ~ProvenanceAdaptor ()
 

Private Member Functions

void fixProcessHistory (ProcessHistoryMap &pHistMap, ProcessHistoryVector &pHistVector)
 

Private Attributes

std::shared_ptr< BranchIDLists const > branchIDLists_
 
std::vector< BranchListIndexbranchListIndexes_
 
ParameterSetIdConverter parameterSetIdConverter_
 
ProcessHistoryIdConverter processHistoryIdConverter_
 

Detailed Description

Definition at line 26 of file ProvenanceAdaptor.h.

Member Typedef Documentation

Definition at line 28 of file ProvenanceAdaptor.h.

Definition at line 29 of file ProvenanceAdaptor.h.

Constructor & Destructor Documentation

edm::ProvenanceAdaptor::ProvenanceAdaptor ( ProductRegistry productRegistry,
ProcessHistoryMap pHistMap,
ProcessHistoryVector pHistVector,
ProcessConfigurationVector procConfigVector,
ParameterSetIdConverter const &  parameterSetIdConverter,
bool  fullConversion 
)

Definition at line 148 of file ProvenanceAdaptor.cc.

References branchIDLists_, branchListIndexes_, and fixProcessHistory().

154  :
155  parameterSetIdConverter_(parameterSetIdConverter),
157  branchIDLists_(),
159  fixProcessHistory(pHistMap, pHistVector);
160  fillProcessConfiguration(pHistVector, procConfigVector);
161  if (fullConversion) {
162  fillListsAndIndexes(productRegistry, pHistMap, branchIDLists_, branchListIndexes_);
163  }
164  }
ProcessHistoryIdConverter processHistoryIdConverter_
std::shared_ptr< BranchIDLists const > branchIDLists_
ParameterSetIdConverter parameterSetIdConverter_
std::vector< BranchListIndex > branchListIndexes_
void fixProcessHistory(ProcessHistoryMap &pHistMap, ProcessHistoryVector &pHistVector)
edm::ProvenanceAdaptor::~ProvenanceAdaptor ( )

Definition at line 166 of file ProvenanceAdaptor.cc.

166 {}
edm::ProvenanceAdaptor::ProvenanceAdaptor ( ProvenanceAdaptor const &  )
delete

Member Function Documentation

std::shared_ptr< BranchIDLists const > edm::ProvenanceAdaptor::branchIDLists ( ) const

Definition at line 187 of file ProvenanceAdaptor.cc.

References branchIDLists_.

Referenced by fixProcessHistory().

187  {
188  return branchIDLists_;
189  }
std::shared_ptr< BranchIDLists const > branchIDLists_
void edm::ProvenanceAdaptor::branchListIndexes ( BranchListIndexes indexes) const

Definition at line 192 of file ProvenanceAdaptor.cc.

References branchListIndexes_.

Referenced by fixProcessHistory().

192  {
193  indexes = branchListIndexes_;
194  }
std::vector< BranchListIndex > branchListIndexes_
ParameterSetID const & edm::ProvenanceAdaptor::convertID ( ParameterSetID const &  oldID) const

Definition at line 169 of file ProvenanceAdaptor.cc.

References parameterSetIdConverter_.

Referenced by fixProcessHistory().

169  {
170  ParameterSetIdConverter::const_iterator it = parameterSetIdConverter_.find(oldID);
171  if (it == parameterSetIdConverter_.end()) {
172  return oldID;
173  }
174  return it->second;
175  }
ParameterSetIdConverter parameterSetIdConverter_
ProcessHistoryID const & edm::ProvenanceAdaptor::convertID ( ProcessHistoryID const &  oldID) const

Definition at line 178 of file ProvenanceAdaptor.cc.

References processHistoryIdConverter_.

178  {
179  ProcessHistoryIdConverter::const_iterator it = processHistoryIdConverter_.find(oldID);
180  if (it == processHistoryIdConverter_.end()) {
181  return oldID;
182  }
183  return it->second;
184  }
ProcessHistoryIdConverter processHistoryIdConverter_
void edm::ProvenanceAdaptor::fixProcessHistory ( ProcessHistoryMap pHistMap,
ProcessHistoryVector pHistVector 
)
private

Definition at line 24 of file ProvenanceAdaptor.cc.

References a, b, edm::ProcessHistory::begin(), edm::BranchDescription::branchID(), branchIDLists(), branchListIndexes(), edm::BranchDescription::branchType(), convertID(), MillePedeFileConverter_cfg::e, edm::ProcessHistory::emplace_back(), edm::ProcessHistory::end(), stringResolutionProvider_cfi::et, edm::find_in_all(), mps_fire::i, edm::ProcessHistory::id(), edm::InEvent, edm::BranchDescription::init(), edm::max(), eostools::move(), AlCaHLTBitMon_ParallelJobs::p, LaserDQM_cfg::process, processHistoryIdConverter_, modifiedElectrons_cfi::processName, edm::BranchDescription::processName(), parseEventContent::prod, edm::ProductRegistry::productListUpdator(), edm::ProcessHistory::push_back(), MetAnalyzer::pv(), edm::ProcessHistory::size(), edm::stable_sort_all(), and AlCaHLTBitMon_QueryRunRegistry::string.

Referenced by ProvenanceAdaptor().

25  {
26  assert (pHistMap.empty() != pHistVector.empty());
27  for (ProcessHistoryVector::const_iterator i = pHistVector.begin(), e = pHistVector.end(); i != e; ++i) {
28  pHistMap.insert(std::make_pair(i->id(), *i));
29  }
30  pHistVector.clear();
31  for (ProcessHistoryMap::const_iterator i = pHistMap.begin(), e = pHistMap.end(); i != e; ++i) {
32  ProcessHistory newHist;
33  ProcessHistoryID const& oldphID = i->first;
34  for (ProcessHistory::const_iterator it = i->second.begin(), et = i->second.end(); it != et; ++it) {
35  ParameterSetID const& newPsetID = convertID(it->parameterSetID());
36  newHist.emplace_back(it->processName(), newPsetID, it->releaseVersion(), it->passID());
37  }
38  assert(newHist.size() == i->second.size());
39  ProcessHistoryID newphID = newHist.id();
40  pHistVector.push_back(std::move(newHist));
41  if (newphID != oldphID) {
42  processHistoryIdConverter_.insert(std::make_pair(oldphID, newphID));
43  }
44  }
45  assert(pHistVector.size() == pHistMap.size());
46  }
collection_type::const_iterator const_iterator
ProcessHistoryIdConverter processHistoryIdConverter_
Hash< ParameterSetType > ParameterSetID
Hash< ProcessHistoryType > ProcessHistoryID
et
define resolution functions of each parameter
ParameterSetID const & convertID(ParameterSetID const &oldID) const
def move(src, dest)
Definition: eostools.py:510
ProvenanceAdaptor& edm::ProvenanceAdaptor::operator= ( ProvenanceAdaptor const &  )
delete

Member Data Documentation

std::shared_ptr<BranchIDLists const> edm::ProvenanceAdaptor::branchIDLists_
private

Definition at line 58 of file ProvenanceAdaptor.h.

Referenced by branchIDLists(), and ProvenanceAdaptor().

std::vector<BranchListIndex> edm::ProvenanceAdaptor::branchListIndexes_
private

Definition at line 59 of file ProvenanceAdaptor.h.

Referenced by branchListIndexes(), and ProvenanceAdaptor().

ParameterSetIdConverter edm::ProvenanceAdaptor::parameterSetIdConverter_
private

Definition at line 56 of file ProvenanceAdaptor.h.

Referenced by convertID().

ProcessHistoryIdConverter edm::ProvenanceAdaptor::processHistoryIdConverter_
private

Definition at line 57 of file ProvenanceAdaptor.h.

Referenced by convertID(), and fixProcessHistory().