Index: trunk/SophyaPI/PIext/nomherradapter.cc
===================================================================
--- trunk/SophyaPI/PIext/nomherradapter.cc	(revision 3148)
+++ trunk/SophyaPI/PIext/nomherradapter.cc	(revision 3149)
@@ -16,4 +16,5 @@
 
 #include "objfitter.h"
+#include "strutilxx.h"
 
 //-----------------------------------------------------------------------------
@@ -243,5 +244,5 @@
 PIDrawer* NOMAdapter_Histo2DErr::GetDrawer(string & dopt)
 {
-dopt = "thinline " + dopt; // $CHECK$ CMV : faut-il ajouter thinline 
+dopt = "thinline " + dopt;
 return( new PIHisto2D(new Histo2DErrWrapper(mHerr, false), true) );
 }
@@ -250,9 +251,9 @@
 P2DArrayAdapter* NOMAdapter_Histo2DErr::Get2DArray(string & dopt)
 {
-// DEL return ( new POHe2DAdapter(mHerr, false) );  -- A SUPPRIMER 
 Histo2DErrWrapper* hwp = new Histo2DErrWrapper(mHerr, false);
-// $CHECK$ CMV  : pour les options hbincont hbinerr ...
-// voir NOMAdapter_Histo2D::Get2DArray(string & dopt) ds nomhistadapter.cc
- return hwp;
+vector<string> vopts; 
+FillVStringFrString(dopt,vopts,' ');
+hwp->DecodeOptionString(vopts,false);
+return hwp;
 }
 
Index: trunk/SophyaPI/PIext/nomhistadapter.cc
===================================================================
--- trunk/SophyaPI/PIext/nomhistadapter.cc	(revision 3148)
+++ trunk/SophyaPI/PIext/nomhistadapter.cc	(revision 3149)
@@ -14,4 +14,5 @@
 
 #include "servnobjm.h"
+#include "strutilxx.h"
 
 #ifndef SANS_EVOLPLANCK
@@ -331,5 +332,5 @@
 PIDrawer* NOMAdapter_Histo2D::GetDrawer(string & dopt)
 {
-dopt = "thinline " + dopt;  // $CHECK$ CMV : faut-il ajouter thinline 
+dopt = "thinline " + dopt;
 return( new PIHisto2D(new Histo2DWrapper(mHis, false), true) );
 }
@@ -338,11 +339,8 @@
 P2DArrayAdapter* NOMAdapter_Histo2D::Get2DArray(string & dopt)
 {
-// DEL return (new POH2DAdapter(mHis, false) ); -- A SUPPRIMER 
 Histo2DWrapper* hwp = new Histo2DWrapper(mHis, false);
-// $CHECK$ CMV  : pour les options hbincont hbinerr ...
-// On peut decoder les options si on veut, par exemple avec :
-// vector<string> vopts; 
-// FillVStringFrString(string const & dopt, vector<string>& vopts,char sep = ' ')
-// hwp->DecodeOptionString(vopts, false);
+vector<string> vopts; 
+FillVStringFrString(dopt,vopts,' ');
+hwp->DecodeOptionString(vopts,false);
 return hwp;
 }
Index: trunk/SophyaPI/PIext/pawexecut.cc
===================================================================
--- trunk/SophyaPI/PIext/pawexecut.cc	(revision 3148)
+++ trunk/SophyaPI/PIext/pawexecut.cc	(revision 3149)
@@ -311,8 +311,15 @@
 piac->RegisterCommand(kw,usage,this,hgrp);
 
-kw = "herr/correl";
+kw = "herr/mean";
 usage = "Perform bin mean computation for HistoErr and Histo2DErr";
-usage += "\n herr/correl nameherr todo";
+usage += "\n herr/mean nameherr todo";
 usage += "\n    todo = +1 : compute mean";
+usage += "\n         = -1 : cancel computation";
+piac->RegisterCommand(kw,usage,this,hgrp);
+
+kw = "herr/variance";
+usage = "Perform bin mean and variance computation for HistoErr and Histo2DErr";
+usage += "\n herr/variance nameherr todo";
+usage += "\n    todo = +1 : compute mean and variance";
 usage += "\n         = -1 : cancel computation";
 piac->RegisterCommand(kw,usage,this,hgrp);
@@ -382,8 +389,11 @@
 } else if(kw == "h/err") {
   h_err(tokens); return(0);
-} else if(kw == "herr/correl") {
-  herr_correl(tokens); return(0);
+} else if(kw == "herr/mean") {
+  herr_mean_variance(tokens,0); return(0);
+} else if(kw == "herr/variance") {
+  herr_mean_variance(tokens,1); return(0);
 } else return(1); 
 }
+
 
 /* methode */
@@ -2425,11 +2435,13 @@
 
 /* methode */
-void PAWExecutor::herr_correl(vector<string>& tokens)
-// Pour appliquer ToCorrel ou FromCorrel a un HistoErr ou Histo2DErr
+void PAWExecutor::herr_mean_variance(vector<string>& tokens,int var)
+// Pour appliquer ToMean ou FromMean a un HistoErr ou Histo2DErr
+// Pour appliquer ToVariance ou FromVariance a un HistoErr ou Histo2DErr
 {
   int_4 tks = tokens.size();
-  if(tks<1)
-    {cout<<"Usage: herr_correl namehisterr [+1,-1]"<<endl;
-     return;}
+  if(tks<1) {
+    cout<<"Usage: herr_mean_variance namehisterr [+1,-1]"<<endl;
+    return;
+  }
 
   NamedObjMgr omg;
@@ -2446,15 +2458,15 @@
 
   if(sens>=0) {
-    if(herr) herr->ToCorrel();
-    else if(herr2) herr2->ToCorrel();
+    if(herr) {if(var==1) herr->ToVariance(); else herr->ToMean();}
+    else if(herr2) {if(var==1) herr2->ToVariance(); else herr2->ToMean();}
   } else {
-    if(herr) herr->FromCorrel();
-    else if(herr2) herr2->FromCorrel();
+    if(herr) {if(var==1) herr->FromVariance(); else herr->FromMean();}
+    else if(herr2) {if(var==1) herr2->FromVariance(); else herr2->FromMean();}
   }
 
-  int ncorrel = 0;
-  if(herr) ncorrel = herr->NCorrel();
-  else if(herr2) ncorrel = herr2->NCorrel();
-  cout<<tokens[0]<<" : ncorrel = "<<ncorrel<<endl;
-
-}
+  int nmean = 0;
+  if(herr) nmean = herr->NMean();
+  else if(herr2) nmean = herr2->NMean();
+  cout<<tokens[0]<<" : nmean = "<<nmean<<endl;
+
+}
Index: trunk/SophyaPI/PIext/pawexecut.h
===================================================================
--- trunk/SophyaPI/PIext/pawexecut.h	(revision 3148)
+++ trunk/SophyaPI/PIext/pawexecut.h	(revision 3149)
@@ -47,5 +47,5 @@
   void  h_set(string dum,vector<string>& tokens);
   void  h_err(vector<string>& tokens);
-  void  herr_correl(vector<string>& tokens);
+  void  herr_mean_variance(vector<string>& tokens,int var=0);
   int_4 decodepawstring(string tokens,string& nameobj
                        ,string& xexp,string& yexp,string& zexp);
Index: trunk/SophyaPI/PIext/pihisto.cc
===================================================================
--- trunk/SophyaPI/PIext/pihisto.cc	(revision 3148)
+++ trunk/SophyaPI/PIext/pihisto.cc	(revision 3149)
@@ -48,8 +48,8 @@
       mRetFg = 0;
     }    
-    else if(opts.substr(0,8) == "hbinerr") {
+    else if(opts.substr(0,7) == "hbinerr") {
       mRetFg = 1;
     }    
-    else if(opts.substr(0,8) == "hbinent") {
+    else if(opts.substr(0,7) == "hbinent") {
       mRetFg = 2;
     }    
@@ -269,13 +269,11 @@
     else if(opts=="err") error=true;
     else if(opts=="noerr" || opts=="nerr") error=false;
-    // $CHECK$CMV  : on desactive pline si fill ? 
     else if(opts=="fill") { filled=true; pline=false; }  
     else if(opts=="nofill" || opts=="nfill") filled=false;
-    // $CHECK$CMV  : on desactive fill si pline ? 
     else if(opts=="pline") { pline=true; filled=false; }
     else if(opts=="nopline") pline=false;
     else if(opts.substr(0,11) == "statposoff=") {
-      float xo=0., yo=0.;
-      sscanf(opts.substr(11).c_str(),"%g,%g",&xo, &yo);
+      double xo=0., yo=0.;
+      sscanf(opts.substr(11).c_str(),"%lf,%lf",&xo, &yo);
       spoX=xo; spoY=yo;
     }
Index: trunk/SophyaPI/PIext/pihisto.h
===================================================================
--- trunk/SophyaPI/PIext/pihisto.h	(revision 3148)
+++ trunk/SophyaPI/PIext/pihisto.h	(revision 3149)
@@ -36,5 +36,5 @@
   bool pline;        // if true: draw histogram as polyline 
   bool error;        // if true: draw error bars
-  float spoX, spoY;  // Stat pos offset par rapport a position defaut
+  double spoX, spoY;  // Stat pos offset par rapport a position defaut
 };
 
Index: trunk/SophyaPI/PIext/pihisto2d.cc
===================================================================
--- trunk/SophyaPI/PIext/pihisto2d.cc	(revision 3148)
+++ trunk/SophyaPI/PIext/pihisto2d.cc	(revision 3149)
@@ -51,8 +51,8 @@
       mRetFg = 0;
     }    
-    else if(opts.substr(0,8) == "hbinerr") {
+    else if(opts.substr(0,7) == "hbinerr") {
       mRetFg = 1;
     }    
-    else if(opts.substr(0,8) == "hbinent") {
+    else if(opts.substr(0,7) == "hbinent") {
       mRetFg = 2;
     }    
@@ -157,5 +157,5 @@
 
 //++
-void PIHisto2D::UseScale(unsigned short type,float logscale)
+void PIHisto2D::UseScale(unsigned short type,double logscale)
 //
 //	Pour changer les echelles (lineaire ou logarithmique)
@@ -184,5 +184,5 @@
 
 //++
-void PIHisto2D::UseDisplay(unsigned short type,float fnpt)
+void PIHisto2D::UseDisplay(unsigned short type,double fnpt)
 //
 //	Type de Display
@@ -212,5 +212,5 @@
 
 //++
-void PIHisto2D::UseDyn(float fmin,float fmax)
+void PIHisto2D::UseDyn(double fmin,double fmax)
 //
 //	Gestion de la dynamique a representer:
@@ -224,17 +224,16 @@
 //--
 {
-  if( (mHistoWp) && (mHistoWp->NBinX()>0) && (mHistoWp->NBinY()>0) && (fmin>=fmax) ) {
-    double v,hmin,hmax;
-    hmin = hmax = (*mHistoWp)(0,0);
-    for (int_4 i=0; i<mHistoWp->NBinX(); i++) 
-      for (int_4 j=0; j<mHistoWp->NBinY(); j++) {
-	v = (*mHistoWp)(i, j);
-	if(v<hmin) hmin = v;
-	if(v>hmax) hmax = v;
-      }
-    fmin = hmin;  fmax = hmax;   // $CHECK$ CMV : attention, double vers float !!
-  }
-
-// $CHECK$ CMV : Ne faut-il pas passer les attributs de la classe en double ??
+if( (mHistoWp) && (mHistoWp->NBinX()>0) && (mHistoWp->NBinY()>0) && (fmin>=fmax) ) {
+  double v,hmin,hmax;
+  hmin = hmax = (*mHistoWp)(0,0);
+  for (int_4 i=0; i<mHistoWp->NBinX(); i++) 
+    for (int_4 j=0; j<mHistoWp->NBinY(); j++) {
+      v = (*mHistoWp)(i, j);
+      if(v<hmin) hmin = v;
+      if(v>hmax) hmax = v;
+    }
+  fmin = hmin;  fmax = hmax;
+}
+
 if(fmin>=fmax) fmax = fmin+1.;
 mHMin = fmin; mHMax = fmax;
@@ -242,5 +241,5 @@
 
 //++
-void PIHisto2D::UseFrac(float frmin,float frmax)
+void PIHisto2D::UseFrac(double frmin,double frmax)
 //
 //	Pour definir la fraction de la dynamique a dessiner:
@@ -274,5 +273,4 @@
 printf("                 Dyn=%g,%g Frac=%g,%g LogSc=%g H=%p\n"
       ,mHMin,mHMax,mFracMin,mFracMax,mLogScale,mHistoWp);
-// if(lp>=1) mHistoWp->PrintStatus();  $CHECK$ CMV : que faut-il faire ? 
 fflush(stdout);
 }
@@ -352,6 +350,6 @@
 
 // Gamme a representer entre [0,1] mais >=fracmin et scale fracmax
-float fracmin=FMin(), fracmax=FMax();
-float llscale = (float) log10((double)LogScale());
+double fracmin=FMin(), fracmax=FMax();
+double llscale = log10(LogScale());
 
 // gestion Couleurs.
@@ -377,5 +375,5 @@
 if(mTypDisp==1) {
   g->SelMarker(1,PI_DotMarker);
-  npt = (int) ((float)NPixBin(g)*FPoints()); if(npt<=0) npt = 2;
+  npt = (int)(NPixBin(g)*FPoints()); if(npt<=0) npt = 2;
 }
 
@@ -400,5 +398,5 @@
 
   // Gestion de la dynamique a dessiner
-  float frac = ((*mHistoWp)(i,j)-HMin())/(HMax()-HMin());
+  double frac = ((*mHistoWp)(i,j)-HMin())/(HMax()-HMin());
   if(frac<0.) continue;
   if(mTypScal==1) {              // echelle log10
@@ -408,10 +406,10 @@
   if(frac<=fracmin) continue;
   if(frac>1.) frac = 1.;
-  float fracred = frac * fracmax;
+  double fracred = frac * fracmax;
 
   // Gestion de la couleur
   int icol = 0;
   if (cmap) {
-    icol = int( (float) ncol*frac );
+    icol = int(ncol*frac);
     if(icol>=ncol) icol = ncol-1; else if(icol<0) icol=0;
     g->SelForeground(*cmap,icol);
@@ -431,5 +429,5 @@
   } else if(mTypDisp==1) {
     //..... nuage de points .....
-    int ipt  = int( (float) npt *frac );
+    int ipt  = int(npt *frac);
     for(int k=0;k<ipt;k++) {
       double x = left0 + frand01()*dx;
@@ -559,5 +557,5 @@
 
 //++
-char PIHisto2D::HPrint2(float f)
+char PIHisto2D::HPrint2(double f)
 //
 //	Codage des valeurs en caracteres (fct privee).
@@ -638,30 +636,30 @@
       SetStats(false);
     } else  if(opts.substr(0,11) == "statposoff=") {
-      float xo=0., yo=0.;
-      sscanf(opts.substr(11).c_str(),"%g,%g",&xo, &yo);
+      double xo=0., yo=0.;
+      sscanf(opts.substr(11).c_str(),"%lf,%lf",&xo, &yo);
       SetStatPosOffset(xo, yo);
     } else if(opts.substr(0,8)=="h2scale=") {
-      unsigned short t=TypScale(); float ls=LogScale();
+      unsigned short t=TypScale(); double ls=LogScale();
       if(opts.substr(8,3)=="lin") t=0;
       else if(opts.substr(8,3)=="log")
-        {t=1; sscanf(opts.c_str(),"h2scale=log,%g",&ls);}
+        {t=1; sscanf(opts.c_str(),"h2scale=log,%lf",&ls);}
       UseScale(t,ls);
     } else if(opts.substr(0,7)=="h2disp=") {
-      unsigned short t=TypDisplay(); float fpts=FPoints();
+      unsigned short t=TypDisplay(); double fpts=FPoints();
       if(opts.substr(7,3)=="var") t=0;
       else if(opts.substr(7,3)=="hbk") t=2;
       else if(opts.substr(7,3)=="img") t=3;
       else if(opts.substr(7,3)=="pts")
-        {t=1; sscanf(opts.c_str(),"h2disp=pts,%g",&fpts);}
+        {t=1; sscanf(opts.c_str(),"h2disp=pts,%lf",&fpts);}
       UseDisplay(t,fpts);
     } else if(opts.substr(0,6)=="h2dyn=") {
-      float hmin=HMin(),hmax=HMax(); size_t q = opts.find(',');
-      sscanf(opts.c_str(),"h2dyn=%g",&hmin);
-      if(q<opts.length()-1) sscanf(opts.substr(q+1).c_str(),"%g",&hmax);
+      double hmin=HMin(),hmax=HMax(); size_t q = opts.find(',');
+      sscanf(opts.c_str(),"h2dyn=%lf",&hmin);
+      if(q<opts.length()-1) sscanf(opts.substr(q+1).c_str(),"%lf",&hmax);
       UseDyn(hmin,hmax);
     } else if(opts.substr(0,7)=="h2frac=") {
-      float fmin=FMin(),fmax=FMax(); size_t q = opts.find(',');
-      sscanf(opts.c_str(),"h2frac=%g",&fmin);
-      if(q<opts.length()-1) sscanf(opts.substr(q+1).c_str(),"%g",&fmax);
+      double fmin=FMin(),fmax=FMax(); size_t q = opts.find(',');
+      sscanf(opts.c_str(),"h2frac=%lf",&fmin);
+      if(q<opts.length()-1) sscanf(opts.substr(q+1).c_str(),"%lf",&fmax);
       UseFrac(fmin,fmax);
    } else {
@@ -1077,7 +1075,7 @@
 
 else if(opt==6001) {
-  sscanf(mText[0]->GetText().c_str(),"%g %g",&mHMin,&mHMax);
-  sscanf(mText[1]->GetText().c_str(),"%g %g",&mFracMin,&mFracMax);
-  sscanf(mText[2]->GetText().c_str(),"%g",&mLogScale);
+  sscanf(mText[0]->GetText().c_str(),"%lf %lf",&mHMin,&mHMax);
+  sscanf(mText[1]->GetText().c_str(),"%lf %lf",&mFracMin,&mFracMax);
+  sscanf(mText[2]->GetText().c_str(),"%lf",&mLogScale);
   mpih->UseColors(mFgCol,mCmap,mRevCmap);
   mpih->UseScale(mTypScal,mLogScale);
Index: trunk/SophyaPI/PIext/pihisto2d.h
===================================================================
--- trunk/SophyaPI/PIext/pihisto2d.h	(revision 3148)
+++ trunk/SophyaPI/PIext/pihisto2d.h	(revision 3149)
@@ -24,8 +24,8 @@
 
   void UseColors(bool fg=false,CMapId cmap=CMAP_GREYINV32,bool revcmap=false);
-  void UseScale(unsigned short type=0,float logscale=10.);
-  void UseDisplay(unsigned short type=0,float fnpt=0.5);
-  void UseDyn(float hmin=1.,float hmax=-1.);
-  void UseFrac(float frmin=0.1,float frmax=0.9);
+  void UseScale(unsigned short type=0,double logscale=10.);
+  void UseDisplay(unsigned short type=0,double fnpt=0.5);
+  void UseDyn(double hmin=1.,double hmax=-1.);
+  void UseFrac(double frmin=0.1,double frmax=0.9);
   void Print(int lp=0);
 
@@ -43,5 +43,5 @@
   virtual void DrawStats(PIGraphicUC* g);
   inline  void SetStats(bool fg=true) {stats=fg;}
-  inline  void SetStatPosOffset(float ofx=-0.01, float ofy=-0.01) 
+  inline  void SetStatPosOffset(double ofx=-0.01, double ofy=-0.01) 
           {spoX=ofx; spoY=ofy; }
 
@@ -63,23 +63,23 @@
   inline unsigned short TypScale()    {return(mTypScal);}
   inline unsigned short TypDisplay()  {return(mTypDisp);}
-  inline float          FPoints()     {return(mFPoints);}
-  inline float          HMax()        {return(mHMax);}
-  inline float          HMin()        {return(mHMin);}
-  inline float          FMax()        {return(mFracMax);}
-  inline float          FMin()        {return(mFracMin);}
-  inline float          LogScale()    {return(mLogScale);}
+  inline double         FPoints()     {return(mFPoints);}
+  inline double         HMax()        {return(mHMax);}
+  inline double         HMin()        {return(mHMin);}
+  inline double         FMax()        {return(mFracMax);}
+  inline double         FMin()        {return(mFracMin);}
+  inline double         LogScale()    {return(mLogScale);}
 
 protected:
   int NPixBin(PIGraphicUC* g);
-  char HPrint2(float f);
+  char HPrint2(double f);
 
   P2DHistoWrapper* mHistoWp;
   bool mAdDO; bool stats;
   bool mFgCol; CMapId mCmap; bool mRevCmap;
-  unsigned short mTypScal; float mLogScale;
-  unsigned short mTypDisp; float mFPoints;
-  float mHMin,mHMax;
-  float mFracMin,mFracMax;
-  float spoX, spoY; // Stat pos offset par rapport a position defaut
+  unsigned short mTypScal; double mLogScale;
+  unsigned short mTypDisp; double mFPoints;
+  double mHMin,mHMax;
+  double mFracMin,mFracMax;
+  double spoX, spoY; // Stat pos offset par rapport a position defaut
 };
 
@@ -117,8 +117,8 @@
 
   bool mFgCol; CMapId mCmap; bool mRevCmap;
-  unsigned short mTypScal; float mLogScale;
-  unsigned short mTypDisp; float mFPoints;
-  float mHMin,mHMax;
-  float mFracMin,mFracMax;
+  unsigned short mTypScal; double mLogScale;
+  unsigned short mTypDisp; double mFPoints;
+  double mHMin,mHMax;
+  double mFracMin,mFracMax;
 };
 
Index: trunk/SophyaPI/PIext/pintuple.cc
===================================================================
--- trunk/SophyaPI/PIext/pintuple.cc	(revision 3148)
+++ trunk/SophyaPI/PIext/pintuple.cc	(revision 3149)
@@ -364,6 +364,6 @@
            || opts=="nostat" || opts=="nostats") SetStats(false);
     else if(opts.substr(0,11) == "statposoff=") {
-      float xo=0., yo=0.;
-      sscanf(opts.substr(11).c_str(),"%g,%g",&xo, &yo);
+      double xo=0., yo=0.;
+      sscanf(opts.substr(11).c_str(),"%lf,%lf",&xo, &yo);
       SetStatPosOffset(xo, yo);
     }
@@ -400,5 +400,5 @@
  if(stats) opt.push_back("stat"); else opt.push_back("nstat");
 
- sprintf(str,"statposoff=%g,%g",spoX,spoY); opt.push_back(str);
+ sprintf(str,"statposoff=%lf,%lf",spoX,spoY); opt.push_back(str);
 
  if(connectPts) opt.push_back("connectpoints");
Index: trunk/SophyaPI/PIext/pintuple.h
===================================================================
--- trunk/SophyaPI/PIext/pintuple.h	(revision 3148)
+++ trunk/SophyaPI/PIext/pintuple.h	(revision 3149)
@@ -35,5 +35,5 @@
 
   inline  void       SetStats(bool fg=true) { stats = fg; }
-  inline  void       SetStatPosOffset(float ofx=-0.01, float ofy=-0.01) 
+  inline  void       SetStatPosOffset(double ofx=-0.01, double ofy=-0.01) 
           {spoX=ofx; spoY=ofy; }
 
@@ -62,5 +62,5 @@
   bool stats;               // true -> indication du nb de points
   bool connectPts;          // true -> les points sont relies par une ligne
-  float spoX, spoY; // Stat pos offset par rapport a position defaut
+  double spoX, spoY; // Stat pos offset par rapport a position defaut
   long NptDraw; // nombre de points effectivement dessines dans la fenetre
 };
Index: trunk/SophyaPI/PIext/sohiswrap.h
===================================================================
--- trunk/SophyaPI/PIext/sohiswrap.h	(revision 3148)
+++ trunk/SophyaPI/PIext/sohiswrap.h	(revision 3149)
@@ -106,5 +106,5 @@
     char label[64]; string s;
 
-    sprintf(label, "NCor= %d",mHis->NCorrel());
+    sprintf(label, "NMean= %d",mHis->NMean());
     s = label; text.push_back(s);
 
@@ -154,8 +154,5 @@
   virtual r_8 Content(int_4 i, int_4 j) { return (*mHis)(i,j) ; }
   virtual r_8 Error(int_4 i, int_4 j) { return mHis->Error(i,j) ; }
-  virtual r_8 NbEntries(int_4 i, int_4 j) { return 0.; }  // $CHECK$ CMV 0 ?? 
-
-  // Methode de mise a jour du contenu 
-  //  virtual void Update() $CHECK$ CMV  a supprimer ?
+  virtual r_8 NbEntries(int_4 i, int_4 j) { return 0.; }
 
   // ajoute des lignes de texte avec les infos statistiques (dans text)
@@ -163,5 +160,4 @@
   virtual int GetStatInfoAsText(vector<string> &  text )
   {
-    // $CHECK$ CMV , faut-il completer ?
     char label[64];
     string s;
@@ -213,8 +209,5 @@
   virtual r_8 Content(int_4 i, int_4 j) { return (*mHis)(i,j) ; }
   virtual r_8 Error(int_4 i, int_4 j) { return mHis->Error(i,j) ; }
-  virtual r_8 NbEntries(int_4 i, int_4 j) { return mHis->NEntBin(i,j) ; }  // $CHECK$ CMV  OK ?
-
-  // Methode de mise a jour du contenu 
-  //  virtual void Update() $CHECK$ CMV  a supprimer ?
+  virtual r_8 NbEntries(int_4 i, int_4 j) { return mHis->NEntBin(i,j) ; }
 
   // ajoute des lignes de texte avec les infos statistiques (dans text)
@@ -222,8 +215,7 @@
   virtual int GetStatInfoAsText(vector<string> &  text )
   {
-    // $CHECK$ CMV , faut-il completer ?
     char label[64];
     string s;
-    sprintf(label,"NCorrel= %d", mHis->NCorrel());
+    sprintf(label,"NMean= %d", mHis->NMean());
     text.push_back(label);
     return 1;
