]> SALOME platform Git repositories - modules/homard.git/blobdiff - src/HOMARD/HOMARD_Iteration.hxx
Salome HOME
Copyright update 2022
[modules/homard.git] / src / HOMARD / HOMARD_Iteration.hxx
index 5013783dadee40f01639bd4f218322b9b96aa80f..7f12aa9da1c93bc8398bcebce1618424b5388707 100644 (file)
@@ -1,11 +1,11 @@
 //  HOMARD HOMARD : implementation of HOMARD idl descriptions
 //
-// Copyright (C) 2011-2013  CEA/DEN, EDF R&D
+// Copyright (C) 2011-2022  CEA/DEN, EDF R&D
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
 // License as published by the Free Software Foundation; either
-// version 2.1 of the License.
+// version 2.1 of the License, or (at your option) any later version.
 //
 // This library is distributed in the hope that it will be useful,
 // but WITHOUT ANY WARRANTY; without even the implied warranty of
@@ -19,7 +19,7 @@
 // See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 //  File   : HOMARD_Iteration.hxx
-//  Author : Paul RASCLE, EDF
+//  Author : Gerald NICOLAS, EDF
 //  Module : HOMARD
 //
 // Remarques :
 #ifndef _HOMARD_ITER_HXX_
 #define _HOMARD_ITER_HXX_
 
+#include "HOMARD.hxx"
+
 #include <string>
 #include <list>
 
-class  HOMARD_Iteration
+#if defined WIN32
+#pragma warning ( disable: 4251 )
+#endif
+
+class HOMARDIMPL_EXPORT HOMARD_Iteration
 {
 public:
   HOMARD_Iteration();
@@ -67,10 +73,19 @@ public:
 
   void                          SetFieldFile( const char* FieldFile );
   std::string                   GetFieldFile() const;
+// Instants pour le champ de pilotage
+  void                          SetTimeStep( int TimeStep );
   void                          SetTimeStepRank( int TimeStep, int Rank );
   void                          SetTimeStepRankLast();
   int                           GetTimeStep() const;
   int                           GetRank() const;
+// Instants pour un champ a interpoler
+  void                          SetFieldInterpTimeStep( const char* FieldInterp, int TimeStep );
+  void                          SetFieldInterpTimeStepRank( const char* FieldInterp, int TimeStep, int Rank );
+  const std::list<std::string>& GetFieldInterpsTimeStepRank() const;
+  void                          SetFieldInterp( const char* FieldInterp );
+  const std::list<std::string>& GetFieldInterps() const;
+  void                          SupprFieldInterps();
 
   void                          SetLogFile( const char* LogFile );
   std::string                   GetLogFile() const;
@@ -115,6 +130,10 @@ private:
   std::list<std::string>        _mesIterFilles;
   std::string                   _FileInfo;
   int                           _MessInfo;
+  // La liste des champs retenus par l'hypothese
+  std::list<std::string>        _ListFieldInterp;
+  // La liste des triplets (champs, pas de temps, numero d'ordre) retenus par l'iteration
+  std::list<std::string>        _ListFieldInterpTSR;
 };
 
 #endif