LArSoft  v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
art::OrHelper< A, B > Class Template Reference

#include "fwd.h"

Inheritance diagram for art::OrHelper< A, B >:
art::SelectorBase

Public Member Functions

 OrHelper (A const &a, B const &b)
 
bool match (BranchDescription const &p) const
 
std::string print (std::string const &indent) const
 

Private Member Functions

bool doMatch (BranchDescription const &p) const override
 
std::string doPrint (std::string const &indent) const override
 

Private Attributes

a_
 
b_
 

Detailed Description

template<typename A, typename B>
class art::OrHelper< A, B >

Definition at line 36 of file fwd.h.

Constructor & Destructor Documentation

template<typename A , typename B >
art::OrHelper< A, B >::OrHelper ( A const &  a,
B const &  b 
)
inline

Definition at line 277 of file Selector.h.

277 : a_{a}, b_{b} {}

Member Function Documentation

template<typename A , typename B >
bool art::OrHelper< A, B >::doMatch ( BranchDescription const &  p) const
inlineoverrideprivatevirtual

Implements art::SelectorBase.

Definition at line 281 of file Selector.h.

282  {
283  return a_.match(p) || b_.match(p);
284  }
template<typename A , typename B >
std::string art::OrHelper< A, B >::doPrint ( std::string const &  indent) const
inlineoverrideprivatevirtual

Implements art::SelectorBase.

Definition at line 287 of file Selector.h.

288  {
289  std::string result{indent + "[\n"};
290  result += indent + a_.print(indent) + '\n';
291  result += indent + indent + indent + "or\n";
292  result += indent + b_.print(indent) + '\n';
293  result += indent + ']';
294  return result;
295  }
std::string indent(std::size_t const i)
bool art::SelectorBase::match ( BranchDescription const &  p) const
inlineinherited

Definition at line 41 of file SelectorBase.h.

References art::SelectorBase::doMatch().

Referenced by art::Principal::findGroupsForProcess().

42  {
43  return doMatch(p);
44  }
virtual bool doMatch(BranchDescription const &p) const =0
std::string art::SelectorBase::print ( std::string const &  indent) const
inlineinherited

Definition at line 47 of file SelectorBase.h.

References art::SelectorBase::doMatch(), art::SelectorBase::doPrint(), and art::detail::indent().

Referenced by art::Principal::getBySelector().

48  {
49  return doPrint(indent);
50  }
std::string indent(std::size_t const i)
virtual std::string doPrint(std::string const &indent) const =0

Member Data Documentation

template<typename A , typename B >
A art::OrHelper< A, B >::a_
private

Definition at line 297 of file Selector.h.

template<typename A , typename B >
B art::OrHelper< A, B >::b_
private

Definition at line 298 of file Selector.h.


The documentation for this class was generated from the following files: