#include <ThinnedAssociationsHelper.h>
Public Member Functions | |
void | addAssociation (BranchID const &, BranchID const &, BranchID const &, bool slimmed) |
void | addAssociation (ThinnedAssociationBranches const &) |
std::vector< std::pair < BranchID, ThinnedAssociationBranches const * > > | associationToBranches () const |
std::vector < ThinnedAssociationBranches > ::const_iterator | begin () const |
void | clear () |
std::vector < ThinnedAssociationBranches > const & | data () const |
std::vector < ThinnedAssociationBranches > ::const_iterator | end () const |
void | initAssociationsFromSecondary (std::vector< BranchID > const &, ThinnedAssociationsHelper const &) |
std::vector < ThinnedAssociationBranches > ::const_iterator | parentBegin (BranchID const &) const |
std::vector < ThinnedAssociationBranches > ::const_iterator | parentEnd (BranchID const &) const |
void | requireMatch (ThinnedAssociationBranches const &input) const |
void | selectAssociationProducts (std::vector< BranchDescription const * > const &associationDescriptions, std::set< BranchID > const &keptProductsInEvent, std::map< BranchID, bool > &keepAssociation) const |
ThinnedAssociationsHelper () | |
void | updateFromParentProcess (ThinnedAssociationsHelper const &parentThinnedAssociationsHelper, std::map< BranchID, bool > const &keepAssociation, std::map< BranchID::value_type, BranchID::value_type > const &droppedBranchIDToKeptBranchID) |
void | updateFromPrimaryInput (ThinnedAssociationsHelper const &) |
void | updateFromSecondaryInput (ThinnedAssociationsHelper const &, std::vector< BranchID > const &associationsFromSecondary) |
Private Member Functions | |
void | ensureSlimmingConstraints () const |
std::vector < ThinnedAssociationBranches > ::const_iterator | lower_bound (ThinnedAssociationBranches const &branches) const |
bool | shouldKeepAssociation (BranchID const &association, std::vector< std::pair< BranchID, ThinnedAssociationBranches const * > > const &associationToBranches, std::set< BranchID > &branchesInRecursion, std::set< BranchID > const &keptProductsInEvent, std::map< BranchID, bool > &keepAssociation) const |
Private Attributes | |
std::vector < ThinnedAssociationBranches > | vThinnedAssociationBranches_ |
Definition at line 37 of file ThinnedAssociationsHelper.h.
edm::ThinnedAssociationsHelper::ThinnedAssociationsHelper | ( | ) |
Definition at line 18 of file ThinnedAssociationsHelper.cc.
void edm::ThinnedAssociationsHelper::addAssociation | ( | BranchID const & | parent, |
BranchID const & | association, | ||
BranchID const & | thinned, | ||
bool | slimmed | ||
) |
Definition at line 61 of file ThinnedAssociationsHelper.cc.
Referenced by initAssociationsFromSecondary(), edm::ThinningProducer< Collection, Selector >::registerThinnedAssociations(), and updateFromParentProcess().
void edm::ThinnedAssociationsHelper::addAssociation | ( | ThinnedAssociationBranches const & | branches | ) |
Definition at line 68 of file ThinnedAssociationsHelper.cc.
References cms::Exception::addAdditionalInfo(), cms::Exception::addContext(), ensureSlimmingConstraints(), diffTreeTool::format(), edm::BranchID::id(), edm::ThinnedAssociationBranches::isSlimmed(), lower_bound(), edm::ThinnedAssociationBranches::thinned(), and vThinnedAssociationBranches_.
std::vector< std::pair< BranchID, ThinnedAssociationBranches const * > > edm::ThinnedAssociationsHelper::associationToBranches | ( | ) | const |
Definition at line 176 of file ThinnedAssociationsHelper.cc.
References B2GTnPMonitor_cfi::item, groupFilesInBlocks::temp, and vThinnedAssociationBranches_.
Referenced by initAssociationsFromSecondary(), selectAssociationProducts(), shouldKeepAssociation(), and updateFromSecondaryInput().
std::vector< ThinnedAssociationBranches >::const_iterator edm::ThinnedAssociationsHelper::begin | ( | void | ) | const |
Definition at line 20 of file ThinnedAssociationsHelper.cc.
References vThinnedAssociationBranches_.
Referenced by ensureSlimmingConstraints(), and edm::detail::getThinnedKeyFrom_implementation().
|
inline |
Definition at line 52 of file ThinnedAssociationsHelper.h.
References vThinnedAssociationBranches_.
Referenced by BeautifulSoup.Tag::setString(), and updateFromParentProcess().
|
inline |
Definition at line 58 of file ThinnedAssociationsHelper.h.
References vThinnedAssociationBranches_.
Referenced by updateFromParentProcess(), and updateFromPrimaryInput().
std::vector< ThinnedAssociationBranches >::const_iterator edm::ThinnedAssociationsHelper::end | ( | void | ) | const |
Definition at line 24 of file ThinnedAssociationsHelper.cc.
References vThinnedAssociationBranches_.
Referenced by Types.LuminosityBlockRange::cppID(), Types.EventRange::cppID(), ensureSlimmingConstraints(), and edm::detail::getThinnedKeyFrom_implementation().
|
private |
Definition at line 144 of file ThinnedAssociationsHelper.cc.
References b, begin(), c, dqmiodumpmetadata::counts, end(), and cuda_std::lower_bound().
Referenced by addAssociation().
void edm::ThinnedAssociationsHelper::initAssociationsFromSecondary | ( | std::vector< BranchID > const & | associationsFromSecondary, |
ThinnedAssociationsHelper const & | fileAssociationsHelper | ||
) |
Definition at line 337 of file ThinnedAssociationsHelper.cc.
References addAssociation(), associationToBranches(), Exception, edm::errors::LogicError, and cuda_std::lower_bound().
|
private |
Definition at line 50 of file ThinnedAssociationsHelper.cc.
References cuda_std::lower_bound(), edm::ThinnedAssociationBranches::parent(), and vThinnedAssociationBranches_.
Referenced by addAssociation().
std::vector< ThinnedAssociationBranches >::const_iterator edm::ThinnedAssociationsHelper::parentBegin | ( | BranchID const & | parent | ) | const |
Definition at line 28 of file ThinnedAssociationsHelper.cc.
References cuda_std::lower_bound(), filterCSVwithJSON::target, and vThinnedAssociationBranches_.
Referenced by edm::detail::getThinnedKeyFrom_implementation(), edm::detail::getThinnedProductOnSlimmingDepth(), edm::detail::getThinnedProductsOnSlimmingDepth(), requireMatch(), and shouldKeepAssociation().
std::vector< ThinnedAssociationBranches >::const_iterator edm::ThinnedAssociationsHelper::parentEnd | ( | BranchID const & | parent | ) | const |
Definition at line 39 of file ThinnedAssociationsHelper.cc.
References filterCSVwithJSON::target, cuda_std::upper_bound(), and vThinnedAssociationBranches_.
Referenced by edm::detail::getThinnedKeyFrom_implementation(), edm::detail::getThinnedProductOnSlimmingDepth(), edm::detail::getThinnedProductsOnSlimmingDepth(), requireMatch(), and shouldKeepAssociation().
void edm::ThinnedAssociationsHelper::requireMatch | ( | ThinnedAssociationBranches const & | input | ) | const |
Definition at line 263 of file ThinnedAssociationsHelper.cc.
References edm::ThinnedAssociationBranches::association(), mps_splice::entry, Exception, edm::errors::MismatchedInputFiles, edm::ThinnedAssociationBranches::parent(), parentBegin(), parentEnd(), and edm::ThinnedAssociationBranches::thinned().
Referenced by updateFromPrimaryInput(), and updateFromSecondaryInput().
void edm::ThinnedAssociationsHelper::selectAssociationProducts | ( | std::vector< BranchDescription const * > const & | associationDescriptions, |
std::set< BranchID > const & | keptProductsInEvent, | ||
std::map< BranchID, bool > & | keepAssociation | ||
) | const |
Definition at line 189 of file ThinnedAssociationsHelper.cc.
References associationToBranches(), and shouldKeepAssociation().
Referenced by edm::SubProcess::selectProducts(), and edm::core::OutputModuleCore::selectProducts().
|
private |
Definition at line 210 of file ThinnedAssociationsHelper.cc.
References associationToBranches(), Exception, edm::errors::LogicError, cuda_std::lower_bound(), edm::match(), parentBegin(), parentEnd(), and edm::ThinnedAssociationBranches::thinned().
Referenced by selectAssociationProducts().
void edm::ThinnedAssociationsHelper::updateFromParentProcess | ( | ThinnedAssociationsHelper const & | parentThinnedAssociationsHelper, |
std::map< BranchID, bool > const & | keepAssociation, | ||
std::map< BranchID::value_type, BranchID::value_type > const & | droppedBranchIDToKeptBranchID | ||
) |
Definition at line 314 of file ThinnedAssociationsHelper.cc.
References addAssociation(), clear(), data(), edm::BranchID::id(), and keep.
void edm::ThinnedAssociationsHelper::updateFromPrimaryInput | ( | ThinnedAssociationsHelper const & | helper | ) |
Definition at line 278 of file ThinnedAssociationsHelper.cc.
References data(), requireMatch(), and vThinnedAssociationBranches_.
Referenced by edm::StreamerInputSource::mergeIntoRegistry().
void edm::ThinnedAssociationsHelper::updateFromSecondaryInput | ( | ThinnedAssociationsHelper const & | helper, |
std::vector< BranchID > const & | associationsFromSecondary | ||
) |
Definition at line 289 of file ThinnedAssociationsHelper.cc.
References associationToBranches(), Exception, edm::errors::LogicError, cuda_std::lower_bound(), and requireMatch().
|
private |
Definition at line 86 of file ThinnedAssociationsHelper.h.
Referenced by addAssociation(), associationToBranches(), begin(), clear(), data(), end(), lower_bound(), parentBegin(), parentEnd(), and updateFromPrimaryInput().