25 double constexpr
tolerance = std::numeric_limits<double>::epsilon();
31 Name(
"nParticlesRef")};
33 Name(
"seenParticlesRef")};
35 Name(
"particleRatioRef")};
40 using Parameters = EDAnalyzer::Table<Config>;
41 explicit CheckMoreProducts(Parameters
const&
config);
57 CheckMoreProducts::CheckMoreProducts(Parameters
const&
config)
59 , trkEffTag_{
config().trkEffTag()}
60 , trkEffValueTag_{
config().trkEffValueTag()}
61 , nParticlesRef_{
config().nParticlesRef()}
62 , seenParticlesRef_{
config().seenParticlesRef()}
63 , particleRatioRef_{
config().particleRatioRef()}
74 BOOST_CHECK_CLOSE_FRACTION(
75 trkEffH->efficiency(), trkEffValueH->value(),
tolerance);
78 auto const seenParticles = sr.
getByLabel<
unsigned>(seenParticlesRef_.tag_);
79 auto const nParticles = sr.
getByLabel<
unsigned>(nParticlesRef_.tag_);
80 auto const& particleRatioH =
82 BOOST_CHECK_EQUAL(seenParticles, seenParticlesRef_.value_);
83 BOOST_CHECK_EQUAL(nParticles, nParticlesRef_.value_);
84 BOOST_CHECK_CLOSE_FRACTION(particleRatioH->value(),
85 particleRatioRef_.value_,
def analyze(root, level, gtrees, gbranches, doprint)
auto vector(Vector const &v)
Returns a manipulator which will print the specified array.
bool getByLabel(std::string const &label, std::string const &instance, Handle< PROD > &result) const
#define DEFINE_ART_MODULE(klass)
std::enable_if_t< detail::are_handles< T, U >::value, bool > disjoint_ranges(T const &a, U const &b)
ValidHandle< PROD > getValidHandle(InputTag const &tag) const
std::enable_if_t< detail::are_handles< T, U >::value, bool > overlapping_ranges(T const &a, U const &b)
std::enable_if_t< detail::are_handles< T, U >::value, bool > same_ranges(T const &a, U const &b)