CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions
reco::MaskCollection< Object > Struct Template Referenceabstract

#include <ExpressionEvaluatorTemplates.h>

Public Types

using Collection = std::vector< Object const * >
 
using Mask = std::vector< bool >
 

Public Member Functions

virtual void eval (Collection const &, Mask &) const =0
 
template<typename F >
void mask (Collection const &cands, Mask &mask, F f) const
 
virtual ~MaskCollection ()
 

Detailed Description

template<typename Object>
struct reco::MaskCollection< Object >

Definition at line 31 of file ExpressionEvaluatorTemplates.h.

Member Typedef Documentation

◆ Collection

template<typename Object >
using reco::MaskCollection< Object >::Collection = std::vector<Object const*>

Definition at line 32 of file ExpressionEvaluatorTemplates.h.

◆ Mask

template<typename Object >
using reco::MaskCollection< Object >::Mask = std::vector<bool>

Definition at line 33 of file ExpressionEvaluatorTemplates.h.

Constructor & Destructor Documentation

◆ ~MaskCollection()

template<typename Object >
virtual reco::MaskCollection< Object >::~MaskCollection ( )
inlinevirtual

Definition at line 41 of file ExpressionEvaluatorTemplates.h.

41 {};

Member Function Documentation

◆ eval()

template<typename Object >
virtual void reco::MaskCollection< Object >::eval ( Collection const &  ,
Mask  
) const
pure virtual

◆ mask()

template<typename Object >
template<typename F >
void reco::MaskCollection< Object >::mask ( Collection const &  cands,
Mask mask,
F  f 
) const
inline

Definition at line 35 of file ExpressionEvaluatorTemplates.h.

References c, HLT_2022v12_cff::cands, f, and HcalDetIdTransform::transform().

35  {
36  mask.resize(cands.size());
38  cands.begin(), cands.end(), mask.begin(), [&](typename Collection::value_type const& c) { return f(*c); });
39  }
void mask(Collection const &cands, Mask &mask, F f) const
double f[11][100]
unsigned transform(const HcalDetId &id, unsigned transformCode)