+
+ TPythonDump&
+ operator<<(SMESH::Measurements_i* theArg);
+
+ TPythonDump&
+ operator<<(SMESH_Gen_i* theArg);
+
+ TPythonDump&
+ operator<<(SMESH_MeshEditor_i* theArg);
+
+ TPythonDump&
+ operator<<(const SMESH::AxisStruct & theAxis);
+
+ TPythonDump&
+ operator<<(const SMESH::DirStruct & theDir);
+
+ TPythonDump&
+ operator<<(const SMESH::PointStruct & P);
+
+ TPythonDump&
+ operator<<(const TCollection_AsciiString & theArg);
+
+ TPythonDump&
+ operator<<(const SMESH::ListOfGroups& theList);
+
+ 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<class TArray, class TStream>
+ 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();
+
+ /*!
+ * \brief Return marker of long string literal beginning
+ * \param type - a name of functionality producing the string literal
+ * \retval TCollection_AsciiString - the marker string to be written into
+ * a raw python script
+ */
+ static TCollection_AsciiString LongStringStart(const char* type);
+ /*!
+ * \brief Return marker of long string literal end
+ * \retval TCollection_AsciiString - the marker string to be written into
+ * a raw python script
+ */
+ static TCollection_AsciiString LongStringEnd();
+ /*!
+ * \brief Cut out a long string literal from a string
+ * \param theText - text possibly containing string literals
+ * \param theFrom - position in the text to search from
+ * \param theLongString - the retrieved literal
+ * \param theStringType - a name of functionality produced the literal
+ * \retval bool - true if a string literal found
+ *
+ * The literal is removed from theText; theFrom points position right after
+ * the removed literal
+ */
+ static bool CutoutLongString( TCollection_AsciiString & theText,
+ int & theFrom,
+ TCollection_AsciiString & theLongString,
+ TCollection_AsciiString & theStringType);