Index: trunk/MagicSoft/Mars/mhflux/MAlphaFitter.cc
===================================================================
--- trunk/MagicSoft/Mars/mhflux/MAlphaFitter.cc	(revision 7064)
+++ trunk/MagicSoft/Mars/mhflux/MAlphaFitter.cc	(revision 7066)
@@ -203,5 +203,5 @@
     fIntegralMax      = h.GetBinLowEdge(bin+1);
     fEventsBackground = fFunc->Integral(0, fIntegralMax)/alphaw;
-    fEventsSignal     = h.Integral(0, bin);
+    fEventsSignal     = h.Integral(1, bin);
     fEventsExcess     = fEventsSignal-fEventsBackground;
     fSignificance     = MMath::SignificanceLiMaSigned(fEventsSignal, fEventsBackground);
@@ -232,6 +232,6 @@
 
     fIntegralMax      = hon.GetBinLowEdge(bin+1);
-    fEventsBackground = hof.Integral(0, bin);
-    fEventsSignal     = hon.Integral(0, bin);
+    fEventsBackground = hof.Integral(1, bin);
+    fEventsSignal     = hon.Integral(1, bin);
     fEventsExcess     = fEventsSignal-fEventsBackground;
     fScaleFactor      = alpha;
@@ -301,5 +301,5 @@
 
     TLatex text(x, y, Form(fmt.Data(), fSignificance, w, (int)fEventsExcess,
-                           fEventsBackground, m, fChiSqBg, fChiSqSignal,
+                           (int)fEventsBackground, m, fChiSqBg, fChiSqSignal,
                            fCoefficients[3]));
 
@@ -358,4 +358,5 @@
     case kIntegral:    *fLog << "integral.";     break;
     case kOffRegion:   *fLog << "off region.";   break;
+    case kBackground:  *fLog << "background.";   break;
     case kLeastSquare: *fLog << "least square."; break;
     case kUserScale:   *fLog << "user def (" << fScaleUser << ")"; break;
@@ -487,4 +488,13 @@
             const Int_t min = on.GetXaxis()->FindFixBin(fScaleMin);
             const Int_t max = on.GetXaxis()->FindFixBin(fScaleMax);
+            scaleon = on.Integral(min, max);
+            scaleof = of.Integral(min, max);
+        }
+        break;
+
+    case kBackground:
+        {
+            const Int_t min = on.GetXaxis()->FindFixBin(fBgMin);
+            const Int_t max = on.GetXaxis()->FindFixBin(fBgMax);
             scaleon = on.Integral(min, max);
             scaleof = of.Integral(min, max);
@@ -605,4 +615,6 @@
         if (txt==(TString)"offregion")
             fScaleMode = kOffRegion;
+        if (txt==(TString)"background")
+            fScaleMode = kBackground;
         if (txt==(TString)"leastsquare")
             fScaleMode = kLeastSquare;
Index: trunk/MagicSoft/Mars/mhflux/MAlphaFitter.h
===================================================================
--- trunk/MagicSoft/Mars/mhflux/MAlphaFitter.h	(revision 7064)
+++ trunk/MagicSoft/Mars/mhflux/MAlphaFitter.h	(revision 7066)
@@ -21,10 +21,11 @@
 public:
     enum ScaleMode_t {
-        kNone,
-        kEntries,
-        kIntegral,
-        kOffRegion,
-        kLeastSquare,
-        kUserScale
+        kNone,         // No scaling
+        kEntries,      // scale by the number of entries in on and off
+        kIntegral,     // scale by the integral in on and off
+        kOffRegion,    // scale by the integral between fScaleMin, fScaleMax in on and off
+        kBackground,   // scale by the integral between fBgMin, fBgMax in on and off
+        kLeastSquare,  // not yet implemented
+        kUserScale     // scale by fixed factor set by SetScaleUser
     };
     enum Strategy_t {
