]> SALOME platform Git repositories - modules/homard.git/blob - src/HOMARD/HomardDriver.hxx
Salome HOME
00b1ee3cbc879ba7a72a5d80ba3526ca68b6f2c4
[modules/homard.git] / src / HOMARD / HomardDriver.hxx
1 # ifndef __HOMARDDRIVER_H__
2 # define __HOMARDDRIVER_H__
3
4 #include <iostream>
5 #include <fstream>
6
7 class HomardDriver
8 {
9 public:
10   HomardDriver(const std::string siter, const std::string siterp1);
11   ~HomardDriver();
12   //
13   void        TexteInit( const std::string DirCompute, const std::string DirComputePa, const std::string MessFile );
14   void        CreeFichier();
15   void        TexteMaillage( const std::string NomMesh, const std::string MeshFile, int apres );
16   void        TexteConfRaffDera( int ConfType, int TypeAdap, int TypeRaff, int TypeDera );
17   void        TexteZone( int NumeZone, int ZoneType, double x0, double x1, double x2, double x3, double x4, double x5 );
18   void        TexteGroup( const std::string GroupName );
19   void        TexteField( const std::string FieldName, const std::string FieldFile,
20                           int TimeStep, int Rank,
21                           int TypeThR, double ThreshR, int TypeThC, double ThreshC, int UsCmpI );
22   void        TexteCompo( int NumeComp, const std::string NomCompo);
23
24   void        TexteBoundaryOption( int BoundaryOption );
25   void        TexteBoundaryDi( const std::string MeshName, const std::string MeshFile );
26   void        TexteBoundaryDiGr( const std::string GroupName );
27   void        TexteBoundaryAn( const std::string NameBoundary, int NumeBoundary, int BoundaryType, double x0, double x1, double x2, double x3, double x4, double x5, double x6 );
28   void        TexteBoundaryAnGr( const std::string NameBoundary, int NumeBoundary, const std::string GroupName );
29
30   void        TexteFieldInterp( int TypeFieldInterp, const std::string FieldFile, const std::string MeshFile,
31                                 int TimeStep, int Rank );
32   void        TexteFieldInterpName( int NumeChamp, const std::string FieldName);
33   void        CloseFichier();
34   //
35   int         ExecuteHomard();
36   //
37   bool        LireFichier();
38   bool        EcrireFichier();
39   void        SetTexte( const std::string texte );
40   std::string GetTexte();
41   std::string GetFichierInfo();
42   std::string GetFichierBasic();
43   std::string GetFichierResultMed();
44   std::string GetFichierHomard();
45   int         GetFichierNumeroIter();
46
47 public:
48   std::string _HOMARD_Exec;
49   std::string _NomDir;
50   std::string _NomFichierConfBase;
51   std::string _NomFichierConf;
52   std::string _siter;
53   std::string _siterp1;
54   std::string _Texte;
55   int         _TimeStep;
56   int         _Rank;
57   bool _bLu;
58
59 private :
60   std::string GetStringInTexte( std::string chaineCherchee, int longueur = 9 );
61 };
62
63 # endif         /* # ifndef __HOMARDDRIVER_H__ */