Index: trunk/MagicSoft/Mars/Changelog
===================================================================
--- trunk/MagicSoft/Mars/Changelog	(revision 2216)
+++ trunk/MagicSoft/Mars/Changelog	(revision 2217)
@@ -132,4 +132,8 @@
      - added -I../mhist
 
+   * macros/sumcurrents.C:
+     - adapted to changes
+     - added filename to canvas
+
 
 
Index: trunk/MagicSoft/Mars/macros/sumcurrents.C
===================================================================
--- trunk/MagicSoft/Mars/macros/sumcurrents.C	(revision 2216)
+++ trunk/MagicSoft/Mars/macros/sumcurrents.C	(revision 2217)
@@ -47,5 +47,5 @@
     tlist.AddToList(&read);
 
-    MFillH fill("MHCurrents");
+    MFillH fill("MHCamEvent", "MCurrents");
     tlist.AddToList(&fill);
 
@@ -64,29 +64,37 @@
     tlist.PrintStatistics();
 
-    MHCurrents &h = *(MHCurrents*)plist->FindObject("MHCurrents");
+    MHCamEvent &h2 = *(MHCamEvent*)plist->FindObject("MHCamEvent");
+    MHCamera &h = *(MHCamera*)h2.GetHistByName();
+;
 
     TCanvas *c = MH::MakeDefCanvas();
     c->Divide(3, 2);
 
-    MCamDisplay *disp1=new MCamDisplay(&geom);
-    MCamDisplay *disp2=new MCamDisplay(&geom);
-    MCamDisplay *disp3=new MCamDisplay(&geom);
-    disp1->Fill(h.GetSum());
-    disp2->Fill(h.GetRms());
+    h.SetXTitle("Pixel Index");
 
-    TArrayF arr(577);
-    for (int i=0;i<577;i++)
-    {
-        TArrayF &r = h.GetRms();
-        TArrayF &v = h.GetSum();
-        arr[i] = (v[i]==0 ? 0 : r[i]/v[i]);
-    }
-    disp3->Fill(arr);
+    MHCamera *disp1=h.Clone();
+    MHCamera *disp2=h.Clone();
+    MHCamera *disp3=h.Clone();
+    disp2->SetCamContent(h, 1);
+    disp3->SetCamContent(h, 2);
+
+    disp1->SetYTitle("I [nA]");
+    disp2->SetYTitle("\\sigma_{I} [nA]");
+    disp3->SetYTitle("\\sigma_{I} [%]");
+    disp1->SetName("Currents;avg");
+    disp2->SetName("Currents;err");
+    disp3->SetName("Currents;rel");
+    disp1->SetTitle("Currents Average");
+    disp2->SetTitle("Currents error");
+    disp3->SetTitle("Currents relative error");
 
     c->cd(1);
+    TText text(0.1, 0.95, &fname[fname.Last('/')+1]);
+    text.SetTextSize(0.03);
+    text.DrawClone();
     gPad->SetBorderMode(0);
     gPad->Divide(1,1);
     gPad->cd(1);
-    gPad->SetLogz();
+    gPad->SetLogy();
     disp1->Draw();
     disp1->SetBit(kCanDelete);
@@ -95,5 +103,5 @@
     gPad->Divide(1,1);
     gPad->cd(1);
-    gPad->SetLogz();
+    gPad->SetLogy();
     disp2->Draw();
     disp2->SetBit(kCanDelete);
@@ -102,29 +110,18 @@
     gPad->Divide(1,1);
     gPad->cd(1);
-    gPad->SetLogz();
+    gPad->SetLogy();
     disp3->Draw();
     disp3->SetBit(kCanDelete);
     c->cd(4);
     gPad->SetBorderMode(0);
-    h.GetHist().SetStats(kFALSE);
-    h.GetHist().DrawCopy();
+    disp1->Draw("EPhist");
     c->cd(5);
     gPad->SetBorderMode(0);
     gPad->SetLogy();
-    TH1F h1("currents;rms", "Currents Rms", 577, -0.5, 576.5);
-    h1.SetXTitle("Pixel Index");
-    h1.SetStats(kFALSE);
-    for (int i=1;i<=577; i++)
-        h1.SetBinContent(i, h.GetHist().GetBinError(i));
-    h1.DrawCopy();
+    disp2->Draw("Phist");
     c->cd(6);
     gPad->SetBorderMode(0);
     gPad->SetLogy();
-    TH1F h2("currents;relerr", "Currents rel. Error [%]", 577, -0.5, 576.5);
-    h2.SetXTitle("Pixel Index");
-    h2.SetStats(kFALSE);
-    for (int i=1;i<=577; i++)
-        h2.SetBinContent(i, arr[i-1]*100);
-    h2.DrawCopy();
+    disp3->Draw("Phist");
 
     c->SaveAs(fname(0, fname.Last('.')+1) + "ps");
