Salome HOME
Updated copyright comment
[modules/med.git] / src / MEDCalc / tui / medio.py
index b0c42e23ec8bfc29cec25eb43b28a03131723140..55f13738392308a20e87b57532ba47c18244ffe2 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright (C) 2011-2016  CEA/DEN, EDF R&D
+# Copyright (C) 2011-2024  CEA, EDF
 #
 # This library is free software; you can redistribute it and/or
 # modify it under the terms of the GNU Lesser General Public
@@ -21,9 +21,10 @@ import medcalc
 
 def LoadDataSource(filename):
   dataManager = medcalc.medcorba.factory.getDataManager()
-  dataManager.loadDatasource(filename)
+  handler = dataManager.loadDatasource(filename)
   from medcalc.medevents import notifyGui_addDatasource
-  notifyGui_addDatasource(filename)
+  notifyGui_addDatasource(handler.id, filename)
+  return handler.id
 #
 
 def LoadImageAsDataSource(filename):
@@ -33,8 +34,27 @@ def LoadImageAsDataSource(filename):
   medfilename = temp.name
   temp.close()
 
-  from medimages import FieldBuilder
+  from .medimages import FieldBuilder
   builder = FieldBuilder()
   builder.image2med(filename, medfilename)
-  LoadDataSource(medfilename)
+  return LoadDataSource(medfilename)
+#
+
+def GetFirstMeshFromDataSource(datasource_id):
+  dataManager = medcalc.medcorba.factory.getDataManager()
+  handlerLst = dataManager.getMeshHandlerList(datasource_id)
+  if not len(handlerLst):
+    return -1
+  return handlerLst[0].id
+#
+
+def GetFirstFieldFromMesh(mesh_id):
+  dataManager = medcalc.medcorba.factory.getDataManager()
+  series = dataManager.getFieldseriesListOnMesh(mesh_id)
+  if not len(series):
+    return -1
+  fields = dataManager.getFieldListInFieldseries(series[0].id)
+  if not len(fields):
+    return -1
+  return fields[0].id
 #