1/**
2 * Copyright (c) 2006-2023 LOVE Development Team
3 *
4 * This software is provided 'as-is', without any express or implied
5 * warranty. In no event will the authors be held liable for any damages
6 * arising from the use of this software.
7 *
8 * Permission is granted to anyone to use this software for any purpose,
9 * including commercial applications, and to alter it and redistribute it
10 * freely, subject to the following restrictions:
11 *
12 * 1. The origin of this software must not be misrepresented; you must not
13 * claim that you wrote the original software. If you use this software
14 * in a product, an acknowledgment in the product documentation would be
15 * appreciated but is not required.
16 * 2. Altered source versions must be plainly marked as such, and must not be
17 * misrepresented as being the original software.
18 * 3. This notice may not be removed or altered from any source distribution.
19 **/
20
21// LOVE
22#include "FormatHandler.h"
23#include "common/Exception.h"
24
25namespace love
26{
27namespace image
28{
29
30FormatHandler::FormatHandler()
31{
32}
33
34FormatHandler::~FormatHandler()
35{
36}
37
38bool FormatHandler::canDecode(Data* /*data*/)
39{
40 return false;
41}
42
43bool FormatHandler::canEncode(PixelFormat /*rawFormat*/, EncodedFormat /*encodedFormat*/)
44{
45 return false;
46}
47
48FormatHandler::DecodedImage FormatHandler::decode(Data* /*data*/)
49{
50 throw love::Exception("Image decoding is not implemented for this format backend.");
51}
52
53FormatHandler::EncodedImage FormatHandler::encode(const DecodedImage& /*img*/, EncodedFormat /*format*/)
54{
55 throw love::Exception("Image encoding is not implemented for this format backend.");
56}
57
58bool FormatHandler::canParseCompressed(Data* /*data*/)
59{
60 return false;
61}
62
63StrongRef<CompressedMemory> FormatHandler::parseCompressed(Data* /*filedata*/, std::vector<StrongRef<CompressedSlice>>& /*images*/, PixelFormat& /*format*/, bool& /*sRGB*/)
64{
65 throw love::Exception("Compressed image parsing is not implemented for this format backend.");
66}
67
68void FormatHandler::freeRawPixels(unsigned char *mem)
69{
70 delete[] mem;
71}
72
73} // image
74} // love
75