CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
l1t::MicroGMTRankPtQualLUT Class Reference

#include <MicroGMTRankPtQualLUT.h>

Inheritance diagram for l1t::MicroGMTRankPtQualLUT:
l1t::MicroGMTLUT

Public Member Functions

int hashInput (int pt, int qual) const
 
int lookup (int pt, int qual) const
 
virtual int lookupPacked (int in) const
 
 MicroGMTRankPtQualLUT ()
 
 MicroGMTRankPtQualLUT (const edm::ParameterSet &)
 
void unHashInput (int input, int &pt, int &qual) const
 
virtual ~MicroGMTRankPtQualLUT ()
 
- Public Member Functions inherited from l1t::MicroGMTLUT
int checkedInput (unsigned in, unsigned maxWidth) const
 
void contentsToStream (std::stringstream &stream)
 
void headerToStream (std::stringstream &stream) const
 
void initialize ()
 
void load (const std::string &inFileName)
 
 MicroGMTLUT ()
 
void save (std::ofstream &output)
 
virtual ~MicroGMTLUT ()
 

Private Attributes

int m_ptInWidth
 
int m_ptMask
 
int m_qualInWidth
 
int m_qualMask
 

Additional Inherited Members

- Protected Attributes inherited from l1t::MicroGMTLUT
std::map< int, int > m_contents
 
std::string m_fname
 
bool m_initialized
 
std::vector
< MicroGMTConfiguration::input_t
m_inputs
 
unsigned m_outWidth
 
unsigned m_totalInWidth
 

Detailed Description

Definition at line 12 of file MicroGMTRankPtQualLUT.h.

Constructor & Destructor Documentation

l1t::MicroGMTRankPtQualLUT::MicroGMTRankPtQualLUT ( )
l1t::MicroGMTRankPtQualLUT::MicroGMTRankPtQualLUT ( const edm::ParameterSet iConfig)
explicit

Definition at line 3 of file MicroGMTRankPtQualLUT.cc.

References HDQMDatabaseProducer::config, edm::ParameterSet::getParameter(), l1t::MicroGMTLUT::initialize(), l1t::MicroGMTLUT::load(), l1t::MicroGMTLUT::m_fname, l1t::MicroGMTLUT::m_inputs, m_ptInWidth, m_ptMask, m_qualInWidth, m_qualMask, l1t::MicroGMTLUT::m_totalInWidth, l1t::MicroGMTConfiguration::PT, and AlCaHLTBitMon_QueryRunRegistry::string.

3  {
4  edm::ParameterSet config = iConfig.getParameter<edm::ParameterSet>("SortRankLUTSettings");
5  m_ptInWidth = config.getParameter<int>("pT_in_width");
6  m_qualInWidth = config.getParameter<int>("qual_in_width");
7 
8  m_totalInWidth = m_ptInWidth + m_qualInWidth;
9 
10  m_ptMask = (1 << m_ptInWidth) - 1;
11  m_qualMask = (1 << (m_totalInWidth - 1)) - m_ptMask - 1;
12 
14  std::string m_fname = config.getParameter<std::string>("filename");
15  if (m_fname != std::string("")) {
16  load(m_fname);
17  } else {
18  initialize();
19  }
20 }
T getParameter(std::string const &) const
unsigned m_totalInWidth
Definition: MicroGMTLUT.h:35
std::vector< MicroGMTConfiguration::input_t > m_inputs
Definition: MicroGMTLUT.h:37
std::string m_fname
Definition: MicroGMTLUT.h:39
void load(const std::string &inFileName)
Definition: MicroGMTLUT.cc:18
l1t::MicroGMTRankPtQualLUT::~MicroGMTRankPtQualLUT ( )
virtual

Definition at line 30 of file MicroGMTRankPtQualLUT.cc.

31 {
32 
33 }

Member Function Documentation

int l1t::MicroGMTRankPtQualLUT::hashInput ( int  pt,
int  qual 
) const

Definition at line 62 of file MicroGMTRankPtQualLUT.cc.

References EnergyCorrector::pt, and query::result.

63 {
64 
65  int result = 0;
66  result += pt;
67  result += qual << m_ptInWidth;
68  return result;
69 }
tuple result
Definition: query.py:137
int l1t::MicroGMTRankPtQualLUT::lookup ( int  pt,
int  qual 
) const

Definition at line 36 of file MicroGMTRankPtQualLUT.cc.

References query::result.

Referenced by L1TMicroGMTProducer::calculateRank().

37 {
38  // normalize these two to the same scale and then calculate?
39  if (m_initialized) {
41  }
42 
43  int result = 0;
44  result = pt + (qual << 2);
45  // normalize to out width
46  return result;
47 }
std::map< int, int > m_contents
Definition: MicroGMTLUT.h:38
int checkedInput(unsigned in, unsigned maxWidth) const
Definition: MicroGMTLUT.cc:70
int hashInput(int pt, int qual) const
tuple result
Definition: query.py:137
int l1t::MicroGMTRankPtQualLUT::lookupPacked ( int  in) const
virtual

Reimplemented from l1t::MicroGMTLUT.

Definition at line 50 of file MicroGMTRankPtQualLUT.cc.

References EnergyCorrector::pt.

50  {
51  if (m_initialized) {
52  return m_contents.at(in);
53  }
54 
55  int pt = 0;
56  int qual = 0;
57  unHashInput(in, pt, qual);
58  return lookup(pt, qual);
59 }
std::map< int, int > m_contents
Definition: MicroGMTLUT.h:38
int lookup(int pt, int qual) const
void unHashInput(int input, int &pt, int &qual) const
void l1t::MicroGMTRankPtQualLUT::unHashInput ( int  input,
int &  pt,
int &  qual 
) const

Definition at line 72 of file MicroGMTRankPtQualLUT.cc.

Member Data Documentation

int l1t::MicroGMTRankPtQualLUT::m_ptInWidth
private

Definition at line 26 of file MicroGMTRankPtQualLUT.h.

Referenced by MicroGMTRankPtQualLUT().

int l1t::MicroGMTRankPtQualLUT::m_ptMask
private

Definition at line 24 of file MicroGMTRankPtQualLUT.h.

Referenced by MicroGMTRankPtQualLUT().

int l1t::MicroGMTRankPtQualLUT::m_qualInWidth
private

Definition at line 27 of file MicroGMTRankPtQualLUT.h.

Referenced by MicroGMTRankPtQualLUT().

int l1t::MicroGMTRankPtQualLUT::m_qualMask
private

Definition at line 25 of file MicroGMTRankPtQualLUT.h.

Referenced by MicroGMTRankPtQualLUT().