#include <ThreadSafeRegistry.h>
Public Types | |
typedef std::map< key_type, value_type > | collection_type |
typedef collection_type::const_iterator | const_iterator |
typedef E | extra_type |
typedef KEY | key_type |
typedef collection_type::size_type | size_type |
typedef T | value_type |
typedef std::vector< value_type > | vector_type |
Public Member Functions | |
const_iterator | begin () const |
collection_type & | data () |
Provide access to the contained collection. | |
collection_type const & | data () const |
bool | empty () const |
Return true if there are no contained value_type objects. | |
const_iterator | end () const |
extra_type const & | extra () const |
extra_type & | extra () |
value_type const * | getMapped (key_type const &k) const |
bool | getMapped (key_type const &k, value_type &result) const |
void | insertCollection (collection_type const &c) |
void | insertCollection (vector_type const &c) |
bool | insertMapped (value_type const &v) |
bool | notEmpty () const |
Return true if there are any contained value_type objects. | |
void | print (std::ostream &os) const |
Print the contents of this registry to the given ostream. | |
size_type | size () const |
Return the number of contained value_type objects. | |
Static Public Member Functions | |
static ThreadSafeRegistry * | instance () |
Private Member Functions | |
ThreadSafeRegistry< KEY, T, E > & | operator= (ThreadSafeRegistry< KEY, T, E > const &) |
ThreadSafeRegistry () | |
ThreadSafeRegistry (ThreadSafeRegistry< KEY, T, E > const &) | |
~ThreadSafeRegistry () | |
Private Attributes | |
collection_type | data_ |
extra_type | extra_ |
Definition at line 34 of file ThreadSafeRegistry.h.
typedef std::map<key_type, value_type> edm::detail::ThreadSafeRegistry< KEY, T, E >::collection_type |
Definition at line 39 of file ThreadSafeRegistry.h.
typedef collection_type::const_iterator edm::detail::ThreadSafeRegistry< KEY, T, E >::const_iterator |
Definition at line 42 of file ThreadSafeRegistry.h.
typedef E edm::detail::ThreadSafeRegistry< KEY, T, E >::extra_type |
Definition at line 38 of file ThreadSafeRegistry.h.
typedef KEY edm::detail::ThreadSafeRegistry< KEY, T, E >::key_type |
Definition at line 36 of file ThreadSafeRegistry.h.
typedef collection_type::size_type edm::detail::ThreadSafeRegistry< KEY, T, E >::size_type |
Definition at line 40 of file ThreadSafeRegistry.h.
typedef T edm::detail::ThreadSafeRegistry< KEY, T, E >::value_type |
Definition at line 37 of file ThreadSafeRegistry.h.
typedef std::vector<value_type> edm::detail::ThreadSafeRegistry< KEY, T, E >::vector_type |
Definition at line 44 of file ThreadSafeRegistry.h.
edm::detail::ThreadSafeRegistry< KEY, T, E >::ThreadSafeRegistry | ( | ) | [private] |
Definition at line 212 of file ThreadSafeRegistry.h.
: data_() { }
edm::detail::ThreadSafeRegistry< KEY, T, E >::~ThreadSafeRegistry | ( | ) | [private] |
Definition at line 218 of file ThreadSafeRegistry.h.
{ }
edm::detail::ThreadSafeRegistry< KEY, T, E >::ThreadSafeRegistry | ( | ThreadSafeRegistry< KEY, T, E > const & | ) | [private] |
ThreadSafeRegistry< KEY, T, E >::const_iterator edm::detail::ThreadSafeRegistry< KEY, T, E >::begin | ( | void | ) | const [inline] |
Allow iteration through the contents of the registry. Only const access is provided to the entries of the registry.
Definition at line 163 of file ThreadSafeRegistry.h.
Referenced by edm::pset::fillMap(), egHLT::trigTools::getMinNrObjsRequiredByFilter(), HLTConfigProvider::init(), and DQMRootOutputModule::startEndFile().
{ return data_.begin(); }
ThreadSafeRegistry< KEY, T, E >::collection_type & edm::detail::ThreadSafeRegistry< KEY, T, E >::data | ( | ) | [inline] |
Provide access to the contained collection.
Definition at line 186 of file ThreadSafeRegistry.h.
{ return data_; }
ThreadSafeRegistry< KEY, T, E >::collection_type const & edm::detail::ThreadSafeRegistry< KEY, T, E >::data | ( | ) | const [inline] |
Definition at line 207 of file ThreadSafeRegistry.h.
{ return data_; }
bool edm::detail::ThreadSafeRegistry< KEY, T, E >::empty | ( | void | ) | const [inline] |
Return true if there are no contained value_type objects.
Definition at line 142 of file ThreadSafeRegistry.h.
{ return data_.empty(); }
ThreadSafeRegistry< KEY, T, E >::const_iterator edm::detail::ThreadSafeRegistry< KEY, T, E >::end | ( | void | ) | const [inline] |
Definition at line 170 of file ThreadSafeRegistry.h.
Referenced by edm::pset::fillMap(), egHLT::trigTools::getMinNrObjsRequiredByFilter(), HLTConfigProvider::init(), and DQMRootOutputModule::startEndFile().
{ return data_.end(); }
ThreadSafeRegistry< KEY, T, E >::extra_type const & edm::detail::ThreadSafeRegistry< KEY, T, E >::extra | ( | ) | const [inline] |
Definition at line 200 of file ThreadSafeRegistry.h.
{ return extra_; }
ThreadSafeRegistry< KEY, T, E >::extra_type & edm::detail::ThreadSafeRegistry< KEY, T, E >::extra | ( | ) | [inline] |
Provide access to the appendage "extra". The ThreadSafeRegistry doesn't know what this is for, but instantiations of the template can use it.
Definition at line 193 of file ThreadSafeRegistry.h.
Referenced by edm::pset::getProcessParameterSetID(), and DQMRootSource::setupFile().
{ return extra_; }
bool edm::detail::ThreadSafeRegistry< KEY, T, E >::getMapped | ( | key_type const & | k, |
value_type & | result | ||
) | const |
Retrieve the value_type object with the given key. If we return 'true', then 'result' carries the value_type object. If we return 'false, no matching key was found, and the value of 'result' is undefined.
Referenced by ProvenanceDumper::addAncestors(), CompareToObjectMapRecord::analyze(), edm::Principal::fillPrincipal(), HLTConfigProvider::getDataFrom(), edm::Event::getProcessParameterSet(), edm::getProcessParameterSet(), edm::service::TriggerNamesService::getTrigPaths(), HLTConfigProvider::init(), edm::Provenance::processConfigurationID(), edm::FullHistoryToReducedHistoryMap::reduceProcessHistoryID(), DQMRootOutputModule::startEndFile(), edm::EventBase::triggerNames_(), ProvenanceDumper::work_(), and edm::RootOutputFile::writeParentageRegistry().
value_type const* edm::detail::ThreadSafeRegistry< KEY, T, E >::getMapped | ( | key_type const & | k | ) | const |
Retrieve a pointer to the value_type object with the given key. If there is no object associated with the given key 0 is returned.
void edm::detail::ThreadSafeRegistry< KEY, T, E >::insertCollection | ( | vector_type const & | c | ) |
Definition at line 133 of file ThreadSafeRegistry.h.
{ for (typename vector_type::const_iterator it = c.begin(), itEnd = c.end(); it != itEnd; ++it) { insertMapped(*it); } }
void edm::detail::ThreadSafeRegistry< KEY, T, E >::insertCollection | ( | collection_type const & | c | ) |
put the value_type objects in the given collection into the registry.
Definition at line 125 of file ThreadSafeRegistry.h.
{ for (typename collection_type::const_iterator it = c.begin(), itEnd = c.end(); it != itEnd; ++it) { insertMapped(it->second); } }
bool edm::detail::ThreadSafeRegistry< KEY, T, E >::insertMapped | ( | value_type const & | v | ) |
Insert the given value_type object into the registry. If there was already a value_type object with the same key, we don't change it. This should be OK, since it should have the same contents if the key is the same. Return 'true' if we really added the new value_type object, and 'false' if the value_type object was already present.
Referenced by edm::StreamerInputSource::deserializeAndMergeWithRegistry(), fwlite::Event::fillParameterSetRegistry(), HLTConfigProvider::getDataFrom(), edm::RootFile::RootFile(), DQMRootSource::setupFile(), TFWLiteSelectorBasic::setupNewFile(), ProvenanceDumper::work_(), and edm::RootOutputFile::writeParentageRegistry().
static ThreadSafeRegistry* edm::detail::ThreadSafeRegistry< KEY, T, E >::instance | ( | ) | [static] |
Referenced by edm::HistoryAppender::appendToProcessHistory(), edm::SubProcess::beginRun(), edm::fillProductRegistryTransients(), HLTConfigProvider::getDataFrom(), edm::getParameterSet(), edm::getProcessParameterSet(), edm::PrincipalCache::insert(), edm::PrincipalCache::merge(), edm::IndexIntoFile::reduceProcessHistoryIDs(), edm::StreamSerializer::serializeRegistry(), and edm::RootOutputFile::writeParameterSetRegistry().
bool edm::detail::ThreadSafeRegistry< KEY, T, E >::notEmpty | ( | ) | const [inline] |
Return true if there are any contained value_type objects.
Definition at line 149 of file ThreadSafeRegistry.h.
References relativeConstraints::empty.
{ return !empty(); }
ThreadSafeRegistry<KEY,T,E>& edm::detail::ThreadSafeRegistry< KEY, T, E >::operator= | ( | ThreadSafeRegistry< KEY, T, E > const & | ) | [private] |
void edm::detail::ThreadSafeRegistry< KEY, T, E >::print | ( | std::ostream & | os | ) | const |
Print the contents of this registry to the given ostream.
Definition at line 176 of file ThreadSafeRegistry.h.
References begin, alignCSCRings::e, end, i, and findQualityFiles::size.
ThreadSafeRegistry< KEY, T, E >::size_type edm::detail::ThreadSafeRegistry< KEY, T, E >::size | ( | void | ) | const [inline] |
Return the number of contained value_type objects.
Definition at line 156 of file ThreadSafeRegistry.h.
{ return data_.size(); }
collection_type edm::detail::ThreadSafeRegistry< KEY, T, E >::data_ [private] |
Definition at line 111 of file ThreadSafeRegistry.h.
extra_type edm::detail::ThreadSafeRegistry< KEY, T, E >::extra_ [private] |
Definition at line 112 of file ThreadSafeRegistry.h.