// This file is generated. // Edit platform/darwin/scripts/generate-style-code.js, then run `make darwin-style-code`. #import "MGLSource.h" #import "NSPredicate+MGLAdditions.h" #import "NSDate+MGLAdditions.h" #import "MGLStyleLayer_Private.h" #import "MGLStyleValue_Private.h" #import "MGLFillExtrusionStyleLayer.h" #include #include namespace mbgl { MBGL_DEFINE_ENUM(MGLFillExtrusionTranslationAnchor, { { MGLFillExtrusionTranslationAnchorMap, "map" }, { MGLFillExtrusionTranslationAnchorViewport, "viewport" }, }); } @interface MGLFillExtrusionStyleLayer () @property (nonatomic, readonly) mbgl::style::FillExtrusionLayer *rawLayer; @end @implementation MGLFillExtrusionStyleLayer - (instancetype)initWithIdentifier:(NSString *)identifier source:(MGLSource *)source { auto layer = std::make_unique(identifier.UTF8String, source.identifier.UTF8String); return self = [super initWithPendingLayer:std::move(layer)]; } - (mbgl::style::FillExtrusionLayer *)rawLayer { return (mbgl::style::FillExtrusionLayer *)super.rawLayer; } - (NSString *)sourceIdentifier { MGLAssertStyleLayerIsValid(); return @(self.rawLayer->getSourceID().c_str()); } - (NSString *)sourceLayerIdentifier { MGLAssertStyleLayerIsValid(); auto layerID = self.rawLayer->getSourceLayer(); return layerID.empty() ? nil : @(layerID.c_str()); } - (void)setSourceLayerIdentifier:(NSString *)sourceLayerIdentifier { MGLAssertStyleLayerIsValid(); self.rawLayer->setSourceLayer(sourceLayerIdentifier.UTF8String ?: ""); } - (void)setPredicate:(NSPredicate *)predicate { MGLAssertStyleLayerIsValid(); self.rawLayer->setFilter(predicate ? predicate.mgl_filter : mbgl::style::NullFilter()); } - (NSPredicate *)predicate { MGLAssertStyleLayerIsValid(); return [NSPredicate mgl_predicateWithFilter:self.rawLayer->getFilter()]; } #pragma mark - Accessing the Paint Attributes - (void)setFillExtrusionBase:(MGLStyleValue *)fillExtrusionBase { MGLAssertStyleLayerIsValid(); auto mbglValue = MGLStyleValueTransformer().toDataDrivenPropertyValue(fillExtrusionBase); self.rawLayer->setFillExtrusionBase(mbglValue); } - (MGLStyleValue *)fillExtrusionBase { MGLAssertStyleLayerIsValid(); auto propertyValue = self.rawLayer->getFillExtrusionBase(); if (propertyValue.isUndefined()) { return MGLStyleValueTransformer().toDataDrivenStyleValue(self.rawLayer->getDefaultFillExtrusionBase()); } return MGLStyleValueTransformer().toDataDrivenStyleValue(propertyValue); } - (void)setFillExtrusionBaseTransition:(MGLTransition )transition { MGLAssertStyleLayerIsValid(); mbgl::style::TransitionOptions options { { MGLDurationFromTimeInterval(transition.duration) }, { MGLDurationFromTimeInterval(transition.delay) } }; self.rawLayer->setFillExtrusionBaseTransition(options); } - (MGLTransition)fillExtrusionBaseTransition { MGLAssertStyleLayerIsValid(); mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getFillExtrusionBaseTransition(); MGLTransition transition; transition.duration = MGLTimeIntervalFromDuration(transitionOptions.duration.value_or(mbgl::Duration::zero())); transition.delay = MGLTimeIntervalFromDuration(transitionOptions.delay.value_or(mbgl::Duration::zero())); return transition; } - (void)setFillExtrusionColor:(MGLStyleValue *)fillExtrusionColor { MGLAssertStyleLayerIsValid(); auto mbglValue = MGLStyleValueTransformer().toDataDrivenPropertyValue(fillExtrusionColor); self.rawLayer->setFillExtrusionColor(mbglValue); } - (MGLStyleValue *)fillExtrusionColor { MGLAssertStyleLayerIsValid(); auto propertyValue = self.rawLayer->getFillExtrusionColor(); if (propertyValue.isUndefined()) { return MGLStyleValueTransformer().toDataDrivenStyleValue(self.rawLayer->getDefaultFillExtrusionColor()); } return MGLStyleValueTransformer().toDataDrivenStyleValue(propertyValue); } - (void)setFillExtrusionColorTransition:(MGLTransition )transition { MGLAssertStyleLayerIsValid(); mbgl::style::TransitionOptions options { { MGLDurationFromTimeInterval(transition.duration) }, { MGLDurationFromTimeInterval(transition.delay) } }; self.rawLayer->setFillExtrusionColorTransition(options); } - (MGLTransition)fillExtrusionColorTransition { MGLAssertStyleLayerIsValid(); mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getFillExtrusionColorTransition(); MGLTransition transition; transition.duration = MGLTimeIntervalFromDuration(transitionOptions.duration.value_or(mbgl::Duration::zero())); transition.delay = MGLTimeIntervalFromDuration(transitionOptions.delay.value_or(mbgl::Duration::zero())); return transition; } - (void)setFillExtrusionHeight:(MGLStyleValue *)fillExtrusionHeight { MGLAssertStyleLayerIsValid(); auto mbglValue = MGLStyleValueTransformer().toDataDrivenPropertyValue(fillExtrusionHeight); self.rawLayer->setFillExtrusionHeight(mbglValue); } - (MGLStyleValue *)fillExtrusionHeight { MGLAssertStyleLayerIsValid(); auto propertyValue = self.rawLayer->getFillExtrusionHeight(); if (propertyValue.isUndefined()) { return MGLStyleValueTransformer().toDataDrivenStyleValue(self.rawLayer->getDefaultFillExtrusionHeight()); } return MGLStyleValueTransformer().toDataDrivenStyleValue(propertyValue); } - (void)setFillExtrusionHeightTransition:(MGLTransition )transition { MGLAssertStyleLayerIsValid(); mbgl::style::TransitionOptions options { { MGLDurationFromTimeInterval(transition.duration) }, { MGLDurationFromTimeInterval(transition.delay) } }; self.rawLayer->setFillExtrusionHeightTransition(options); } - (MGLTransition)fillExtrusionHeightTransition { MGLAssertStyleLayerIsValid(); mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getFillExtrusionHeightTransition(); MGLTransition transition; transition.duration = MGLTimeIntervalFromDuration(transitionOptions.duration.value_or(mbgl::Duration::zero())); transition.delay = MGLTimeIntervalFromDuration(transitionOptions.delay.value_or(mbgl::Duration::zero())); return transition; } - (void)setFillExtrusionOpacity:(MGLStyleValue *)fillExtrusionOpacity { MGLAssertStyleLayerIsValid(); auto mbglValue = MGLStyleValueTransformer().toInterpolatablePropertyValue(fillExtrusionOpacity); self.rawLayer->setFillExtrusionOpacity(mbglValue); } - (MGLStyleValue *)fillExtrusionOpacity { MGLAssertStyleLayerIsValid(); auto propertyValue = self.rawLayer->getFillExtrusionOpacity(); if (propertyValue.isUndefined()) { return MGLStyleValueTransformer().toStyleValue(self.rawLayer->getDefaultFillExtrusionOpacity()); } return MGLStyleValueTransformer().toStyleValue(propertyValue); } - (void)setFillExtrusionOpacityTransition:(MGLTransition )transition { MGLAssertStyleLayerIsValid(); mbgl::style::TransitionOptions options { { MGLDurationFromTimeInterval(transition.duration) }, { MGLDurationFromTimeInterval(transition.delay) } }; self.rawLayer->setFillExtrusionOpacityTransition(options); } - (MGLTransition)fillExtrusionOpacityTransition { MGLAssertStyleLayerIsValid(); mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getFillExtrusionOpacityTransition(); MGLTransition transition; transition.duration = MGLTimeIntervalFromDuration(transitionOptions.duration.value_or(mbgl::Duration::zero())); transition.delay = MGLTimeIntervalFromDuration(transitionOptions.delay.value_or(mbgl::Duration::zero())); return transition; } - (void)setFillExtrusionPattern:(MGLStyleValue *)fillExtrusionPattern { MGLAssertStyleLayerIsValid(); auto mbglValue = MGLStyleValueTransformer().toPropertyValue(fillExtrusionPattern); self.rawLayer->setFillExtrusionPattern(mbglValue); } - (MGLStyleValue *)fillExtrusionPattern { MGLAssertStyleLayerIsValid(); auto propertyValue = self.rawLayer->getFillExtrusionPattern(); if (propertyValue.isUndefined()) { return MGLStyleValueTransformer().toStyleValue(self.rawLayer->getDefaultFillExtrusionPattern()); } return MGLStyleValueTransformer().toStyleValue(propertyValue); } - (void)setFillExtrusionPatternTransition:(MGLTransition )transition { MGLAssertStyleLayerIsValid(); mbgl::style::TransitionOptions options { { MGLDurationFromTimeInterval(transition.duration) }, { MGLDurationFromTimeInterval(transition.delay) } }; self.rawLayer->setFillExtrusionPatternTransition(options); } - (MGLTransition)fillExtrusionPatternTransition { MGLAssertStyleLayerIsValid(); mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getFillExtrusionPatternTransition(); MGLTransition transition; transition.duration = MGLTimeIntervalFromDuration(transitionOptions.duration.value_or(mbgl::Duration::zero())); transition.delay = MGLTimeIntervalFromDuration(transitionOptions.delay.value_or(mbgl::Duration::zero())); return transition; } - (void)setFillExtrusionTranslation:(MGLStyleValue *)fillExtrusionTranslation { MGLAssertStyleLayerIsValid(); auto mbglValue = MGLStyleValueTransformer, NSValue *>().toInterpolatablePropertyValue(fillExtrusionTranslation); self.rawLayer->setFillExtrusionTranslate(mbglValue); } - (MGLStyleValue *)fillExtrusionTranslation { MGLAssertStyleLayerIsValid(); auto propertyValue = self.rawLayer->getFillExtrusionTranslate(); if (propertyValue.isUndefined()) { return MGLStyleValueTransformer, NSValue *>().toStyleValue(self.rawLayer->getDefaultFillExtrusionTranslate()); } return MGLStyleValueTransformer, NSValue *>().toStyleValue(propertyValue); } - (void)setFillExtrusionTranslationTransition:(MGLTransition )transition { MGLAssertStyleLayerIsValid(); mbgl::style::TransitionOptions options { { MGLDurationFromTimeInterval(transition.duration) }, { MGLDurationFromTimeInterval(transition.delay) } }; self.rawLayer->setFillExtrusionTranslateTransition(options); } - (MGLTransition)fillExtrusionTranslationTransition { MGLAssertStyleLayerIsValid(); mbgl::style::TransitionOptions transitionOptions = self.rawLayer->getFillExtrusionTranslateTransition(); MGLTransition transition; transition.duration = MGLTimeIntervalFromDuration(transitionOptions.duration.value_or(mbgl::Duration::zero())); transition.delay = MGLTimeIntervalFromDuration(transitionOptions.delay.value_or(mbgl::Duration::zero())); return transition; } - (void)setFillExtrusionTranslate:(MGLStyleValue *)fillExtrusionTranslate { } - (MGLStyleValue *)fillExtrusionTranslate { return self.fillExtrusionTranslation; } - (void)setFillExtrusionTranslationAnchor:(MGLStyleValue *)fillExtrusionTranslationAnchor { MGLAssertStyleLayerIsValid(); auto mbglValue = MGLStyleValueTransformer().toEnumPropertyValue(fillExtrusionTranslationAnchor); self.rawLayer->setFillExtrusionTranslateAnchor(mbglValue); } - (MGLStyleValue *)fillExtrusionTranslationAnchor { MGLAssertStyleLayerIsValid(); auto propertyValue = self.rawLayer->getFillExtrusionTranslateAnchor(); if (propertyValue.isUndefined()) { return MGLStyleValueTransformer().toEnumStyleValue(self.rawLayer->getDefaultFillExtrusionTranslateAnchor()); } return MGLStyleValueTransformer().toEnumStyleValue(propertyValue); } - (void)setFillExtrusionTranslateAnchor:(MGLStyleValue *)fillExtrusionTranslateAnchor { } - (MGLStyleValue *)fillExtrusionTranslateAnchor { return self.fillExtrusionTranslationAnchor; } @end @implementation NSValue (MGLFillExtrusionStyleLayerAdditions) + (NSValue *)valueWithMGLFillExtrusionTranslationAnchor:(MGLFillExtrusionTranslationAnchor)fillExtrusionTranslationAnchor { return [NSValue value:&fillExtrusionTranslationAnchor withObjCType:@encode(MGLFillExtrusionTranslationAnchor)]; } - (MGLFillExtrusionTranslationAnchor)MGLFillExtrusionTranslationAnchorValue { MGLFillExtrusionTranslationAnchor fillExtrusionTranslationAnchor; [self getValue:&fillExtrusionTranslationAnchor]; return fillExtrusionTranslationAnchor; } @end