Index: trunk/MagicSoft/Mars/mcalib/MCalibrateData.cc
===================================================================
--- trunk/MagicSoft/Mars/mcalib/MCalibrateData.cc	(revision 5852)
+++ trunk/MagicSoft/Mars/mcalib/MCalibrateData.cc	(revision 5853)
@@ -144,5 +144,6 @@
 MCalibrateData::MCalibrateData(CalibrationMode_t calmode,const char *name, const char *title) 
     : fGeomCam(NULL),   fBadPixels(NULL), fCalibrations(NULL),
-    fQEs(NULL), fSignals(NULL), fCerPhotEvt(NULL), fPedestalFlag(kNo)
+      fQEs(NULL), fSignals(NULL), fCerPhotEvt(NULL), 
+      fPedestalFlag(kNo), fSignalType(kPhot), fRenormFactor(1.)
 {
 
@@ -269,4 +270,14 @@
     }
 
+    switch (fSignalType)
+      {
+      case kPhe:
+        fRenormFactor = MCalibrationQEPix::gkDefaultAverageQE;
+        break;
+      case kPhot:
+        fRenormFactor = 1.;
+        break;
+      }
+
     return kTRUE;
 }
@@ -355,4 +366,16 @@
     }
 
+    //
+    // output information or warnings:
+    //
+    switch(fSignalType)
+    {
+    case kPhe:
+      *fLog << warn << "WARNING - Renormalization to photo-electrons applied!" << endl;
+      break;
+    case kPhot:
+      break;
+    }
+    
     if (TestPedestalFlag(kRun))
         Calibrate(kFALSE, kTRUE);
@@ -400,58 +423,57 @@
 
         switch(fCalibrationMode)
-        {
-        case kFlatCharge:
+          {
+          case kFlatCharge:
             {
-                MCalibrationChargePix &avpix = (MCalibrationChargePix&)fCalibrations->GetAverageArea(0);
-                calibConv    = avpix.GetMean() / (pix.GetMean() * fGeomCam->GetPixRatio(pixidx));
-                calibConvVar = (avpix.GetMeanRelVar() + pix.GetMeanRelVar()) * calibConv * calibConv;
-                if (pix.IsFFactorMethodValid())
+              MCalibrationChargePix &avpix = (MCalibrationChargePix&)fCalibrations->GetAverageArea(0);
+              calibConv    = avpix.GetMean() / (pix.GetMean() * fGeomCam->GetPixRatio(pixidx));
+              calibConvVar = (avpix.GetMeanRelVar() + pix.GetMeanRelVar()) * calibConv * calibConv;
+              if (pix.IsFFactorMethodValid())
                 {
-                    const Float_t convmin1 = qe.GetQECascadesFFactor(zenith)/pix.GetMeanConvFADC2Phe();
-                    if (convmin1 > 0)
-                        calibFFactor *= TMath::Sqrt(convmin1);
-                    else
-                        calibFFactor = -1.;
+                const Float_t convmin1 = qe.GetQECascadesFFactor(zenith)/pix.GetMeanConvFADC2Phe();
+                if (convmin1 > 0)
+                  calibFFactor *= TMath::Sqrt(convmin1);
+                else
+                  calibFFactor = -1.;
                 }
+              break;
             }
-            break;
-
-        case kBlindPixel:
+          case kBlindPixel:
             if (!qe.IsBlindPixelMethodValid())
-                return kFALSE;
+              return kFALSE;
             calibQE     = qe.GetQECascadesBlindPixel   ( zenith );
             calibQEVar  = qe.GetQECascadesBlindPixelVar( zenith );
             break;
-
-        case kPinDiode:
+            
+          case kPinDiode:
             if (!qe.IsPINDiodeMethodValid())
-                return kFALSE;
+              return kFALSE;
             calibQE     = qe.GetQECascadesPINDiode   ( zenith );
             calibQEVar  = qe.GetQECascadesPINDiodeVar( zenith );
             break;
-
-        case kFfactor:
+            
+          case kFfactor:
             if (!pix.IsFFactorMethodValid())
-                return kFALSE;
+              return kFALSE;
             calibQE     = qe.GetQECascadesFFactor   ( zenith );
             calibQEVar  = qe.GetQECascadesFFactorVar( zenith );
             break;
-
-        case kCombined:
+            
+          case kCombined:
             if (!qe.IsCombinedMethodValid())
-                return kFALSE;
+              return kFALSE;
             calibQE     = qe.GetQECascadesCombined   ( zenith );
             calibQEVar  = qe.GetQECascadesCombinedVar( zenith );
             break;
-
-        case kDummy:
+            
+          case kDummy:
             hiloconv    = 1.;
             hiloconverr = 0.;
             break;
-        } /* switch calibration mode */
+          } /* switch calibration mode */
     } /* if(fCalibrationMode!=kNone) */
     else
     {
-        calibConv  = 1./fGeomCam->GetPixRatio(pixidx);
+      calibConv  = 1./fGeomCam->GetPixRatio(pixidx);
     }
 
@@ -493,4 +515,6 @@
             continue;
         }
+
+        calibConv *= fRenormFactor;
 
         if (data)
Index: trunk/MagicSoft/Mars/mcalib/MCalibrateData.h
===================================================================
--- trunk/MagicSoft/Mars/mcalib/MCalibrateData.h	(revision 5852)
+++ trunk/MagicSoft/Mars/mcalib/MCalibrateData.h	(revision 5853)
@@ -43,4 +43,7 @@
   UShort_t fCalibrationMode;             // Flag defining the calibration mode (CalibrationMode_t)
   Byte_t   fPedestalFlag;                // Flags defining to calibrate the pedestal each event or each run
+  Byte_t   fSignalType;                  // Flag defining the signal type (kphot or kphe)
+  
+  Float_t  fRenormFactor;                // Possible renormalization factor for signals (-> phes)
   
   TList fNamesPedestal;                  // Names of input and output pedestal conatainer
@@ -81,4 +84,10 @@
   };
   
+  enum SignalType_t
+  {
+      kPhe,
+      kPhot
+  };
+  
   MCalibrateData(CalibrationMode_t calmode=kDefault,
                  const char *name=NULL, const char *title=NULL);
@@ -89,9 +98,10 @@
   
   void   SetCalibrationMode ( CalibrationMode_t calmode=kDefault ) { fCalibrationMode=calmode; }
+  void   SetSignalType      ( SignalType_t      sigtype=kPhot    ) { fSignalType     =sigtype; }  
 
   void   AddPedestal(const char *name="Cam");
   void   AddPedestal(const char *pedestal, const char *pedphot);
 
-  ClassDef(MCalibrateData, 0)   // Task to calibrate FADC counts into Cherenkov photons 
+  ClassDef(MCalibrateData, 1)   // Task to calibrate FADC counts into Cherenkov photons 
 };
 
