CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Attributes
mkfit::axis_pow2_u1< R, I, M, N > Struct Template Reference

#include <binnor.h>

Inheritance diagram for mkfit::axis_pow2_u1< R, I, M, N >:
mkfit::axis_pow2_base< R, I, M, N > mkfit::axis_base< R, I, M, N >

Public Member Functions

 axis_pow2_u1 (R min, R max)
 
axis_base< R, I, M, N >::I_pair from_R_minmax_to_N_bins (R rmin, R rmax) const
 
axis_base< R, I, M, N >::I_pair from_R_rdr_to_N_bins (R r, R dr) const
 
from_R_to_M_bin_safe (R r) const
 
from_R_to_N_bin_safe (R r) const
 
next_N_bin (I bin) const
 
- Public Member Functions inherited from mkfit::axis_pow2_base< R, I, M, N >
 axis_pow2_base (R min, R max)
 
unsigned size_of_M () const
 
unsigned size_of_N () const
 
- Public Member Functions inherited from mkfit::axis_base< R, I, M, N >
 axis_base (R min, R max, unsigned M_size, unsigned N_size)
 
from_M_bin_to_N_bin (I m) const
 
I_pair from_R_minmax_to_N_bins (R rmin, R rmax) const
 
I_pair from_R_rdr_to_N_bins (R r, R dr) const
 
from_R_to_M_bin (R r) const
 
from_R_to_M_bin_safe (R r) const
 
from_R_to_N_bin (R r) const
 
from_R_to_N_bin_safe (R r) const
 
next_N_bin (I bin) const
 

Static Public Attributes

static constexpr I c_M_mask = (1 << M) - 1
 
static constexpr I c_N_mask = (1 << N) - 1
 
- Static Public Attributes inherited from mkfit::axis_pow2_base< R, I, M, N >
static constexpr unsigned c_M_end = 1 << M
 
static constexpr unsigned c_N_end = 1 << N
 
- Static Public Attributes inherited from mkfit::axis_base< R, I, M, N >
static constexpr unsigned c_M = M
 
static constexpr unsigned c_M2N_shift = M - N
 
static constexpr unsigned c_N = N
 

Additional Inherited Members

- Public Types inherited from mkfit::axis_base< R, I, M, N >
typedef I index_t
 
typedef R real_t
 
- Public Attributes inherited from mkfit::axis_base< R, I, M, N >
const I m_last_M_bin
 
const I m_last_N_bin
 
const R m_M_fac
 
const R m_N_fac
 
const R m_R_max
 
const R m_R_min
 

Detailed Description

template<typename R, typename I, unsigned M, unsigned N>
struct mkfit::axis_pow2_u1< R, I, M, N >

Definition at line 90 of file binnor.h.

Constructor & Destructor Documentation

template<typename R, typename I, unsigned M, unsigned N>
mkfit::axis_pow2_u1< R, I, M, N >::axis_pow2_u1 ( min,
max 
)
inline

Definition at line 94 of file binnor.h.

Member Function Documentation

template<typename R, typename I, unsigned M, unsigned N>
axis_base<R, I, M, N>::I_pair mkfit::axis_pow2_u1< R, I, M, N >::from_R_minmax_to_N_bins ( rmin,
rmax 
) const
inline

Definition at line 99 of file binnor.h.

References mkfit::axis_pow2_u1< R, I, M, N >::c_N_mask, mkfit::axis_base< R, I, M, N >::from_R_to_N_bin(), mkfit::axis_pow2_u1< R, I, M, N >::from_R_to_N_bin_safe(), and Exhume::I.

Referenced by mkfit::axis_pow2_u1< R, I, M, N >::from_R_rdr_to_N_bins().

99  {
100  return typename axis_base<R, I, M, N>::I_pair(from_R_to_N_bin_safe(rmin),
101  (this->from_R_to_N_bin(rmax) + I{1}) & c_N_mask);
102  }
I from_R_to_N_bin_safe(R r) const
Definition: binnor.h:97
const std::complex< double > I
Definition: I.h:8
static constexpr I c_N_mask
Definition: binnor.h:92
I from_R_to_N_bin(R r) const
Definition: binnor.h:56
template<typename R, typename I, unsigned M, unsigned N>
axis_base<R, I, M, N>::I_pair mkfit::axis_pow2_u1< R, I, M, N >::from_R_rdr_to_N_bins ( r,
dr 
) const
inline

Definition at line 104 of file binnor.h.

References mkfit::axis_pow2_u1< R, I, M, N >::from_R_minmax_to_N_bins().

Referenced by mkfit::StdSeq::clean_cms_seedtracks_iter().

104  {
105  return from_R_minmax_to_N_bins(r - dr, r + dr);
106  }
axis_base< R, I, M, N >::I_pair from_R_minmax_to_N_bins(R rmin, R rmax) const
Definition: binnor.h:99
template<typename R, typename I, unsigned M, unsigned N>
I mkfit::axis_pow2_u1< R, I, M, N >::from_R_to_M_bin_safe ( r) const
inline

Definition at line 96 of file binnor.h.

References mkfit::axis_pow2_u1< R, I, M, N >::c_M_mask, and mkfit::axis_base< R, I, M, N >::from_R_to_M_bin().

96 { return this->from_R_to_M_bin(r) & c_M_mask; }
I from_R_to_M_bin(R r) const
Definition: binnor.h:55
static constexpr I c_M_mask
Definition: binnor.h:91
template<typename R, typename I, unsigned M, unsigned N>
I mkfit::axis_pow2_u1< R, I, M, N >::from_R_to_N_bin_safe ( r) const
inline
template<typename R, typename I, unsigned M, unsigned N>
I mkfit::axis_pow2_u1< R, I, M, N >::next_N_bin ( bin) const
inline

Definition at line 107 of file binnor.h.

References mkfit::axis_pow2_u1< R, I, M, N >::c_N_mask.

Referenced by mkfit::StdSeq::clean_cms_seedtracks_iter().

107 { return (bin + 1) & c_N_mask; }
static constexpr I c_N_mask
Definition: binnor.h:92

Member Data Documentation

template<typename R, typename I, unsigned M, unsigned N>
constexpr I mkfit::axis_pow2_u1< R, I, M, N >::c_M_mask = (1 << M) - 1
static

Definition at line 91 of file binnor.h.

Referenced by mkfit::axis_pow2_u1< R, I, M, N >::from_R_to_M_bin_safe().

template<typename R, typename I, unsigned M, unsigned N>
constexpr I mkfit::axis_pow2_u1< R, I, M, N >::c_N_mask = (1 << N) - 1
static