LibGfx: Move FourCC to its own file

These are used in fonts too, so let's not limit them to ImageLoader.
This commit is contained in:
Sam Atkins 2023-11-20 17:06:45 +00:00 committed by Andreas Kling
parent 9f2ee86e4d
commit 2c24192e1f
Notes: sideshowbarker 2024-07-17 03:35:16 +09:00
4 changed files with 28 additions and 15 deletions

View file

@ -0,0 +1,26 @@
/*
* Copyright (c) 2023, Sam Atkins <atkinssj@serenityos.org>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#pragma once
namespace Gfx {
struct FourCC {
constexpr FourCC(char const* name)
{
cc[0] = name[0];
cc[1] = name[1];
cc[2] = name[2];
cc[3] = name[3];
}
bool operator==(FourCC const&) const = default;
bool operator!=(FourCC const&) const = default;
char cc[4];
};
}

View file

@ -8,6 +8,7 @@
#include <AK/Debug.h>
#include <AK/Endian.h>
#include <AK/FixedArray.h>
#include <LibGfx/FourCC.h>
#include <LibGfx/ImageFormats/ILBMLoader.h>
namespace Gfx {

View file

@ -84,19 +84,4 @@ private:
NonnullOwnPtr<ImageDecoderPlugin> mutable m_plugin;
};
struct FourCC {
constexpr FourCC(char const* name)
{
cc[0] = name[0];
cc[1] = name[1];
cc[2] = name[2];
cc[3] = name[3];
}
bool operator==(FourCC const&) const = default;
bool operator!=(FourCC const&) const = default;
char cc[4];
};
}

View file

@ -9,6 +9,7 @@
#include <AK/Format.h>
#include <AK/MemoryStream.h>
#include <AK/Vector.h>
#include <LibGfx/FourCC.h>
#include <LibGfx/ImageFormats/WebPLoader.h>
#include <LibGfx/ImageFormats/WebPLoaderLossless.h>
#include <LibGfx/ImageFormats/WebPLoaderLossy.h>