Reduce code

This commit is contained in:
jfa 2021-12-24 19:58:09 +03:00
parent ee8a2759a5
commit 02ac7e629d
9 changed files with 167 additions and 2326 deletions

View File

@ -118,19 +118,6 @@ module SMESHHOMARD
void SetFileInfo(in string FileInfo) raises (SALOME::SALOME_Exception);
string GetFileInfo() raises (SALOME::SALOME_Exception);
// Liens avec les autres iterations
void LinkNextIteration(in string NomIter) raises (SALOME::SALOME_Exception);
void UnLinkNextIteration(in string NomIter) raises (SALOME::SALOME_Exception);
void SetIterParentName(in string NomIterParent) raises (SALOME::SALOME_Exception);
string GetIterParentName() raises (SALOME::SALOME_Exception);
// Liens avec les autres structures
void SetCaseName(in string NomCas) raises (SALOME::SALOME_Exception);
string GetCaseName() raises (SALOME::SALOME_Exception);
void SetHypoName(in string NomHypo) raises (SALOME::SALOME_Exception);
// Drivers
void SetInfoCompute(in long MessInfo) raises (SALOME::SALOME_Exception);
long GetInfoCompute() raises (SALOME::SALOME_Exception);
@ -164,16 +151,6 @@ module SMESHHOMARD
void AddIteration (in string IterName) raises (SALOME::SALOME_Exception);
};
interface HOMARD_Hypothesis : SALOME::GenericObj
{
// Generalites
void SetExtraOutput(in long ExtraOutput) raises (SALOME::SALOME_Exception);
long GetExtraOutput() raises (SALOME::SALOME_Exception);
void LinkIteration(in string NomIteration) raises (SALOME::SALOME_Exception);
void UnLinkIteration(in string NomIteration) raises (SALOME::SALOME_Exception);
};
interface HOMARD_Gen : SALOME::GenericObj
{
HOMARD_Boundary CreateBoundaryCAO (in string BoundaryName, in string FileName)
@ -228,6 +205,7 @@ module SMESHHOMARD
long DeleteBoundary (in string BoundaryName) raises (SALOME::SALOME_Exception);
long DeleteCase() raises (SALOME::SALOME_Exception);
void CleanCase() raises (SALOME::SALOME_Exception);
long Compute() raises (SALOME::SALOME_Exception);

File diff suppressed because it is too large Load Diff

View File

@ -25,30 +25,7 @@
#ifndef _SMESH_HOMARD_ADAPT_HXX_
#define _SMESH_HOMARD_ADAPT_HXX_
// C'est le ASSERT de SALOMELocalTrace/utilities.h dans KERNEL
#ifndef VERIFICATION
#define VERIFICATION(condition) \
if (!(condition)){INTERRUPTION("CONDITION "<<#condition<<" NOT VERIFIED")}
#endif /* VERIFICATION */
#ifdef WIN32
#if defined HOMARDIMPL_EXPORTS || defined HOMARDImpl_EXPORTS
#define HOMARDIMPL_EXPORT __declspec( dllexport )
#else
#define HOMARDIMPL_EXPORT __declspec( dllimport )
#endif
#else
#define HOMARDIMPL_EXPORT
#endif
// La gestion des repertoires
#ifndef CHDIR
#ifdef WIN32
#define CHDIR _chdir
#else
#define CHDIR chdir
#endif
#endif
#include "SMESH_SMESH.hxx"
#include <vector>
#include <string>
@ -64,7 +41,7 @@
namespace SMESHHOMARDImpl
{
class HOMARDIMPL_EXPORT HOMARD_Boundary
class SMESH_EXPORT HOMARD_Boundary
{
public:
HOMARD_Boundary();
@ -105,7 +82,7 @@ public:
void SetGroups(const std::list<std::string>& ListGroup );
const std::list<std::string>& GetGroups() const;
// Liens avec les autres structures
// Liens avec les autres structures
std::string GetCaseCreation() const;
void SetCaseCreation( const char* NomCasCreation );
@ -124,10 +101,9 @@ private:
double _Angle;
std::list<std::string> _ListGroupSelected;
};
class HOMARDIMPL_EXPORT HOMARD_Cas
class SMESH_EXPORT HOMARD_Cas
{
public:
HOMARD_Cas();
@ -143,8 +119,6 @@ public:
int SetDirName( const char* NomDir );
std::string GetDirName() const;
int GetNumberofIter();
void SetConfType( int ConfType );
const int GetConfType() const;
@ -161,12 +135,7 @@ public:
const std::list<std::string>& GetBoundaryGroup() const;
void SupprBoundaryGroup();
// Liens avec les autres structures
std::string GetIter0Name() const;
void AddIteration( const char* NomIteration );
const std::list<std::string>& GetIterations() const;
void SupprIterations();
private:
std::string _Name;
@ -183,7 +152,7 @@ private:
IterNames _ListIter;
};
class HOMARDIMPL_EXPORT HomardDriver
class SMESH_EXPORT HomardDriver
{
public:
HomardDriver(const std::string siter, const std::string siterp1);
@ -197,14 +166,7 @@ public:
void CreeFichier();
void TexteMaillage( const std::string NomMesh, const std::string MeshFile, int apres );
void TexteMaillageHOMARD( const std::string Dir, const std::string liter, int apres );
void TexteConfRaffDera( int ConfType, int TypeAdap, int TypeRaff, int TypeDera );
void TexteZone( int NumeZone, int ZoneType, int TypeUse, double x0, double x1, double x2, double x3, double x4, double x5, double x6, double x7, double x8 );
void TexteGroup( const std::string GroupName );
void TexteField( const std::string FieldName, const std::string FieldFile,
int TimeStep, int Rank,
int TypeThR, double ThreshR, int TypeThC, double ThreshC,
int UsField, int UsCmpI );
void TexteCompo( int NumeComp, const std::string NomCompo);
void TexteConfRaffDera( int ConfType );
void TexteBoundaryOption( int BoundaryOption );
void TexteBoundaryCAOGr( const std::string GroupName );
@ -213,9 +175,6 @@ public:
void TexteBoundaryAn( const std::string NameBoundary, int NumeBoundary, int BoundaryType, double x0, double x1, double x2, double x3, double x4, double x5, double x6, double x7 );
void TexteBoundaryAnGr( const std::string NameBoundary, int NumeBoundary, const std::string GroupName );
void TexteFieldInterp( const std::string FieldFile, const std::string MeshFile );
void TexteFieldInterpAll();
void TexteFieldInterpNameType( int NumeChamp, const std::string FieldName, const std::string TypeInterp, int TimeStep, int Rank );
void TexteAdvanced( int NivMax, double DiamMin, int AdapInit, int LevelOutput );
void TexteInfoCompute( int MessInfo );
//
@ -231,157 +190,19 @@ public:
std::string _siter;
std::string _siterp1;
std::string _Texte;
int _TimeStep;
int _Rank;
bool _bLu;
};
class HOMARD_Iteration;
class HOMARD_Hypothesis;
//! persistence entity type
typedef enum { Case, Zone, Hypothesis, Iteration, Boundary } SignatureType;
//! get persistence signature
HOMARDIMPL_EXPORT std::string GetSignature( SignatureType type );
//! get data separator
HOMARDIMPL_EXPORT std::string separator();
//! dump boundary to the string
HOMARDIMPL_EXPORT std::string Dump( const SMESHHOMARDImpl::HOMARD_Boundary& boundary );
//! dump case to the string
HOMARDIMPL_EXPORT std::string Dump( const SMESHHOMARDImpl::HOMARD_Cas& cas );
//! dump iteration to the string
HOMARDIMPL_EXPORT std::string Dump( const SMESHHOMARDImpl::HOMARD_Iteration& iteration );
//! dump hypothesis to the string
HOMARDIMPL_EXPORT std::string Dump( const SMESHHOMARDImpl::HOMARD_Hypothesis& hypothesis );
//! restore boundary from the string
HOMARDIMPL_EXPORT bool Restore( SMESHHOMARDImpl::HOMARD_Boundary& boundary, const std::string& stream );
//! restore case from the string
HOMARDIMPL_EXPORT bool Restore( SMESHHOMARDImpl::HOMARD_Cas& cas, const std::string& stream );
//! restore hypothesis from the string
HOMARDIMPL_EXPORT bool Restore( SMESHHOMARDImpl::HOMARD_Hypothesis& hypothesis, const std::string& stream );
//! restore iteration from the string
HOMARDIMPL_EXPORT bool Restore( SMESHHOMARDImpl::HOMARD_Iteration& iteration, const std::string& stream );
class HOMARDIMPL_EXPORT HOMARD_Gen
class SMESH_EXPORT HOMARD_Gen
{
public :
HOMARD_Gen();
~HOMARD_Gen();
};
class HOMARDIMPL_EXPORT HOMARD_Hypothesis
{
public:
HOMARD_Hypothesis();
~HOMARD_Hypothesis();
// Generalites
void SetName( const char* Name );
std::string GetName() const;
// Caracteristiques
void SetAdapType( int TypeAdap );
int GetAdapType() const;
void SetRefinTypeDera( int TypeRaff, int TypeDera );
int GetRefinType() const;
int GetUnRefType() const;
void SetField( const char* FieldName );
std::string GetFieldName() const;
void SetUseField( int UsField );
int GetUseField() const;
void SetUseComp( int UsCmpI );
int GetUseComp() const;
void AddComp( const char* NomComp );
void SupprComp( const char* NomComp );
void SupprComps();
const std::list<std::string>& GetComps() const;
void SetRefinThr( int TypeThR, double ThreshR );
int GetRefinThrType() const;
double GetThreshR() const;
void SetUnRefThr( int TypeThC, double ThreshC );
int GetUnRefThrType() const;
double GetThreshC() const;
void SetNivMax( int NivMax );
const int GetNivMax() const;
void SetDiamMin( double DiamMin );
const double GetDiamMin() const;
void SetAdapInit( int AdapInit );
const int GetAdapInit() const;
void SetExtraOutput( int ExtraOutput );
const int GetExtraOutput() const;
void AddGroup( const char* Group);
void SupprGroup( const char* Group );
void SupprGroups();
void SetGroups(const std::list<std::string>& ListGroup );
const std::list<std::string>& GetGroups() const;
void SetTypeFieldInterp( int TypeFieldInterp );
int GetTypeFieldInterp() const;
void AddFieldInterpType( const char* FieldInterp, int TypeInterp );
void SupprFieldInterp( const char* FieldInterp );
void SupprFieldInterps();
const std::list<std::string>& GetFieldInterps() const;
// Liens avec les autres structures
void SetCaseCreation( const char* NomCasCreation );
std::string GetCaseCreation() const;
void LinkIteration( const char* NomIter );
void UnLinkIteration( const char* NomIter );
void UnLinkIterations();
const std::list<std::string>& GetIterations() const;
void AddZone( const char* NomZone, int TypeUse );
void SupprZone( const char* NomZone );
void SupprZones();
const std::list<std::string>& GetZones() const;
private:
std::string _Name;
std::string _NomCasCreation;
int _TypeAdap; // -1 pour une adapation Uniforme,
// 0 si l adaptation depend des zones,
// 1 pour des champs
int _TypeRaff;
int _TypeDera;
std::string _Field;
int _TypeThR;
int _TypeThC;
double _ThreshR;
double _ThreshC;
int _UsField;
int _UsCmpI;
int _TypeFieldInterp; // 0 pour aucune interpolation,
// 1 pour interpolation de tous les champs,
// 2 pour une liste
int _NivMax;
double _DiamMin;
int _AdapInit;
int _ExtraOutput;
std::list<std::string> _ListIter;
std::list<std::string> _ListZone;
std::list<std::string> _ListComp;
std::list<std::string> _ListGroupSelected;
std::list<std::string> _ListFieldInterp;
};
class HOMARDIMPL_EXPORT HOMARD_Iteration
class SMESH_EXPORT HOMARD_Iteration
{
public:
HOMARD_Iteration();
@ -407,45 +228,13 @@ public:
void SetMeshFile( const char* MeshFile );
std::string GetMeshFile() 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 SetFileInfo( const char* FileInfo );
std::string GetFileInfo() const;
// Liens avec les autres iterations
void LinkNextIteration( const char* NomIteration );
void UnLinkNextIteration( const char* NomIteration );
void UnLinkNextIterations();
const std::list<std::string>& GetIterations() const;
void SetIterParentName( const char* iterParent );
std::string GetIterParentName() const;
// Liens avec les autres structures
void SetCaseName( const char* NomCas );
std::string GetCaseName() const;
void SetHypoName( const char* NomHypo );
std::string GetHypoName() const;
// Divers
// Divers
void SetInfoCompute( int MessInfo );
int GetInfoCompute() const;
@ -455,21 +244,10 @@ private:
int _NumIter;
std::string _NomMesh;
std::string _MeshFile;
std::string _FieldFile;
int _TimeStep;
int _Rank;
std::string _LogFile;
std::string _IterParent;
std::string _NomHypo;
std::string _NomCas;
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;
};
}; // namespace SMESHHOMARDImpl

View File

@ -72,6 +72,7 @@ SMESHGUI_HomardAdaptDlg::SMESHGUI_HomardAdaptDlg(SMESHHOMARD::HOMARD_Gen_ptr myH
{
MESSAGE("Debut du constructeur de SMESHGUI_HomardAdaptDlg");
myHomardGen = SMESHHOMARD::HOMARD_Gen::_duplicate(myHomardGen0);
//myHomardGen = SMESHGUI::GetSMESHGen()->CreateHOMARD_ADAPT();
myHomardGen->Register();
setModal(false);
@ -181,6 +182,7 @@ SMESHGUI_HomardAdaptDlg::SMESHGUI_HomardAdaptDlg(SMESHHOMARD::HOMARD_Gen_ptr myH
SMESHGUI_HomardAdaptDlg::~SMESHGUI_HomardAdaptDlg()
{
// no need to delete child widgets, Qt does it all for us
myHomardGen->CleanCase();
}
//=================================================================================

View File

@ -117,10 +117,10 @@ SMESH_CreateBoundaryAn::SMESH_CreateBoundaryAn(SMESHGUI_HomardAdaptDlg* parent,
// Pour affichage lors de l edition d une BoundaryAn sans nom de Cas
_Xcentre(0), _Ycentre(0), _Zcentre(0), _Rayon(0),
_Xmin(1), _Xmax(1), _Xincr(1), _Ymin(1), _Ymax(1), _Yincr(1), _Zmin(1), _Zmax(1), _Zincr(1), _DMax(1),
Chgt (false),
myHomardGen(myHomardGen0)
Chgt (false)
{
// MESSAGE("Debut de SMESH_CreateBoundaryAn")
myHomardGen = SMESHHOMARD::HOMARD_Gen::_duplicate(myHomardGen0);
setupUi(this);
SUIT_ResourceMgr* resMgr = SUIT_Session::session()->resourceMgr();
QPixmap pix = resMgr->loadPixmap( "HOMARD", "spherepoint.png" );
@ -1140,13 +1140,13 @@ void SMESH_CreateBoundaryDi::SetFiltrage()
// ------------------------------------------------------------------------
SMESH_EditBoundaryAn::SMESH_EditBoundaryAn( SMESHGUI_HomardAdaptDlg* parent, bool modal,
SMESHHOMARD::HOMARD_Gen_var myHomardGen,
SMESHHOMARD::HOMARD_Gen_var myHomardGen0,
QString caseName, QString Name ):
// ------------------------------------------------------------------------
/* Constructs a SMESH_EditBoundaryAn
herite de SMESH_CreateBoundaryAn
*/
SMESH_CreateBoundaryAn(parent, myHomardGen, caseName)
SMESH_CreateBoundaryAn(parent, myHomardGen0, caseName)
{
MESSAGE("Debut de SMESH_EditBoundaryAn pour " << Name.toStdString().c_str());
setWindowTitle(QObject::tr("HOM_BOUN_A_EDIT_WINDOW_TITLE"));
@ -1516,9 +1516,9 @@ bool SMESH_EditBoundaryAn::CreateOrUpdateBoundaryAn()
*/
// --------------------------------------------------------------------------------------
SMESH_EditBoundaryCAO::SMESH_EditBoundaryCAO( SMESHGUI_HomardAdaptDlg* parent, bool modal,
SMESHHOMARD::HOMARD_Gen_var myHomardGen,
SMESHHOMARD::HOMARD_Gen_var myHomardGen0,
QString caseName, QString Name):
SMESH_CreateBoundaryCAO(parent, modal, myHomardGen, caseName, Name)
SMESH_CreateBoundaryCAO(parent, modal, myHomardGen0, caseName, Name)
{
MESSAGE("Debut de Boundary pour " << Name.toStdString().c_str());
setWindowTitle(QObject::tr("HOM_BOUN_C_EDIT_WINDOW_TITLE"));
@ -1582,9 +1582,9 @@ void SMESH_EditBoundaryCAO::SetFiltrage()
*/
// ------------------------------------------------------------------------------------
SMESH_EditBoundaryDi::SMESH_EditBoundaryDi( SMESHGUI_HomardAdaptDlg* parent, bool modal,
SMESHHOMARD::HOMARD_Gen_var myHomardGen,
SMESHHOMARD::HOMARD_Gen_var myHomardGen0,
QString caseName, QString Name):
SMESH_CreateBoundaryDi(parent, modal, myHomardGen, caseName, Name)
SMESH_CreateBoundaryDi(parent, modal, myHomardGen0, caseName, Name)
{
MESSAGE("Debut de Boundary pour " << Name.toStdString().c_str());
setWindowTitle(QObject::tr("HOM_BOUN_D_EDIT_WINDOW_TITLE"));

View File

@ -1065,13 +1065,13 @@ class SMESHGUI_EXPORT SMESH_CreateBoundaryAn : public QDialog, public SMESH_Ui_C
public:
SMESH_CreateBoundaryAn (SMESHGUI_HomardAdaptDlg* parent, bool modal,
SMESHHOMARD::HOMARD_Gen_var myHomardGen,
SMESHHOMARD::HOMARD_Gen_var myHomardGen0,
QString caseName);
virtual ~SMESH_CreateBoundaryAn();
protected :
SMESH_CreateBoundaryAn (SMESHGUI_HomardAdaptDlg* parent,
SMESHHOMARD::HOMARD_Gen_var myHomardGen,
SMESHHOMARD::HOMARD_Gen_var myHomardGen0,
QString caseName);
SMESHGUI_HomardAdaptDlg * _parent;
@ -1121,7 +1121,7 @@ class SMESHGUI_EXPORT SMESH_EditBoundaryAn : public SMESH_CreateBoundaryAn
Q_OBJECT
public:
SMESH_EditBoundaryAn( SMESHGUI_HomardAdaptDlg* parent, bool modal,
SMESHHOMARD::HOMARD_Gen_var myHomardGen,
SMESHHOMARD::HOMARD_Gen_var myHomardGen0,
QString caseName, QString Name);
virtual ~SMESH_EditBoundaryAn();
@ -1147,7 +1147,7 @@ class SMESHGUI_EXPORT SMESH_CreateBoundaryCAO : public QDialog, public SMESH_Ui_
public:
SMESH_CreateBoundaryCAO( SMESHGUI_HomardAdaptDlg* parent, bool modal,
SMESHHOMARD::HOMARD_Gen_var myHomardGen,
SMESHHOMARD::HOMARD_Gen_var myHomardGen0,
QString caseName, QString BoundaryName );
~SMESH_CreateBoundaryCAO();
virtual void setGroups (QStringList listGroup);
@ -1181,7 +1181,7 @@ class SMESHGUI_EXPORT SMESH_EditBoundaryCAO : public SMESH_CreateBoundaryCAO
Q_OBJECT
public:
SMESH_EditBoundaryCAO( SMESHGUI_HomardAdaptDlg* parent, bool modal,
SMESHHOMARD::HOMARD_Gen_var myHomardGen,
SMESHHOMARD::HOMARD_Gen_var myHomardGen0,
QString caseName, QString Name );
virtual ~SMESH_EditBoundaryCAO();
@ -1197,7 +1197,7 @@ class SMESHGUI_EXPORT SMESH_CreateBoundaryDi : public QDialog, public SMESH_Ui_C
public:
SMESH_CreateBoundaryDi( SMESHGUI_HomardAdaptDlg* parent, bool modal,
SMESHHOMARD::HOMARD_Gen_var myHomardGen,
SMESHHOMARD::HOMARD_Gen_var myHomardGen0,
QString caseName, QString BoundaryName );
~SMESH_CreateBoundaryDi();
virtual void setGroups (QStringList listGroup);
@ -1231,7 +1231,7 @@ class SMESHGUI_EXPORT SMESH_EditBoundaryDi : public SMESH_CreateBoundaryDi
Q_OBJECT
public:
SMESH_EditBoundaryDi( SMESHGUI_HomardAdaptDlg* parent, bool modal,
SMESHHOMARD::HOMARD_Gen_var myHomardGen,
SMESHHOMARD::HOMARD_Gen_var myHomardGen0,
QString caseName, QString Name );
virtual ~SMESH_EditBoundaryDi();

View File

@ -57,7 +57,7 @@ SMESH_CreateListGroupCAO::SMESH_CreateListGroupCAO(SMESH_CreateBoundaryCAO* pare
}
// ------------------------------------------------------------------------------------
SMESH_CreateListGroupCAO::SMESH_CreateListGroupCAO(SMESH_CreateBoundaryCAO* parentBound,
SMESHHOMARD::HOMARD_Gen_var myHomardGen,
SMESHHOMARD::HOMARD_Gen_var myHomardGen0,
QString aCaseName,
QStringList listeGroupesHypo)
: QDialog(0), SMESH_Ui_CreateListGroup(),
@ -65,7 +65,7 @@ SMESH_CreateListGroupCAO::SMESH_CreateListGroupCAO(SMESH_CreateBoundaryCAO* pare
_listeGroupesHypo (listeGroupesHypo),
_parentBound(parentBound)
{
myHomardGen = SMESHHOMARD::HOMARD_Gen::_duplicate(myHomardGen);
myHomardGen = SMESHHOMARD::HOMARD_Gen::_duplicate(myHomardGen0);
setupUi(this);
InitConnect();
}
@ -164,14 +164,14 @@ SMESH_CreateListGroup::SMESH_CreateListGroup(SMESH_CreateBoundaryDi* parentBound
// ------------------------------------------------------------------------
SMESH_CreateListGroup::SMESH_CreateListGroup(SMESH_CreateBoundaryDi* parentBound,
SMESHHOMARD::HOMARD_Gen_var myHomardGen,
SMESHHOMARD::HOMARD_Gen_var myHomardGen0,
QString aCaseName, QStringList listeGroupesHypo)
: QDialog(0), SMESH_Ui_CreateListGroup(),
_aCaseName (aCaseName),
_listeGroupesHypo (listeGroupesHypo),
_parentBound(parentBound)
{
myHomardGen = SMESHHOMARD::HOMARD_Gen::_duplicate(myHomardGen);
myHomardGen = SMESHHOMARD::HOMARD_Gen::_duplicate(myHomardGen0);
setupUi(this);
InitConnect();
}
@ -256,11 +256,11 @@ void SMESH_CreateListGroup::InitGroupes()
//---------------------------------------------------------------------
SMESH_EditListGroupCAO::SMESH_EditListGroupCAO( SMESH_CreateBoundaryCAO* parentBound,
bool modal,
SMESHHOMARD::HOMARD_Gen_var myHomardGen,
SMESHHOMARD::HOMARD_Gen_var myHomardGen0,
QString aCaseName,
QStringList listeGroupesHypo):
//---------------------------------------------------------------------
SMESH_CreateListGroupCAO(parentBound,myHomardGen,aCaseName,listeGroupesHypo)
SMESH_CreateListGroupCAO(parentBound,myHomardGen0,aCaseName,listeGroupesHypo)
{
MESSAGE("Debut de SMESH_EditListGroupCAO");
setWindowTitle(QObject::tr("HOM_GROU_EDIT_WINDOW_TITLE"));
@ -292,11 +292,11 @@ void SMESH_EditListGroupCAO:: InitGroupes()
//---------------------------------------------------------------------
SMESH_EditListGroup::SMESH_EditListGroup( SMESH_CreateBoundaryDi* parentBound,
bool modal,
SMESHHOMARD::HOMARD_Gen_var myHomardGen,
SMESHHOMARD::HOMARD_Gen_var myHomardGen0,
QString aCaseName,
QStringList listeGroupesHypo):
//---------------------------------------------------------------------
SMESH_CreateListGroup(parentBound,myHomardGen,aCaseName,listeGroupesHypo)
SMESH_CreateListGroup(parentBound,myHomardGen0,aCaseName,listeGroupesHypo)
{
MESSAGE("Debut de SMESH_EditListGroup");
setWindowTitle(QObject::tr("HOM_GROU_EDIT_WINDOW_TITLE"));

View File

@ -62,6 +62,21 @@
#include <vector>
#include <stdio.h>
// C'est le ASSERT de SALOMELocalTrace/utilities.h dans KERNEL
#ifndef VERIFICATION
#define VERIFICATION(condition) \
if (!(condition)){INTERRUPTION("CONDITION "<<#condition<<" NOT VERIFIED")}
#endif /* VERIFICATION */
// La gestion des repertoires
#ifndef CHDIR
#ifdef WIN32
#define CHDIR _chdir
#else
#define CHDIR chdir
#endif
#endif
using namespace std;
SMESHHOMARD::HOMARD_Gen_ptr SMESH_Gen_i::CreateHOMARD_ADAPT()
@ -652,80 +667,6 @@ void HOMARD_Cas_i::AddIteration(const char* NomIteration)
myHomardCas->AddIteration(NomIteration);
}
//=============================================================================
/*!
* standard constructor
*/
//=============================================================================
HOMARD_Hypothesis_i::HOMARD_Hypothesis_i()
: SALOME::GenericObj_i(SMESH_Gen_i::GetPOA())
{
MESSAGE("Default constructor, not for use");
ASSERT(0);
}
//=============================================================================
/*!
* standard constructor
*/
//=============================================================================
HOMARD_Hypothesis_i::HOMARD_Hypothesis_i(SMESHHOMARD::HOMARD_Gen_var engine)
: SALOME::GenericObj_i(SMESH_Gen_i::GetPOA())
{
MESSAGE("standard constructor");
_gen_i = engine;
myHomardHypothesis = new SMESHHOMARDImpl::HOMARD_Hypothesis();
ASSERT(myHomardHypothesis);
// SetUnifRefinUnRef(1)
int RefinType = 1;
int UnRefType = 0;
myHomardHypothesis->SetAdapType(-1);
myHomardHypothesis->SetRefinTypeDera(RefinType, UnRefType);
// Set name
myHomardHypothesis->SetName("Hypo_1");
}
//=============================================================================
/*!
* standard destructor
*/
//=============================================================================
HOMARD_Hypothesis_i::~HOMARD_Hypothesis_i()
{
}
//=============================================================================
void HOMARD_Hypothesis_i::SetExtraOutput(CORBA::Long ExtraOutput)
{
ASSERT(myHomardHypothesis);
myHomardHypothesis->SetExtraOutput(ExtraOutput);
}
//=============================================================================
CORBA::Long HOMARD_Hypothesis_i::GetExtraOutput()
{
ASSERT(myHomardHypothesis);
return myHomardHypothesis->GetExtraOutput();
}
//=============================================================================
//=============================================================================
// Liens avec les autres structures
//=============================================================================
//=============================================================================
void HOMARD_Hypothesis_i::LinkIteration(const char* NomIteration)
{
ASSERT(myHomardHypothesis);
myHomardHypothesis->LinkIteration(NomIteration);
}
//=============================================================================
void HOMARD_Hypothesis_i::UnLinkIteration(const char* NomIteration)
{
ASSERT(myHomardHypothesis);
myHomardHypothesis->UnLinkIteration(NomIteration);
}
//=============================================================================
/*!
* standard constructor
@ -864,61 +805,6 @@ char* HOMARD_Iteration_i::GetFileInfo()
return CORBA::string_dup(myHomardIteration->GetFileInfo().c_str());
}
//=============================================================================
//=============================================================================
// Liens avec les autres iterations
//=============================================================================
//=============================================================================
void HOMARD_Iteration_i::LinkNextIteration(const char* NomIteration)
{
ASSERT(myHomardIteration);
myHomardIteration->LinkNextIteration(NomIteration);
}
//=============================================================================
void HOMARD_Iteration_i::UnLinkNextIteration(const char* NomIteration)
{
ASSERT(myHomardIteration);
myHomardIteration->UnLinkNextIteration(NomIteration);
}
//=============================================================================
void HOMARD_Iteration_i::SetIterParentName(const char* NomIterParent)
{
ASSERT(myHomardIteration);
myHomardIteration->SetIterParentName(NomIterParent);
}
//=============================================================================
char* HOMARD_Iteration_i::GetIterParentName()
{
ASSERT(myHomardIteration);
return CORBA::string_dup(myHomardIteration->GetIterParentName().c_str());
}
//=============================================================================
//=============================================================================
// Liens avec les autres structures
//=============================================================================
//=============================================================================
void HOMARD_Iteration_i::SetCaseName(const char* NomCas)
{
ASSERT(myHomardIteration);
myHomardIteration->SetCaseName(NomCas);
}
//=============================================================================
char* HOMARD_Iteration_i::GetCaseName()
{
ASSERT(myHomardIteration);
return CORBA::string_dup(myHomardIteration->GetCaseName().c_str());
}
//=============================================================================
void HOMARD_Iteration_i::SetHypoName(const char* NomHypo)
{
ASSERT(myHomardIteration);
myHomardIteration->SetHypoName(NomHypo);
}
//=============================================================================
//=============================================================================
// Divers
//=============================================================================
//=============================================================================
void HOMARD_Iteration_i::SetInfoCompute(CORBA::Long MessInfo)
{
ASSERT(myHomardIteration);
@ -962,9 +848,9 @@ HOMARD_Gen_i::HOMARD_Gen_i() : SALOME::GenericObj_i(SMESH_Gen_i::GetPOA()),
HOMARD_Gen_i::~HOMARD_Gen_i()
{
MESSAGE ("HOMARD_Gen_i::~HOMARD_Gen_i()");
if (!myCase->_is_nil()) {
CleanCase();
}
//if (!myCase->_is_nil()) {
// CleanCase();
//}
}
//=============================================================================
@ -1010,17 +896,18 @@ CORBA::Long HOMARD_Gen_i::DeleteIteration(int numIter)
MESSAGE ("DeleteIteration : numIter = " << numIter);
if (numIter == 0) {
if (CORBA::is_nil(myIteration1))
myIteration0 = SMESHHOMARD::HOMARD_Iteration::_nil();
}
else {
if (!CORBA::is_nil(myIteration1)) {
/*
if (CORBA::is_nil(myIteration0)) {
SALOME::ExceptionStruct es;
es.type = SALOME::BAD_PARAM;
es.text = "Invalid iteration 0";
throw SALOME::SALOME_Exception(es);
}
*/
// Invalide Iteration
if (myIteration1->GetState() > 0) {
@ -1043,10 +930,6 @@ CORBA::Long HOMARD_Gen_i::DeleteIteration(int numIter)
}
}
// Unlink from the parent iteration and from the hypothesis
myIteration0->UnLinkNextIteration("Iter_1");
ASSERT(!CORBA::is_nil(myHypothesis));
myHypothesis->UnLinkIteration("Iter_1");
myIteration1 = SMESHHOMARD::HOMARD_Iteration::_nil();
}
}
@ -1102,7 +985,6 @@ void HOMARD_Gen_i::AssociateCaseIter(int numIter, const char* labelIter)
}
myCase->AddIteration(myIteration0->GetName());
myIteration0->SetCaseName("Case_1");
}
else {
if (CORBA::is_nil(myIteration1)) {
@ -1113,7 +995,6 @@ void HOMARD_Gen_i::AssociateCaseIter(int numIter, const char* labelIter)
}
myCase->AddIteration(myIteration1->GetName());
myIteration1->SetCaseName("Case_1");
}
}
@ -1436,7 +1317,7 @@ SMESHHOMARD::HOMARD_Iteration_ptr HOMARD_Gen_i::CreateIteration()
myIteration1->SetState(1);
myIteration1->SetNumber(1);
int nbitercase = 1; //myCase->GetNumberofIter()
int nbitercase = 1;
char* nomDirIter = CreateDirNameIter(nomDirCase, nbitercase);
myIteration1->SetDirNameLoc(nomDirIter);
@ -1463,29 +1344,6 @@ SMESHHOMARD::HOMARD_Iteration_ptr HOMARD_Gen_i::CreateIteration()
std::string label = "IterationHomard_" + nomIterParent;
AssociateCaseIter(1, label.c_str());
// Lien avec l'iteration precedente
myIteration0->LinkNextIteration("Iter_1");
myIteration1->SetIterParentName(nomIterParent.c_str());
// Associate hypothesis
if (CORBA::is_nil(myHypothesis)) {
SMESHHOMARD::HOMARD_Gen_var engine = POA_SMESHHOMARD::HOMARD_Gen::_this();
HOMARD_Hypothesis_i* aServant = new HOMARD_Hypothesis_i(engine);
myHypothesis = SMESHHOMARD::HOMARD_Hypothesis::_narrow(aServant->_this());
if (CORBA::is_nil(myHypothesis)) {
SALOME::ExceptionStruct es;
es.type = SALOME::BAD_PARAM;
es.text = "Unable to create the hypothesis";
throw SALOME::SALOME_Exception(es);
}
//myHypothesis->SetNivMax(-1);
//myHypothesis->SetDiamMin(-1.0);
//myHypothesis->SetAdapInit(0);
//myHypothesis->SetExtraOutput(1);
}
myIteration1->SetHypoName("Hypo_1");
myHypothesis->LinkIteration("Iter_1");
return SMESHHOMARD::HOMARD_Iteration::_duplicate(myIteration1);
}
//=============================================================================
@ -1731,7 +1589,7 @@ CORBA::Long HOMARD_Gen_i::Compute()
// B.1. Le répertoire courant
std::string nomDirWork = getenv("PWD");
// B.2. Le sous-répertoire de l'iteration a traiter
char* DirCompute = ComputeDirManagement(myCase, myIteration1);
char* DirCompute = ComputeDirManagement();
MESSAGE(". DirCompute = " << DirCompute);
// C. Le fichier des messages
@ -1767,10 +1625,10 @@ CORBA::Long HOMARD_Gen_i::Compute()
iaux = 1;
myDriver->TexteMaillageHOMARD(DirCompute, siterp1, iaux);
myDriver->TexteMaillage(NomMesh, MeshFile, 1);
codret = ComputeAdap(myCase, myIteration1, myDriver);
codret = ComputeAdap(myDriver);
// E.4. Ajout des informations liees a l'eventuel suivi de frontiere
int BoundaryOption = DriverTexteBoundary(myCase, myDriver);
int BoundaryOption = DriverTexteBoundary(myDriver);
// E.5. Ecriture du texte dans le fichier
MESSAGE (". Ecriture du texte dans le fichier de configuration; codret = "<<codret);
@ -1845,7 +1703,7 @@ CORBA::Long HOMARD_Gen_i::Compute()
if (codret == 0) {
if ((BoundaryOption % 5 == 0) && (codretexec == 0)) {
MESSAGE ("Suivi de frontière CAO");
codret = ComputeCAO(myCase, myIteration1);
codret = ComputeCAO();
}
}
@ -1853,6 +1711,15 @@ CORBA::Long HOMARD_Gen_i::Compute()
// Python Dump
PythonDump();
// Delete log file, if required
if (!myIteration1->_is_nil()) {
MESSAGE("myIteration1->GetLogFile() = " << myIteration1->GetLogFile());
if (_LogInFile && _RemoveLogOnSuccess) {
// Remove log file on success
SMESH_File(myIteration1->GetLogFile(), false).remove();
}
}
// Clean all data
CleanCase();
}
@ -1862,30 +1729,15 @@ CORBA::Long HOMARD_Gen_i::Compute()
void HOMARD_Gen_i::CleanCase()
{
// Delete log file, if required
if (!myIteration1->_is_nil()) {
MESSAGE("myIteration1->GetLogFile() = " << myIteration1->GetLogFile());
if (_LogInFile && _RemoveLogOnSuccess) {
// Remove log file on success
SMESH_File(myIteration1->GetLogFile(), false).remove();
}
}
MESSAGE ("CleanCase");
if (myCase->_is_nil()) return;
// Delete all boundaries
//std::map<std::string, SMESHHOMARD::HOMARD_Boundary_var>::const_iterator it_boundary;
//for (it_boundary = _mesBoundarys.begin();
// it_boundary != _mesBoundarys.end(); ++it_boundary) {
// DeleteBoundary((*it_boundary).first.c_str());
//}
_mesBoundarys.clear();
// Delete iteration
DeleteIteration(1);
// Delete hypothesis
// Hypothesis should be deleted only after iteration deletion
myHypothesis = SMESHHOMARD::HOMARD_Hypothesis::_nil();
// Delete case
DeleteCase();
@ -1901,9 +1753,7 @@ void HOMARD_Gen_i::CleanCase()
//=============================================================================
// Calcul d'une iteration : partie spécifique à l'adaptation
//=============================================================================
CORBA::Long HOMARD_Gen_i::ComputeAdap(SMESHHOMARD::HOMARD_Cas_var myCase,
SMESHHOMARD::HOMARD_Iteration_var myIteration,
SMESHHOMARDImpl::HomardDriver* myDriver)
CORBA::Long HOMARD_Gen_i::ComputeAdap(SMESHHOMARDImpl::HomardDriver* myDriver)
{
MESSAGE ("ComputeAdap");
@ -1911,20 +1761,17 @@ CORBA::Long HOMARD_Gen_i::ComputeAdap(SMESHHOMARD::HOMARD_Cas_var myCase,
// A.1. Bases
int codret = 0;
// Numero de l'iteration
int NumeIter = myIteration->GetNumber();
int NumeIter = 1;
std::stringstream saux0;
saux0 << NumeIter-1;
std::string siter = saux0.str();
if (NumeIter < 11) { siter = "0" + siter; }
// A.2. On verifie qu il y a une hypothese (erreur improbable);
ASSERT(!CORBA::is_nil(myHypothesis));
// B. L'iteration parent
ASSERT(!CORBA::is_nil(myIteration0));
// C. Le sous-répertoire de l'iteration precedente
char* DirComputePa = ComputeDirPaManagement(myCase, myIteration);
char* DirComputePa = ComputeDirPaManagement();
MESSAGE(". DirComputePa = " << DirComputePa);
// D. Les données de l'adaptation HOMARD
@ -1939,7 +1786,7 @@ CORBA::Long HOMARD_Gen_i::ComputeAdap(SMESHHOMARD::HOMARD_Cas_var myCase,
MESSAGE (". MeshFileParent = " << MeshFileParent);
// D.4. Le maillage associe a l'iteration
const char* MeshFile = myIteration->GetMeshFile();
const char* MeshFile = myIteration1->GetMeshFile();
MESSAGE (". MeshFile = " << MeshFile);
FILE *file = fopen(MeshFile,"r");
if (file != NULL) {
@ -1966,36 +1813,20 @@ CORBA::Long HOMARD_Gen_i::ComputeAdap(SMESHHOMARD::HOMARD_Cas_var myCase,
}
}
// D.5. Les types de raffinement et de deraffinement
// Les appels corba sont lourds, il vaut mieux les grouper
//SMESHHOMARD::listeTypes* ListTypes = myHypothesis->GetAdapRefinUnRef();
//ASSERT(ListTypes->length() == 3);
int TypeAdap = -1; // HomardHypothesis->GetAdapType()
int TypeRaff = 1; // HomardHypothesis->GetRefinType()
int TypeDera = 0; // HomardHypothesis->GetUnRefType()
// E. Texte du fichier de configuration
// E.1. Incontournables du texte
myDriver->TexteAdap();
int iaux = 0;
myDriver->TexteMaillageHOMARD(DirComputePa, siter, iaux);
myDriver->TexteMaillage(NomMeshParent, MeshFileParent, 0);
myDriver->TexteConfRaffDera(ConfType, TypeAdap, TypeRaff, TypeDera);
myDriver->TexteConfRaffDera(ConfType);
// E.6. Ajout des options avancees
//int NivMax = myHypo->GetNivMax();
//MESSAGE (". NivMax = " << NivMax);
//double DiamMin = myHypo->GetDiamMin();
//MESSAGE (". DiamMin = " << DiamMin);
//int AdapInit = myHypo->GetAdapInit();
//MESSAGE (". AdapInit = " << AdapInit);
//int ExtraOutput = myHypo->GetExtraOutput();
//MESSAGE (". ExtraOutput = " << ExtraOutput);
//myDriver->TexteAdvanced(NivMax, DiamMin, AdapInit, ExtraOutput);
myDriver->TexteAdvanced(-1, -1.0, 0, 1);
// E.7. Ajout des informations sur le deroulement de l'execution
int MessInfo = myIteration->GetInfoCompute();
int MessInfo = myIteration1->GetInfoCompute();
MESSAGE (". MessInfo = " << MessInfo);
myDriver->TexteInfoCompute(MessInfo);
@ -2004,8 +1835,7 @@ CORBA::Long HOMARD_Gen_i::ComputeAdap(SMESHHOMARD::HOMARD_Cas_var myCase,
//=============================================================================
// Calcul d'une iteration : partie spécifique au suivi de frontière CAO
//=============================================================================
CORBA::Long HOMARD_Gen_i::ComputeCAO(SMESHHOMARD::HOMARD_Cas_var myCase,
SMESHHOMARD::HOMARD_Iteration_var myIteration)
CORBA::Long HOMARD_Gen_i::ComputeCAO()
{
MESSAGE ("ComputeCAO");
@ -2013,9 +1843,9 @@ CORBA::Long HOMARD_Gen_i::ComputeCAO(SMESHHOMARD::HOMARD_Cas_var myCase,
// A.1. Bases
int codret = 0;
// A.2. Le sous-répertoire de l'iteration en cours de traitement
char* DirCompute = myIteration->GetDirName();
char* DirCompute = myIteration1->GetDirName();
// A.3. Le maillage résultat de l'iteration en cours de traitement
char* MeshFile = myIteration->GetMeshFile();
char* MeshFile = myIteration1->GetMeshFile();
// B. Les données pour FrontTrack
// B.1. Le maillage à modifier
@ -2077,9 +1907,6 @@ CORBA::Long HOMARD_Gen_i::ComputeCAO(SMESHHOMARD::HOMARD_Cas_var myCase,
const std::string theXaoFileName = myBoundary->GetDataFile();
MESSAGE (". theXaoFileName = " << theXaoFileName);
// B.5. Parallélisme
bool theIsParallel = false;
// C. Lancement des projections
MESSAGE (". Lancement des projections");
@ -2101,15 +1928,11 @@ CORBA::Long HOMARD_Gen_i::ComputeCAO(SMESHHOMARD::HOMARD_Cas_var myCase,
PyRun_SimpleString(pyCommand.c_str());
PyGILState_Release(gstate);
//SMESHHOMARDImpl::FrontTrack* myFrontTrack = new SMESHHOMARDImpl::FrontTrack();
//myFrontTrack->track(theInputMedFile, theOutputMedFile,
// theInputNodeFiles, theXaoFileName, theIsParallel);
// D. Transfert des coordonnées modifiées dans le fichier historique de HOMARD
// On lance une exécution spéciale de HOMARD en attendant
// de savoir le faire avec MEDCoupling
MESSAGE (". Transfert des coordonnées");
codret = ComputeCAObis(myIteration);
codret = ComputeCAObis();
return codret;
}
@ -2117,7 +1940,7 @@ CORBA::Long HOMARD_Gen_i::ComputeCAO(SMESHHOMARD::HOMARD_Cas_var myCase,
//=============================================================================
// Transfert des coordonnées en suivi de frontière CAO
//=============================================================================
CORBA::Long HOMARD_Gen_i::ComputeCAObis(SMESHHOMARD::HOMARD_Iteration_var myIteration)
CORBA::Long HOMARD_Gen_i::ComputeCAObis()
{
MESSAGE ("ComputeCAObis");
@ -2126,7 +1949,7 @@ CORBA::Long HOMARD_Gen_i::ComputeCAObis(SMESHHOMARD::HOMARD_Iteration_var myIter
// A.1. Controle de la possibilite d'agir
// A.1.1. Etat de l'iteration
int etat = myIteration->GetState();
int etat = myIteration1->GetState();
MESSAGE ("etat = " << etat);
// A.1.2. L'iteration doit être calculee
if (etat == 1) {
@ -2138,7 +1961,7 @@ CORBA::Long HOMARD_Gen_i::ComputeCAObis(SMESHHOMARD::HOMARD_Iteration_var myIter
}
// A.2. Numero de l'iteration
// siterp1 : numero de l'iteration a traiter
int NumeIter = myIteration->GetNumber();
int NumeIter = myIteration1->GetNumber();
std::string siterp1;
std::stringstream saux1;
saux1 << NumeIter;
@ -2150,14 +1973,14 @@ CORBA::Long HOMARD_Gen_i::ComputeCAObis(SMESHHOMARD::HOMARD_Iteration_var myIter
ASSERT(!CORBA::is_nil(myCase));
// A.4. Le sous-répertoire de l'iteration a traiter
char* DirCompute = myIteration->GetDirName();
char* DirCompute = myIteration1->GetDirName();
MESSAGE(". DirCompute = " << DirCompute);
// C. Le fichier des messages
std::string LogFile = DirCompute;
LogFile += "/Liste." + siterp1 + ".maj_coords.log";
MESSAGE (". LogFile = " << LogFile);
myIteration->SetFileInfo(LogFile.c_str());
myIteration1->SetFileInfo(LogFile.c_str());
// D. On passe dans le répertoire de l'iteration a calculer
MESSAGE (". On passe dans DirCompute = " << DirCompute);
@ -2169,9 +1992,9 @@ CORBA::Long HOMARD_Gen_i::ComputeCAObis(SMESHHOMARD::HOMARD_Iteration_var myIter
myDriver->TexteInit(DirCompute, LogFile, "English");
// E.2. Le maillage associe a l'iteration
const char* NomMesh = myIteration->GetMeshName();
const char* NomMesh = myIteration1->GetMeshName();
MESSAGE (". NomMesh = " << NomMesh);
const char* MeshFile = myIteration->GetMeshFile();
const char* MeshFile = myIteration1->GetMeshFile();
MESSAGE (". MeshFile = " << MeshFile);
// E.3. Les données du traitement HOMARD
@ -2296,8 +2119,7 @@ char* HOMARD_Gen_i::CreateDirNameIter(const char* nomrep, CORBA::Long num)
//=============================================================================
// Calcul d'une iteration : gestion du répertoire de calcul
//=============================================================================
char* HOMARD_Gen_i::ComputeDirManagement(SMESHHOMARD::HOMARD_Cas_var myCase,
SMESHHOMARD::HOMARD_Iteration_var myIteration)
char* HOMARD_Gen_i::ComputeDirManagement()
{
MESSAGE ("ComputeDirManagement : répertoires pour le calcul");
@ -2313,7 +2135,7 @@ char* HOMARD_Gen_i::ComputeDirManagement(SMESHHOMARD::HOMARD_Cas_var myCase,
// B.3. Le sous-répertoire de l'iteration a calculer, puis le répertoire complet a creer
// B.3.1. Le nom du sous-répertoire
const char* nomDirIt = myIteration->GetDirNameLoc();
const char* nomDirIt = myIteration1->GetDirNameLoc();
// B.3.2. Le nom complet du sous-répertoire
std::stringstream DirCompute;
@ -2395,8 +2217,7 @@ char* HOMARD_Gen_i::ComputeDirManagement(SMESHHOMARD::HOMARD_Cas_var myCase,
//=============================================================================
// Calcul d'une iteration : gestion du répertoire de calcul de l'iteration parent
//=============================================================================
char* HOMARD_Gen_i::ComputeDirPaManagement(SMESHHOMARD::HOMARD_Cas_var myCase,
SMESHHOMARD::HOMARD_Iteration_var myIteration)
char* HOMARD_Gen_i::ComputeDirPaManagement()
{
MESSAGE ("ComputeDirPaManagement : répertoires pour le calcul");
// Le répertoire du cas
@ -2421,7 +2242,7 @@ char* HOMARD_Gen_i::ComputeDirPaManagement(SMESHHOMARD::HOMARD_Cas_var myCase,
// 2. les liens avec les groupes
// 3. un entier resumant le type de comportement pour les frontieres
//=============================================================================
int HOMARD_Gen_i::DriverTexteBoundary(SMESHHOMARD::HOMARD_Cas_var myCase, SMESHHOMARDImpl::HomardDriver* myDriver)
int HOMARD_Gen_i::DriverTexteBoundary(SMESHHOMARDImpl::HomardDriver* myDriver)
{
MESSAGE ("... DriverTexteBoundary");
// 1. Recuperation des frontieres

View File

@ -138,27 +138,6 @@ private:
SMESHHOMARD::HOMARD_Gen_var _gen_i;
};
class SMESH_I_EXPORT HOMARD_Hypothesis_i : public virtual SALOME::GenericObj_i,
public virtual POA_SMESHHOMARD::HOMARD_Hypothesis
{
public:
HOMARD_Hypothesis_i(SMESHHOMARD::HOMARD_Gen_var gen_i);
HOMARD_Hypothesis_i();
virtual ~HOMARD_Hypothesis_i();
// Generalites
void SetExtraOutput(CORBA::Long ExtraOutput);
CORBA::Long GetExtraOutput();
void LinkIteration(const char* NomIteration);
void UnLinkIteration(const char* NomIteration);
private:
SMESHHOMARDImpl::HOMARD_Hypothesis* myHomardHypothesis;
SMESHHOMARD::HOMARD_Gen_var _gen_i;
};
class SMESH_I_EXPORT HOMARD_Iteration_i : public virtual SALOME::GenericObj_i,
public virtual POA_SMESHHOMARD::HOMARD_Iteration
{
@ -200,15 +179,10 @@ public:
void LinkNextIteration(const char* NomIteration);
void UnLinkNextIteration(const char* NomIteration);
void SetIterParentName(const char* NomIterParent);
char* GetIterParentName();
// Liens avec les autres structures
void SetCaseName(const char* NomCas);
char* GetCaseName();
void SetHypoName(const char* NomHypo);
// Drivers
void SetInfoCompute(CORBA::Long MessInfo);
CORBA::Long GetInfoCompute();
@ -284,18 +258,12 @@ public:
char* CreateDirNameIter(const char* nomrep, CORBA::Long num);
CORBA::Long Compute();
CORBA::Long ComputeAdap(SMESHHOMARD::HOMARD_Cas_var myCase,
SMESHHOMARD::HOMARD_Iteration_var myIteration,
SMESHHOMARDImpl::HomardDriver* myDriver);
CORBA::Long ComputeCAO(SMESHHOMARD::HOMARD_Cas_var myCase,
SMESHHOMARD::HOMARD_Iteration_var myIteration);
CORBA::Long ComputeCAObis(SMESHHOMARD::HOMARD_Iteration_var myIteration);
char* ComputeDirManagement(SMESHHOMARD::HOMARD_Cas_var myCase,
SMESHHOMARD::HOMARD_Iteration_var myIteration);
char* ComputeDirPaManagement(SMESHHOMARD::HOMARD_Cas_var myCase,
SMESHHOMARD::HOMARD_Iteration_var myIteration);
int DriverTexteBoundary(SMESHHOMARD::HOMARD_Cas_var myCase,
SMESHHOMARDImpl::HomardDriver* myDriver);
CORBA::Long ComputeAdap(SMESHHOMARDImpl::HomardDriver* myDriver);
CORBA::Long ComputeCAO();
CORBA::Long ComputeCAObis();
char* ComputeDirManagement();
char* ComputeDirPaManagement();
int DriverTexteBoundary(SMESHHOMARDImpl::HomardDriver* myDriver);
void PublishResultInSmesh(const char* NomFich, CORBA::Long Option);
void DeleteResultInSmesh(std::string NomFich, std::string MeshName);
@ -323,7 +291,6 @@ private:
private:
SMESHHOMARDImpl::HOMARD_Gen* myHomard;
std::map<std::string, SMESHHOMARD::HOMARD_Boundary_var> _mesBoundarys;
SMESHHOMARD::HOMARD_Hypothesis_var myHypothesis;
SMESHHOMARD::HOMARD_Iteration_var myIteration0;
SMESHHOMARD::HOMARD_Iteration_var myIteration1;
SMESHHOMARD::HOMARD_Cas_var myCase;