]> SALOME platform Git repositories - tools/eficas.git/blobdiff - generator/OpenturnsXML.py
Salome HOME
*** empty log message ***
[tools/eficas.git] / generator / OpenturnsXML.py
index 7972a4bf3d90426f883084cffdde1c1ec6bcbe05..4f6007fe2039b75461f3f07d70300f40b0724cde 100644 (file)
@@ -49,7 +49,7 @@ WrapperDataTransferByName = {
   "pipe"      : openturns.WrapperDataTransfer.PIPE,
   "arguments" : openturns.WrapperDataTransfer.ARGUMENTS,
   "socket"    : openturns.WrapperDataTransfer.SOCKET,
-  "CORBA"     : openturns.WrapperDataTransfer.CORBA,
+  "corba"     : openturns.WrapperDataTransfer.CORBA,
   None        : openturns.WrapperDataTransfer.FILES,
   }
 
@@ -79,6 +79,7 @@ class XMLGenerateur :
     data.setHessianDescription(  self.HessianDefinition()  )
     data.setFileList( self.FileList() )
     data.setParameters( self.Parameters() )
+    data.setFrameworkData( self.FrameworkData() )
     
     wrapper=openturns.WrapperFile()
     wrapper.setWrapperData( data )
@@ -86,12 +87,19 @@ class XMLGenerateur :
     return wrapper
 
 
+  class __variable_ordering:
+    def __init__ (self, dictVar) :
+      self.dictVar = dictVar
+      
+    def __call__(self, a, b):
+      return self.dictVar[a]['numOrdre'] - self.dictVar[b]['numOrdre']
+  
   def VariableList (self) :
     '''
     Ecrit la liste des variables
     '''
-    varList = openturns.WrapperDataVariableList()
-    for var in self.DictVariables.keys() :
+    varList = openturns.WrapperDataVariableCollection()
+    for var in sorted( self.DictVariables.keys(), self.__variable_ordering( self.DictVariables ) ) :
       varList.add( self.Variable( var, self.DictVariables[var] ) )
     return varList
 
@@ -142,7 +150,7 @@ class XMLGenerateur :
     '''
     Ecrit la liste des fichiers
     '''
-    fileList = openturns.WrapperDataFileList()
+    fileList = openturns.WrapperDataFileCollection()
     for dictFile in self.GetMCVal('Files', []) :
       fileList.add( self.File( dictFile ) )
     return fileList
@@ -168,12 +176,26 @@ class XMLGenerateur :
     '''
     parameters = openturns.WrapperParameter()
     parameters.mode_  = WrapperModeByName[ self.GetMCVal('WrapCouplingMode') ]
+    if (parameters.mode_ == openturns.WrapperMode.FORK ):
+      parameters.command_ = self.GetMCVal('Command')
+      userPrefix = self.GetMCVal('UserPrefix', None)
+      if userPrefix != None : parameters.userPrefix_ = userPrefix
     parameters.state_ = WrapperStateByName[ self.GetMCVal('State') ]
     parameters.in_    = WrapperDataTransferByName[ self.GetMCVal('InDataTransfer') ]
     parameters.out_   = WrapperDataTransferByName[ self.GetMCVal('OutDataTransfer') ]
     return parameters
   
-
+  def FrameworkData (self) :
+    '''
+    Ecrit les donnees liees a l utilisation d un framework englobant
+    '''
+    framework = openturns.WrapperFrameworkData()
+#   framework.studycase_ = "12:23:34"
+#   framework.componentname_ = self.GetMCVal('SolverComponentName', 'UNDEFINED')
+    CN = self.GetMCVal('SolverComponentName', 'UNDEFINED')
+    print 'CN = ', CN
+    framework.componentname_ = CN
+    return framework
 
 
   # ---------------------------------------------------------------------------------