inlib  1.2.0
Public Member Functions | Static Public Member Functions | Protected Member Functions
inlib::sg::h1d2plot Class Reference
Inheritance diagram for inlib::sg::h1d2plot:
Inheritance graph
[legend]
Collaboration diagram for inlib::sg::h1d2plot:
Collaboration graph
[legend]

List of all members.

Public Member Functions

virtual void * cast (const std::string &a_class) const
virtual plottablecopy () const
virtual bool is_valid () const
virtual std::string name ()
virtual void set_name (const std::string &a_s)
virtual std::string title ()
virtual std::string legend ()
virtual void set_legend (const std::string &a_s)
virtual std::string infos (const std::string &a_opts)
virtual void bins_Sw_range (float &a_mn, float &a_mx) const
virtual unsigned int bins () const
virtual float axis_min () const
virtual float axis_max () const
virtual float bin_lower_edge (int aI) const
virtual float bin_upper_edge (int aI) const
virtual unsigned int bin_entries (int aI) const
virtual float bin_Sw (int aI) const
virtual float bin_error (int aI) const
virtual bool is_profile () const
 h1d2plot (const inlib::histo::h1d &a_data)
virtual ~h1d2plot ()

Static Public Member Functions

static const std::string & s_class ()

Protected Member Functions

 h1d2plot (const h1d2plot &a_from)

Detailed Description

Definition at line 22 of file h2plot.


Constructor & Destructor Documentation

inlib::sg::h1d2plot::h1d2plot ( const inlib::histo::h1d a_data) [inline]

Definition at line 175 of file h2plot.

  :m_data(a_data)
  {}
virtual inlib::sg::h1d2plot::~h1d2plot ( ) [inline, virtual]

Definition at line 178 of file h2plot.

{}
inlib::sg::h1d2plot::h1d2plot ( const h1d2plot a_from) [inline, protected]

Definition at line 180 of file h2plot.

  :plottable(a_from),bins1D(a_from)
  ,m_data(a_from.m_data)
  ,m_name(a_from.m_name)
  ,m_legend(a_from.m_legend)
  {}  

Member Function Documentation

virtual float inlib::sg::h1d2plot::axis_max ( ) const [inline, virtual]

Implements inlib::sg::bins1D.

Definition at line 152 of file h2plot.

                                 {
    return (float)m_data.axis().upper_edge();
  }
virtual float inlib::sg::h1d2plot::axis_min ( ) const [inline, virtual]

Implements inlib::sg::bins1D.

Definition at line 149 of file h2plot.

                                 {
    return (float)m_data.axis().lower_edge();
  }
virtual unsigned int inlib::sg::h1d2plot::bin_entries ( int  aI) const [inline, virtual]

Implements inlib::sg::bins1D.

Definition at line 162 of file h2plot.

                                                 {
    return m_data.bin_entries(aI);
  }
virtual float inlib::sg::h1d2plot::bin_error ( int  aI) const [inline, virtual]

Implements inlib::sg::bins1D.

Definition at line 170 of file h2plot.

                                        {
    return (float)m_data.bin_error(aI);
  }
virtual float inlib::sg::h1d2plot::bin_lower_edge ( int  aI) const [inline, virtual]

Implements inlib::sg::bins1D.

Definition at line 155 of file h2plot.

                                             {
    return (float)m_data.axis().bin_lower_edge(aI);
  }
virtual float inlib::sg::h1d2plot::bin_Sw ( int  aI) const [inline, virtual]

Implements inlib::sg::bins1D.

Definition at line 166 of file h2plot.

                                     {
    return (float)m_data.bin_height(aI);
  }
virtual float inlib::sg::h1d2plot::bin_upper_edge ( int  aI) const [inline, virtual]

Implements inlib::sg::bins1D.

Definition at line 158 of file h2plot.

                                             {
    return (float)m_data.axis().bin_upper_edge(aI);
  }
virtual unsigned int inlib::sg::h1d2plot::bins ( ) const [inline, virtual]

Implements inlib::sg::bins1D.

Definition at line 148 of file h2plot.

{return m_data.axis().bins();}
virtual void inlib::sg::h1d2plot::bins_Sw_range ( float &  a_mn,
float &  a_mx 
) const [inline, virtual]

Implements inlib::sg::bins1D.

Definition at line 144 of file h2plot.

                                                            {
    a_mn = (float)m_data.min_bin_height();
    a_mx = (float)m_data.max_bin_height();
  }
virtual void* inlib::sg::h1d2plot::cast ( const std::string &  a_class) const [inline, virtual]

Reimplemented from inlib::sg::bins1D.

Reimplemented in inlib::sg::h1d2plot_cp.

Definition at line 29 of file h2plot.

                                                     {
    if(void* p = inlib::cmp_cast<h1d2plot>(this,a_class)) {return p;}
    return bins1D::cast(a_class);
  }
virtual plottable* inlib::sg::h1d2plot::copy ( ) const [inline, virtual]

Implements inlib::sg::plottable.

Definition at line 34 of file h2plot.

{return new h1d2plot(*this);}
virtual std::string inlib::sg::h1d2plot::infos ( const std::string &  a_opts) [inline, virtual]

Implements inlib::sg::plottable.

Definition at line 43 of file h2plot.

                                                  {
    std::string f_lf("\n");
    std::string sinfos;
    std::vector<std::string> words;
    inlib::words(a_opts," ",false,words);
    std::vector<std::string>::const_iterator it;
  
    bool show_fit_ndf = false;
   {for(it=words.begin();it!=words.end();++it) {
      if((*it)=="fit_ndf") {show_fit_ndf = true;break;}
    }}

    for(it=words.begin();it!=words.end();++it) {
      if(((*it)=="name") && m_name.size()) {
        if(sinfos.size()) sinfos += f_lf;
        sinfos += "Name";
        sinfos += f_lf;
        sinfos += m_name;
  
      } else if((*it)=="entries") {
        if(sinfos.size()) sinfos += f_lf;
        sinfos += "Entries";
        sinfos += f_lf;
        sinfos += inlib::to<int>(m_data.all_entries());
  
      } else if((*it)=="mean") {
        if(sinfos.size()) sinfos += f_lf;
        sinfos += "Mean";
        sinfos += f_lf;
        sinfos += inlib::to<double>(m_data.mean());
  
      } else if((*it)=="rms") {
        if(sinfos.size()) sinfos += f_lf;
        sinfos += "RMS";
        sinfos += f_lf;
        sinfos += inlib::to<double>(m_data.rms());
  
      } else if((*it)=="underflow") {
        if(sinfos.size()) sinfos += f_lf;
        sinfos += "UDFLW";
        sinfos += f_lf;
        sinfos += inlib::to<double>
          (m_data.bin_height(inlib::histo::axis<double>::UNDERFLOW_BIN));
  
      } else if((*it)=="overflow") {
        if(sinfos.size()) sinfos += f_lf;
        sinfos += "OVFLW";
        sinfos += f_lf;
        sinfos += inlib::to<double>
          (m_data.bin_height(inlib::histo::axis<double>::OVERFLOW_BIN));
  
  
/*
      } else if((*it)=="fit_quality") {
        //look in m_data annotations for "fit.chi2" and "fit.ndf" keys :
        if(show_fit_ndf) {
          std::string schi2;
          std::string sndf;
          if(m_data.annotation("fit.chi2",schi2) &&
             m_data.annotation("fit.ndf",sndf)   ){
            if(sinfos.size()) sinfos += f_lf;
            sinfos += "[h]^2! / ndf";
            sinfos += f_lf; 
            sinfos += schi2;
            sinfos += " / "; 
            sinfos += sndf;
          }
        } else { //show chi2 only.
          std::string schi2;
          if(m_data.annotation("fit.chi2",schi2)){
            if(sinfos.size()) sinfos += f_lf;
            sinfos += "[h]^2!";
            sinfos += f_lf;
            sinfos += schi2;
          }
        }

      } else if((*it)=="fit_parameters") {
        //look in m_data annotations for "fit.param.<name>" keys :
        typedef std::map<std::string,std::string> annots_t;
        const annots_t& annots = m_data.annotations();
        annots_t::const_iterator it;
        for(it=annots.begin();it!=annots.end();++it) {
          const std::string& key = (*it).first;
          if(key.substr(0,10)=="fit.param.") { 
            //fit.param.mean 14
            //01234567890123
            std::string name = key.substr(10,key.size()-10);
            if(sinfos.size()) sinfos += f_lf;
            sinfos += name;
            sinfos += f_lf;
            sinfos += (*it).second;
          }
        }
*/
      }
    }
  
    return sinfos;
  }
virtual bool inlib::sg::h1d2plot::is_profile ( ) const [inline, virtual]

Implements inlib::sg::bins1D.

Definition at line 173 of file h2plot.

{return false;}
virtual bool inlib::sg::h1d2plot::is_valid ( ) const [inline, virtual]

Implements inlib::sg::plottable.

Definition at line 35 of file h2plot.

{return true;}
virtual std::string inlib::sg::h1d2plot::legend ( ) [inline, virtual]

Implements inlib::sg::plottable.

Definition at line 40 of file h2plot.

{return m_legend;}
virtual std::string inlib::sg::h1d2plot::name ( ) [inline, virtual]

Implements inlib::sg::plottable.

Definition at line 36 of file h2plot.

{return m_name;}
static const std::string& inlib::sg::h1d2plot::s_class ( ) [inline, static]

Reimplemented from inlib::sg::bins1D.

Reimplemented in inlib::sg::h1d2plot_cp.

Definition at line 24 of file h2plot.

                                    {
    static const std::string s_v("inlib::sg::h1d2plot");
    return s_v;
  }
virtual void inlib::sg::h1d2plot::set_legend ( const std::string &  a_s) [inline, virtual]

Implements inlib::sg::plottable.

Definition at line 41 of file h2plot.

{m_legend = a_s;}
virtual void inlib::sg::h1d2plot::set_name ( const std::string &  a_s) [inline, virtual]

Implements inlib::sg::plottable.

Definition at line 37 of file h2plot.

{m_name = a_s;}
virtual std::string inlib::sg::h1d2plot::title ( ) [inline, virtual]

Implements inlib::sg::plottable.

Definition at line 39 of file h2plot.

{return m_data.title();}

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