NDEVR
API Documentation

Writes and Reads from various DXF File types using the IOFactory interface. More...

Inheritance diagram for DXFFactory:
[legend]
Collaboration diagram for DXFFactory:
[legend]

Public Member Functions

FactoryOptions defaultReadOptions (const FactoryParameters &file) const override
 Returns the default read options for the given factory parameters.
FactoryOptions defaultWriteOptions (const FactoryParameters &file) const override
 Returns the default write options for the given factory parameters.
bool determineExtension (const File &file, String &extension) override
 Attempts to determine the file extension for the given file.
FactoryFeatures factoryFeatures (const FactoryParameters &file, bool is_import) const override
 Returns the features and configurable options for this factory given the parameters.
virtual void getSupportedFormats (Buffer< FileFormat > &formats, bool is_read) override
 Populates the given buffer with supported file formats for reading or writing.
virtual bool readFile (FactoryParameters &file) override
 Reads data from a file into the design object hierarchy.
virtual bool writeFile (FactoryParameters &file) override
 Writes data from the design object hierarchy to a file.
Public Member Functions inherited from IOFactory
 IOFactory (const StringView &factory_name)
 Constructs an IOFactory with the given factory name.
virtual ~IOFactory ()
 Virtual destructor.
virtual bool canRead (const FactoryParameters &file)
 Checks whether this factory can read using the given FactoryParameters.
virtual bool canRead (const File &file)
 Checks whether this factory can read the given file.
virtual bool canRead (const FileFormat &file)
 Checks whether this factory can read the given file format.
virtual bool canWrite (const FactoryParameters &file)
 Checks whether this factory can write using the given FactoryParameters.
virtual bool canWrite (const File &file)
 Checks whether this factory can write the given file.
virtual bool canWrite (const FileFormat &file)
 Checks whether this factory can write the given file format.
String factoryReadAppFeature () const
 Returns the application feature string required for read operations.
String factoryWriteAppFeature () const
 Returns the application feature string required for write operations.
virtual Buffer< UUIDfilterModelsToExport (Buffer< UUID > models_to_check, const DesignObjectLookup *lookup, const FileFormat &export_format) const
 Filters a list of model UUIDs to only those that can be exported in the given format.
virtual String getIcon (const File &file)
 Returns the icon name associated with the given file type.
void getSupportedFormats (Buffer< FileFormat > &formats)
 Populates the given buffer with all supported file formats (both read and write).
virtual void getSupportedFormats (Buffer< FileFormat > &formats, const File &file)
 Populates the given buffer with formats supported for the specified file.
virtual void getSupportedFormats (Buffer< FileFormat > &formats, DesignObjectLookup *lookup, const Buffer< UUID > &models)
 Populates the given buffer with formats supported for writing the specified models.
virtual void getSupportedFormatsByModelType (Buffer< FileFormat > &formats, bool is_read, const StringView &model_type)
 Populates the given buffer with formats matching a specific model type.
virtual void getSupportedFormatsForExtension (Buffer< FileFormat > &formats, bool is_read, const StringView &extension)
 Populates the given buffer with formats matching a specific file extension.
virtual bool isAutoEnabled () const
 Checks whether this factory is automatically enabled without requiring a password.
virtual bool isFactoryEnabled (bool is_read) const
 Checks whether this factory is enabled for reading or writing.
const Stringname () const
 Returns the name of this factory.
Buffer< UUIDreadFileWithDefaultSettings (const File &file, DesignObjectLookup *lookup)
 Reads a file using default settings and returns the UUIDs of the created models.
Buffer< ScenereadScenesFromFile (const File &file)
 Reads scenes from a file and returns them as a buffer of Scene objects.
void throwIfNotEnabled (bool is_read)
 Throws an exception if the factory is not enabled for the given operation direction.
virtual bool updateFromFile (const FactoryParameters &file, const FactoryOptions &old_options)
 Updates the factory parameters from a file, comparing against old options.
bool writeScenesToFile (const File &file, const Buffer< Scene > &scene)
 Writes a buffer of scenes to a file.

Static Public Member Functions

static FileFormat AutodeskDXF ()
 The Flat DXF file changes models into unique layers.
static FileFormat FlatDXF ()
 The Flat DXF file changes models into unique layers.
Static Public Member Functions inherited from IOFactory
static void EnableExtension (const StringView &extension, const StringView &read_password, const StringView &write_password)
 Enables a specific file extension with the given read and write passwords.
static void EnableFactory (const StringView &factory, const StringView &read_password, const StringView &write_password)
 Enables a factory by name with the given read and write passwords.
static void EnableFactory (IOFactory *factory, const StringView &read_password, const StringView &write_password)
 Registers an IOFactory instance with the system, enabling it for read and/or write.

Protected Attributes

DynamicPointer< CADHandleManagerm_handle_manager
 Manages handle resolution between read/write sessions.
Buffer< CADWriteModifier * > m_write_modifiers
 Registered write modifiers for special entity handling.

Detailed Description

Writes and Reads from various DXF File types using the IOFactory interface.


Optionally handles resolving IDs and UUIDs.

Definition at line 55 of file DXFFactory.h.

Member Function Documentation

◆ AutodeskDXF()

FileFormat DXFFactory::AutodeskDXF ( )
static

The Flat DXF file changes models into unique layers.

While we lose the model hierarchy, this is suitable for many CAD applications or for users that don't want to work with CAD blocks.

◆ defaultReadOptions()

FactoryOptions DXFFactory::defaultReadOptions ( const FactoryParameters & file) const
overridevirtual

Returns the default read options for the given factory parameters.


Parameters
[in]fileThe FactoryParameters describing the read operation.
Returns
The default FactoryOptions for reading.

Reimplemented from IOFactory.

◆ defaultWriteOptions()

FactoryOptions DXFFactory::defaultWriteOptions ( const FactoryParameters & file) const
overridevirtual

Returns the default write options for the given factory parameters.


Parameters
[in]fileThe FactoryParameters describing the write operation.
Returns
The default FactoryOptions for writing.

Reimplemented from IOFactory.

◆ determineExtension()

bool DXFFactory::determineExtension ( const File & file,
String & extension )
overridevirtual

Attempts to determine the file extension for the given file.


Parameters
[in]fileThe file to inspect.
[in]extensionOutput parameter populated with the determined extension.
Returns
True if the extension was successfully determined.

Reimplemented from IOFactory.

◆ factoryFeatures()

FactoryFeatures DXFFactory::factoryFeatures ( const FactoryParameters & file,
bool is_import ) const
overridevirtual

Returns the features and configurable options for this factory given the parameters.


Parameters
[in]fileThe FactoryParameters describing the operation.
[in]is_importTrue for import operations, false for export operations.
Returns
A FactoryFeatures object describing available options and capabilities.

Implements IOFactory.

References m_write_modifiers.

◆ FlatDXF()

FileFormat DXFFactory::FlatDXF ( )
static

The Flat DXF file changes models into unique layers.

While we lose the model hierarchy, this is suitable for many CAD applications or for users that don't want to work with CAD blocks.

◆ getSupportedFormats()

virtual void DXFFactory::getSupportedFormats ( Buffer< FileFormat > & formats,
bool is_read )
overridevirtual

Populates the given buffer with supported file formats for reading or writing.


Parameters
[in]formatsThe buffer to populate with supported FileFormat entries.
[in]is_readTrue to get read formats, false to get write formats.

Implements IOFactory.

◆ readFile()

virtual bool DXFFactory::readFile ( FactoryParameters & file)
overridevirtual

Reads data from a file into the design object hierarchy.


Parameters
[in]fileThe FactoryParameters describing the read operation and receiving results.
Returns
True if the read succeeded, false otherwise.

Implements IOFactory.

◆ writeFile()

virtual bool DXFFactory::writeFile ( FactoryParameters & file)
overridevirtual

Writes data from the design object hierarchy to a file.


Parameters
[in]fileThe FactoryParameters describing the write operation.
Returns
True if the write succeeded, false otherwise.

Implements IOFactory.


The documentation for this class was generated from the following file: