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
L1MuDTERS Class Reference

#include <L1MuDTERS.h>

Inheritance diagram for L1MuDTERS:
L1AbstractProcessor

Public Member Functions

unsigned short int address (int id) const
 return extrapolation address; (address = 15 indicates negative ext. result) More...
 
 L1MuDTERS (const L1MuDTSEU &)
 constructor More...
 
unsigned int quality (int id) const
 return extrapolation quality More...
 
virtual void reset ()
 reset ERS More...
 
virtual void run ()
 run L1MuDTERS More...
 
std::pair< const
L1MuDTTrackSegPhi *, const
L1MuDTTrackSegPhi * > 
ts (int id) const
 return pointer to start and target track segment More...
 
virtual ~L1MuDTERS ()
 destructor More...
 
- Public Member Functions inherited from L1AbstractProcessor
virtual void run (const edm::EventSetup &c)
 
virtual ~L1AbstractProcessor ()
 destructor More...
 

Private Attributes

unsigned short int m_address [2]
 
unsigned short int m_quality [2]
 
const L1MuDTSEUm_seu
 
const L1MuDTTrackSegPhim_start [2]
 
const L1MuDTTrackSegPhim_target [2]
 

Detailed Description

Extrapolation Result Selector (Quality Sorter Unit):

selects the 2 best (highest target quality) out of the 12 (6) extrapolations performed per start track segment

Date:
2007/03/30 09:05:31
Revision:
1.3

N. Neumeister CERN EP

Definition at line 45 of file L1MuDTERS.h.

Constructor & Destructor Documentation

L1MuDTERS::L1MuDTERS ( const L1MuDTSEU seu)

constructor

Definition at line 48 of file L1MuDTERS.cc.

References reset().

48  : m_seu(seu) {
49 
50  reset();
51 
52 }
virtual void reset()
reset ERS
Definition: L1MuDTERS.cc:109
const L1MuDTSEU & m_seu
Definition: L1MuDTERS.h:72
L1MuDTERS::~L1MuDTERS ( )
virtual

destructor

Definition at line 59 of file L1MuDTERS.cc.

59 {}

Member Function Documentation

unsigned short int L1MuDTERS::address ( int  id) const
inline

return extrapolation address; (address = 15 indicates negative ext. result)

Definition at line 65 of file L1MuDTERS.h.

References errorMatrix2Lands_multiChannel::id, and m_address.

65 { return m_address[id]; }
unsigned short int m_address[2]
Definition: L1MuDTERS.h:75
unsigned int L1MuDTERS::quality ( int  id) const
inline

return extrapolation quality

Definition at line 62 of file L1MuDTERS.h.

References errorMatrix2Lands_multiChannel::id, and m_quality.

62 { return m_quality[id]; }
unsigned short int m_quality[2]
Definition: L1MuDTERS.h:74
void L1MuDTERS::reset ( void  )
virtual

reset ERS

Implements L1AbstractProcessor.

Definition at line 109 of file L1MuDTERS.cc.

References errorMatrix2Lands_multiChannel::id, m_address, m_quality, m_start, and m_target.

Referenced by L1MuDTERS(), and L1MuDTSEU::reset().

109  {
110 
111  for ( int id = 0; id < 2; id++ ) {
112  m_quality[id] = 0;
113  m_address[id] = 15;
114  m_start[id] = 0;
115  m_target[id] = 0;
116  }
117 
118 }
const L1MuDTTrackSegPhi * m_start[2]
Definition: L1MuDTERS.h:77
unsigned short int m_address[2]
Definition: L1MuDTERS.h:75
const L1MuDTTrackSegPhi * m_target[2]
Definition: L1MuDTERS.h:78
unsigned short int m_quality[2]
Definition: L1MuDTERS.h:74
void L1MuDTERS::run ( void  )
virtual

run L1MuDTERS

Reimplemented from L1AbstractProcessor.

Definition at line 69 of file L1MuDTERS.cc.

References gather_cfg::cout, L1MuDTTFConfig::Debug(), L1MuDTSEU::eux(), first, prof2calltree::last, m_address, m_quality, m_seu, m_start, m_target, and L1MuDTSEU::numberOfExt().

Referenced by L1MuDTSEU::run().

69  {
70 
71  int n_ext = m_seu.numberOfExt();
72  if ( n_ext > 0 ) {
73  vector<L1MuDTEUX*>::const_iterator first = m_seu.eux().begin();
74  vector<L1MuDTEUX*>::const_iterator last = m_seu.eux().end();
75  vector<L1MuDTEUX*>::const_iterator first_max;
76  vector<L1MuDTEUX*>::const_iterator second_max;
77 
78  // find the best extrapolation
79  first_max = max_element(first, last, L1MuDTEUX::EUX_Comp() );
80  m_address[0] = (*first_max)->address();
81  m_quality[0] = (*first_max)->quality();
82  m_start[0] = (*first_max)->ts().first;
83  m_target[0] = (*first_max)->ts().second;
84 
85 
86  if ( n_ext > 1 ) {
87  // find the second best extrapolation
88  second_max = max_element(first, last, L1MuDTEUX::EUX_Comp(*first_max) );
89  m_address[1] = (*second_max)->address();
90  m_quality[1] = (*second_max)->quality();
91  m_start[1] = (*second_max)->ts().first;
92  m_target[1] = (*second_max)->ts().second;
93  }
94 
95  if ( L1MuDTTFConfig::Debug(4) ) {
96  cout << "ERS : " << endl;
97  cout << "\t first : " << m_address[0] << '\t' << m_quality[0] << endl;
98  cout << "\t second : " << m_address[1] << '\t' << m_quality[1] << endl;
99  }
100 
101  }
102 
103 }
const L1MuDTTrackSegPhi * m_start[2]
Definition: L1MuDTERS.h:77
unsigned short int m_address[2]
Definition: L1MuDTERS.h:75
static bool Debug()
bool first
Definition: L1TdeRCT.cc:94
helper class for finding the best and second best extrapolation
Definition: L1MuDTEUX.h:79
const L1MuDTTrackSegPhi * m_target[2]
Definition: L1MuDTERS.h:78
const L1MuDTSEU & m_seu
Definition: L1MuDTERS.h:72
unsigned short int m_quality[2]
Definition: L1MuDTERS.h:74
int numberOfExt() const
return number of successful extrapolations
Definition: L1MuDTSEU.cc:189
tuple cout
Definition: gather_cfg.py:121
const std::vector< L1MuDTEUX * > & eux() const
return pointer to an Extrapolator
Definition: L1MuDTSEU.h:94
pair< const L1MuDTTrackSegPhi *, const L1MuDTTrackSegPhi * > L1MuDTERS::ts ( int  id) const

return pointer to start and target track segment

Definition at line 124 of file L1MuDTERS.cc.

References errorMatrix2Lands_multiChannel::id, m_start, and m_target.

124  {
125 
126  return pair<const L1MuDTTrackSegPhi*,const L1MuDTTrackSegPhi*>(m_start[id],m_target[id]);
127 
128 }
const L1MuDTTrackSegPhi * m_start[2]
Definition: L1MuDTERS.h:77
const L1MuDTTrackSegPhi * m_target[2]
Definition: L1MuDTERS.h:78

Member Data Documentation

unsigned short int L1MuDTERS::m_address[2]
private

Definition at line 75 of file L1MuDTERS.h.

Referenced by address(), reset(), and run().

unsigned short int L1MuDTERS::m_quality[2]
private

Definition at line 74 of file L1MuDTERS.h.

Referenced by quality(), reset(), and run().

const L1MuDTSEU& L1MuDTERS::m_seu
private

Definition at line 72 of file L1MuDTERS.h.

Referenced by run().

const L1MuDTTrackSegPhi* L1MuDTERS::m_start[2]
private

Definition at line 77 of file L1MuDTERS.h.

Referenced by reset(), run(), and ts().

const L1MuDTTrackSegPhi* L1MuDTERS::m_target[2]
private

Definition at line 78 of file L1MuDTERS.h.

Referenced by reset(), run(), and ts().