Sha256: 8ee1c45c74fa13ab6bdc7a1be99d4eda2b77b286d590f5d07d3d106a33198ffd

Contents?: true

Size: 924 Bytes

Versions: 1

Compression:

Stored size: 924 Bytes

Contents

#ifndef GOSUIMPL_GRAPHICS_TEXTURE_HPP
#define GOSUIMPL_GRAPHICS_TEXTURE_HPP

#include <Gosu/Fwd.hpp>
#include <Gosu/Bitmap.hpp>
#include <Gosu/TR1.hpp>
#include "Common.hpp"
#include "TexChunk.hpp"
#include "BlockAllocator.hpp"
#include <vector>

namespace Gosu
{
    class Texture
    {
        BlockAllocator allocator;
        GLuint name;

    public:
        Texture(unsigned size);
        ~Texture();
        unsigned size() const;
        GLuint texName() const;
        std::auto_ptr<TexChunk> 
            tryAlloc(Graphics& graphics, DrawOpQueueStack& queues,
                std::tr1::shared_ptr<Texture> ptr, const Bitmap& bmp, unsigned padding);
        void block(unsigned x, unsigned y, unsigned width, unsigned height);
        void free(unsigned x, unsigned y, unsigned width, unsigned height);
        Gosu::Bitmap toBitmap(unsigned x, unsigned y, unsigned width, unsigned height) const;
    };
}

#endif

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
gosu-0.7.48 GosuImpl/Graphics/Texture.hpp