Sha256: d2f0af49a89ca2c37ed2a75dcdf88d47f355a3aa821d08d3ac4bcfefb7d51247

Contents?: true

Size: 1.2 KB

Versions: 2

Compression:

Stored size: 1.2 KB

Contents

#pragma once

#include <Gosu/ImageData.hpp>
#include <memory>

namespace Gosu
{
    class EmptyImageData : public ImageData
    {
    public:
        int width() const override
        {
            return 0;
        }
        
        int height() const override
        {
            return 0;
        }
        
        void draw(double, double, Color,
                  double, double, Color,
                  double, double, Color,
                  double, double, Color,
                  ZPos, BlendMode) const override
        {
        }
        
        GLTexInfo* gl_tex_info() const override
        {
            return nullptr;
        }
        
        Bitmap to_bitmap() const override
        {
            return Bitmap();
        }
        
        virtual std::unique_ptr<ImageData> subimage(int, int, int, int) const override
        {
            return nullptr;
        }
        
        virtual void insert(const Bitmap&, int x, int y) override
        {
        }
        
        static const std::shared_ptr<EmptyImageData>& instance_ptr()
        {
            static std::shared_ptr<EmptyImageData> instance = std::make_shared<EmptyImageData>();
            return instance;
        }
    };
}

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
gosu-1.3.0 src/EmptyImageData.hpp
gosu-1.2.0 src/EmptyImageData.hpp