-// HOMARD HOMARD : implementaion of HOMARD idl descriptions
+// HOMARD HOMARD : implementation of HOMARD idl descriptions
//
-// Copyright (C) 2011-2012 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
// 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();
std::string GetDumpPython() const;
// Caracteristiques
- void SetDirName( const char* NomDir );
- std::string GetDirName() const;
+ void SetDirNameLoc( const char* NomDir );
+ std::string GetDirNameLoc() const;
void SetNumber( int NumIter );
int GetNumber() const;
- void SetEtat( bool etat );
- bool GetEtat() const;
+ void SetState( int etat );
+ int GetState() const;
void SetMeshName( const char* NomMesh );
std::string GetMeshName() const;
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;
void SetHypoName( const char* NomHypo );
std::string GetHypoName() const;
+// Divers
+ void SetInfoCompute( int MessInfo );
+ int GetInfoCompute() const;
+
private:
std::string _Name;
- bool _Etat;
+ int _Etat;
int _NumIter;
std::string _NomMesh;
std::string _MeshFile;
std::string _NomDir;
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