NDEVR
API Documentation

An IOFactory implementation for reading and writing Shapefile (.shp) geospatial data. More...

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

Public Member Functions

 SHPFactory ()
 Constructs an SHPFactory.
virtual FactoryOptions defaultReadOptions (const FactoryParameters &file) const override
 Returns the default read options for the given file.
virtual FactoryOptions defaultWriteOptions (const FactoryParameters &file) const override
 Returns the default write options for the given file.
FactoryFeatures factoryFeatures (const FactoryParameters &file, bool is_read) const override
 Returns the factory feature set for the given parameters.
Buffer< UUIDfilterModelsToExport (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.
virtual void getSupportedFormats (Buffer< FileFormat > &formats, bool is_read) override
 Populates the buffer with supported file formats.
virtual bool readFile (FactoryParameters &file) override
 Reads a Shapefile into the design model.
void readShapeFile (const File &file, Model &root, const ConstPointer< Unit > &unit)
 Reads a single Shapefile and populates the root model.
virtual bool writeFile (FactoryParameters &file) override
 Writes the design model to a Shapefile.
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.
virtual bool determineExtension (const File &file, String &extension)
 Attempts to determine the file extension for the given file.
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 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.

Protected Attributes

fltp08 m_horizontal_offset = 0.0
 Horizontal coordinate offset applied during import.

Additional Inherited Members

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.

Detailed Description

An IOFactory implementation for reading and writing Shapefile (.shp) geospatial data.


Definition at line 52 of file SHPFactory.h.

Member Function Documentation

◆ defaultReadOptions()

virtual FactoryOptions SHPFactory::defaultReadOptions ( const FactoryParameters & file) const
overridevirtual

Returns the default read options for the given file.

Parameters
[in]fileThe factory parameters.
Returns
The default read options.

Reimplemented from IOFactory.

◆ defaultWriteOptions()

virtual FactoryOptions SHPFactory::defaultWriteOptions ( const FactoryParameters & file) const
overridevirtual

Returns the default write options for the given file.

Parameters
[in]fileThe factory parameters.
Returns
The default write options.

Reimplemented from IOFactory.

◆ factoryFeatures()

FactoryFeatures SHPFactory::factoryFeatures ( const FactoryParameters & file,
bool is_read ) const
overridevirtual

Returns the factory feature set for the given parameters.

Parameters
[in]fileThe factory parameters.
[in]is_readWhether this is a read operation.
Returns
The available factory features.

Implements IOFactory.

◆ filterModelsToExport()

Buffer< UUID > SHPFactory::filterModelsToExport ( Buffer< UUID > models_to_check,
const DesignObjectLookup * lookup,
const FileFormat & export_format ) const
overridevirtual

Filters the given models to only those exportable in the specified format.

Parameters
[in]models_to_checkThe models to filter.
[in]lookupThe design object lookup.
[in]export_formatThe target export format.
Returns
A buffer of exportable model UUIDs.

Reimplemented from IOFactory.

◆ getSupportedFormats()

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

Populates the buffer with supported file formats.

Parameters
[in]formatsThe buffer to populate.
[in]is_readWhether to list read formats (true) or write formats (false).

Implements IOFactory.

◆ readFile()

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

Reads a Shapefile into the design model.

Parameters
[in]fileThe factory parameters for the read operation.
Returns
True if the file was read successfully.

Implements IOFactory.

◆ readShapeFile()

void SHPFactory::readShapeFile ( const File & file,
Model & root,
const ConstPointer< Unit > & unit )

Reads a single Shapefile and populates the root model.

Parameters
[in]fileThe Shapefile to read.
[in]rootThe root model to populate.
[in]unitThe unit of measurement for the data.

◆ writeFile()

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

Writes the design model to a Shapefile.

Parameters
[in]fileThe factory parameters for the write operation.
Returns
True if the file was written successfully.

Implements IOFactory.


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