34#include <NDEVR/IOFactory.h>
35#include <NDEVR/FileFormat.h>
36#include <NDEVR/Buffer.h>
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...
IOFactory(const StringView &factory_name)
Constructs an IOFactory with the given factory name.
FactoryOptions defaultReadOptions(const FactoryParameters &file) const override
Returns the default read options for KML files.
void getSupportedFormats(Buffer< FileFormat > &formats, bool is_read) override
Populates the list of supported KML file formats.
bool writeFile(FactoryParameters &file) override
Writes design data to a KML/KMZ file.
FactoryFeatures factoryFeatures(const FactoryParameters &file, bool is_import) const override
Returns the supported factory features for the given file.
KMLFactory()
Constructs the KMLFactory.
Buffer< UUID > filterModelsToExport(Buffer< UUID > models_to_check, const DesignObjectLookup *lookup, const FileFormat &export_format) const override
Filters the list of models to only those exportable in KML format.
bool readFile(FactoryParameters &file) override
Reads a KML/KMZ file into the design model.
static constexpr StringView PlaceAllOnGround()
Returns the custom option key for placing all objects on ground level.
FactoryOptions defaultWriteOptions(const FactoryParameters &file) const override
Returns the default write options for KML files.
bool canRead(const FactoryParameters &file) override
Checks whether the given parameters describe a readable KML file.
static constexpr StringView CustomOptionsLabel()
Returns the custom options group label key.
A core class that represents a node on model hierarchy.
The core String View class for the NDEVR API.
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.