#include namespace mbgl { namespace style { std::unique_ptr Layer::Impl::copy(const std::string& id_, const std::string& ref_, const std::string& source_) const { std::unique_ptr result = clone(); result->baseImpl->id = id_; result->baseImpl->ref = ref_; result->baseImpl->source = source_; return result; } const std::string& Layer::Impl::bucketName() const { return ref.empty() ? id : ref; } bool Layer::Impl::hasRenderPass(RenderPass pass) const { return bool(passes & pass); } bool Layer::Impl::needsRendering(float zoom) const { return passes != RenderPass::None && visibility != VisibilityType::None && minZoom <= zoom && maxZoom >= zoom; } void Layer::Impl::setObserver(LayerObserver* observer_) { observer = observer_; } } // namespace style } // namespace mbgl