std::unique_ptr Image::createDeviceLocal()

in RenderScriptMigrationSample/app/src/main/cpp/VulkanResources.cpp [75:84]


std::unique_ptr<Image> Image::createDeviceLocal(const VulkanContext* context, uint32_t width,
                                                uint32_t height, VkImageUsageFlags usage) {
    auto image = std::make_unique<Image>(context, width, height);
    bool success = image->createDeviceLocalImage(usage) && image->createImageView();
    // Sampler is only needed for sampled images.
    if (usage & VK_IMAGE_USAGE_SAMPLED_BIT) {
        success = success && image->createSampler();
    }
    return success ? std::move(image) : nullptr;
}