]> SALOME platform Git repositories - modules/shaper.git/blobdiff - src/ExchangeAPI/ExchangeAPI_Export.cpp
Salome HOME
Revert "Merge remote-tracking branch 'origin/cbr/export_to_geom_via_xao'"
[modules/shaper.git] / src / ExchangeAPI / ExchangeAPI_Export.cpp
index 71666dca3b28ca86cf1970627ddaff1ee5155172..9a49e0b64fe7eeffcfe2032889765248fdace722 100644 (file)
 
 #include "ExchangeAPI_Export.h"
 //--------------------------------------------------------------------------------------
-#include <ModelAPI_Document.h>
-#include <ModelAPI_Feature.h>
 #include <ModelHighAPI_Tools.h>
-#include <ModelHighAPI_Dumper.h>
-#include <ModelHighAPI_Services.h>
 //--------------------------------------------------------------------------------------
-
-ExchangeAPI_Export::ExchangeAPI_Export(const std::shared_ptr<ModelAPI_Feature>& theFeature)
-: ModelHighAPI_Interface(theFeature)
-{
-  initialize();
-}
-
-/// Constructor with values for XAO export.
-ExchangeAPI_Export::ExchangeAPI_Export(const std::shared_ptr<ModelAPI_Feature>& theFeature,
-                              const std::string & theFilePath,
-                              const std::string & theAuthor,
-                              const std::string & theGeometryName)
-: ModelHighAPI_Interface(theFeature)
-{
-  initialize();
-  fillAttribute("XAO", theFeature->string(ExchangePlugin_ExportFeature::EXPORT_TYPE_ID()));
-  fillAttribute(theFilePath, theFeature->string(ExchangePlugin_ExportFeature::XAO_FILE_PATH_ID()));
-  fillAttribute(theAuthor, theFeature->string(ExchangePlugin_ExportFeature::XAO_AUTHOR_ID()));
-  fillAttribute(theGeometryName,
-                theFeature->string(ExchangePlugin_ExportFeature::XAO_GEOMETRY_NAME_ID()));
-  fillAttribute("XAO", theFeature->string(ExchangePlugin_ExportFeature::FILE_FORMAT_ID()));
-  execute();
-  apply(); // finish operation to make sure the export is done on the current state of the history
-}
-
-/// Constructor with values for export in other formats than XAO.
-ExchangeAPI_Export::ExchangeAPI_Export(const std::shared_ptr<ModelAPI_Feature>& theFeature,
-                              const std::string & theFilePath,
-                              const std::list<ModelHighAPI_Selection> & theSelectionList,
-                              const std::string & theFileFormat)
-: ModelHighAPI_Interface(theFeature)
-{
-  initialize();
-  fillAttribute("Regular", theFeature->string(ExchangePlugin_ExportFeature::EXPORT_TYPE_ID()));
-  fillAttribute(theFilePath, theFeature->string(ExchangePlugin_ExportFeature::FILE_PATH_ID()));
-  fillAttribute(theSelectionList,
-                theFeature->selectionList(ExchangePlugin_ExportFeature::SELECTION_LIST_ID()));
-  fillAttribute(theFileFormat, theFeature->string(ExchangePlugin_ExportFeature::FILE_FORMAT_ID()));
-  execute();
-  apply(); // finish operation to make sure the export is done on the current state of the history
-}
-
-ExchangeAPI_Export::~ExchangeAPI_Export()
-{
-}
-
-
-void ExchangeAPI_Export::dump(ModelHighAPI_Dumper& theDumper) const
-{
-
-  FeaturePtr aBase = feature();
-  const std::string& aDocName = theDumper.name(aBase->document());
-
-  theDumper << aBase << " = model.";
-
-  std::string exportType = aBase->string(ExchangePlugin_ExportFeature::EXPORT_TYPE_ID())->value();
-
-  if (exportType == "XAO") {
-    std::string tmpXAOFile = aBase->string(ExchangePlugin_ExportFeature::XAO_FILE_PATH_ID())->value();
-    theDumper << "exportToXAO(" << aDocName << ", '" << tmpXAOFile << "'" ;
-    std::string theAuthor = aBase->string(ExchangePlugin_ExportFeature::XAO_AUTHOR_ID())->value();
-    if (not theAuthor.empty())
-      theDumper << ", '" << theAuthor << "'";
-    std::string theGeometryName = aBase->string(ExchangePlugin_ExportFeature::XAO_GEOMETRY_NAME_ID())->value();
-    if (not theGeometryName.empty())
-      theDumper << ", '" << theGeometryName << "'";
-    theDumper << ")" << std::endl;
-  }
-  else {
-      theDumper << "exportToFile(" << aDocName << ", " <<
-          aBase->string(ExchangePlugin_ExportFeature::FILE_PATH_ID()) << ", " <<
-          aBase->selectionList(ExchangePlugin_ExportFeature::SELECTION_LIST_ID()) ;
-      std::string theFileFormat = aBase->string(ExchangePlugin_ExportFeature::FILE_FORMAT_ID())->value();
-      if (not theFileFormat.empty())
-        theDumper << ", '" << theFileFormat << "'";
-      theDumper << ")" << std::endl;
-  }
-}
-
-ExportPtr exportToFile(const std::shared_ptr<ModelAPI_Document> & thePart,
+void exportToFile(const std::shared_ptr<ModelAPI_Document> & thePart,
                   const std::string & theFilePath,
                   const std::list<ModelHighAPI_Selection> & theSelectionList,
                   const std::string & theFileFormat)
 {
-  apply(); // finish previous operation to make sure all previous operations are done
   std::shared_ptr<ModelAPI_Feature> aFeature =
     thePart->addFeature(ExchangePlugin_ExportFeature::ID());
-  return ExportPtr(new ExchangeAPI_Export(aFeature, theFilePath, theSelectionList, theFileFormat));
+  fillAttribute("Regular", aFeature->string(ExchangePlugin_ExportFeature::EXPORT_TYPE_ID()));
+  fillAttribute(theFilePath, aFeature->string(ExchangePlugin_ExportFeature::FILE_PATH_ID()));
+  fillAttribute(theSelectionList,
+                aFeature->selectionList(ExchangePlugin_ExportFeature::SELECTION_LIST_ID()));
+  fillAttribute(theFileFormat, aFeature->string(ExchangePlugin_ExportFeature::FILE_FORMAT_ID()));
+  aFeature->execute();
 }
 
-ExportPtr exportToXAO(const std::shared_ptr<ModelAPI_Document> & thePart,
+void exportToXAO(const std::shared_ptr<ModelAPI_Document> & thePart,
                  const std::string & theFilePath,
                  const std::string & theAuthor,
                  const std::string & theGeometryName)
 {
-  apply(); // finish previous operation to make sure all previous operations are done
   std::shared_ptr<ModelAPI_Feature> aFeature =
     thePart->addFeature(ExchangePlugin_ExportFeature::ID());
-  return ExportPtr(new ExchangeAPI_Export(aFeature, theFilePath, theAuthor, theGeometryName));
+  fillAttribute("XAO", aFeature->string(ExchangePlugin_ExportFeature::EXPORT_TYPE_ID()));
+  fillAttribute(theFilePath, aFeature->string(ExchangePlugin_ExportFeature::XAO_FILE_PATH_ID()));
+  fillAttribute(theAuthor, aFeature->string(ExchangePlugin_ExportFeature::XAO_AUTHOR_ID()));
+  fillAttribute(theGeometryName,
+                aFeature->string(ExchangePlugin_ExportFeature::XAO_GEOMETRY_NAME_ID()));
+  fillAttribute("XAO", aFeature->string(ExchangePlugin_ExportFeature::FILE_FORMAT_ID()));
+  aFeature->execute();
 }
 
 //--------------------------------------------------------------------------------------