NDEVR
API Documentation
ImageVectorizationEngineabstract

Contains services that can turn a 2D rastered image into linework. More...

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

Public Member Functions

const Stringid () const
 Returns the unique string identifier of this engine.
const TranslatedStringname () const
 Returns the user-facing translated display name of this engine.
virtual bool vectorize (VectorizeImageParams &)=0
 Performs vectorization of a raster image according to the given parameters.

Static Public Member Functions

static void AddAvailableEngine (ImageVectorizationEngine *filter)
 Registers a vectorization engine in the global registry so it can be discovered by consumers.
static const Dictionary< String, ImageVectorizationEngine * > & AvailableVectorizors ()
 Returns the global dictionary of all registered vectorization engines, keyed by id.

Protected Member Functions

 ImageVectorizationEngine (const TranslatedString &name, const StringView &id)
 Constructs an ImageVectorizationEngine with the given display name and unique identifier.

Protected Attributes

String m_id
 The unique string identifier used for registry lookup.
TranslatedString m_name
 The user-facing translated display name of this engine.

Static Protected Attributes

static Dictionary< String, ImageVectorizationEngine * > s_global_engines
 Global registry of all available vectorization engines, keyed by id.

Detailed Description

Contains services that can turn a 2D rastered image into linework.


Definition at line 28 of file ImageVectorizationEngine.h.

Constructor & Destructor Documentation

◆ ImageVectorizationEngine()

ImageVectorizationEngine::ImageVectorizationEngine ( const TranslatedString & name,
const StringView & id )
explicitprotected

Constructs an ImageVectorizationEngine with the given display name and unique identifier.


Parameters
[in]nameThe user-facing translated display name for this engine.
[in]idA unique string identifier used for engine lookup in the registry.

References name().

Referenced by AddAvailableEngine().

Member Function Documentation

◆ AddAvailableEngine()

void ImageVectorizationEngine::AddAvailableEngine ( ImageVectorizationEngine * filter)
static

Registers a vectorization engine in the global registry so it can be discovered by consumers.


Parameters
[in]filterThe engine instance to add. Ownership is not transferred.

References ImageVectorizationEngine().

◆ AvailableVectorizors()

const Dictionary< String, ImageVectorizationEngine * > & ImageVectorizationEngine::AvailableVectorizors ( )
static

Returns the global dictionary of all registered vectorization engines, keyed by id.


Returns
A const reference to the dictionary mapping engine ids to engine pointers.

◆ id()

const String & ImageVectorizationEngine::id ( ) const
inlinenodiscard

Returns the unique string identifier of this engine.


Returns
A const reference to the id string.

Definition at line 68 of file ImageVectorizationEngine.h.

References m_id.

◆ name()

const TranslatedString & ImageVectorizationEngine::name ( ) const
inlinenodiscard

Returns the user-facing translated display name of this engine.


Returns
A const reference to the translated name.

Definition at line 62 of file ImageVectorizationEngine.h.

References m_name.

Referenced by ImageVectorizationEngine().

◆ vectorize()

virtual bool ImageVectorizationEngine::vectorize ( VectorizeImageParams & )
pure virtual

Performs vectorization of a raster image according to the given parameters.


Parameters
[in]paramsThe vectorization parameters including input image, callbacks, and log target.
Returns
True if vectorization was initiated or completed successfully, false otherwise.
Note
This is a pure virtual function that must be implemented by derived engines.

Implemented in ImageVectorizor.


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