Index: /trunk/MagicSoft/Mars/Changelog
===================================================================
--- /trunk/MagicSoft/Mars/Changelog	(revision 6770)
+++ /trunk/MagicSoft/Mars/Changelog	(revision 6771)
@@ -22,4 +22,7 @@
                                                  -*-*- END OF LINE -*-*-
  2005/03/07 Markus Gaug
+
+   * mhcalib/MHCalibrationCam.h
+     - put the Draw-function into the *MENU*
 
    * mjobs/MJCalibration.[h,cc]
Index: /trunk/MagicSoft/Mars/mhcalib/MHCalibrationCam.h
===================================================================
--- /trunk/MagicSoft/Mars/mhcalib/MHCalibrationCam.h	(revision 6770)
+++ /trunk/MagicSoft/Mars/mhcalib/MHCalibrationCam.h	(revision 6771)
@@ -165,5 +165,5 @@
 
   // Draw
-  void   Draw(const Option_t *opt);
+  void   Draw(const Option_t *opt);       // *MENU*
 
   Bool_t GetPixelContent ( Double_t &val, Int_t idx, const MGeomCam &cam, Int_t type=0) const { return kTRUE; }
Index: /trunk/MagicSoft/Mars/mjobs/MJCalibration.cc
===================================================================
--- /trunk/MagicSoft/Mars/mjobs/MJCalibration.cc	(revision 6770)
+++ /trunk/MagicSoft/Mars/mjobs/MJCalibration.cc	(revision 6771)
@@ -122,4 +122,6 @@
 #include "MCalibrationPatternDecode.h"
 #include "MCalibrationCam.h"
+#include "MCalibrationHiLoCam.h"
+#include "MCalibrationHiLoPix.h"
 #include "MCalibrationQECam.h"
 #include "MCalibrationQEPix.h"
@@ -175,4 +177,5 @@
 const Int_t MJCalibration::gkThirdBlindPixelInstallation   = 43308;
 const TString MJCalibration::fgReferenceFile = "mjobs/calibrationref.rc";
+const TString MJCalibration::fgHiLoCalibFile = "mjobs/hilocalib_df6.root";
 // --------------------------------------------------------------------------
 //
@@ -202,4 +205,5 @@
 
   SetReferenceFile();
+  SetHiLoCalibFile();
 
   fConvFADC2PheMin           = 0.;
@@ -1463,4 +1467,62 @@
 // --------------------------------------------------------------------------
 //
+// Read the following values from resource file:
+//
+//   MCalibrationHiLoCam
+//
+Bool_t MJCalibration::ReadHiLoCalibFile()
+{
+
+  TFile file(fHiLoCalibFile,"READ");
+
+  MCalibrationHiLoCam hilocam;
+  
+  if (hilocam.Read()<=0)
+  {
+      *fLog << err << "Unable to read MCalibrationHiLoCam from " << fHiLoCalibFile << endl;
+      return kFALSE;
+  }
+
+  if (hilocam.GetSize() < 1)
+  {
+      *fLog << err << "MCalibationHiLoCam is un-initialized in file " << fHiLoCalibFile << endl;
+      return kFALSE;
+  }
+
+  if (fCalibrationCam.GetSize() < 1)
+    fCalibrationCam.InitSize(hilocam.GetSize());
+  
+  if (fBadPixels.GetSize() < 1)
+    fBadPixels.InitSize(hilocam.GetSize());
+  
+  if (fCalibrationCam.GetSize() != hilocam.GetSize())
+  {
+      *fLog << err << "Size mismatch MCalibationHiLoCam and MCalibrationChargeCam " << endl;
+      return kFALSE;
+  }
+
+  for (Int_t i=0;i<hilocam.GetSize();i++)
+    {
+      const MCalibrationHiLoPix &pix = (MCalibrationHiLoPix&)hilocam[i];
+
+      const Float_t ratio = pix.GetHiLoChargeRatio();
+      const Float_t sigma = pix.GetHiLoChargeRatioSigma();
+
+      if (ratio < 0.)
+        {
+          fBadPixels[i].SetUncalibrated(MBadPixelsPix::kConversionHiLoNotValid);
+          continue;
+        }
+      
+      MCalibrationChargePix &cpix = (MCalibrationChargePix&)fCalibrationCam[i];
+      
+      cpix.SetConversionHiLo(ratio);
+      cpix.SetConversionHiLoErr(sigma);      
+    }
+  return kTRUE;
+}
+
+// --------------------------------------------------------------------------
+//
 // MJCalibration allows to setup several option by a resource file:
 //   MJCalibration.Display: full, datacheck, normal
@@ -1504,5 +1566,7 @@
     ReadReferenceFile();
 
-    return kTRUE;		 
+    fHiLoCalibFile = GetEnv("HiLoCalibFile",fHiLoCalibFile.Data());
+
+    return ReadHiLoCalibFile();
 }
 
@@ -1647,5 +1711,6 @@
     //    return kFALSE;
 
-    CheckEnv();
+    if (!CheckEnv())
+      return kFALSE;
 
     // --------------------------------------------------------------------------------
Index: /trunk/MagicSoft/Mars/mjobs/MJCalibration.h
===================================================================
--- /trunk/MagicSoft/Mars/mjobs/MJCalibration.h	(revision 6770)
+++ /trunk/MagicSoft/Mars/mjobs/MJCalibration.h	(revision 6771)
@@ -64,4 +64,5 @@
 
   static const TString  fgReferenceFile;   //! default for fReferenceFile ("mjobs/calibrationref.rc")
+  static const TString  fgHiLoCalibFile;   //! default for fHiLoCalibFile ("mjobs/hilocalib.root")  
 
   Double_t fConvFADC2PheMin;               //! Histogram minimum for conversion factor to phes
@@ -94,4 +95,5 @@
 					   
   TString  fReferenceFile;                 // File name containing the reference values
+  TString  fHiLoCalibFile;                 // File name containing the hi-lo calib. constants
 
   MExtractor     *fExtractor;                           // Signal extractor
@@ -165,4 +167,5 @@
 
   void ReadReferenceFile();
+  Bool_t ReadHiLoCalibFile();
   
 public:
@@ -206,6 +209,7 @@
   void SetUsePINDiode(const Bool_t b=kTRUE);
 
-  // Storage
+  // Files
   void SetReferenceFile( const TString ref=fgReferenceFile ) { fReferenceFile = ref; }
+  void SetHiLoCalibFile( const TString ref=fgHiLoCalibFile ) { fHiLoCalibFile = ref; }
 
   // Precessing
