CMS 3D CMS Logo

Classes | Functions
edm::eventsetup::heterocontainer Namespace Reference

Classes

class  HCTypeTag
 
struct  type_from_itemtype
 

Functions

template<class Key , class ItemType , class Storage , class IdTag >
ItemType * find (const Storage &iStorage, const IdTag &iIdTag)
 
template<class Key , class ItemType , class Storage >
ItemType * find (const Storage &iStorage)
 
template<class Key , class ItemType , class Storage , class IdTag >
bool insert (Storage &iStorage, ItemType *iItem, const IdTag &iIdTag)
 
template<class Key , class ItemType , class Storage >
bool insert (Storage &iStorage, ItemType *iItem)
 
template<class Type , class Key , class IdTag >
Key makeKey (const IdTag &iIdTag)
 
template<class Type , class Key >
Key makeKey ()
 

Function Documentation

template<class Key , class ItemType , class Storage , class IdTag >
ItemType* edm::eventsetup::heterocontainer::find ( const Storage iStorage,
const IdTag &  iIdTag 
)
inline

Definition at line 62 of file HCMethods.h.

References makeKey().

62  {
63  //The cast should be safe since the Key tells us the type
64  return static_cast<ItemType*>(iStorage.find(
65  makeKey<typename type_from_itemtype<Key,
66  ItemType>::Type,Key>(iIdTag)));
67  }
template<class Key , class ItemType , class Storage >
ItemType* edm::eventsetup::heterocontainer::find ( const Storage iStorage)
inline

Definition at line 70 of file HCMethods.h.

References makeKey().

70  {
71  //The cast should be safe since the Key tells us the type
72  return static_cast<ItemType*>( iStorage.find(
73  makeKey<typename type_from_itemtype<Key,
74  ItemType>::Type,Key>()));
75  }
template<class Key , class ItemType , class Storage , class IdTag >
bool edm::eventsetup::heterocontainer::insert ( Storage iStorage,
ItemType *  iItem,
const IdTag &  iIdTag 
)
inline

Definition at line 49 of file HCMethods.h.

References makeKey().

Referenced by edm::EventSetup::activityRegistry(), HcalLutManager::addLutMap(), edm::ParameterSet::addParameter(), l1t::TriggerSystem::addProcessor(), TrackerAlignmentLevelBuilder::addPXBDetUnitInfo(), TrackerAlignmentLevelBuilder::addPXEDetUnitInfo(), TrackerAlignmentLevelBuilder::addTECDetUnitInfo(), TrackerAlignmentLevelBuilder::addTIBDetUnitInfo(), TrackerAlignmentLevelBuilder::addTIDDetUnitInfo(), TrackerAlignmentLevelBuilder::addTOBDetUnitInfo(), edm::ParameterSet::addUntrackedParameter(), TotemRPDQMSource::analyze(), CTPPSDiamondDQMSource::analyze(), associationMapFilterValues(), CSCSegmentBuilder::build(), DCCTBDataMapper::buildSRPFields(), DCCTBDataMapper::buildTCCFields(), TowerBlockFormatter::DigiToRaw(), StripCompactDigiSimLinks::Filler::Filler(), DetIdAssociator::fillSet(), RPCStripsRing::fillWithVirtualStrips(), HLTMuonPlotter::findMatches(), HBHEHitMap::findNeighbor(), edm::eventsetup::EventSetupProvider::finishConfiguration(), HcalQIEManager::getHfQieTable(), pat::PATTriggerProducer::ModuleLabelToPathAndFlags::init(), edm::ProductRegistry::initializeLookupTables(), edm::AssociationMap< edm::OneToMany< reco::BasicJetCollection, reco::TrackCollection > >::insert(), CustomConfigs::L1REPACK(), CastorPedestalAnalysis::per2CapsHists(), HcalPedestalAnalysis::per2CapsHists(), ConfigBuilder.ConfigBuilder::prepare_DQM(), SETPatternRecognition::produce(), Vispa.Views.LineDecayView.LineDecayContainer::select(), pat::PATObject< ObjectType >::setEfficiency(), CastorLedAnalysis::SetupLEDHists(), HcalLedAnalysis::SetupLEDHists(), reco::TaggingVariableList::TaggingVariableList(), edm::ParameterSet::trackedID(), edm::eventsetup::EventSetupProvider::~EventSetupProvider(), cond::persistency::GLOBAL_TAG::Table::~Table(), cond::persistency::TAG::Table::~Table(), cond::persistency::RUN_INFO::Table::~Table(), cond::persistency::GLOBAL_TAG_MAP::Table::~Table(), cond::persistency::PAYLOAD::Table::~Table(), and cond::persistency::TAG_LOG::Table::~Table().

49  {
50  return iStorage.insert(makeKey< typename type_from_itemtype<Key, ItemType>::Type,
51  Key>(iIdTag) , iItem);
52  }
template<class Key , class ItemType , class Storage >
bool edm::eventsetup::heterocontainer::insert ( Storage iStorage,
ItemType *  iItem 
)
inline

Definition at line 55 of file HCMethods.h.

References makeKey().

55  {
56  return iStorage.insert(makeKey<ItemType,
57  Key>() , iItem);
58  }
template<class Type , class Key , class IdTag >
Key edm::eventsetup::heterocontainer::makeKey ( const IdTag &  iIdTag)
inline

Definition at line 28 of file HCMethods.h.

Referenced by find(), insert(), and edm::eventsetup::EventSetupProvider::insert().

28  {
29  HCTypeTag typeTag = HCTypeTag::make<Type>();
30  return Key(typeTag, iIdTag);
31  }
template<class Type , class Key >
Key edm::eventsetup::heterocontainer::makeKey ( )
inline

Definition at line 34 of file HCMethods.h.

34  {
35  HCTypeTag typeTag = HCTypeTag::make<Type>();
36  return Key(typeTag);
37  }