DDNet documentation
Toggle main menu visibility
Loading...
Searching...
No Matches
image.h
Go to the documentation of this file.
1
#ifndef ENGINE_IMAGE_H
2
#define ENGINE_IMAGE_H
3
4
#include <
base/color.h
>
5
6
#include <cstdint>
7
11
class
CImageInfo
12
{
13
private
:
14
bool
m_IsAllocated
=
false
;
15
16
public
:
20
enum
EImageFormat
21
{
22
FORMAT_UNDEFINED
= -1,
23
FORMAT_RGB
= 0,
24
FORMAT_RGBA
= 1,
25
FORMAT_R
= 2,
26
FORMAT_RA
= 3,
27
};
28
29
CImageInfo
() =
default
;
30
34
CImageInfo
&
operator=
(
CImageInfo
&&Other);
35
39
CImageInfo
(
CImageInfo
&&Other);
40
44
CImageInfo
(
const
CImageInfo
&) =
delete
;
45
49
CImageInfo
&
operator=
(
const
CImageInfo
&) =
delete
;
50
54
~CImageInfo
();
55
59
size_t
m_Width
= 0;
60
64
size_t
m_Height
= 0;
65
71
EImageFormat
m_Format
=
FORMAT_UNDEFINED
;
72
76
uint8_t *
m_pData
=
nullptr
;
77
81
void
Allocate
();
82
86
void
AllocateFillZero
();
87
91
void
Free
();
92
100
static
size_t
PixelSize
(
EImageFormat
Format);
101
109
static
const
char
*
FormatName
(
EImageFormat
Format);
110
118
size_t
PixelSize
()
const
;
119
125
const
char
*
FormatName
()
const
;
126
132
size_t
DataSize
()
const
;
133
142
bool
DataEquals
(
const
CImageInfo
&Other)
const
;
143
152
ColorRGBA
PixelColor
(
size_t
x,
size_t
y)
const
;
153
161
void
SetPixelColor
(
size_t
x,
size_t
y,
ColorRGBA
Color)
const
;
162
174
void
CopyRectFrom
(
const
CImageInfo
&SrcImage,
size_t
SrcX,
size_t
SrcY,
size_t
Width,
size_t
Height,
size_t
DestX,
size_t
DestY)
const
;
175
184
CImageInfo
DeepCopy
()
const
;
185
};
186
187
#endif
CImageInfo::CImageInfo
CImageInfo(const CImageInfo &)=delete
CImageInfo::Free
void Free()
Definition
image.cpp:51
CImageInfo::operator=
CImageInfo & operator=(const CImageInfo &)=delete
CImageInfo::PixelSize
static size_t PixelSize(EImageFormat Format)
Definition
image.cpp:66
CImageInfo::m_Height
size_t m_Height
Definition
image.h:64
CImageInfo::m_Format
EImageFormat m_Format
Definition
image.h:71
CImageInfo::DeepCopy
CImageInfo DeepCopy() const
Definition
image.cpp:174
CImageInfo::m_pData
uint8_t * m_pData
Definition
image.h:76
CImageInfo::AllocateFillZero
void AllocateFillZero()
Definition
image.cpp:43
CImageInfo::FormatName
static const char * FormatName(EImageFormat Format)
Definition
image.cpp:73
CImageInfo::CopyRectFrom
void CopyRectFrom(const CImageInfo &SrcImage, size_t SrcX, size_t SrcY, size_t Width, size_t Height, size_t DestX, size_t DestY) const
Definition
image.cpp:162
CImageInfo::DataEquals
bool DataEquals(const CImageInfo &Other) const
Definition
image.cpp:94
CImageInfo::EImageFormat
EImageFormat
Definition
image.h:21
CImageInfo::FORMAT_R
@ FORMAT_R
Definition
image.h:25
CImageInfo::FORMAT_RGB
@ FORMAT_RGB
Definition
image.h:23
CImageInfo::FORMAT_RA
@ FORMAT_RA
Definition
image.h:26
CImageInfo::FORMAT_RGBA
@ FORMAT_RGBA
Definition
image.h:24
CImageInfo::FORMAT_UNDEFINED
@ FORMAT_UNDEFINED
Definition
image.h:22
CImageInfo::DataSize
size_t DataSize() const
Definition
image.cpp:89
CImageInfo::CImageInfo
CImageInfo()=default
CImageInfo::Allocate
void Allocate()
Definition
image.cpp:35
CImageInfo::m_IsAllocated
bool m_IsAllocated
Definition
image.h:14
CImageInfo::m_Width
size_t m_Width
Definition
image.h:59
CImageInfo::operator=
CImageInfo & operator=(CImageInfo &&Other)
Definition
image.cpp:14
CImageInfo::PixelColor
ColorRGBA PixelColor(size_t x, size_t y) const
Definition
image.cpp:105
CImageInfo::SetPixelColor
void SetPixelColor(size_t x, size_t y, ColorRGBA Color) const
Definition
image.cpp:137
ColorRGBA
Definition
color.h:183
color.h
src
engine
image.h
Generated by
1.18.0