Salome HOME
updated copyright message
[modules/shaper.git] / src / ModelHighAPI / ModelHighAPI_Double.cpp
index 35370c8190295fb7bcbdc02229ce90c1c06dafd6..fa450101b0a90ecb08c1b2f626585409faf71e34 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2014-2019  CEA/DEN, EDF R&D
+// Copyright (C) 2014-2023  CEA, EDF
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
@@ -21,6 +21,8 @@
 
 #include <ModelAPI_AttributeDouble.h>
 #include <GeomDataAPI_Point.h>
+
+#include <sstream>
 //--------------------------------------------------------------------------------------
 
 //--------------------------------------------------------------------------------------
@@ -30,13 +32,13 @@ ModelHighAPI_Double::ModelHighAPI_Double(double theValue)
 {
 }
 
-ModelHighAPI_Double::ModelHighAPI_Double(const std::string & theValue)
+ModelHighAPI_Double::ModelHighAPI_Double(const std::wstring & theValue)
 : myVariantType(VT_STRING)
 , myString(theValue)
 {
 }
 
-ModelHighAPI_Double::ModelHighAPI_Double(const char * theValue)
+ModelHighAPI_Double::ModelHighAPI_Double(const wchar_t * theValue)
 : myVariantType(VT_STRING)
 , myString(theValue)
 {
@@ -46,6 +48,22 @@ ModelHighAPI_Double::~ModelHighAPI_Double()
 {
 }
 
+double ModelHighAPI_Double::value() const
+{
+  // needed for array of double, which supports no text
+  return myDouble;
+}
+
+std::wstring ModelHighAPI_Double::string() const
+{
+  if (myVariantType == VT_STRING)
+    return myString;
+
+  std::wostringstream anOut;
+  anOut << myDouble;
+  return anOut.str();
+}
+
 //--------------------------------------------------------------------------------------
 void ModelHighAPI_Double::fillAttribute(
     const std::shared_ptr<ModelAPI_AttributeDouble> & theAttribute) const