OpenLexocad  28.0
IFC_Importer.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include <LxIfcBase/LxIfcModel.h>
4 #include <LxIfcDataBridge/IfcDataBridge.h>
5 #include <OpenLxApp/Document.h>
6 #include <OpenLxApp/Importer.h>
7 
8 namespace Gui
9 {
10 class CmdImportFile;
11 }
12 
13 namespace OpenLxApp
14 {
18 class LX_OPENLXAPP_EXPORT IFC_Importer : public Importer
19 {
20 public:
21  IFC_Importer(std::shared_ptr<OpenLxApp::Document> aDoc);
22  IFC_Importer() = delete;
23  virtual ~IFC_Importer() {}
24  static std::shared_ptr<IFC_Importer> createIn(std::shared_ptr<OpenLxApp::Document> aDoc);
25 
26  virtual int importFile(const Base::String& filename) override;
27  virtual std::vector<std::shared_ptr<OpenLxApp::Element>> getImportedElems() const override;
28 
29  std::shared_ptr<LxIfcDataBridge::IfcDataBridge> getDataBridge() const;
30  std::shared_ptr<LxIfcBase::LxIfcModel> getModel() const;
31 
32 private:
33  Gui::CmdImportFile* _cmd = nullptr;
34 };
35 } // namespace OpenLxApp
OpenLxApp
Definition: ActiveScript.h:10
OpenLxApp::IFC_Importer::IFC_Importer
IFC_Importer()=delete
OpenLxApp::IFC_Importer::getModel
std::shared_ptr< LxIfcBase::LxIfcModel > getModel() const
OpenLxApp::IFC_Importer::IFC_Importer
IFC_Importer(std::shared_ptr< OpenLxApp::Document > aDoc)
OpenLxApp::IFC_Importer::importFile
virtual int importFile(const Base::String &filename) override
Importer.h
OpenLxApp::IFC_Importer::getImportedElems
virtual std::vector< std::shared_ptr< OpenLxApp::Element > > getImportedElems() const override
OpenLxApp::IFC_Importer::getDataBridge
std::shared_ptr< LxIfcDataBridge::IfcDataBridge > getDataBridge() const
OpenLxApp::Importer
Base class of all Importers.
Definition: Importer.h:17
OpenLxApp::IFC_Importer::createIn
static std::shared_ptr< IFC_Importer > createIn(std::shared_ptr< OpenLxApp::Document > aDoc)
OpenLxApp::IFC_Importer::~IFC_Importer
virtual ~IFC_Importer()
Definition: IFC_Importer.h:23
Base::String
A Utf-16 (windows) or ucs4 (unix) encoded string class.
Definition: String.h:18
OpenLxApp::IFC_Importer
Imports an IFC file.
Definition: IFC_Importer.h:19
Document.h