API Documentation
Loading...
Searching...
No Matches
SH3DFactory.h
Go to the documentation of this file.
1#pragma once
2#include "DLLInfo.h"
7#include "Base/Headers/UUID.h"
8namespace NDEVR
9{
10 class File;
11 class Model;
12 class FactoryFeatures;
13 class FactoryOptions;
14 class DesignObjectLookup;
15 /**--------------------------------------------------------------------------------------------------
16 \brief Writes to Sweet Home 3D file using the IOFactory interface.
17 **/
19 {
20 public:
24 void getSupportedFormats(Buffer<FileFormat>& formats, bool is_read) override;
25 bool canRead(const FactoryParameters& file) override;
26 bool readFile(FactoryParameters& file) override;
27 bool writeFile(FactoryParameters& file) override;
28 bool determineExtension(const File& file, String& extension) override;
29 Buffer<UUID> filterModelsToExport(Buffer<UUID> models_to_check, const DesignObjectLookup* lookup, const FileFormat& export_format) const override;
30 FactoryFeatures factoryFeatures(const FactoryParameters& file, bool is_import) const override;
36 protected:
38 };
39
40
41}
#define SWEET_HOME_INTERFACE_API
Definition DLLInfo.h:56
The equivelent of std::vector but with a bit more control. The basic array unit of the library.
Definition Buffer.hpp:56
A core class where all Design Objects including models, materials, and geometries are stored....
Definition DesignObjectLookup.h:65
Allows IOFactories to report what features they support to make the import/export dialogs easier to s...
Definition FactoryFeatures.h:44
User-defined options that define preferences for importing and exporting using IOFactory objects.
Definition FactoryOptions.h:49
Data that describes a particular file format and how to use the format with the program....
Definition FileFormat.h:43
Logic for reading or writing to a file as well as navigating filesystems.
Definition File.h:48
A service that provides Import/Export functionality for a model heirarchy. These can be registered wi...
Definition IOFactory.h:117
Writes to Sweet Home 3D file using the IOFactory interface.
Definition SH3DFactory.h:19
Buffer< UUID > filterModelsToExport(Buffer< UUID > models_to_check, const DesignObjectLookup *lookup, const FileFormat &export_format) const override
bool writeFile(FactoryParameters &file) override
Buffer< String > m_generating_software_to_treat_as_scan
Definition SH3DFactory.h:37
FactoryOptions defaultReadOptions(const FactoryParameters &file) const override
FactoryFeatures factoryFeatures(const FactoryParameters &file, bool is_import) const override
static FileFormat SH3DFormat()
bool readFile(FactoryParameters &file) override
void setGeneratingSoftwareToTreatAsScan(const Buffer< String > &software)
void getSupportedFormats(Buffer< FileFormat > &formats, bool is_read) override
void clearGeneratingSoftwareToTreatAsScan()
bool canRead(const FactoryParameters &file) override
static SH3DFactory * DefaultFactory()
FactoryOptions defaultWriteOptions(const FactoryParameters &file) const override
void addGeneratingSoftwareToTreatAsScan(const String &software)
bool determineExtension(const File &file, String &extension) override
The core String class for the NDEVR API.
Definition String.h:69
Definition ACIColor.h:37
A container of input information that is to be filled with output information by an IOFactory.
Definition IOFactory.h:61