X-Git-Url: http://git.salome-platform.org/gitweb/?p=modules%2Fsmesh.git;a=blobdiff_plain;f=src%2FSMESH_I%2FSMESH_PythonDump.hxx;h=8f1a7971512e0db8ee75d2663ea374f3bc932c22;hp=4ff5cfc28bf15d1845b6eec6c26ef21a8e633182;hb=20d9e162bd67182cbfa841bbfc9319919f4703e3;hpb=7aebb99e42c6b0c3c056a5eecb0f29033db2231a diff --git a/src/SMESH_I/SMESH_PythonDump.hxx b/src/SMESH_I/SMESH_PythonDump.hxx index 4ff5cfc28..8f1a79715 100644 --- a/src/SMESH_I/SMESH_PythonDump.hxx +++ b/src/SMESH_I/SMESH_PythonDump.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2012 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2016 CEA/DEN, EDF R&D, OPEN CASCADE // // Copyright (C) 2003-2007 OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN, // CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS @@ -6,7 +6,7 @@ // 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 @@ -27,19 +27,24 @@ #include #include CORBA_SERVER_HEADER(SMESH_Mesh) +#include CORBA_SERVER_HEADER(SMESH_MeshEditor) +#include CORBA_SERVER_HEADER(GEOM_Gen) #include CORBA_SERVER_HEADER(SALOMEDS) +#include +#include + #include #include +#include +#include class SMESH_Gen_i; class SMESH_MeshEditor_i; -class TCollection_AsciiString; -class Resource_DataMapOfAsciiStringAsciiString; // =========================================================================================== /*! - * \brief Tool converting SMESH engine calls into commands defined in smeshDC.py + * \brief Tool converting SMESH engine calls into commands defined in smeshBuilder.py * * Implementation is in SMESH_2smeshpy.cxx */ @@ -49,18 +54,21 @@ class SMESH_2smeshpy { public: /*! - * \brief Convert a python script using commands of smesh.py - * \param theScript - Input script - * \param theEntry2AccessorMethod - The returning method names to access to + * \brief Convert a python script using commands of smeshBuilder.py + * \param theScript - the Input script to convert + * \param theEntry2AccessorMethod - returns method names to access to * objects wrapped with python class + * \param theObjectNames - names of objects + * \param theRemovedObjIDs - entries of objects whose created commands were removed * \param theHistoricalDump - true means to keep all commands, false means * to exclude commands relating to objects removed from study * \retval TCollection_AsciiString - Convertion result */ - static TCollection_AsciiString - ConvertScript(const TCollection_AsciiString& theScript, + static void + ConvertScript(std::list< TCollection_AsciiString >& theScriptLines, Resource_DataMapOfAsciiStringAsciiString& theEntry2AccessorMethod, Resource_DataMapOfAsciiStringAsciiString& theObjectNames, + std::set< TCollection_AsciiString >& theRemovedObjIDs, SALOMEDS::Study_ptr& theStudy, const bool theHistoricalDump); @@ -91,6 +99,7 @@ namespace SMESH struct SMESH_I_EXPORT TVar { std::vector< std::string > myVals; + bool myIsList; TVar(CORBA::Double value); TVar(CORBA::Long value); TVar(CORBA::Short value); @@ -98,6 +107,8 @@ namespace SMESH // string used to temporary quote variable names in order // not to confuse variables with string arguments static char Quote() { return '$'; } + // string preceding an entry of object storing the attribute holding var names + static const char* ObjPrefix() { return " # OBJ: "; } }; // =========================================================================================== @@ -154,6 +165,9 @@ namespace SMESH TPythonDump& operator<<(const SMESH::string_array& theArg); + TPythonDump& + operator<<(const SMESH::nodes_array& theArg); + TPythonDump& operator<<(SMESH::SMESH_Hypothesis_ptr theArg); @@ -208,11 +222,21 @@ namespace SMESH TPythonDump& operator<<(const SMESH::ListOfGroups * theList); + TPythonDump& + operator<<(const GEOM::ListOfGO& theList); + + TPythonDump& + operator<<(const GEOM::ListOfGBO& theList); + TPythonDump& operator<<(const SMESH::ListOfIDSources& theList); + TPythonDump& + operator<<(const SMESH::CoincidentFreeBorders& theCFB); + static const char* SMESHGenName() { return "smeshgen"; } static const char* MeshEditorName() { return "mesh_editor"; } + static const char* NotPublishedObjectName(); /*! * \brief Return marker of long string literal beginning