34#include "IOFactory/Headers/IOFactory.h"
35#include "Base/Headers/FileFormat.h"
36#include "Base/Headers/Buffer.hpp"
The equivelent of std::vector but with a bit more control.
A core class where all Design Objects including models, materials, and geometries are stored.
Allows IOFactories to report what features they support to make the import/export dialogs easier to s...
User-defined options that define preferences for importing and exporting using IOFactory objects.
Logic for reading or writing to a file as well as navigating filesystems or other common file operati...
bool readFile(FactoryParameters &file) override
Reads a GeoSLAM file into the design model.
Buffer< UUID > filterModelsToExport(Buffer< UUID > models_to_check, const DesignObjectLookup *lookup, const FileFormat &export_format) const override
Filters the given models to only those exportable in the specified format.
GeoSlamFactory()
Constructs a GeoSlamFactory.
FactoryFeatures factoryFeatures(const FactoryParameters &file, bool is_import) const override
Returns the factory feature set for the given parameters.
bool canRead(const FactoryParameters &file) override
Checks whether the given file can be read by this factory.
bool writeFile(FactoryParameters &file) override
Writes the design model to a GeoSLAM file.
FactoryOptions defaultReadOptions(const FactoryParameters &file) const override
Returns the default read options for the given file.
void getSupportedFormats(Buffer< FileFormat > &formats, bool is_read) override
Populates the buffer with supported file formats.
FactoryOptions defaultWriteOptions(const FactoryParameters &file) const override
Returns the default write options for the given file.
IOFactory(const StringView &factory_name)
Constructs an IOFactory with the given factory name.
A core class that represents a node on model hierarchy.
The primary namespace for the NDEVR SDK.
@ file
The source file path associated with this object.
A container of input information that is to be filled with output information by an IOFactory.