Index: trunk/SophyaPI/PIext/Makefile
===================================================================
--- trunk/SophyaPI/PIext/Makefile	(revision 3216)
+++ trunk/SophyaPI/PIext/Makefile	(revision 3218)
@@ -4,8 +4,8 @@
  
 clean:
-	 rm -f $(SOPHYAOBJP)basexecut.o $(SOPHYAOBJP)contmodex.o $(SOPHYAOBJP)cxxexecutor.o $(SOPHYAOBJP)cxxexecwin.o $(SOPHYAOBJP)flowmodex.o $(SOPHYAOBJP)graphexecut.o $(SOPHYAOBJP)nobjmgr.o $(SOPHYAOBJP)nomgadapter.o $(SOPHYAOBJP)nomgfdadapter.o $(SOPHYAOBJP)nomherradapter.o $(SOPHYAOBJP)nomhistadapter.o $(SOPHYAOBJP)nomimagadapter.o $(SOPHYAOBJP)nommatvecadapter.o $(SOPHYAOBJP)nomskymapadapter.o $(SOPHYAOBJP)nomspecrespadapter.o $(SOPHYAOBJP)nomstladapter.o $(SOPHYAOBJP)nomtarradapter.o $(SOPHYAOBJP)nomtmatvecadapter.o $(SOPHYAOBJP)pawexecut.o $(SOPHYAOBJP)pi2dvec.o $(SOPHYAOBJP)piacmd.o $(SOPHYAOBJP)piafitting.o $(SOPHYAOBJP)pigfd1.o $(SOPHYAOBJP)pigfd2.o $(SOPHYAOBJP)pihisto.o $(SOPHYAOBJP)pihisto2d.o $(SOPHYAOBJP)piinit.o $(SOPHYAOBJP)pintup3d.o $(SOPHYAOBJP)pintuple.o $(SOPHYAOBJP)pipodrw.o $(SOPHYAOBJP)pisiadw.o $(SOPHYAOBJP)pistdimgapp.o $(SOPHYAOBJP)pistlist.o $(SOPHYAOBJP)pitvmaad.o $(SOPHYAOBJP)servnobjm.o $(SOPHYAOBJP)userfitfunex.o
+	 rm -f $(SOPHYAOBJP)basexecut.o $(SOPHYAOBJP)contmodex.o $(SOPHYAOBJP)cxxexecutor.o $(SOPHYAOBJP)cxxexecwin.o $(SOPHYAOBJP)flowmodex.o $(SOPHYAOBJP)graphexecut.o $(SOPHYAOBJP)nobjmgr.o $(SOPHYAOBJP)nomdvladapter.o $(SOPHYAOBJP)nomgadapter.o $(SOPHYAOBJP)nomgfdadapter.o $(SOPHYAOBJP)nomherradapter.o $(SOPHYAOBJP)nomhistadapter.o $(SOPHYAOBJP)nomimagadapter.o $(SOPHYAOBJP)nommatvecadapter.o $(SOPHYAOBJP)nomskymapadapter.o $(SOPHYAOBJP)nomspecrespadapter.o $(SOPHYAOBJP)nomstladapter.o $(SOPHYAOBJP)nomtarradapter.o $(SOPHYAOBJP)nomtmatvecadapter.o $(SOPHYAOBJP)pawexecut.o $(SOPHYAOBJP)pi2dvec.o $(SOPHYAOBJP)piacmd.o $(SOPHYAOBJP)piafitting.o $(SOPHYAOBJP)pigfd1.o $(SOPHYAOBJP)pigfd2.o $(SOPHYAOBJP)pihisto.o $(SOPHYAOBJP)pihisto2d.o $(SOPHYAOBJP)piinit.o $(SOPHYAOBJP)pintup3d.o $(SOPHYAOBJP)pintuple.o $(SOPHYAOBJP)pipodrw.o $(SOPHYAOBJP)pisiadw.o $(SOPHYAOBJP)pistdimgapp.o $(SOPHYAOBJP)pistlist.o $(SOPHYAOBJP)pitvmaad.o $(SOPHYAOBJP)servnobjm.o $(SOPHYAOBJP)userfitfunex.o
 	rm -f $(SOPHYALIBP)libPIext.a
  
-$(SOPHYALIBP)libPIext.a : $(SOPHYAOBJP)basexecut.o $(SOPHYAOBJP)contmodex.o $(SOPHYAOBJP)cxxexecutor.o $(SOPHYAOBJP)cxxexecwin.o $(SOPHYAOBJP)flowmodex.o $(SOPHYAOBJP)graphexecut.o $(SOPHYAOBJP)nobjmgr.o $(SOPHYAOBJP)nomgadapter.o $(SOPHYAOBJP)nomgfdadapter.o $(SOPHYAOBJP)nomherradapter.o $(SOPHYAOBJP)nomhistadapter.o $(SOPHYAOBJP)nomimagadapter.o $(SOPHYAOBJP)nomskymapadapter.o $(SOPHYAOBJP)nomspecrespadapter.o $(SOPHYAOBJP)nomtarradapter.o $(SOPHYAOBJP)nomtmatvecadapter.o $(SOPHYAOBJP)pawexecut.o $(SOPHYAOBJP)pi2dvec.o $(SOPHYAOBJP)piacmd.o $(SOPHYAOBJP)piafitting.o $(SOPHYAOBJP)pigfd1.o $(SOPHYAOBJP)pigfd2.o $(SOPHYAOBJP)pihisto.o $(SOPHYAOBJP)pihisto2d.o $(SOPHYAOBJP)piinit.o $(SOPHYAOBJP)pintup3d.o $(SOPHYAOBJP)pintuple.o $(SOPHYAOBJP)pipodrw.o $(SOPHYAOBJP)pisiadw.o $(SOPHYAOBJP)pistdimgapp.o $(SOPHYAOBJP)pitvmaad.o $(SOPHYAOBJP)servnobjm.o
+$(SOPHYALIBP)libPIext.a : $(SOPHYAOBJP)basexecut.o $(SOPHYAOBJP)contmodex.o $(SOPHYAOBJP)cxxexecutor.o $(SOPHYAOBJP)cxxexecwin.o $(SOPHYAOBJP)flowmodex.o $(SOPHYAOBJP)graphexecut.o $(SOPHYAOBJP)nobjmgr.o $(SOPHYAOBJP)nomdvladapter.o $(SOPHYAOBJP)nomgadapter.o $(SOPHYAOBJP)nomgfdadapter.o $(SOPHYAOBJP)nomherradapter.o $(SOPHYAOBJP)nomhistadapter.o $(SOPHYAOBJP)nomimagadapter.o $(SOPHYAOBJP)nomskymapadapter.o $(SOPHYAOBJP)nomspecrespadapter.o $(SOPHYAOBJP)nomtarradapter.o $(SOPHYAOBJP)nomtmatvecadapter.o $(SOPHYAOBJP)pawexecut.o $(SOPHYAOBJP)pi2dvec.o $(SOPHYAOBJP)piacmd.o $(SOPHYAOBJP)piafitting.o $(SOPHYAOBJP)pigfd1.o $(SOPHYAOBJP)pigfd2.o $(SOPHYAOBJP)pihisto.o $(SOPHYAOBJP)pihisto2d.o $(SOPHYAOBJP)piinit.o $(SOPHYAOBJP)pintup3d.o $(SOPHYAOBJP)pintuple.o $(SOPHYAOBJP)pipodrw.o $(SOPHYAOBJP)pisiadw.o $(SOPHYAOBJP)pistdimgapp.o $(SOPHYAOBJP)pitvmaad.o $(SOPHYAOBJP)servnobjm.o
 	$(AR) $(ARFLAGS) $@ $? 
 	touch $(SOPHYAINCP)/SophyaConfInfo/libPI.objlist
@@ -96,5 +96,6 @@
   $(SOPHYAINCP)datatable.h \
   $(SOPHYAINCP)basedtable.h \
-  $(SOPHYAINCP)segdatablock.h
+  $(SOPHYAINCP)segdatablock.h \
+  $(SOPHYAINCP)thsafeop.h
 	$(CXXCOMPILE) $(CXXTEMPFLG) -o $@  basexecut.cc
  
@@ -601,4 +602,50 @@
 	$(CXXCOMPILE) $(CXXTEMPFLG) -o $@  nobjmgr.cc
  
+$(SOPHYAOBJP)nomdvladapter.o: nomdvladapter.cc $(SOPHYAINCP)sopnamsp.h \
+  $(SOPHYAINCP)machdefs.h \
+  $(SOPHYAINCP)osx_values.h nomdvladapter.h nomgadapter.h \
+  $(SOPHYAINCP)ppersist.h \
+  $(SOPHYAINCP)pexceptions.h \
+  $(SOPHYAINCP)gnumd5.h \
+  $(SOPHYAINCP)ppfbinstream.h \
+  $(SOPHYAINCP)rawstream.h \
+  $(SOPHYAINCP)ppfnametag.h \
+  $(SOPHYAINCP)anydataobj.h \
+  $(SOPHYAINCP)pidrawer.h \
+  $(SOPHYAINCP)pibwdggen.h \
+  $(SOPHYAINCP)pisysdep.h $(SOPHYAINCP)piwdgx.h \
+  $(SOPHYAINCP)piwdggen.h \
+  $(SOPHYAINCP)pimsghandler.h \
+  $(SOPHYAINCP)picolist.h $(SOPHYAINCP)picmap.h \
+  $(SOPHYAINCP)picmapx.h \
+  $(SOPHYAINCP)picmapgen.h \
+  $(SOPHYAINCP)pigraphx.h \
+  $(SOPHYAINCP)pigraphgen.h \
+  $(SOPHYAINCP)pifontx.h \
+  $(SOPHYAINCP)pifontgen.h \
+  $(SOPHYAINCP)pigrcoord.h \
+  $(SOPHYAINCP)pilineatt.h \
+  $(SOPHYAINCP)pigraphuc.h \
+  $(SOPHYAINCP)pievthandler.h \
+  $(SOPHYAINCP)psfile.h $(SOPHYAINCP)pigratt.h \
+  $(SOPHYAINCP)piaxes.h \
+  $(SOPHYAINCP)parradapter.h $(SOPHYAINCP)lut.h \
+  $(SOPHYAINCP)ntupintf.h \
+  $(SOPHYAINCP)generalfit.h \
+  $(SOPHYAINCP)tvector.h $(SOPHYAINCP)tmatrix.h \
+  $(SOPHYAINCP)tarray.h $(SOPHYAINCP)basarr.h \
+  $(SOPHYAINCP)mutyv.h $(SOPHYAINCP)timestamp.h \
+  $(SOPHYAINCP)objfio.h $(SOPHYAINCP)dvlist.h \
+  $(SOPHYAINCP)ndatablock.h \
+  $(SOPHYAINCP)utilarr.h \
+  $(SOPHYAINCP)tmatrix_tsnl.h \
+  $(SOPHYAINCP)tvector_tsnl.h \
+  $(SOPHYAINCP)generaldata.h \
+  $(SOPHYAINCP)poly.h $(SOPHYAINCP)peida.h \
+  $(SOPHYAINCP)utils.h $(SOPHYAINCP)perrors.h \
+  $(SOPHYAINCP)fmath.h \
+  $(SOPHYAINCP)generalfunc.h
+	$(CXXCOMPILE) $(CXXTEMPFLG) -o $@  nomdvladapter.cc
+ 
 $(SOPHYAOBJP)nomgadapter.o: nomgadapter.cc $(SOPHYAINCP)sopnamsp.h \
   $(SOPHYAINCP)machdefs.h \
@@ -765,5 +812,6 @@
   $(SOPHYAINCP)zthread.h \
   $(SOPHYAINCP)objfitter.h \
-  $(SOPHYAINCP)cimage.h $(SOPHYAINCP)fioarr.h
+  $(SOPHYAINCP)cimage.h $(SOPHYAINCP)fioarr.h \
+  $(SOPHYAINCP)strutilxx.h
 	$(CXXCOMPILE) $(CXXTEMPFLG) -o $@  nomherradapter.cc
  
@@ -816,5 +864,6 @@
   $(SOPHYAINCP)xntuple.h \
   $(SOPHYAINCP)basedtable.h \
-  $(SOPHYAINCP)segdatablock.h pihisto.h phistwrapper.h \
+  $(SOPHYAINCP)segdatablock.h \
+  $(SOPHYAINCP)thsafeop.h pihisto.h phistwrapper.h \
   sohiswrap.h $(SOPHYAINCP)histerr.h \
   $(SOPHYAINCP)hist2err.h pihisto2d.h \
@@ -837,4 +886,5 @@
   dlftypes.h $(SOPHYAINCP)pdlmgr.h \
   $(SOPHYAINCP)zthread.h \
+  $(SOPHYAINCP)strutilxx.h \
   $(SOPHYAINCP)objfitter.h \
   $(SOPHYAINCP)cimage.h $(SOPHYAINCP)fioarr.h \
@@ -1143,5 +1193,6 @@
   $(SOPHYAINCP)datatable.h \
   $(SOPHYAINCP)basedtable.h \
-  $(SOPHYAINCP)segdatablock.h pawexecut.h piacmd.h \
+  $(SOPHYAINCP)segdatablock.h \
+  $(SOPHYAINCP)thsafeop.h pawexecut.h piacmd.h \
   $(SOPHYAINCP)commander.h \
   $(SOPHYAINCP)pdlmgr.h $(SOPHYAINCP)ctimer.h \
@@ -1458,6 +1509,7 @@
   $(SOPHYAINCP)xntuple.h \
   $(SOPHYAINCP)basedtable.h \
-  $(SOPHYAINCP)segdatablock.h nomgfdadapter.h \
-  nomimagadapter.h nomtmatvecadapter.h
+  $(SOPHYAINCP)segdatablock.h \
+  $(SOPHYAINCP)thsafeop.h nomgfdadapter.h nomimagadapter.h \
+  nomtmatvecadapter.h
 	$(CXXCOMPILE) $(CXXTEMPFLG) -o $@  piafitting.cc
  
@@ -1704,5 +1756,6 @@
   $(SOPHYAINCP)xntuple.h \
   $(SOPHYAINCP)basedtable.h \
-  $(SOPHYAINCP)segdatablock.h nomherradapter.h \
+  $(SOPHYAINCP)segdatablock.h \
+  $(SOPHYAINCP)thsafeop.h nomherradapter.h \
   $(SOPHYAINCP)histerr.h \
   $(SOPHYAINCP)hist2err.h nomgfdadapter.h nomimagadapter.h \
@@ -2100,4 +2153,5 @@
   $(SOPHYAINCP)basedtable.h \
   $(SOPHYAINCP)segdatablock.h \
+  $(SOPHYAINCP)thsafeop.h \
   $(SOPHYAINCP)piyfxdrw.h \
   $(SOPHYAINCP)pisurfdr.h pintuple.h pintup3d.h pipodrw.h \
Index: trunk/SophyaPI/PIext/nomdvladapter.cc
===================================================================
--- trunk/SophyaPI/PIext/nomdvladapter.cc	(revision 3218)
+++ trunk/SophyaPI/PIext/nomdvladapter.cc	(revision 3218)
@@ -0,0 +1,84 @@
+#include "sopnamsp.h"
+#include "machdefs.h"
+#include <stdlib.h>
+#include <typeinfo>
+#include <iostream>
+#include <string>
+
+#include "nomdvladapter.h"
+
+
+
+//-------------------------------------------------------------------------
+// Class Adaptateur d'objet (Pour NamedObjMgr) DVList 
+//-------------------------------------------------------------------------
+
+/* --Methode-- */
+NOMAdapter_DVList::NOMAdapter_DVList(DVList* o)
+  : NObjMgrAdapter(o)
+{
+mDvl = o;
+}
+
+/* --Methode-- */
+NOMAdapter_DVList::~NOMAdapter_DVList()
+{
+}
+
+/* --Methode-- */
+NObjMgrAdapter* NOMAdapter_DVList::Clone(AnyDataObj* o)
+{
+DVList* dvl = dynamic_cast<DVList *>(o);
+if (dvl) return ( new NOMAdapter_DVList(dvl) );
+return ( new NObjMgrAdapter(o) );
+}
+
+/* --Methode-- */
+string NOMAdapter_DVList::GetDataObjType()
+{
+  return ("DVList ");
+}
+
+/* --Methode-- */
+AnyDataObj* NOMAdapter_DVList::CloneDataObj(bool)
+{
+  return new DVList(*mDvl);
+}
+
+/* --Methode-- */
+void NOMAdapter_DVList::SavePPF(POutPersist& pos, string const & nom)
+{
+  ObjFileIO<DVList> fio(mDvl);
+  fio.Write(pos, nom);
+  return;
+}
+
+/* --Methode-- */
+void NOMAdapter_DVList::Print(ostream& os, int lev)
+{
+  mDvl->Show(os);
+  if (lev > 1) mDvl->Print(os);
+}
+
+
+/* --Methode-- */
+string NOMAdapter_DVList::GetInfoString(vector<string>& opts)
+{
+if (opts.size() == 0) return NObjMgrAdapter::GetInfoString(opts); 
+char buff[128];
+if ((opts[0] == "nvar") || (opts[0] == "size")) {
+  sprintf(buff, "%d", mDvl->Size());
+  return string(buff);   
+}
+ else if (mDvl->HasKey(opts[0])) {
+   return mDvl->GetS(opts[0]);
+ }
+ else if (opts[0] == "?") 
+   return string("BaseDataTable.Att: nvar/size/VarName");
+ else {
+   cerr << "NOMAdapter_DVList::GetInfoString() - No such key=" << opts[0] 
+	<< " in DVList " << endl;
+   return string("");
+ }
+}
+
Index: trunk/SophyaPI/PIext/nomdvladapter.h
===================================================================
--- trunk/SophyaPI/PIext/nomdvladapter.h	(revision 3218)
+++ trunk/SophyaPI/PIext/nomdvladapter.h	(revision 3218)
@@ -0,0 +1,39 @@
+// Adaptateur d objets (pour NamedObjMgr) pour DVList 
+//       R. Ansari , Avril 2007
+// (C) UPS-LAL(IN2P3/CNRS)             (C)  CEA-DAPNIA     
+ 
+#ifndef NOMDVLISTADAPTER_H_SEEN
+#define NOMDVLISTADAPTER_H_SEEN
+
+#include "nomgadapter.h"
+#include "dvlist.h"
+#include "sopnamsp.h"
+
+
+//-------------------------------------------------------------------------
+// Class Adaptateur d'objet (Pour NamedObjMgr) DVList  
+//-------------------------------------------------------------------------
+
+class NOMAdapter_DVList : public NObjMgrAdapter {
+public:
+				NOMAdapter_DVList(DVList* dvl = NULL);
+  virtual			~NOMAdapter_DVList();
+
+  virtual NObjMgrAdapter*	Clone(AnyDataObj* o);
+
+  virtual string		GetDataObjType();
+
+  virtual AnyDataObj*		CloneDataObj(bool share=false);
+
+  virtual void			SavePPF(POutPersist& s, string const & nom);
+
+// Returns a string with synthetic information about the object
+  virtual string                GetInfoString(vector<string>& opts);
+
+  virtual void			Print(ostream& os, int lev=0);
+
+protected:
+  DVList* mDvl;
+};
+
+#endif
Index: trunk/SophyaPI/PIext/objlist.list
===================================================================
--- trunk/SophyaPI/PIext/objlist.list	(revision 3216)
+++ trunk/SophyaPI/PIext/objlist.list	(revision 3218)
@@ -6,4 +6,5 @@
 graphexecut.o
 nobjmgr.o
+nomdvladapter.o
 nomgadapter.o
 nomgfdadapter.o
Index: trunk/SophyaPI/PIext/piinit.cc
===================================================================
--- trunk/SophyaPI/PIext/piinit.cc	(revision 3216)
+++ trunk/SophyaPI/PIext/piinit.cc	(revision 3218)
@@ -4,4 +4,6 @@
 #include "nobjmgr.h"
 #include "servnobjm.h"
+
+#include "nomdvladapter.h"
 #include "nomhistadapter.h"
 #include "nomherradapter.h"
@@ -49,4 +51,5 @@
   Services2NObjMgr* serv = app->ObjMgr()->GetServiceObj();
 
+  serv->RegisterClass(new DVList, new NOMAdapter_DVList );
   serv->RegisterClass(new Histo, new NOMAdapter_Histo );
   serv->RegisterClass(new HProf, new NOMAdapter_Histo );
Index: trunk/SophyaPI/PIext/smakefile
===================================================================
--- trunk/SophyaPI/PIext/smakefile	(revision 3216)
+++ trunk/SophyaPI/PIext/smakefile	(revision 3218)
@@ -4,8 +4,8 @@
  
 clean:
-	 rm -f $(SOPHYAOBJP)basexecut.o $(SOPHYAOBJP)contmodex.o $(SOPHYAOBJP)cxxexecutor.o $(SOPHYAOBJP)cxxexecwin.o $(SOPHYAOBJP)flowmodex.o $(SOPHYAOBJP)graphexecut.o $(SOPHYAOBJP)nobjmgr.o $(SOPHYAOBJP)nomgadapter.o $(SOPHYAOBJP)nomgfdadapter.o $(SOPHYAOBJP)nomherradapter.o $(SOPHYAOBJP)nomhistadapter.o $(SOPHYAOBJP)nomimagadapter.o $(SOPHYAOBJP)nommatvecadapter.o $(SOPHYAOBJP)nomskymapadapter.o $(SOPHYAOBJP)nomspecrespadapter.o $(SOPHYAOBJP)nomstladapter.o $(SOPHYAOBJP)nomtarradapter.o $(SOPHYAOBJP)nomtmatvecadapter.o $(SOPHYAOBJP)pawexecut.o $(SOPHYAOBJP)pi2dvec.o $(SOPHYAOBJP)piacmd.o $(SOPHYAOBJP)piafitting.o $(SOPHYAOBJP)pigfd1.o $(SOPHYAOBJP)pigfd2.o $(SOPHYAOBJP)pihisto.o $(SOPHYAOBJP)pihisto2d.o $(SOPHYAOBJP)piinit.o $(SOPHYAOBJP)pintup3d.o $(SOPHYAOBJP)pintuple.o $(SOPHYAOBJP)pipodrw.o $(SOPHYAOBJP)pisiadw.o $(SOPHYAOBJP)pistdimgapp.o $(SOPHYAOBJP)pistlist.o $(SOPHYAOBJP)pitvmaad.o $(SOPHYAOBJP)servnobjm.o $(SOPHYAOBJP)userfitfunex.o
+	 rm -f $(SOPHYAOBJP)basexecut.o $(SOPHYAOBJP)contmodex.o $(SOPHYAOBJP)cxxexecutor.o $(SOPHYAOBJP)cxxexecwin.o $(SOPHYAOBJP)flowmodex.o $(SOPHYAOBJP)graphexecut.o $(SOPHYAOBJP)nobjmgr.o $(SOPHYAOBJP)nomdvladapter.o $(SOPHYAOBJP)nomgadapter.o $(SOPHYAOBJP)nomgfdadapter.o $(SOPHYAOBJP)nomherradapter.o $(SOPHYAOBJP)nomhistadapter.o $(SOPHYAOBJP)nomimagadapter.o $(SOPHYAOBJP)nommatvecadapter.o $(SOPHYAOBJP)nomskymapadapter.o $(SOPHYAOBJP)nomspecrespadapter.o $(SOPHYAOBJP)nomstladapter.o $(SOPHYAOBJP)nomtarradapter.o $(SOPHYAOBJP)nomtmatvecadapter.o $(SOPHYAOBJP)pawexecut.o $(SOPHYAOBJP)pi2dvec.o $(SOPHYAOBJP)piacmd.o $(SOPHYAOBJP)piafitting.o $(SOPHYAOBJP)pigfd1.o $(SOPHYAOBJP)pigfd2.o $(SOPHYAOBJP)pihisto.o $(SOPHYAOBJP)pihisto2d.o $(SOPHYAOBJP)piinit.o $(SOPHYAOBJP)pintup3d.o $(SOPHYAOBJP)pintuple.o $(SOPHYAOBJP)pipodrw.o $(SOPHYAOBJP)pisiadw.o $(SOPHYAOBJP)pistdimgapp.o $(SOPHYAOBJP)pistlist.o $(SOPHYAOBJP)pitvmaad.o $(SOPHYAOBJP)servnobjm.o $(SOPHYAOBJP)userfitfunex.o
 	rm -f $(SOPHYALIBP)libPIext.a
  
-$(SOPHYALIBP)libPIext.a : $(SOPHYAOBJP)basexecut.o $(SOPHYAOBJP)contmodex.o $(SOPHYAOBJP)cxxexecutor.o $(SOPHYAOBJP)cxxexecwin.o $(SOPHYAOBJP)flowmodex.o $(SOPHYAOBJP)graphexecut.o $(SOPHYAOBJP)nobjmgr.o $(SOPHYAOBJP)nomgadapter.o $(SOPHYAOBJP)nomgfdadapter.o $(SOPHYAOBJP)nomherradapter.o $(SOPHYAOBJP)nomhistadapter.o $(SOPHYAOBJP)nomimagadapter.o $(SOPHYAOBJP)nomskymapadapter.o $(SOPHYAOBJP)nomspecrespadapter.o $(SOPHYAOBJP)nomtarradapter.o $(SOPHYAOBJP)nomtmatvecadapter.o $(SOPHYAOBJP)pawexecut.o $(SOPHYAOBJP)pi2dvec.o $(SOPHYAOBJP)piacmd.o $(SOPHYAOBJP)piafitting.o $(SOPHYAOBJP)pigfd1.o $(SOPHYAOBJP)pigfd2.o $(SOPHYAOBJP)pihisto.o $(SOPHYAOBJP)pihisto2d.o $(SOPHYAOBJP)piinit.o $(SOPHYAOBJP)pintup3d.o $(SOPHYAOBJP)pintuple.o $(SOPHYAOBJP)pipodrw.o $(SOPHYAOBJP)pisiadw.o $(SOPHYAOBJP)pistdimgapp.o $(SOPHYAOBJP)pitvmaad.o $(SOPHYAOBJP)servnobjm.o
+$(SOPHYALIBP)libPIext.a : $(SOPHYAOBJP)basexecut.o $(SOPHYAOBJP)contmodex.o $(SOPHYAOBJP)cxxexecutor.o $(SOPHYAOBJP)cxxexecwin.o $(SOPHYAOBJP)flowmodex.o $(SOPHYAOBJP)graphexecut.o $(SOPHYAOBJP)nobjmgr.o $(SOPHYAOBJP)nomdvladapter.o $(SOPHYAOBJP)nomgadapter.o $(SOPHYAOBJP)nomgfdadapter.o $(SOPHYAOBJP)nomherradapter.o $(SOPHYAOBJP)nomhistadapter.o $(SOPHYAOBJP)nomimagadapter.o $(SOPHYAOBJP)nomskymapadapter.o $(SOPHYAOBJP)nomspecrespadapter.o $(SOPHYAOBJP)nomtarradapter.o $(SOPHYAOBJP)nomtmatvecadapter.o $(SOPHYAOBJP)pawexecut.o $(SOPHYAOBJP)pi2dvec.o $(SOPHYAOBJP)piacmd.o $(SOPHYAOBJP)piafitting.o $(SOPHYAOBJP)pigfd1.o $(SOPHYAOBJP)pigfd2.o $(SOPHYAOBJP)pihisto.o $(SOPHYAOBJP)pihisto2d.o $(SOPHYAOBJP)piinit.o $(SOPHYAOBJP)pintup3d.o $(SOPHYAOBJP)pintuple.o $(SOPHYAOBJP)pipodrw.o $(SOPHYAOBJP)pisiadw.o $(SOPHYAOBJP)pistdimgapp.o $(SOPHYAOBJP)pitvmaad.o $(SOPHYAOBJP)servnobjm.o
 	$(AR) $(ARFLAGS) $@ $? 
 	touch $(SOPHYAINCP)/SophyaConfInfo/libPI.objlist
@@ -96,5 +96,6 @@
   $(SOPHYAINCP)datatable.h \
   $(SOPHYAINCP)basedtable.h \
-  $(SOPHYAINCP)segdatablock.h
+  $(SOPHYAINCP)segdatablock.h \
+  $(SOPHYAINCP)thsafeop.h
 	$(CXXCOMPILE) $(CXXTEMPFLG) -o $@  basexecut.cc
  
@@ -601,4 +602,50 @@
 	$(CXXCOMPILE) $(CXXTEMPFLG) -o $@  nobjmgr.cc
  
+$(SOPHYAOBJP)nomdvladapter.o: nomdvladapter.cc $(SOPHYAINCP)sopnamsp.h \
+  $(SOPHYAINCP)machdefs.h \
+  $(SOPHYAINCP)osx_values.h nomdvladapter.h nomgadapter.h \
+  $(SOPHYAINCP)ppersist.h \
+  $(SOPHYAINCP)pexceptions.h \
+  $(SOPHYAINCP)gnumd5.h \
+  $(SOPHYAINCP)ppfbinstream.h \
+  $(SOPHYAINCP)rawstream.h \
+  $(SOPHYAINCP)ppfnametag.h \
+  $(SOPHYAINCP)anydataobj.h \
+  $(SOPHYAINCP)pidrawer.h \
+  $(SOPHYAINCP)pibwdggen.h \
+  $(SOPHYAINCP)pisysdep.h $(SOPHYAINCP)piwdgx.h \
+  $(SOPHYAINCP)piwdggen.h \
+  $(SOPHYAINCP)pimsghandler.h \
+  $(SOPHYAINCP)picolist.h $(SOPHYAINCP)picmap.h \
+  $(SOPHYAINCP)picmapx.h \
+  $(SOPHYAINCP)picmapgen.h \
+  $(SOPHYAINCP)pigraphx.h \
+  $(SOPHYAINCP)pigraphgen.h \
+  $(SOPHYAINCP)pifontx.h \
+  $(SOPHYAINCP)pifontgen.h \
+  $(SOPHYAINCP)pigrcoord.h \
+  $(SOPHYAINCP)pilineatt.h \
+  $(SOPHYAINCP)pigraphuc.h \
+  $(SOPHYAINCP)pievthandler.h \
+  $(SOPHYAINCP)psfile.h $(SOPHYAINCP)pigratt.h \
+  $(SOPHYAINCP)piaxes.h \
+  $(SOPHYAINCP)parradapter.h $(SOPHYAINCP)lut.h \
+  $(SOPHYAINCP)ntupintf.h \
+  $(SOPHYAINCP)generalfit.h \
+  $(SOPHYAINCP)tvector.h $(SOPHYAINCP)tmatrix.h \
+  $(SOPHYAINCP)tarray.h $(SOPHYAINCP)basarr.h \
+  $(SOPHYAINCP)mutyv.h $(SOPHYAINCP)timestamp.h \
+  $(SOPHYAINCP)objfio.h $(SOPHYAINCP)dvlist.h \
+  $(SOPHYAINCP)ndatablock.h \
+  $(SOPHYAINCP)utilarr.h \
+  $(SOPHYAINCP)tmatrix_tsnl.h \
+  $(SOPHYAINCP)tvector_tsnl.h \
+  $(SOPHYAINCP)generaldata.h \
+  $(SOPHYAINCP)poly.h $(SOPHYAINCP)peida.h \
+  $(SOPHYAINCP)utils.h $(SOPHYAINCP)perrors.h \
+  $(SOPHYAINCP)fmath.h \
+  $(SOPHYAINCP)generalfunc.h
+	$(CXXCOMPILE) $(CXXTEMPFLG) -o $@  nomdvladapter.cc
+ 
 $(SOPHYAOBJP)nomgadapter.o: nomgadapter.cc $(SOPHYAINCP)sopnamsp.h \
   $(SOPHYAINCP)machdefs.h \
@@ -765,5 +812,6 @@
   $(SOPHYAINCP)zthread.h \
   $(SOPHYAINCP)objfitter.h \
-  $(SOPHYAINCP)cimage.h $(SOPHYAINCP)fioarr.h
+  $(SOPHYAINCP)cimage.h $(SOPHYAINCP)fioarr.h \
+  $(SOPHYAINCP)strutilxx.h
 	$(CXXCOMPILE) $(CXXTEMPFLG) -o $@  nomherradapter.cc
  
@@ -816,5 +864,6 @@
   $(SOPHYAINCP)xntuple.h \
   $(SOPHYAINCP)basedtable.h \
-  $(SOPHYAINCP)segdatablock.h pihisto.h phistwrapper.h \
+  $(SOPHYAINCP)segdatablock.h \
+  $(SOPHYAINCP)thsafeop.h pihisto.h phistwrapper.h \
   sohiswrap.h $(SOPHYAINCP)histerr.h \
   $(SOPHYAINCP)hist2err.h pihisto2d.h \
@@ -837,4 +886,5 @@
   dlftypes.h $(SOPHYAINCP)pdlmgr.h \
   $(SOPHYAINCP)zthread.h \
+  $(SOPHYAINCP)strutilxx.h \
   $(SOPHYAINCP)objfitter.h \
   $(SOPHYAINCP)cimage.h $(SOPHYAINCP)fioarr.h \
@@ -1143,5 +1193,6 @@
   $(SOPHYAINCP)datatable.h \
   $(SOPHYAINCP)basedtable.h \
-  $(SOPHYAINCP)segdatablock.h pawexecut.h piacmd.h \
+  $(SOPHYAINCP)segdatablock.h \
+  $(SOPHYAINCP)thsafeop.h pawexecut.h piacmd.h \
   $(SOPHYAINCP)commander.h \
   $(SOPHYAINCP)pdlmgr.h $(SOPHYAINCP)ctimer.h \
@@ -1458,6 +1509,7 @@
   $(SOPHYAINCP)xntuple.h \
   $(SOPHYAINCP)basedtable.h \
-  $(SOPHYAINCP)segdatablock.h nomgfdadapter.h \
-  nomimagadapter.h nomtmatvecadapter.h
+  $(SOPHYAINCP)segdatablock.h \
+  $(SOPHYAINCP)thsafeop.h nomgfdadapter.h nomimagadapter.h \
+  nomtmatvecadapter.h
 	$(CXXCOMPILE) $(CXXTEMPFLG) -o $@  piafitting.cc
  
@@ -1686,5 +1738,5 @@
   $(SOPHYAINCP)pistzwin.h \
   $(SOPHYAINCP)pitherm.h \
-  $(SOPHYAINCP)resusage.h servnobjm.h nomhistadapter.h \
+  $(SOPHYAINCP)resusage.h servnobjm.h nomdvladapter.h \
   nomgadapter.h $(SOPHYAINCP)ntupintf.h \
   $(SOPHYAINCP)generalfit.h \
@@ -1699,10 +1751,11 @@
   $(SOPHYAINCP)utils.h $(SOPHYAINCP)perrors.h \
   $(SOPHYAINCP)fmath.h \
-  $(SOPHYAINCP)generalfunc.h \
+  $(SOPHYAINCP)generalfunc.h nomhistadapter.h \
   $(SOPHYAINCP)histos.h $(SOPHYAINCP)histos2.h \
   $(SOPHYAINCP)hisprof.h $(SOPHYAINCP)ntuple.h \
   $(SOPHYAINCP)xntuple.h \
   $(SOPHYAINCP)basedtable.h \
-  $(SOPHYAINCP)segdatablock.h nomherradapter.h \
+  $(SOPHYAINCP)segdatablock.h \
+  $(SOPHYAINCP)thsafeop.h nomherradapter.h \
   $(SOPHYAINCP)histerr.h \
   $(SOPHYAINCP)hist2err.h nomgfdadapter.h nomimagadapter.h \
@@ -2100,4 +2153,5 @@
   $(SOPHYAINCP)basedtable.h \
   $(SOPHYAINCP)segdatablock.h \
+  $(SOPHYAINCP)thsafeop.h \
   $(SOPHYAINCP)piyfxdrw.h \
   $(SOPHYAINCP)pisurfdr.h pintuple.h pintup3d.h pipodrw.h \
