ManaPlus
graphicsdef.hpp
Go to the documentation of this file.
1 /*
2  * The ManaPlus Client
3  * Copyright (C) 2004-2009 The Mana World Development Team
4  * Copyright (C) 2009-2010 The Mana Developers
5  * Copyright (C) 2011-2019 The ManaPlus Developers
6  * Copyright (C) 2019-2021 Andrei Karas
7  *
8  * This file is part of The ManaPlus Client.
9  *
10  * This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program. If not, see <http://www.gnu.org/licenses/>.
22  */
23 
24 #define RENDER_GRAPHICSDEF_HPP
25 
26 public:
31  void drawImageRect(int x, int y,
32  int w, int h,
33  const ImageRect &restrict imgRect)
34  restrict2 override final;
35 
37 
39 
41 
43 
47  void drawRescaledImage(const Image *restrict const image,
48  int dstX, int dstY,
49  const int desiredWidth,
50  const int desiredHeight) restrict2 override final;
51 
52  void drawPattern(const Image *restrict const image,
53  const int x, const int y,
54  const int w, const int h) restrict2 override final;
55 
56  void inline drawPatternInline(const Image *restrict const image,
57  const int x, const int y,
58  const int w, const int h) restrict2 A_INLINE;
59 
60  void drawRescaledPattern(const Image *restrict const image,
61  const int x, const int y,
62  const int w, const int h,
63  const int scaledWidth,
64  const int scaledHeight) restrict2 override final;
65 
67  const Image *restrict const image,
68  const int x, const int y,
69  const int w, const int h) const restrict2 override final;
70 
72  const Image *restrict const image,
73  const int x, const int y,
74  const int w, const int h) const restrict2 override final;
75 
77  const Image *restrict const image,
78  int x, int y) const restrict2 override final
79  A_NONNULL(2, 3);
80 
82  const Image *restrict const image,
83  int x, int y) restrict2 override final;
84 
85  void drawTileVertexes(const ImageVertexes *restrict const vert)
87 
89  *restrict const vertCol) restrict2 override final
90  A_NONNULL(2);
91 
93 
94  void calcWindow(ImageCollection *restrict const vertCol,
95  const int x, const int y,
96  const int w, const int h,
97  const ImageRect &restrict imgRect)
99 
101 
103 
105 
106  void drawLine(int x1, int y1,
107  int x2, int y2) restrict2 override final;
108 
109  bool setVideoMode(const int w, const int h,
110  const int scalle,
111  const int bpp,
112  const bool fs,
113  const bool hwaccel,
114  const bool resize,
115  const bool noFrame,
116  const bool allowHighDPI) restrict2 override final;
117 
118  void drawImage(const Image *restrict const image,
119  int dstX, int dstY) restrict2 override final;
120 
121  void copyImage(const Image *restrict const image,
122  int dstX, int dstY) restrict2 override final;
123 
124  void drawImageCached(const Image *restrict const image,
125  int x, int y) restrict2 override final;
126 
127  void drawPatternCached(const Image *restrict const image,
128  const int x, const int y,
129  const int w, const int h) restrict2 override final;
130 
132 
133 private:
134  void inline calcImageRect(ImageVertexes *restrict const vert,
135  int x, int y,
136  int w, int h,
137  const ImageRect &restrict imgRect)
138  restrict2 A_INLINE;
139 
140  void inline calcPatternInline(ImageVertexes *restrict const vert,
141  const Image *restrict const image,
142  const int x,
143  const int y,
144  const int w,
145  const int h) const restrict2 A_INLINE;
146 
148  const Image *restrict const image,
149  int x,
150  int y) const restrict2
151  A_INLINE A_NONNULL(2, 3);
152 
153  void inline drawImageInline(const Image *restrict const image,
154  int dstX,
155  int dstY) restrict2 A_INLINE;
Definition: rect.h:74
void calcPatternInline(ImageVertexes *restrict const vert, const Image *restrict const image, const int x, const int y, const int w, const int h) const restrict2 A_INLINE
void calcTileVertexes(ImageVertexes *restrict const vert, const Image *restrict const image, int x, int y) const restrict2 override final A_NONNULL(2
void calcWindow(ImageCollection *restrict const vertCol, const int x, const int y, const int w, const int h, const ImageRect &restrict imgRect) restrict2 override final A_NONNULL(2)
void drawPatternInline(const Image *restrict const image, const int x, const int y, const int w, const int h) restrict2 A_INLINE
void drawRectangle(const Rect &restrict rect) restrict2 override final
void drawRescaledPattern(const Image *restrict const image, const int x, const int y, const int w, const int h, const int scaledWidth, const int scaledHeight) restrict2 override final
void copyImage(const Image *restrict const image, int dstX, int dstY) restrict2 override final
void calcPattern(ImageVertexes *restrict const vert, const Image *restrict const image, const int x, const int y, const int w, const int h) const restrict2 override final
bool setVideoMode(const int w, const int h, const int scalle, const int bpp, const bool fs, const bool hwaccel, const bool resize, const bool noFrame, const bool allowHighDPI) restrict2 override final
void drawPoint(int x, int y) restrict2 override final
void drawRescaledImage(const Image *restrict const image, int dstX, int dstY, const int desiredWidth, const int desiredHeight) restrict2 override final
void endDraw() restrict2 override final
void drawTileVertexes(const ImageVertexes *restrict const vert) restrict2 override final
void void drawImageInline(const Image *restrict const image, int dstX, int dstY) restrict2 A_INLINE
void calcTileVertexesInline(ImageVertexes *restrict const vert, const Image *restrict const image, int x, int y) const restrict2 A_INLINE A_NONNULL(2
void drawImageRect(int x, int y, int w, int h, const ImageRect &restrict imgRect) restrict2 override final
void fillRectangle(const Rect &restrict rect) restrict2 override final
void drawLine(int x1, int y1, int x2, int y2) restrict2 override final
void popClipArea() restrict2 override final
void drawTileCollection(const ImageCollection *restrict const vertCol) restrict2 override final A_NONNULL(2)
void drawImage(const Image *restrict const image, int dstX, int dstY) restrict2 override final
void updateScreen() restrict2 override final
void void calcTileCollection(ImageCollection *restrict const vertCol, const Image *restrict const image, int x, int y) restrict2 override final
void drawPattern(const Image *restrict const image, const int x, const int y, const int w, const int h) restrict2 override final
void calcImageRect(ImageVertexes *restrict const vert, int x, int y, int w, int h, const ImageRect &restrict imgRect) restrict2 A_INLINE
void pushClipArea(const Rect &restrict area) restrict2 override final
void drawImageCached(const Image *restrict const image, int x, int y) restrict2 override final
void completeCache() restrict2 override final
void beginDraw() restrict2 override final
void drawPatternCached(const Image *restrict const image, const int x, const int y, const int w, const int h) restrict2 override final
#define restrict
Definition: localconsts.h:165
#define restrict2
Definition: localconsts.h:166
#define override
Definition: localconsts.h:47
#define A_NONNULL(...)
Definition: localconsts.h:168
#define final
Definition: localconsts.h:46