inlib  1.2.0
Public Types | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes
inlib::histo::b2< TC, TN, TW, TH > Class Template Reference
Inheritance diagram for inlib::histo::b2< TC, TN, TW, TH >:
Inheritance graph
[legend]
Collaboration diagram for inlib::histo::b2< TC, TN, TW, TH >:
Collaboration graph
[legend]

List of all members.

Public Types

typedef base_histo< TC, TN, TW,
TH >::bn_t 
bn_t

Public Member Functions

virtual TH bin_error (int, int) const =0
void update_fast_getters ()
TC mean_x () const
TC mean_y () const
TC rms_x () const
TC rms_y () const
int coord_to_index_x (TC aCoord) const
int coord_to_index_y (TC aCoord) const
TN bin_entries (int aI, int aJ) const
TW bin_Sw (int aI, int aJ) const
TW bin_Sw2 (int aI, int aJ) const
TC bin_Sxw (int aI, int aJ) const
TC bin_Sx2w (int aI, int aJ) const
TC bin_Syw (int aI, int aJ) const
TC bin_Sy2w (int aI, int aJ) const
TH bin_height (int aI, int aJ) const
TC bin_center_x (int aI) const
TC bin_center_y (int aJ) const
TC bin_mean_x (int aI, int aJ) const
TC bin_mean_y (int aI, int aJ) const
TC bin_rms_x (int aI, int aJ) const
TC bin_rms_y (int aI, int aJ) const
const axis< TC > & axis_x () const
const axis< TC > & axis_y () const
axis< TC > & axis_x ()
axis< TC > & axis_y ()
TN bin_entries_x (int aI) const
TW bin_height_x (int aI) const
TN bin_entries_y (int aJ) const
TW bin_height_y (int aJ) const
void hprint (std::ostream &a_out)

Protected Types

enum  { AxisX = 0, AxisY = 1 }

Protected Member Functions

 b2 (const std::string &a_title, bn_t aXnumber, TC aXmin, TC aXmax, bn_t aYnumber, TC aYmin, TC aYmax)
 b2 (const std::string &a_title, const std::vector< TC > &aEdgesX, const std::vector< TC > &aEdgesY)
virtual ~b2 ()
 b2 (const b2 &a_from)
b2operator= (const b2 &a_from)

Protected Attributes

TN m_in_range_entries
TW m_in_range_Sw
TC m_in_range_Sxw
TC m_in_range_Syw
TC m_in_range_Sx2w
TC m_in_range_Sy2w

Detailed Description

template<class TC, class TN, class TW, class TH>
class inlib::histo::b2< TC, TN, TW, TH >

Definition at line 15 of file b2.


Member Typedef Documentation

template<class TC, class TN, class TW, class TH>
typedef base_histo<TC,TN,TW,TH>::bn_t inlib::histo::b2< TC, TN, TW, TH >::bn_t

Member Enumeration Documentation

template<class TC, class TN, class TW, class TH>
anonymous enum [protected]
Enumerator:
AxisX 
AxisY 

Definition at line 19 of file b2.

{AxisX=0,AxisY=1};

Constructor & Destructor Documentation

template<class TC, class TN, class TW, class TH>
inlib::histo::b2< TC, TN, TW, TH >::b2 ( const std::string &  a_title,
bn_t  aXnumber,
TC  aXmin,
TC  aXmax,
bn_t  aYnumber,
TC  aYmin,
TC  aYmax 
) [inline, protected]

Definition at line 354 of file b2.

  :m_in_range_entries(0)
  ,m_in_range_Sw(0)
  ,m_in_range_Sxw(0)
  ,m_in_range_Syw(0)
  ,m_in_range_Sx2w(0)
  ,m_in_range_Sy2w(0)
  {
    parent::m_title = a_title;
    std::vector<bn_t> ns;
    ns.push_back(aXnumber);
    ns.push_back(aYnumber);
    std::vector<TC> mins;
    mins.push_back(aXmin);
    mins.push_back(aYmin);
    std::vector<TC> maxs;
    maxs.push_back(aXmax);
    maxs.push_back(aYmax);
    parent::configure(2,ns,mins,maxs);
  }
template<class TC, class TN, class TW, class TH>
inlib::histo::b2< TC, TN, TW, TH >::b2 ( const std::string &  a_title,
const std::vector< TC > &  aEdgesX,
const std::vector< TC > &  aEdgesY 
) [inline, protected]

Definition at line 377 of file b2.

  :m_in_range_entries(0)
  ,m_in_range_Sw(0)
  ,m_in_range_Sxw(0)
  ,m_in_range_Syw(0)
  ,m_in_range_Sx2w(0)
  ,m_in_range_Sy2w(0)
  {
    parent::m_title = a_title;
    std::vector< std::vector<TC> > edges(2);
    edges[0] = aEdgesX;
    edges[1] = aEdgesY;
    parent::configure(2,edges);
  }
template<class TC, class TN, class TW, class TH>
virtual inlib::histo::b2< TC, TN, TW, TH >::~b2 ( ) [inline, protected, virtual]

Definition at line 394 of file b2.

{}
template<class TC, class TN, class TW, class TH>
inlib::histo::b2< TC, TN, TW, TH >::b2 ( const b2< TC, TN, TW, TH > &  a_from) [inline, protected]

Definition at line 396 of file b2.

  : parent(a_from)
  ,m_in_range_entries(a_from.m_in_range_entries)
  ,m_in_range_Sw(a_from.m_in_range_Sw)
  ,m_in_range_Sxw(a_from.m_in_range_Sxw)
  ,m_in_range_Syw(a_from.m_in_range_Syw)
  ,m_in_range_Sx2w(a_from.m_in_range_Sx2w)
  ,m_in_range_Sy2w(a_from.m_in_range_Sy2w)
  {
    update_fast_getters();
  }

Member Function Documentation

template<class TC, class TN, class TW, class TH>
const axis<TC>& inlib::histo::b2< TC, TN, TW, TH >::axis_x ( ) const [inline]

Definition at line 210 of file b2.

{return parent::m_axes[0];}
template<class TC, class TN, class TW, class TH>
axis<TC>& inlib::histo::b2< TC, TN, TW, TH >::axis_x ( ) [inline]

Definition at line 212 of file b2.

{return parent::m_axes[0];} //touchy
template<class TC, class TN, class TW, class TH>
const axis<TC>& inlib::histo::b2< TC, TN, TW, TH >::axis_y ( ) const [inline]

Definition at line 211 of file b2.

{return parent::m_axes[1];}
template<class TC, class TN, class TW, class TH>
axis<TC>& inlib::histo::b2< TC, TN, TW, TH >::axis_y ( ) [inline]

Definition at line 213 of file b2.

{return parent::m_axes[1];} //touchy
template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::bin_center_x ( int  aI) const [inline]

Definition at line 152 of file b2.

                                {
    return parent::m_axes[0].bin_center(aI);
  }
template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::bin_center_y ( int  aJ) const [inline]

Definition at line 155 of file b2.

                                {
    return parent::m_axes[1].bin_center(aJ);
  }
template<class TC, class TN, class TW, class TH>
TN inlib::histo::b2< TC, TN, TW, TH >::bin_entries ( int  aI,
int  aJ 
) const [inline]

Definition at line 84 of file b2.

                                      {
    if(parent::m_bin_number==0) return 0;
    bn_t ibin,jbin;
    if(!parent::m_axes[0].in_range_to_absolute_index(aI,ibin)) return 0;
    if(!parent::m_axes[1].in_range_to_absolute_index(aJ,jbin)) return 0;
    bn_t offset = ibin + jbin * parent::m_axes[1].m_offset;
    return parent::m_bin_entries[offset];
  }
template<class TC, class TN, class TW, class TH>
TN inlib::histo::b2< TC, TN, TW, TH >::bin_entries_x ( int  aI) const [inline]

Definition at line 216 of file b2.

                                 {
    if(!parent::m_dimension) return 0;
    bn_t ibin;
    if(!parent::m_axes[0].in_range_to_absolute_index(aI,ibin)) return 0;
    bn_t ybins = parent::m_axes[1].bins()+2;
    bn_t offset;
    TN entries = 0;
    for(bn_t jbin=0;jbin<ybins;jbin++) {
      offset = ibin + jbin * parent::m_axes[1].m_offset;
      entries += parent::m_bin_entries[offset];
    }
    return entries;
  }
template<class TC, class TN, class TW, class TH>
TN inlib::histo::b2< TC, TN, TW, TH >::bin_entries_y ( int  aJ) const [inline]

Definition at line 244 of file b2.

                                 {
    if(!parent::m_dimension) return 0;
    bn_t jbin;
    if(!parent::m_axes[1].in_range_to_absolute_index(aJ,jbin)) return 0;
    bn_t xbins = parent::m_axes[0].bins()+2;
    bn_t offset;
    TN entries = 0;
    for(bn_t ibin=0;ibin<xbins;ibin++) {
      offset = ibin + jbin * parent::m_axes[1].m_offset;
      entries += parent::m_bin_entries[offset];
    }
    return entries;
  }
template<class TC, class TN, class TW, class TH>
virtual TH inlib::histo::b2< TC, TN, TW, TH >::bin_error ( int  ,
int   
) const [pure virtual]
template<class TC, class TN, class TW, class TH>
TH inlib::histo::b2< TC, TN, TW, TH >::bin_height ( int  aI,
int  aJ 
) const [inline]

Definition at line 143 of file b2.

                                     {
    if(parent::m_bin_number==0) return 0;
    bn_t ibin,jbin;
    if(!parent::m_axes[0].in_range_to_absolute_index(aI,ibin)) return 0;
    if(!parent::m_axes[1].in_range_to_absolute_index(aJ,jbin)) return 0;
    bn_t offset = ibin + jbin * parent::m_axes[1].m_offset;
    return this->get_bin_height(offset);
  }
template<class TC, class TN, class TW, class TH>
TW inlib::histo::b2< TC, TN, TW, TH >::bin_height_x ( int  aI) const [inline]

Definition at line 230 of file b2.

                                {
    if(!parent::m_dimension) return 0;
    bn_t ibin;
    if(!parent::m_axes[0].in_range_to_absolute_index(aI,ibin)) return 0;
    bn_t ybins = parent::m_axes[1].bins()+2;
    bn_t offset;
    TW sw = 0;
    for(bn_t jbin=0;jbin<ybins;jbin++) {
      offset = ibin + jbin * parent::m_axes[1].m_offset;
      sw += this->get_bin_height(offset);
    }
    return sw;
  }
template<class TC, class TN, class TW, class TH>
TW inlib::histo::b2< TC, TN, TW, TH >::bin_height_y ( int  aJ) const [inline]

Definition at line 258 of file b2.

                                {
    if(!parent::m_dimension) return 0;
    bn_t jbin;
    if(!parent::m_axes[1].in_range_to_absolute_index(aJ,jbin)) return 0;
    bn_t xbins = parent::m_axes[0].bins()+2;
    bn_t offset;
    TW sw = 0;
    for(bn_t ibin=0;ibin<xbins;ibin++) {
      offset = ibin + jbin * parent::m_axes[1].m_offset;
      sw += this->get_bin_height(offset);
    }
    return sw;
  }
template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::bin_mean_x ( int  aI,
int  aJ 
) const [inline]

Definition at line 159 of file b2.

                                     {
    if(parent::m_bin_number==0) return 0;
    bn_t ibin,jbin;
    if(!parent::m_axes[0].in_range_to_absolute_index(aI,ibin)) return 0;
    if(!parent::m_axes[1].in_range_to_absolute_index(aJ,jbin)) return 0;
    bn_t offset = ibin + jbin * parent::m_axes[1].m_offset;
    TW sw = parent::m_bin_Sw[offset];
    if(sw==0) return 0;
    return parent::m_bin_Sxw[offset][AxisX]/sw;
  }
template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::bin_mean_y ( int  aI,
int  aJ 
) const [inline]

Definition at line 170 of file b2.

                                     {
    if(parent::m_bin_number==0) return 0;
    bn_t ibin,jbin;
    if(!parent::m_axes[0].in_range_to_absolute_index(aI,ibin)) return 0;
    if(!parent::m_axes[1].in_range_to_absolute_index(aJ,jbin)) return 0;
    bn_t offset = ibin + jbin * parent::m_axes[1].m_offset;
    TW sw = parent::m_bin_Sw[offset];
    if(sw==0) return 0;
    return parent::m_bin_Sxw[offset][AxisY]/sw;
  }
template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::bin_rms_x ( int  aI,
int  aJ 
) const [inline]

Definition at line 181 of file b2.

                                    {
    if(parent::m_bin_number==0) return 0;
    bn_t ibin,jbin;
    if(!parent::m_axes[0].in_range_to_absolute_index(aI,ibin)) return 0;
    if(!parent::m_axes[1].in_range_to_absolute_index(aJ,jbin)) return 0;
    bn_t offset = ibin + jbin * parent::m_axes[1].m_offset;
    TW sw = parent::m_bin_Sw[offset];
    if(sw==0) return 0;
    TC sxw = parent::m_bin_Sxw[offset][AxisX];
    TC sx2w = parent::m_bin_Sx2w[offset][AxisX];
    TC mean = sxw/sw;
    return ::sqrt(::fabs((sx2w / sw) - mean * mean));
  }
template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::bin_rms_y ( int  aI,
int  aJ 
) const [inline]

Definition at line 195 of file b2.

                                    {
    if(parent::m_bin_number==0) return 0;
    bn_t ibin,jbin;
    if(!parent::m_axes[0].in_range_to_absolute_index(aI,ibin)) return 0;
    if(!parent::m_axes[1].in_range_to_absolute_index(aJ,jbin)) return 0;
    bn_t offset = ibin + jbin * parent::m_axes[1].m_offset;
    TW sw = parent::m_bin_Sw[offset];
    if(sw==0) return 0;
    TC sxw = parent::m_bin_Sxw[offset][AxisY];
    TC sx2w = parent::m_bin_Sx2w[offset][AxisY];
    TC mean = sxw/sw;
    return ::sqrt(::fabs((sx2w / sw) - mean * mean));
  }
template<class TC, class TN, class TW, class TH>
TW inlib::histo::b2< TC, TN, TW, TH >::bin_Sw ( int  aI,
int  aJ 
) const [inline]

Definition at line 93 of file b2.

                                 {
    if(parent::m_bin_number==0) return 0;
    bn_t ibin,jbin;
    if(!parent::m_axes[0].in_range_to_absolute_index(aI,ibin)) return 0;
    if(!parent::m_axes[1].in_range_to_absolute_index(aJ,jbin)) return 0;
    bn_t offset = ibin + jbin * parent::m_axes[1].m_offset;
    return parent::m_bin_Sw(offset);
  }
template<class TC, class TN, class TW, class TH>
TW inlib::histo::b2< TC, TN, TW, TH >::bin_Sw2 ( int  aI,
int  aJ 
) const [inline]

Definition at line 102 of file b2.

                                  {
    if(parent::m_bin_number==0) return 0;
    bn_t ibin,jbin;
    if(!parent::m_axes[0].in_range_to_absolute_index(aI,ibin)) return 0;
    if(!parent::m_axes[1].in_range_to_absolute_index(aJ,jbin)) return 0;
    bn_t offset = ibin + jbin * parent::m_axes[1].m_offset;
    return parent::m_bin_Sw2(offset);
  }
template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::bin_Sx2w ( int  aI,
int  aJ 
) const [inline]

Definition at line 118 of file b2.

                                   {
    if(parent::m_bin_number==0) return 0;
    bn_t ibin,jbin;
    if(!parent::m_axes[0].in_range_to_absolute_index(aI,ibin)) return 0;
    if(!parent::m_axes[1].in_range_to_absolute_index(aJ,jbin)) return 0;
    bn_t offset = ibin + jbin * parent::m_axes[1].m_offset;
    return parent::m_bin_Sx2w[offset][AxisX];
  }
template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::bin_Sxw ( int  aI,
int  aJ 
) const [inline]

Definition at line 110 of file b2.

                                  {
    if(parent::m_bin_number==0) return 0;
    bn_t ibin,jbin;
    if(!parent::m_axes[0].in_range_to_absolute_index(aI,ibin)) return 0;
    if(!parent::m_axes[1].in_range_to_absolute_index(aJ,jbin)) return 0;
    bn_t offset = ibin + jbin * parent::m_axes[1].m_offset;
    return parent::m_bin_Sxw[offset][AxisX];
  }
template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::bin_Sy2w ( int  aI,
int  aJ 
) const [inline]

Definition at line 134 of file b2.

                                   {
    if(parent::m_bin_number==0) return 0;
    bn_t ibin,jbin;
    if(!parent::m_axes[0].in_range_to_absolute_index(aI,ibin)) return 0;
    if(!parent::m_axes[1].in_range_to_absolute_index(aJ,jbin)) return 0;
    bn_t offset = ibin + jbin * parent::m_axes[1].m_offset;
    return parent::m_bin_Sx2w[offset][AxisY];
  }
template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::bin_Syw ( int  aI,
int  aJ 
) const [inline]

Definition at line 126 of file b2.

                                  {
    if(parent::m_bin_number==0) return 0;
    bn_t ibin,jbin;
    if(!parent::m_axes[0].in_range_to_absolute_index(aI,ibin)) return 0;
    if(!parent::m_axes[1].in_range_to_absolute_index(aJ,jbin)) return 0;
    bn_t offset = ibin + jbin * parent::m_axes[1].m_offset;
    return parent::m_bin_Sxw[offset][AxisY];
  }
template<class TC, class TN, class TW, class TH>
int inlib::histo::b2< TC, TN, TW, TH >::coord_to_index_x ( TC  aCoord) const [inline]

Definition at line 76 of file b2.

                                        {
    return axis_x().coord_to_index(aCoord);
  }
template<class TC, class TN, class TW, class TH>
int inlib::histo::b2< TC, TN, TW, TH >::coord_to_index_y ( TC  aCoord) const [inline]

Definition at line 79 of file b2.

                                        {
    return axis_y().coord_to_index(aCoord);
  }
template<class TC, class TN, class TW, class TH>
void inlib::histo::b2< TC, TN, TW, TH >::hprint ( std::ostream &  a_out) [inline]

Definition at line 274 of file b2.

                                 {
    // A la HPRINT.
    a_out << parent::dimension() << parent::title() << std::endl;
    a_out 
      << " * ENTRIES = " << parent::all_entries() << std::endl;
  
    //   6 | 7 | 8
    //  -----------
    //   3 | 4 | 5
    //  -----------
    //   0 | 1 | 2
  
    TW height_0 = bin_height(axis_t::UNDERFLOW_BIN,
                                           axis_t::UNDERFLOW_BIN);
    TW height_2 = bin_height(axis_t::OVERFLOW_BIN,
                                           axis_t::UNDERFLOW_BIN);
    TW height_6 = bin_height(axis_t::UNDERFLOW_BIN,
                                           axis_t::OVERFLOW_BIN);
    TW height_8 = bin_height(axis_t::OVERFLOW_BIN,
                                           axis_t::OVERFLOW_BIN);
  
    bn_t i,j;
  
    TW height_1 = 0;
    TW height_7 = 0;
    for(i=0;i<axis_x().bins();i++){
      height_1 += bin_height(i,axis_t::UNDERFLOW_BIN);
      height_7 += bin_height(i,axis_t::OVERFLOW_BIN);
    }
  
    TW height_3 = 0;
    TW height_5 = 0;
    for(j=0;j<axis_y().bins();j++){
      height_3 += bin_height(axis_t::UNDERFLOW_BIN,j);
      height_5 += bin_height(axis_t::OVERFLOW_BIN,j);
    }
  
    TW height_4 = 0;
    for(i=0;i<axis_x().bins();i++){
      for(j=0;j<axis_y().bins();j++){
        height_4 += bin_height(i,j);
      }
    }
  
    a_out 
      << " " << height_6 << " " << height_7 << " " << height_8 << std::endl;
    a_out 
      << " " << height_3 << " " << height_4 << " " << height_5 << std::endl;
    a_out 
      << " " << height_0 << " " << height_1 << " " << height_2 << std::endl;
  
    // Some bins :
    bn_t xbins = axis_x().bins();
    bn_t ybins = axis_y().bins();
    a_out 
      << " * ENTRIES[0,0]     = " 
      << bin_entries(0,0)    
      << " * HEIGHT[0,0] = " 
      << bin_height(0,0)    
      << " * ERROR[0,0] = "     
      << bin_error(0,0)    
      << std::endl;
    a_out 
      << " * ENTRIES[N/2,N/2] = " 
      << bin_entries(xbins/2,ybins/2)    
      << " * HEIGHT[N/2,N/2] = " 
      << bin_height(xbins/2,ybins/2)
      << " * ERROR[N/2,N/2] = " 
      << bin_error(xbins/2,ybins/2)
      << std::endl;
    a_out 
      << " * ENTRIES[N-1,N-1] = " 
      << bin_entries(xbins-1,ybins-1)    
      << " * HEIGHT[N-1,N-1] = " 
      << bin_height(xbins-1,ybins-1)
      << " * ERROR[N-1,N-1] = " 
      << bin_error(xbins-1,ybins-1)
      << std::endl;
  }
template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::mean_x ( ) const [inline]

Definition at line 54 of file b2.

                    {
    if(m_in_range_Sw==0) return 0;
    return m_in_range_Sxw/m_in_range_Sw;
  }
template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::mean_y ( ) const [inline]

Definition at line 59 of file b2.

                    {
    if(m_in_range_Sw==0) return 0;
    return m_in_range_Syw/m_in_range_Sw;
  }
template<class TC, class TN, class TW, class TH>
b2& inlib::histo::b2< TC, TN, TW, TH >::operator= ( const b2< TC, TN, TW, TH > &  a_from) [inline, protected]

Definition at line 408 of file b2.

                                  {
    parent::operator=(a_from);
    m_in_range_entries = a_from.m_in_range_entries;
    m_in_range_Sw = a_from.m_in_range_Sw;
    m_in_range_Sxw = a_from.m_in_range_Sxw;
    m_in_range_Syw = a_from.m_in_range_Syw;
    m_in_range_Sx2w = a_from.m_in_range_Sx2w;
    m_in_range_Sy2w = a_from.m_in_range_Sy2w;
    update_fast_getters();
    return *this;
  }
template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::rms_x ( ) const [inline]

Definition at line 64 of file b2.

                   {
    if(m_in_range_Sw==0) return 0;
    TC mean = m_in_range_Sxw/m_in_range_Sw;
    return ::sqrt(::fabs((m_in_range_Sx2w / m_in_range_Sw) - mean * mean));
  }
template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::rms_y ( ) const [inline]

Definition at line 70 of file b2.

                   {
    if(m_in_range_Sw==0) return 0;
    TC mean = m_in_range_Syw/m_in_range_Sw;
    return ::sqrt(::fabs((m_in_range_Sy2w / m_in_range_Sw) - mean * mean));
  }
template<class TC, class TN, class TW, class TH>
void inlib::histo::b2< TC, TN, TW, TH >::update_fast_getters ( ) [inline]

Definition at line 25 of file b2.

                             {
    m_in_range_entries = 0;
    m_in_range_Sw = 0;
    m_in_range_Sxw = 0;
    m_in_range_Syw = 0;
    m_in_range_Sx2w = 0;
    m_in_range_Sy2w = 0;
    bn_t ibin,jbin,offset;     
    bn_t xbins = parent::m_axes[0].bins();
    bn_t ybins = parent::m_axes[1].bins();
    bn_t yoffset = parent::m_axes[1].m_offset;
    for(ibin=1;ibin<=xbins;ibin++) {
      offset = ibin + yoffset;
      for(jbin=1;jbin<=ybins;jbin++) {
        //offset = ibin + jbin * m_axes[1].m_offset;
  
        m_in_range_entries += parent::m_bin_entries[offset];
        m_in_range_Sw += parent::m_bin_Sw[offset];
        m_in_range_Sxw += parent::m_bin_Sxw[offset][0];
        m_in_range_Syw += parent::m_bin_Sxw[offset][1];
        m_in_range_Sx2w += parent::m_bin_Sx2w[offset][0];
        m_in_range_Sy2w += parent::m_bin_Sx2w[offset][1];
  
        offset += yoffset;
      }
    }
  }

Member Data Documentation

template<class TC, class TN, class TW, class TH>
TN inlib::histo::b2< TC, TN, TW, TH >::m_in_range_entries [protected]

Definition at line 421 of file b2.

template<class TC, class TN, class TW, class TH>
TW inlib::histo::b2< TC, TN, TW, TH >::m_in_range_Sw [protected]

Definition at line 422 of file b2.

template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::m_in_range_Sx2w [protected]

Definition at line 425 of file b2.

template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::m_in_range_Sxw [protected]

Definition at line 423 of file b2.

template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::m_in_range_Sy2w [protected]

Definition at line 426 of file b2.

template<class TC, class TN, class TW, class TH>
TC inlib::histo::b2< TC, TN, TW, TH >::m_in_range_Syw [protected]

Definition at line 424 of file b2.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines