1 #ifndef FWCore_Framework_interface_resolveMaker_h 2 #define FWCore_Framework_interface_resolveMaker_h 15 ModuleTypeResolverBase
const* resolver);
19 template <
typename TFactory,
typename TCache>
23 TCache& makerCache) ->
typename TCache::mapped_type::element_type
const* {
25 auto resolver = resolverMaker->makeResolver(modulePSet);
26 auto index = resolver->kInitialIndex;
27 auto newType = moduleType;
29 auto [ttype, tindex] = resolver->resolveType(
std::move(newType),
index);
33 auto found = makerCache.find(newType);
34 if (
found != makerCache.end()) {
35 return found->second.get();
46 return it->second.get();
49 }
while (
index != resolver->kLastIndex);
63 return it->second.get();
void annotateResolverMakerExceptionAndRethrow(cms::Exception &except, std::string const &modtype, ModuleTypeResolverBase const *resolver)
def create(alignables, pedeDump, additionalData, outputFile, config)
auto resolveMaker(std::string const &moduleType, ModuleTypeResolverMaker const *resolverMaker, edm::ParameterSet const &modulePSet, TCache &makerCache) -> typename TCache::mapped_type::element_type const *