LuciadCPillar 2023.1.04
luciad::FeatureStateManager::Change Class Referenceabstract

This class is used to build feature state changes. More...

#include <luciad/layers/features/FeatureStateManager.h>

Public Member Functions

virtual ~Change ()=default
 
virtual void clearState (const FeatureState &featureState)=0
 Clear the given feature state. More...
 
virtual void setState (LayerFeatureId layerFeatureId, const FeatureState &featureState, bool enabled)=0
 Sets the given state for the given feature identifier. More...
 

Static Public Member Functions

static std::shared_ptr< FeatureStateManager::Changecreate ()
 Returns a new, empty, FeatureStateManager::Change. More...
 

Detailed Description

This class is used to build feature state changes.

One instance of this class represents an atomic feature state change operation that will result in exactly 1 FeatureStateEvent.

See FeatureStateManager for a usage example.

Constructor & Destructor Documentation

◆ ~Change()

virtual luciad::FeatureStateManager::Change::~Change ( )
virtualdefault

Member Function Documentation

◆ clearState()

virtual void luciad::FeatureStateManager::Change::clearState ( const FeatureState featureState)
pure virtual

Clear the given feature state.

As a result, no single feature will have the given feature state enabled.

Parameters
featureStatethe feature state to clear

◆ create()

static std::shared_ptr< FeatureStateManager::Change > luciad::FeatureStateManager::Change::create ( )
static

Returns a new, empty, FeatureStateManager::Change.

Returns
a new, empty, FeatureStateManager::Change.

◆ setState()

virtual void luciad::FeatureStateManager::Change::setState ( LayerFeatureId  layerFeatureId,
const FeatureState featureState,
bool  enabled 
)
pure virtual

Sets the given state for the given feature identifier.

Parameters
layerFeatureIdthe feature for which to modify the state
featureStatethe feature state to modify
enabledtrue to enable the feature state, and false to disable it