CMS 3D CMS Logo

List of all members | Public Member Functions | Private Types | Private Attributes
egPM::ParamBin2D< InputType, ParamType > Class Template Reference

#include <EgammaHLTPixelMatchParamObjects.h>

Inheritance diagram for egPM::ParamBin2D< InputType, ParamType >:
egPM::ParamBin< InputType >

Public Member Functions

float operator() (const InputType &input) const override
 
 ParamBin2D (const edm::ParameterSet &config)
 
bool pass (const InputType &input) const override
 
- Public Member Functions inherited from egPM::ParamBin< InputType >
 ParamBin ()
 
virtual ~ParamBin ()
 

Private Types

using XType = decltype(ParamType::x)
 
using YType = decltype(ParamType::y)
 

Private Attributes

std::function< float(const ParamType &)> func_
 
XType xMax_
 
XType xMin_
 
YType yMax_
 
YType yMin_
 

Additional Inherited Members

- Static Protected Member Functions inherited from egPM::ParamBin< InputType >
template<typename ParamType >
static std::function< float(const ParamType &)> makeFunc (const edm::ParameterSet &config)
 
static std::pair< std::string, std::string > readFuncStr (const std::string &inStr)
 

Detailed Description

template<typename InputType, typename ParamType>
class egPM::ParamBin2D< InputType, ParamType >

Definition at line 250 of file EgammaHLTPixelMatchParamObjects.h.

Member Typedef Documentation

◆ XType

template<typename InputType , typename ParamType >
using egPM::ParamBin2D< InputType, ParamType >::XType = decltype(ParamType::x)
private

Definition at line 252 of file EgammaHLTPixelMatchParamObjects.h.

◆ YType

template<typename InputType , typename ParamType >
using egPM::ParamBin2D< InputType, ParamType >::YType = decltype(ParamType::y)
private

Definition at line 253 of file EgammaHLTPixelMatchParamObjects.h.

Constructor & Destructor Documentation

◆ ParamBin2D()

template<typename InputType , typename ParamType >
egPM::ParamBin2D< InputType, ParamType >::ParamBin2D ( const edm::ParameterSet config)
inline

Definition at line 259 of file EgammaHLTPixelMatchParamObjects.h.

260  : xMin_(config.getParameter<typename ConfigType<XType>::type>("xMin")),
261  xMax_(config.getParameter<typename ConfigType<XType>::type>("xMax")),
262  yMin_(config.getParameter<typename ConfigType<YType>::type>("yMin")),
263  yMax_(config.getParameter<typename ConfigType<YType>::type>("yMax")),
264  func_(ParamBin<InputType>::template makeFunc<ParamType>(config)) {}

Member Function Documentation

◆ operator()()

template<typename InputType , typename ParamType >
float egPM::ParamBin2D< InputType, ParamType >::operator() ( const InputType &  input) const
inlineoverridevirtual

Implements egPM::ParamBin< InputType >.

Definition at line 267 of file EgammaHLTPixelMatchParamObjects.h.

267  {
268  if (!pass(input))
269  return 0;
270  else
271  return func_(ParamType(input));
272  }

References egPM::ParamBin2D< InputType, ParamType >::func_, input, and egPM::ParamBin2D< InputType, ParamType >::pass().

◆ pass()

template<typename InputType , typename ParamType >
bool egPM::ParamBin2D< InputType, ParamType >::pass ( const InputType &  input) const
inlineoverridevirtual

Member Data Documentation

◆ func_

template<typename InputType , typename ParamType >
std::function<float(const ParamType&)> egPM::ParamBin2D< InputType, ParamType >::func_
private

◆ xMax_

template<typename InputType , typename ParamType >
XType egPM::ParamBin2D< InputType, ParamType >::xMax_
private

◆ xMin_

template<typename InputType , typename ParamType >
XType egPM::ParamBin2D< InputType, ParamType >::xMin_
private

◆ yMax_

template<typename InputType , typename ParamType >
YType egPM::ParamBin2D< InputType, ParamType >::yMax_
private

◆ yMin_

template<typename InputType , typename ParamType >
YType egPM::ParamBin2D< InputType, ParamType >::yMin_
private
input
static const std::string input
Definition: EdmProvDump.cc:48
egPM::ConfigType::type
T type
Definition: EgammaHLTPixelMatchParamObjects.h:155
egPM::ParamBin2D::pass
bool pass(const InputType &input) const override
Definition: EgammaHLTPixelMatchParamObjects.h:266
config
Definition: config.py:1
egPM::ParamBin2D::func_
std::function< float(const ParamType &)> func_
Definition: EgammaHLTPixelMatchParamObjects.h:256
egPM::ParamBin2D::xMin_
XType xMin_
Definition: EgammaHLTPixelMatchParamObjects.h:254
svgfig.template
def template(fileName, svg, replaceme="REPLACEME")
Definition: svgfig.py:521
egPM::ParamBin2D::yMax_
YType yMax_
Definition: EgammaHLTPixelMatchParamObjects.h:255
egPM::ParamBin2D::yMin_
YType yMin_
Definition: EgammaHLTPixelMatchParamObjects.h:255
egPM::ParamBin2D::xMax_
XType xMax_
Definition: EgammaHLTPixelMatchParamObjects.h:254