Index: /trunk/MagicSoft/Mars/Changelog
===================================================================
--- /trunk/MagicSoft/Mars/Changelog	(revision 4884)
+++ /trunk/MagicSoft/Mars/Changelog	(revision 4885)
@@ -53,4 +53,5 @@
    * mcalib/MHCalibrationCam.[h,cc]
    * mcalib/MHCalibrationChargeCam.cc
+   * mcalib/MHCalibrationRelTimeCam.cc
      - added bool kLoGain which is set if number of LoGain Slices in 
        MRawRunHeader is not 0. This excludes the low gain calculations 
Index: /trunk/MagicSoft/Mars/mcalib/MHCalibrationChargeBlindPix.cc
===================================================================
--- /trunk/MagicSoft/Mars/mcalib/MHCalibrationChargeBlindPix.cc	(revision 4884)
+++ /trunk/MagicSoft/Mars/mcalib/MHCalibrationChargeBlindPix.cc	(revision 4885)
@@ -1072,5 +1072,5 @@
   }
 
-  if (!IsEmpty() && !IsOnlyOverflow())
+  if (!IsEmpty() && !IsOnlyOverflow() && !IsOnlyUnderflow())
     gPad->SetLogy();
 
Index: /trunk/MagicSoft/Mars/mcalib/MHCalibrationChargePINDiode.cc
===================================================================
--- /trunk/MagicSoft/Mars/mcalib/MHCalibrationChargePINDiode.cc	(revision 4884)
+++ /trunk/MagicSoft/Mars/mcalib/MHCalibrationChargePINDiode.cc	(revision 4885)
@@ -375,5 +375,5 @@
     return;
 
-  if (!IsOnlyOverflow())
+  if (!IsOnlyOverflow() && !IsOnlyUnderflow())
     gPad->SetLogy();
 
Index: /trunk/MagicSoft/Mars/mcalib/MHCalibrationRelTimeCam.cc
===================================================================
--- /trunk/MagicSoft/Mars/mcalib/MHCalibrationRelTimeCam.cc	(revision 4884)
+++ /trunk/MagicSoft/Mars/mcalib/MHCalibrationRelTimeCam.cc	(revision 4885)
@@ -200,5 +200,5 @@
   }
   
-  if (fLoGainArray->GetEntries()==0)
+  if (fLoGainArray->GetEntries()==0 && fLoGain )
   {
       fLoGainArray->Expand(npixels);
@@ -229,5 +229,5 @@
   }
 
-  if (fAverageLoGainAreas->GetEntries()==0)
+  if (fAverageLoGainAreas->GetEntries()==0 && fLoGain )
   {
     fAverageLoGainAreas->Expand(nareas);
@@ -263,5 +263,5 @@
   }
   
-  if (fAverageLoGainSectors->GetEntries()==0)
+  if (fAverageLoGainSectors->GetEntries()==0 && fLoGain )
     {
       fAverageLoGainSectors->Expand(nsectors);
@@ -348,5 +348,5 @@
       const Int_t sector = (*fGeom)[i].GetSector();
 
-      if (pix.IsLoGainUsed())
+      if (pix.IsLoGainUsed() && fLoGain)
         { 
           const Float_t reltime = pix.GetArrivalTimeLoGain() - reftime;
@@ -361,4 +361,5 @@
         {
           const Float_t reltime = pix.GetArrivalTimeHiGain() - reftime;
+
           histhi.FillHistAndArray(reltime) ;
           fSumareahi  [aidx]   += reltime;
@@ -374,6 +375,9 @@
       histhi.FillHistAndArray(fNumareahi[j] == 0 ? 0. : fSumareahi[j]/fNumareahi[j]);
 
-      MHGausEvents &histlo = GetAverageLoGainArea(j);
-      histlo.FillHistAndArray(fNumarealo[j] == 0 ? 0. : fSumarealo[j]/fNumarealo[j]);
+      if (fLoGain)
+        {
+          MHGausEvents &histlo = GetAverageLoGainArea(j);
+          histlo.FillHistAndArray(fNumarealo[j] == 0 ? 0. : fSumarealo[j]/fNumarealo[j]);
+        }
     }
   
@@ -383,6 +387,9 @@
       histhi.FillHistAndArray(fNumsectorhi[j] == 0 ? 0. : fSumsectorhi[j]/fNumsectorhi[j]);
 
-      MHGausEvents &histlo = GetAverageLoGainSector(j);
-      histlo.FillHistAndArray(fNumsectorlo[j] == 0 ? 0. : fSumsectorlo[j]/fNumsectorlo[j]);
+      if (fLoGain)
+        {
+          MHGausEvents &histlo = GetAverageLoGainSector(j);
+          histlo.FillHistAndArray(fNumsectorlo[j] == 0 ? 0. : fSumsectorlo[j]/fNumsectorlo[j]);
+        }
     }
 
@@ -414,8 +421,10 @@
         }
       else
-        (*this)(i).SetExcluded();
-      
-    }
-  
+        if (fLoGain)
+          (*this)(i).SetExcluded();
+      
+    }
+
+
   for (Int_t j=0; j<fAverageHiGainAreas->GetSize(); j++)
     {
@@ -429,5 +438,6 @@
         }
       else
-        GetAverageLoGainArea(j).SetExcluded();
+        if (fLoGain)
+          GetAverageLoGainArea(j).SetExcluded();
 
    }
@@ -444,15 +454,16 @@
         }
       else
-        GetAverageHiGainSector(j).SetExcluded();
-    }
-
+        if (fLoGain)        
+          GetAverageLoGainSector(j).SetExcluded();
+    }
 
   FitHiGainArrays((*fCam),*fBadPixels,
                   MBadPixelsPix::kRelTimeNotFitted,
                   MBadPixelsPix::kRelTimeOscillating);
-
-  FitLoGainArrays((*fCam),*fBadPixels,
-                  MBadPixelsPix::kRelTimeNotFitted,
-                  MBadPixelsPix::kRelTimeOscillating);
+  
+  if (fLoGain)        
+    FitLoGainArrays((*fCam),*fBadPixels,
+                    MBadPixelsPix::kRelTimeNotFitted,
+                    MBadPixelsPix::kRelTimeOscillating);
 
   return kTRUE;
@@ -489,8 +500,8 @@
 // ============== 
 //
-// 0: Fitted Mean Relative Arrival Time in ns  (MHGausEvents::GetMean()*MHCalibrationRelTimePix::GetFADCSliceWidth())
-// 1: Error Mean Relative Arrival Time in ns   (MHGausEvents::GetMeanErr()*MHCalibrationRelTimePix::GetFADCSliceWidth())
-// 2: Sigma fitted Relative Arrival Time in ns (MHGausEvents::GetSigma()*MHCalibrationRelTimePix::GetFADCSliceWidth())
-// 3: Error Sigma Relative Arrival Time in ns  (MHGausEvents::GetSigmaErr()*MHCalibrationRelTimePix::GetFADCSliceWidth())
+// 0: Fitted Mean Relative Arrival Time in FADC slices  (MHGausEvents::GetMean()*MHCalibrationRelTimePix::GetFADCSliceWidth())
+// 1: Error Mean Relative Arrival Time in FADC slices   (MHGausEvents::GetMeanErr()*MHCalibrationRelTimePix::GetFADCSliceWidth())
+// 2: Sigma fitted Relative Arrival Time in FADC slices (MHGausEvents::GetSigma()*MHCalibrationRelTimePix::GetFADCSliceWidth())
+// 3: Error Sigma Relative Arrival Time in FADC slices  (MHGausEvents::GetSigmaErr()*MHCalibrationRelTimePix::GetFADCSliceWidth())
 //
 // Useful variables derived from the fit results:
@@ -512,19 +523,18 @@
 
   const MHCalibrationRelTimePix &pix = (MHCalibrationRelTimePix&)(*this)[idx];
-  const Float_t fadc2ns              = pix.GetFADCSliceWidth();
 
   switch (type)
     {
     case 0:
-      val = pix.GetMean()*fadc2ns;
+      val = pix.GetMean();
       break;
     case 1:
-      val = pix.GetMeanErr()*fadc2ns;
+      val = pix.GetMeanErr();
       break;
     case 2:
-      val = pix.GetSigma()*fadc2ns;
+      val = pix.GetSigma();
       break;
     case 3:
-      val = pix.GetSigmaErr()*fadc2ns;
+      val = pix.GetSigmaErr();
       break;
     case 4:
