mirror of
https://github.com/love2d/love.git
synced 2026-08-17 19:23:38 +02:00
Small ImageData code cleanup.
This commit is contained in:
@@ -46,23 +46,19 @@ CompressedMemory::~CompressedMemory()
|
|||||||
}
|
}
|
||||||
|
|
||||||
CompressedSlice::CompressedSlice(PixelFormat format, int width, int height, CompressedMemory *memory, size_t offset, size_t size)
|
CompressedSlice::CompressedSlice(PixelFormat format, int width, int height, CompressedMemory *memory, size_t offset, size_t size)
|
||||||
: memory(memory)
|
: ImageDataBase(format, width, height)
|
||||||
|
, memory(memory)
|
||||||
, offset(offset)
|
, offset(offset)
|
||||||
, dataSize(size)
|
, dataSize(size)
|
||||||
{
|
{
|
||||||
this->format = format;
|
|
||||||
this->width = width;
|
|
||||||
this->height = height;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
CompressedSlice::CompressedSlice(const CompressedSlice &s)
|
CompressedSlice::CompressedSlice(const CompressedSlice &s)
|
||||||
: memory(s.memory)
|
: ImageDataBase(s.getFormat(), s.getWidth(), s.getHeight())
|
||||||
|
, memory(s.memory)
|
||||||
, offset(s.offset)
|
, offset(s.offset)
|
||||||
, dataSize(s.dataSize)
|
, dataSize(s.dataSize)
|
||||||
{
|
{
|
||||||
this->format = s.getFormat();
|
|
||||||
this->width = s.getWidth();
|
|
||||||
this->height = s.getHeight();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
CompressedSlice::~CompressedSlice()
|
CompressedSlice::~CompressedSlice()
|
||||||
|
|||||||
@@ -32,19 +32,17 @@ namespace image
|
|||||||
love::Type ImageData::type("ImageData", &Data::type);
|
love::Type ImageData::type("ImageData", &Data::type);
|
||||||
|
|
||||||
ImageData::ImageData(Data *data)
|
ImageData::ImageData(Data *data)
|
||||||
|
: ImageDataBase(PIXELFORMAT_UNKNOWN, 0, 0)
|
||||||
{
|
{
|
||||||
decode(data);
|
decode(data);
|
||||||
}
|
}
|
||||||
|
|
||||||
ImageData::ImageData(int width, int height, PixelFormat format)
|
ImageData::ImageData(int width, int height, PixelFormat format)
|
||||||
|
: ImageDataBase(format, width, height)
|
||||||
{
|
{
|
||||||
if (!validPixelFormat(format))
|
if (!validPixelFormat(format))
|
||||||
throw love::Exception("Unsupported pixel format for ImageData");
|
throw love::Exception("Unsupported pixel format for ImageData");
|
||||||
|
|
||||||
this->width = width;
|
|
||||||
this->height = height;
|
|
||||||
this->format = format;
|
|
||||||
|
|
||||||
create(width, height, format);
|
create(width, height, format);
|
||||||
|
|
||||||
// Set to black/transparency.
|
// Set to black/transparency.
|
||||||
@@ -52,14 +50,11 @@ ImageData::ImageData(int width, int height, PixelFormat format)
|
|||||||
}
|
}
|
||||||
|
|
||||||
ImageData::ImageData(int width, int height, PixelFormat format, void *data, bool own)
|
ImageData::ImageData(int width, int height, PixelFormat format, void *data, bool own)
|
||||||
|
: ImageDataBase(format, width, height)
|
||||||
{
|
{
|
||||||
if (!validPixelFormat(format))
|
if (!validPixelFormat(format))
|
||||||
throw love::Exception("Unsupported pixel format for ImageData");
|
throw love::Exception("Unsupported pixel format for ImageData");
|
||||||
|
|
||||||
this->width = width;
|
|
||||||
this->height = height;
|
|
||||||
this->format = format;
|
|
||||||
|
|
||||||
if (own)
|
if (own)
|
||||||
this->data = (unsigned char *) data;
|
this->data = (unsigned char *) data;
|
||||||
else
|
else
|
||||||
@@ -67,11 +62,8 @@ ImageData::ImageData(int width, int height, PixelFormat format, void *data, bool
|
|||||||
}
|
}
|
||||||
|
|
||||||
ImageData::ImageData(const ImageData &c)
|
ImageData::ImageData(const ImageData &c)
|
||||||
|
: ImageDataBase(c.format, c.width, c.height)
|
||||||
{
|
{
|
||||||
width = c.width;
|
|
||||||
height = c.height;
|
|
||||||
format = c.format;
|
|
||||||
|
|
||||||
create(width, height, format, c.getData());
|
create(width, height, format, c.getData());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -25,10 +25,10 @@ namespace love
|
|||||||
namespace image
|
namespace image
|
||||||
{
|
{
|
||||||
|
|
||||||
ImageDataBase::ImageDataBase()
|
ImageDataBase::ImageDataBase(PixelFormat format, int width, int height)
|
||||||
: format(PIXELFORMAT_UNKNOWN)
|
: format(format)
|
||||||
, width(0)
|
, width(width)
|
||||||
, height(0)
|
, height(height)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -33,7 +33,6 @@ class ImageDataBase : public Data
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
|
|
||||||
ImageDataBase();
|
|
||||||
virtual ~ImageDataBase() {}
|
virtual ~ImageDataBase() {}
|
||||||
|
|
||||||
PixelFormat getFormat() const;
|
PixelFormat getFormat() const;
|
||||||
@@ -45,6 +44,8 @@ public:
|
|||||||
|
|
||||||
protected:
|
protected:
|
||||||
|
|
||||||
|
ImageDataBase(PixelFormat format, int width, int height);
|
||||||
|
|
||||||
PixelFormat format;
|
PixelFormat format;
|
||||||
int width;
|
int width;
|
||||||
int height;
|
int height;
|
||||||
|
|||||||
Reference in New Issue
Block a user