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)) {}
Definition: config.py:1
std::function< float(const ParamType &)> func_
def template(fileName, svg, replaceme="REPLACEME")
Definition: svgfig.py:521

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.

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

267  {
268  if (!pass(input))
269  return 0;
270  else
271  return func_(ParamType(input));
272  }
static std::string const input
Definition: EdmProvDump.cc:50
std::function< float(const ParamType &)> func_
bool pass(const InputType &input) const override

◆ 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