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 60 of file HCMethods.h.

References makeKey().

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

Definition at line 67 of file HCMethods.h.

References makeKey().

67  {
68  //The cast should be safe since the Key tells us the type
69  return static_cast<ItemType*>(iStorage.find(makeKey<typename type_from_itemtype<Key, ItemType>::Type, Key>()));
70  }
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 50 of file HCMethods.h.

References makeKey().

Referenced by edm::ParameterSet::addParameter(), edm::eventsetup::EventSetupProvider::addRecord(), edm::ParameterSet::addUntrackedParameter(), TotemRPDQMSource::analyze(), CTPPSDiamondDQMSource::analyze(), associationMapFilterValues(), CSCSegmentBuilder::build(), DCCTBDataMapper::buildSRPFields(), DCCTBDataMapper::buildTCCFields(), StripCompactDigiSimLinks::Filler::Filler(), DetIdAssociator::fillSet(), RPCStripsRing::fillWithVirtualStrips(), HLTMuonPlotter::findMatches(), HBHEHitMap::findNeighbor(), edm::eventsetup::EventSetupProvider::finishConfiguration(), pat::PATTriggerProducer::ModuleLabelToPathAndFlags::init(), edm::ProductRegistry::initializeLookupTables(), edm::AssociationMap< edm::OneToOne< std::vector< Trajectory >, reco::GsfTrackCollection, unsigned short > >::insert(), CustomConfigs::L1REPACK(), CastorPedestalAnalysis::per2CapsHists(), HcalPedestalAnalysis::per2CapsHists(), ConfigBuilder.ConfigBuilder::prepare(), ConfigBuilder.ConfigBuilder::prepare_DQM(), ConfigBuilder.ConfigBuilder::prepare_VALIDATION(), SETPatternRecognition::produce(), Vispa.Views.LineDecayView.LineDecayContainer::select(), CastorLedAnalysis::SetupLEDHists(), HcalLedAnalysis::SetupLEDHists(), reco::TaggingVariableList::TaggingVariableList(), edm::ParameterSet::trackedID(), 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().

50  {
51  return iStorage.insert(makeKey<typename type_from_itemtype<Key, ItemType>::Type, 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.

55  {
56  return iStorage.insert(makeKey<ItemType, Key>(), iItem);
57  }
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(), edm::EventSetup::get(), insert(), and edm::EventSetup::tryToGet().

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  }