Salome HOME
#24666 [CEA][Windows] BLSURPLUGIN compilation issue
[modules/smesh.git] / src / SMESHDS / SMESHDS_Hypothesis.cxx
index b88b3437dd77c5d5d401010102544abfc4a00902..712ab920dc2929cc2da58a247913f4b10bcbf807 100644 (file)
@@ -114,3 +114,33 @@ bool SMESHDS_Hypothesis::IsSameName( const SMESHDS_Hypothesis& other) const
 {
   return _name == other._name;
 }
+
+//================================================================================
+/*!
+ * \brief Save a string to a stream
+ */
+//================================================================================
+
+void SMESHDS_Hypothesis::SaveStringToStream(std::ostream & save, const std::string& txt )
+{
+  save << " " << txt.size() << " " << txt;
+}
+
+//================================================================================
+/*!
+ * \brief Load a string from a stream
+ */
+//================================================================================
+
+bool SMESHDS_Hypothesis::LoadStringFromStream(std::istream & load, std::string& txt )
+{
+  txt.clear();
+  int size = -1;
+  if ( static_cast<bool>( load >> size ) && size > 0 )
+  {
+    txt.resize( size, '\0' );
+    load.get( txt[0] ); // remove a white-space
+    load.get( & txt[0], size + 1 );
+  }
+  return (int)txt.size() == size;
+}