Salome HOME
Fix compilation errors (part 2)
[modules/shaper.git] / src / ExchangeAPI / ExchangeAPI_Import.h
1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 // Name   : ExchangeAPI_Import.h
4 // Purpose:
5 //
6 // History:
7 // 07/06/16 - Sergey POKHODENKO - Creation of the file
8
9 #ifndef SRC_EXCHANGEAPI_EXCHANGEAPI_IMPORT_H_
10 #define SRC_EXCHANGEAPI_EXCHANGEAPI_IMPORT_H_
11
12 //--------------------------------------------------------------------------------------
13 #include "ExchangeAPI.h"
14
15 #include <string>
16
17 #include <ExchangePlugin_ImportFeature.h>
18
19 #include <ModelHighAPI_Interface.h>
20 #include <ModelHighAPI_Macro.h>
21 //--------------------------------------------------------------------------------------
22 /**\class ExchangeAPI_Import
23  * \ingroup CPPHighAPI
24  * \brief Interface for Import feature
25  */
26 class ExchangeAPI_Import : public ModelHighAPI_Interface
27 {
28 public:
29   /// Constructor without values
30   EXCHANGEAPI_EXPORT
31   explicit ExchangeAPI_Import(const std::shared_ptr<ModelAPI_Feature> & theFeature);
32   /// Constructor with values
33   EXCHANGEAPI_EXPORT
34   ExchangeAPI_Import(const std::shared_ptr<ModelAPI_Feature> & theFeature,
35                      const std::string & theFilePath);
36   /// Destructor
37   EXCHANGEAPI_EXPORT
38   virtual ~ExchangeAPI_Import();
39
40   INTERFACE_1(ExchangePlugin_ImportFeature::ID(),
41               filePath, ExchangePlugin_ImportFeature::FILE_PATH_ID(),
42               ModelAPI_AttributeString, /** File path */
43   )
44
45   /// Set point values
46   EXCHANGEAPI_EXPORT
47   void setFilePath(const std::string & theFilePath);
48
49   /// Dump wrapped feature
50   EXCHANGEAPI_EXPORT
51   virtual void dump(ModelHighAPI_Dumper& theDumper) const;
52 };
53
54 //! Pointer on Import object
55 typedef std::shared_ptr<ExchangeAPI_Import> ImportPtr;
56
57 /**\ingroup CPPHighAPI
58  * \brief Create Import feature
59  */
60 EXCHANGEAPI_EXPORT
61 ImportPtr addImport(const std::shared_ptr<ModelAPI_Document> & thePart,
62                     const std::string & theFilePath);
63
64 //--------------------------------------------------------------------------------------
65 //--------------------------------------------------------------------------------------
66 #endif /* SRC_EXCHANGEAPI_EXCHANGEAPI_IMPORT_H_ */