1 #ifndef art_Framework_Principal_Selector_h 2 #define art_Framework_Principal_Selector_h 38 #include "cetlib/value_ptr.h" 41 #include <type_traits> 45 template <
class A,
class B>
51 template <
class A,
class B>
53 std::is_base_of<art::SelectorBase, B>::value,
76 :
pn_(pn.empty() ?
std::string(
"*") : pn)
187 template <
class A,
class B>
201 return a_.match(p) && b_.match(p);
208 template <
class A,
class B>
224 template <
class A,
class B>
238 return a_.match(p) || b_.match(p);
245 template <
class A,
class B>
312 return expression_.match(p);
337 cet::value_ptr<SelectorBase>
sel_;
virtual ModuleLabelSelector * clone() const override
ModuleLabelSelector(const std::string &label)
~ComposedSelectorWrapper()
AndHelper(A const &a, B const &b)
Selector(T const &expression)
virtual MatchAllSelector * clone() const override
virtual bool doMatch(BranchDescription const &p) const override
virtual bool doMatch(BranchDescription const &p) const override
virtual OrHelper * clone() const override
virtual bool doMatch(BranchDescription const &p) const override
virtual ProductInstanceNameSelector * clone() const override
ComposedSelectorWrapper< T > * clone() const override
ProcessNameSelector(const std::string &pn)
void swap(Handle< T > &a, Handle< T > &b)
virtual bool doMatch(BranchDescription const &p) const override
virtual bool doMatch(BranchDescription const &) const override
virtual ProcessNameSelector * clone() const override
std::string const & moduleLabel() const
virtual bool doMatch(BranchDescription const &p) const override
virtual AndHelper * clone() const override
cet::value_ptr< SelectorBase > sel_
std::enable_if_t< std::is_base_of< art::SelectorBase, A >::value &&std::is_base_of< art::SelectorBase, B >::value, art::AndHelper< A, B > > operator&&(A const &a, B const &b)
std::enable_if_t< std::is_base_of< art::SelectorBase, A >::value &&std::is_base_of< art::SelectorBase, B >::value, art::OrHelper< A, B > > operator||(A const &a, B const &b)
virtual bool doMatch(BranchDescription const &p) const override
std::string value(boost::any const &)
OrHelper(A const &a, B const &b)
ComposedSelectorWrapper(T const &t)
NotHelper * clone() const override
ProductInstanceNameSelector(const std::string &pin)
std::string const & productInstanceName() const
std::string const & processName() const
std::enable_if_t< std::is_base_of< art::SelectorBase, A >::value, art::NotHelper< A > > operator!(A const &a)
std::string const & name() const
virtual bool doMatch(BranchDescription const &p) const override