#include #include #include #include #include #include #include namespace mbgl { std::unique_ptr StyleLayer::create(StyleLayerType type) { switch (type) { case StyleLayerType::Fill: return std::make_unique(); case StyleLayerType::Line: return std::make_unique(); case StyleLayerType::Circle: return std::make_unique(); case StyleLayerType::Symbol: return std::make_unique(); case StyleLayerType::Raster: return std::make_unique(); case StyleLayerType::Background: return std::make_unique(); default: return nullptr; } } const std::string& StyleLayer::bucketName() const { return ref.empty() ? id : ref; } bool StyleLayer::hasRenderPass(RenderPass pass) const { return bool(passes & pass); } void StyleLayer::copy(const StyleLayer& src) { type = src.type; source = src.source; sourceLayer = src.sourceLayer; filter = src.filter; minZoom = src.minZoom; maxZoom = src.maxZoom; visibility = src.visibility; } }