Anaphe Home Page Reference Documentation

Main Page     Namespaces     Classes     Source Code    

IProfileHistogram.h

Go to the documentation of this file.
00001 
00002 #ifndef INTERFACES_IPROFILEHISTOGRAM_H
00003 #define INTERFACES_IPROFILEHISTOGRAM_H 1
00004 
00005 
00006 // Include files
00007 #include "Interfaces/IHistogram.h"
00008 
00009 #ifndef ANAPHE_NO_NAMESPACE
00010 namespace Anaphe {
00011 #endif
00012 
00013   // Forward declarations
00014 
00015 
00016   //------------------------------------------------------------------------------
00017   //
00018   // ClassName:    IProfileHistogram
00019   //  
00020   // Description:  Definition of the IProfileHistogram interface class
00021   //
00022   //               All methods that accept a bin number as an argument will
00023   //               also accept the UNDERFLOW or OVERFLOW as the argument,
00024   //               and as a result will give the contents of the resulting
00025   //               UNDERFLOW or OVERFLOW bin.
00026   //               The in-range bin indeces are expected to be from 0 to N-1.
00027   //               See also <a href="http://wwwinfo.cern.ch/asd/lhc++/AIDA/">AIDA</a>
00028   //
00029   // Authors:      Pavel Binko, Dino Ferrero Merlino, Andreas Pfeiffer
00030   // Date:         22/03/2000
00031   //
00032   //------------------------------------------------------------------------------
00033 
00034 
00035   class IProfileHistogram : virtual public IHistogram {
00036 
00037   public:
00038     virtual ~IProfileHistogram() { /* nop */ }
00039 
00040   public:
00041 
00043     virtual void fill( double x, double y, double weight = 1 )                = 0;
00044 
00046     virtual int binEntries( int index ) const                                 = 0;
00047 
00049     virtual double binHeight( int index ) const                               = 0;
00050 
00052     virtual double binError( int index ) const                                = 0;
00053 
00055     virtual double binSpread( int index ) const                               = 0;
00056 
00058     virtual double mean() const                                               = 0;
00059 
00061     virtual double rms() const                                                = 0;
00062 
00064     virtual double minBinHeight() const                                       = 0;
00066     virtual int minBin() const                                                = 0;
00067 
00069     virtual double maxBinHeight() const                                       = 0;
00071     virtual int maxBin() const                                                = 0;
00072 
00074     virtual IAxis* xAxis() const                                              = 0;
00075 
00077     virtual int coordToIndex( double coord ) const                            = 0;
00078 
00079   };
00080 
00081 
00082 #ifndef ANAPHE_NO_NAMESPACE
00083 }; // end namespace Anaphe
00084 #endif
00085 
00086 #endif    // INTERFACES_IPROFILEHISTOGRAM_H


Anaphe documentation generated by Doxygen (www.doxygen.org)