载入中...
搜索中...
未找到
Image.h
浏览该文件的文档.
1#pragma once
2#include "common/Export.h"
3
4
5#include "common/Module.h"
6#include "image/ImageData.h"
7
8#include <list>
9
10namespace eve
11{
12namespace image
13{
14
23public:
24 using FormatHandler = medialoader::FormatHandler;
25
27
29 Image();
31 virtual ~Image();
32
38 ImageData *newImageData(Data *data);
39
48 ImageData *newImageDataFromFile(std::string path);
49
56 ImageData *newImageData(int width, int height, std::string format = "RGBA8");
57
67 ImageData *newImageData(int width, int height, std::string format, void *data, bool own = false);
68
74 // CompressedImageData *newCompressedData(Data *data);
75
80 bool isCompressed(Data *data);
81
83 std::vector<script::Owned<ImageData>> newCubeFaces(ImageData *src);
85 std::vector<script::Owned<ImageData>> newVolumeLayers(ImageData *src);
86
88 const std::list<FormatHandler *> &getFormatHandlers() const;
89
90private:
91
92 ImageData *newPastedImageData(ImageData *src, int sx, int sy, int w, int h);
93
94 // Image format handlers we can use for decoding and encoding ImageData.
95 std::list<FormatHandler *> formatHandlers;
96
97}; // Image
98
99} // image
100} // eve
101
float w
Definition AnimClip.cpp:738
#define EVENGINE_API_PLATFORM
Definition Export.h:107
vk::UniqueImage image
int h
std::uint32_t height
std::uint32_t width
std::string path
Definition PlayHost.cpp:110
Data public API.
Definition Data.h:8
EVENGINE_API_FOUNDATION public API.
Definition Module.h:46
Represents raw pixel data.
Definition ImageData.h:38
This module is responsible for decoding files such as PNG, GIF, JPEG into raw pixel data,...
Definition Image.h:22
medialoader::FormatHandler FormatHandler
Definition Image.h:24
Build metadata (engine git commit, build time, third-party version).
Definition Build.cpp:16