X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FSMESH_I%2FSMESH_PythonDump.hxx;h=1025f4cf85381d3490eb986d46e8d0a4f416f58b;hb=0fc0831670e27a5611b941c52dc152fd63964515;hp=595e732fa952be39a50f2372bba61d872e0bdae4;hpb=7ba6caead509499e353b12ac44a26a9eb7b0eecf;p=modules%2Fsmesh.git diff --git a/src/SMESH_I/SMESH_PythonDump.hxx b/src/SMESH_I/SMESH_PythonDump.hxx index 595e732fa..1025f4cf8 100644 --- a/src/SMESH_I/SMESH_PythonDump.hxx +++ b/src/SMESH_I/SMESH_PythonDump.hxx @@ -1,4 +1,4 @@ -// Copyright (C) 2007-2013 CEA/DEN, EDF R&D, OPEN CASCADE +// Copyright (C) 2007-2020 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,9 +27,12 @@ #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 @@ -38,7 +41,6 @@ class SMESH_Gen_i; class SMESH_MeshEditor_i; -class Resource_DataMapOfAsciiStringAsciiString; // =========================================================================================== /*! @@ -60,14 +62,13 @@ public: * \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 + * \retval TCollection_AsciiString - Conversion result */ 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); /*! @@ -88,7 +89,7 @@ namespace SMESH // =========================================================================================== /*! - * \brief Object used to make TPythonDump know that its held value can be a varible + * \brief Object used to make TPythonDump know that its held value can be a variable * * TPythonDump substitute TVar with names of notebook variables if any. */ @@ -97,6 +98,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); @@ -162,6 +164,9 @@ namespace SMESH TPythonDump& operator<<(const SMESH::string_array& theArg); + TPythonDump& + operator<<(const SMESH::nodes_array& theArg); + TPythonDump& operator<<(SMESH::SMESH_Hypothesis_ptr theArg); @@ -195,9 +200,6 @@ namespace SMESH TPythonDump& operator<<(SMESH_MeshEditor_i* theArg); - TPythonDump& - operator<<(SMESH::MED_VERSION theArg); - TPythonDump& operator<<(const SMESH::AxisStruct & theAxis); @@ -216,9 +218,48 @@ 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::submesh_array& theList); + + TPythonDump& + operator<<(const SMESH::ListOfHypothesis& theList); + + TPythonDump& + operator<<(const SMESH::CoincidentFreeBorders& theCFB); + + TPythonDump& + operator<<(const std::string& theArg); + + + template + static TStream& DumpArray(const TArray& theArray, TStream & theStream) + { + if ( theArray.length() == 0 ) + { + theStream << "[]"; + } + else + { + theStream << "[ "; + for (CORBA::ULong i = 1; i <= theArray.length(); i++) { + theStream << theArray[i-1]; + if ( i < theArray.length() ) + theStream << ", "; + } + theStream << " ]"; + } + return theStream; + } + static const char* SMESHGenName() { return "smeshgen"; } static const char* MeshEditorName() { return "mesh_editor"; } static const char* NotPublishedObjectName();