MapLink Pro 11.1.1.0.
Envitia MapLink Pro: The Ultimate Mapping Application Toolkit
Loading...
Searching...
No Matches
TSLClientFeatureClassifierCustom Class Referenceabstract

Detailed Description

A custom application-specified classification definition.

Public Member Functions

 TSLClientFeatureClassifierCustom ()
 
virtual ~TSLClientFeatureClassifierCustom ()
 
virtual void attach (TSLFeatureClassifierCustom *classifier)=0
 
virtual void release (TSLFeatureClassifierCustom *classifier)=0
 
virtual bool getClassifiedFeatures (TSLFeature *rootFeature, unsigned int classificationLevel, bool caseSensitive)=0
 
virtual bool classifyFeature (const TSLMUGeometry *geometry, TSLRenderingAttributes &renderingAttribs, TSLSimpleString &childFeatureName)=0
 

Constructor & Destructor Documentation

◆ TSLClientFeatureClassifierCustom()

TSLClientFeatureClassifierCustom::TSLClientFeatureClassifierCustom ( )

Constructor for TSLClientFeatureClassifierCustom.

This object will be shared amongst multiple instances of the feature class configuration and so all methods must be re-entrant.

It must either be held in memory until the data layer is destroyed, or use the attach and release methods to maintain lifetime and self-destroy when no longer in use

◆ ~TSLClientFeatureClassifierCustom()

virtual TSLClientFeatureClassifierCustom::~TSLClientFeatureClassifierCustom ( )
virtual

Member Function Documentation

◆ attach()

virtual void TSLClientFeatureClassifierCustom::attach ( TSLFeatureClassifierCustom * classifier)
pure virtual

Informs handler that a TSLFeatureClassifierCustom is attached to it.

◆ classifyFeature()

virtual bool TSLClientFeatureClassifierCustom::classifyFeature ( const TSLMUGeometry * geometry,
TSLRenderingAttributes & renderingAttribs,
TSLSimpleString & childFeatureName )
pure virtual

Query the feature name for a given geometry

This method must be re-entrant and may be called from multiple threads concurrently.

Parameters
geometryThe geometry to classify
renderingAttribsThe given TSLRenderingAttributes object will be set to the rendering attributes (if any) of the feature. Not all classifier definitions can specify rendering attributes.
childFeatureNameReturned name of the child feature for this geometry
Returns
'true' if childFeatureName was populated, false if the classification could not be determined.

◆ getClassifiedFeatures()

virtual bool TSLClientFeatureClassifierCustom::getClassifiedFeatures ( TSLFeature * rootFeature,
unsigned int classificationLevel,
bool caseSensitive )
pure virtual

Process the classification definition and add child features to the hierarchy.

This method must be re-entrant and may be called from multiple threads concurrently.

Parameters
rootFeatureThe top-level feature (TSLFeature) in the hierarchy that the sub-classing should be applied to.
classificationLevelThe level of this classification, starting at 0.
caseSensitiveWhether the identification of existing classifications should be case sensitive or not.
Returns
true if any new features were created, false otherwise.

◆ release()

virtual void TSLClientFeatureClassifierCustom::release ( TSLFeatureClassifierCustom * classifier)
pure virtual

Informs handler that a TSLFeatureClassifierCustom no longer needs it.