00001
00002 #ifndef ANAPHE_PROFILEBIN2D
00003 #define ANAPHE_PROFILEBIN2D 1
00004
00005 #include "ProfileBin1D.h"
00006
00007 namespace Anaphe {
00008 namespace AIDA_Histogram_native {
00009
00011
00012 class ProfileBin2D : public ProfileBin1D
00013 {
00014 public:
00016 ProfileBin2D();
00018 ~ProfileBin2D() { ; }
00023 bool fill( double weight, double coordX, double coordY, double coordZ );
00025 bool reset();
00027 bool scale( double factor );
00029 bool increment( const ProfileBin2D& otherBin );
00030 bool increment( int extraEntries,
00031 double extraHeight,
00032 double extraError,
00033 double extraSpread,
00034 double extraCentreX,
00035 double extraCentreY );
00037 bool set( int entriesNew,
00038 double heightNew,
00039 double errorNew,
00040 double spreadNew,
00041 double centreXNew,
00042 double centreYNew );
00044 double centreOfGravityY() const;
00045
00046 private:
00047 double m_sumOfWeightTimesCoordinate;
00048 };
00049
00050 }
00051 }
00052
00053 #include "ProfileBin2D.inl"
00054
00055 #endif