#include <algorithm>
#include <cassert>
#include <functional>
#include <optional>
#include <tuple>
#include <variant>
#include <limits>
#include "DataFormats/Common/interface/ThinnedAssociation.h"
#include "DataFormats/Provenance/interface/BranchID.h"
#include "DataFormats/Provenance/interface/ProductID.h"
#include "DataFormats/Provenance/interface/ThinnedAssociationsHelper.h"
#include "FWCore/Utilities/interface/EDMException.h"
Go to the source code of this file.
Classes | |
class | edm::detail::ThinnedOrSlimmedProduct |
Namespaces | |
edm | |
HLT enums. | |
edm::detail | |
Functions | |
template<typename F > | |
std::variant< unsigned int, GetThinnedKeyFromExceptionFactory, std::monostate > | edm::detail::getThinnedKeyFrom_implementation (ProductID const &parentID, BranchID const &parent, unsigned int key, ProductID const &thinnedID, BranchID thinned, ThinnedAssociationsHelper const &thinnedAssociationsHelper, F &&getThinnedAssociation) |
template<typename F1 , typename F2 , typename F3 > | |
std::optional< std::tuple < WrapperBase const *, unsigned int > > | edm::detail::getThinnedProduct (ProductID const &pid, unsigned int key, ThinnedAssociationsHelper const &thinnedAssociationsHelper, F1 pidToBid, F2 getThinnedAssociation, F3 getByProductID) |
template<typename F1 , typename F2 , typename F3 > | |
ThinnedOrSlimmedProduct | edm::detail::getThinnedProductOnSlimmingDepth (ProductID const &pid, unsigned int key, ThinnedAssociationsHelper const &thinnedAssociationsHelper, F1 pidToBid, F2 getThinnedAssociation, F3 getByProductID) |
template<typename F1 , typename F2 , typename F3 > | |
void | edm::detail::getThinnedProducts (ProductID const &pid, ThinnedAssociationsHelper const &thinnedAssociationsHelper, F1 pidToBid, F2 getThinnedAssociation, F3 getByProductID, std::vector< WrapperBase const * > &foundContainers, std::vector< unsigned int > &keys) |
template<typename F1 , typename F2 , typename F3 > | |
std::optional< std::tuple < ThinnedAssociation const *, std::vector< unsigned int > > > | edm::detail::getThinnedProductsOnSlimmingDepth (ProductID const &pid, ThinnedAssociationsHelper const &thinnedAssociationsHelper, F1 pidToBid, F2 getThinnedAssociation, F3 getByProductID, std::vector< WrapperBase const * > &foundContainers, std::vector< unsigned int > &keys) |
auto | edm::detail::makeThinnedIndexes (std::vector< unsigned int > const &keys, std::vector< WrapperBase const * > const &foundContainers, ThinnedAssociation const *thinnedAssociation) |
Variables | |
constexpr unsigned int | edm::detail::kThinningDoNotLookForThisIndex = std::numeric_limits<unsigned int>::max() |