Sha256: 9a8de6c542205b50168c0dfd7009aecfcbea510707bdee05294d18006b349429

Contents?: true

Size: 1.17 KB

Versions: 10

Compression:

Stored size: 1.17 KB

Contents

#pragma once

#include <Gosu/Fwd.hpp>
#include <Gosu/ImageData.hpp>
#include <Gosu/Platform.hpp>
#include <memory>
#include <vector>

namespace Gosu
{
    class LargeImageData : public ImageData
    {
        unsigned full_width, full_height;
        unsigned parts_x, parts_y;
        unsigned part_width, part_height;
        std::vector<std::shared_ptr<ImageData>> parts;

    public:
        LargeImageData(const Bitmap& source, unsigned part_width, unsigned part_height,
            unsigned image_flags);

        int width() const override;
        int height() const override;

        void draw(double x1, double y1, Color c1, double x2, double y2, Color c2,
            double x3, double y3, Color c3, double x4, double y4, Color c4, ZPos z,
            AlphaMode mode) const override;

        const GLTexInfo* gl_tex_info() const override
        {
            return nullptr;
        }
        
        std::unique_ptr<ImageData> subimage(int x, int y, int w, int h) const override
        {
            return std::unique_ptr<ImageData>();
        }
        
        Bitmap to_bitmap() const override;
        
        void insert(const Bitmap& bitmap, int x, int y) override;
    };
}

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
gosu-0.11.4.pre3 src/LargeImageData.hpp
gosu-0.11.4.pre2 src/LargeImageData.hpp
gosu-0.11.4.pre1 src/LargeImageData.hpp
gosu-0.11.3.1 src/LargeImageData.hpp
gosu-0.11.3 src/LargeImageData.hpp
gosu-0.11.3.pre1 src/LargeImageData.hpp
gosu-0.11.2 src/LargeImageData.hpp
gosu-0.11.1 src/LargeImageData.hpp
gosu-0.11.1.pre1 src/LargeImageData.hpp
gosu-0.11.0 src/LargeImageData.hpp