X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESH_I%2FMG_ADAPT_i.hxx;h=626a6ff56b4b2511cac7eddec277c6e74b42e8ed;hp=7ff30dce4ff20312219cc93a5d2d7fd615f1d4ef;hb=499f29d24922cec66e41b41a0039a954993bc6df;hpb=456850beda350181d4af970ac59b64c55cde20e3 diff --git a/src/SMESH_I/MG_ADAPT_i.hxx b/src/SMESH_I/MG_ADAPT_i.hxx index 7ff30dce4..626a6ff56 100644 --- a/src/SMESH_I/MG_ADAPT_i.hxx +++ b/src/SMESH_I/MG_ADAPT_i.hxx @@ -1,138 +1,172 @@ +// Copyright (C) 2020-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, 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 +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// + #ifndef MG_ADAPT_I_HXX #define MG_ADAPT_I_HXX -#include "MG_ADAPT.hxx" #include "SMESH.hxx" + #include -//~#include CORBA_SERVER_HEADER(ADAPT_Gen) #include CORBA_SERVER_HEADER(MG_ADAPT) - #include "SALOME_GenericObj_i.hh" -#include "SALOME_Component_i.hxx" -#include "SALOME_NamingService.hxx" -#include "Utils_CorbaException.hxx" +#include #include -//~struct MgAdaptHypothesisData; -//~static void copyHypothesisDataToImpl(SMESH::MgAdaptHypothesisData& from, MG_ADAPT::MgAdaptHypothesisData* to); -//~static void copyHypothesisDataFromImpl(MG_ADAPT::MgAdaptHypothesisData* from, SMESH::MgAdaptHypothesisData& to); -//~class MgAdapt; +namespace MG_ADAPT +{ + class MgAdaptHypothesisData; + class MgAdapt; +} + namespace SMESH { + class SMESH_I_EXPORT MG_ADAPT_i : public virtual SALOME::GenericObj_i, public virtual POA_SMESH::MG_ADAPT { public: - //~MG_ADAPT_i( CORBA::ORB_ptr orb, ADAPT::ADAPT_Gen_var gen_i ); - //~static SMESH::MG_ADAPT_ptr CreateMG_ADAPT(); - //~MG_ADAPT_i(PortableServer::POA_var poa); - MG_ADAPT_i(); - virtual ~MG_ADAPT_i(); - //~void setData( SMESH::MgAdaptHypothesisData* data); - void setData( SMESH::MgAdaptHypothesisData& data); - - void setMedFileIn(const char* str); - char* getMedFileIn(); - - void setMedFileOut(const char* str); - char* getMedFileOut(); - - void setMeshName(const char* str); - char* getMeshName(); - - void setMeshNameOut(const char* str); - char* getMeshNameOut(); - - void setMeshOutMed(bool mybool); - bool getMeshOutMed(); - - void setPublish(bool mybool); - bool getPublish(); - - void setFieldName(const char* str); - char* getFieldName(); - - void setTimeStep(CORBA::Long t); - CORBA::Long getTimeStep() ; - - void setRankTimeStep(CORBA::Long t, CORBA::Long r ); - CORBA::Long getRank(); - - void setTimeStepRankLast(); - void setNoTimeStep(); - - void setLogFile(const char* str); - char* getLogFile(); - - void setVerbosityLevel(CORBA::Long v); - CORBA::Long getVerbosityLevel(); - - void setRemoveOnSuccess(bool mybool); - bool getRemoveOnSuccess(); - - SMESH::MgAdaptHypothesisData* getData() ; - - void setUseLocalMap(bool mybool); - bool getUseLocalMap(); - - void setUseBackgroundMap(bool mybool); - bool getUseBackgroundMap(); - - void setUseConstantValue(bool mybool); - bool getUseConstantValue(); - - void setConstantValue(double value); - double getConstantValue(); - - void setSizeMapFile(const char* str); - char* getSizeMapFile(); - - void setFromMedFile(bool mybool); - bool isFromMedFile(); - - void setKeepWorkingFiles(bool mybool); - bool getKeepWorkingFiles(); - - //~void setPrCORBA::LongLogInFile(bool); - //~bool getPrCORBA::LongLogInFile(); - - void setWorkingDir(const char* str); - char* getWorkingDir() ; - - void setPrintLogInFile(bool mybool); - bool getPrintLogInFile(); - - bool setAll(); - char* getCommandToRun() ; - CORBA::Long compute(::CORBA::String_out errStr); - char* getFileName(); - char* getExeName(); - void copyMgAdaptHypothesisData( const SMESH::MgAdaptHypothesisData& data ) ; - //~void copyMgAdaptHypothesisData( const SMESH::MgAdaptHypothesisData& data ) { - //~copyMgAdaptHypothesisData(&data); - //~} - - //~void checkDirPath(char*& str); - - bool hasOptionDefined( const char* optionName ) ; - void setOptionValue(const char* optionName, - const char* optionValue) throw (std::invalid_argument); - char* getOptionValue(const char* optionName, - bool& isDefault) throw (std::invalid_argument); - str_array* getCustomOptionValuesStrVec() ; - str_array* getOptionValuesStrVec() ; - void copyHypothesisDataFromImpl(const ::MG_ADAPT::MgAdaptHypothesisData* from, SMESH::MgAdaptHypothesisData* to) const; - void copyHypothesisDataToImpl(const SMESH::MgAdaptHypothesisData& from, ::MG_ADAPT::MgAdaptHypothesisData* to) const; - //~TOptionValues getOptionValues() const; - //~const TOptionValues& getCustomOptionValues() const ; + MG_ADAPT_i(); + virtual ~MG_ADAPT_i(); + void setData( SMESH::MgAdaptHypothesisData& data); + + void setMedFileIn(const char* str); + char* getMedFileIn(); + + void setMedFileOut(const char* str); + char* getMedFileOut(); + + void setMeshName(const char* str); + char* getMeshName(); + + void setMeshNameOut(const char* str); + char* getMeshNameOut(); + + void setMeshOutMed(bool mybool); + bool getMeshOutMed(); + + void setPublish(bool mybool); + bool getPublish(); + + void setSizeMapFieldName(const char* str); + char* getSizeMapFieldName(); + + void setTimeStep(CORBA::Long t); + CORBA::Long getTimeStep() ; + + void setTimeStepRank(CORBA::Long t, CORBA::Long r ); + CORBA::Long getRank(); + + void setTimeStepRankLast(); + void setNoTimeStep(); + + void setLogFile(const char* str); + char* getLogFile(); + + void setVerbosityLevel(CORBA::Long v); + CORBA::Long getVerbosityLevel(); + + void setRemoveOnSuccess(bool mybool); + bool getRemoveOnSuccess(); + + SMESH::MgAdaptHypothesisData* getData() ; + void setSizeMapType(const char* type); + void setUseLocalMap(bool mybool); + bool getUseLocalMap(); + + void setUseBackgroundMap(bool mybool); + bool getUseBackgroundMap(); + + void setUseConstantValue(bool mybool); + bool getUseConstantValue(); + + void setConstantSize(double value); + double getConstantSize(); + + void setSizeMapFile(const char* str); + char* getSizeMapFile(); + + void setFromMedFile(bool mybool); + bool isFromMedFile(); + + void setKeepWorkingFiles(bool mybool); + bool getKeepWorkingFiles(); + + //~void setPrCORBA::LongLogInFile(bool); + //~bool getPrCORBA::LongLogInFile(); + + void setWorkingDir(const char* str); + char* getWorkingDir() ; + + void setPrintLogInFile(bool mybool); + bool getPrintLogInFile(); + + bool setAll(); + char* getCommandToRun() ; + void compute(); + char* getFileName(); + char* getExeName(); + void copyMgAdaptHypothesisData( const SMESH::MgAdaptHypothesisData& data ) ; + //~void copyMgAdaptHypothesisData( const SMESH::MgAdaptHypothesisData& data ) { + //~copyMgAdaptHypothesisData(&data); + //~} + + //~void checkDirPath(char*& str); + + bool hasOptionDefined( const char* optionName ) ; + void setOptionValue(const char* optionName, + const char* optionValue); + char* getOptionValue(const char* optionName, + bool& isDefault); + SMESH::string_array* getCustomOptionValuesStrVec() ; + SMESH::string_array* getOptionValuesStrVec() ; + void copyHypothesisDataFromImpl(const ::MG_ADAPT::MgAdaptHypothesisData* from, SMESH::MgAdaptHypothesisData* to) const; + void copyHypothesisDataToImpl(const SMESH::MgAdaptHypothesisData& from, ::MG_ADAPT::MgAdaptHypothesisData* to) const; + //~TOptionValues getOptionValues() const; + //~const TOptionValues& getCustomOptionValues() const ; + char* getErrMsg(); private: - ::MG_ADAPT::MgAdapt* myMgAdapt; + ::MG_ADAPT::MgAdapt* myMgAdapt; + std::string errStr; - //~CORBA::ORB_ptr _orb; - //~ADAPT::ADAPT_Gen_var _gen_i; - }; + +class SMESH_I_EXPORT MG_ADAPT_OBJECT_i: + public virtual SALOME::GenericObj_i, + public virtual POA_SMESH::MG_ADAPT_OBJECT { +public : + MG_ADAPT_OBJECT_i(); + void setMeshIn( SMESH::SMESH_Mesh_ptr theMesh ); + void setMEDFileIn(const char* f); + void setMEDFileOut(const char* f); + void setMEDFileBackground(const char* f); + void AddHypothesis(SMESH::MG_ADAPT_ptr); + CORBA::Long Compute(bool Publish); +private: +std::string medFileIn, medFileOut, medFileBackground; +bool checkMeshFileIn(); +bool publish; +SMESH::SMESH_Mesh_var myMesh; +SALOME::GenericObj_wrap hypothesis; +}; + } + #endif // MG_ADAPT_I_HXX