LuciadCPillar 2023.1.04
luciad::Creator::Builder Class Referencefinal

Builder for the Creator class. More...

#include <luciad/create/Creator.h>

Public Member Functions

 Builder (Builder &&other) noexcept
 
 Builder (const Builder &other)
 
 ~Builder ()
 
std::shared_ptr< Creatorbuild () const
 Returns a new creator, based on the properties set on this builder. More...
 
BuilderfeatureCreator (std::shared_ptr< IFeatureCreator > featureCreator)
 Sets the creator that will create a feature instance. More...
 
Builderlayer (std::shared_ptr< Layer > layer)
 Sets the layer to which new features will be added. More...
 
Buildermap (std::shared_ptr< Map > map)
 Sets the map on which features are created. More...
 
Builderoperator= (Builder other) noexcept
 

Detailed Description

Builder for the Creator class.

Since
2020.1

Constructor & Destructor Documentation

◆ Builder() [1/2]

luciad::Creator::Builder::Builder ( const Builder other)

◆ Builder() [2/2]

luciad::Creator::Builder::Builder ( Builder &&  other)
noexcept

◆ ~Builder()

luciad::Creator::Builder::~Builder ( )

Member Function Documentation

◆ build()

std::shared_ptr< Creator > luciad::Creator::Builder::build ( ) const

Returns a new creator, based on the properties set on this builder.

Returns
a new creator.
Exceptions
luciad::LogicExceptionif not all mandatory parameters are set

◆ featureCreator()

Builder & luciad::Creator::Builder::featureCreator ( std::shared_ptr< IFeatureCreator featureCreator)

Sets the creator that will create a feature instance.

Parameters
featureCreatorthe creator that will create a feature instance
Returns
this builder
Exceptions
NullArgumentExceptionwhen the feature creator is nullptr.

◆ layer()

Builder & luciad::Creator::Builder::layer ( std::shared_ptr< Layer layer)

Sets the layer to which new features will be added.

Calling this method is mandatory. If it is not set, Creator::Builder::build will throw an exception.

This method will thrown an exception when it contains a model without IFeatureModelUpdater.

Parameters
layerthe layer to which new features need to be added.
Returns
this builder
Exceptions
NullArgumentExceptionwhen the layer is nullptr.
InvalidArgumentExceptionwhen the layer is not a FeatureLayer.

◆ map()

Builder & luciad::Creator::Builder::map ( std::shared_ptr< Map map)

Sets the map on which features are created.

This parameter is mandatory. If it is not set, Creator::Builder::build will throw an exception.

Parameters
mapthe Map on which to add features
Returns
this builder
Exceptions
NullArgumentExceptionwhen the map is nullptr.

◆ operator=()

Builder & luciad::Creator::Builder::operator= ( Builder  other)
noexcept