67 #ifndef RENDER_GRAPHICS_H
68 #define RENDER_GRAPHICS_H
80 PRAGMA48(GCC diagnostic ignored
"-Wshadow")
82 #include <SDL_render.h>
84 #include <SDL_video.h>
88 #include "localconsts.h"
91 #define RectPos int32_t
92 #define RectSize int32_t
94 #define RectPos int16_t
95 #define RectSize uint16_t
187 const int desiredWidth,
191 const int x,
const int y,
198 const int x,
const int y,
199 const int w,
const int h,
200 const int scaledWidth,
204 const int w,
const int h,
210 const int x,
const int y,
211 const int w,
const int h)
const restrict2 = 0;
215 const int x,
const int y,
216 const int w,
const int h)
const restrict2 = 0;
244 const int x,
const int y,
245 const int w,
const int h,
277 virtual
void drawNet(const
int x1, const
int y1,
278 const
int x2, const
int y2,
279 const
int width, const
int height)
restrict2;
323 mAlpha = (color.a != 255);
329 #ifdef DEBUG_DRAW_CALLS
330 virtual unsigned int getDrawCalls() const
restrict2
333 #ifdef DEBUG_BIND_TEXTURE
334 virtual unsigned int getBinds() const
restrict2
338 void dumpRendererInfo(
const char *
restrict const str,
361 const int x,
const int y,
526 static SDL_Renderer *
restrict mRenderer;
virtual void finalize(ImageVertexes *const vert)
virtual void updateScreen()=0
virtual void drawImage(const Image *const image, int dstX, int dstY)=0
void setMainFlags(const int w, const int h, const int scale, const int bpp, const bool fs, const bool hwaccel, const bool resize, const bool noFrame, const bool allowHighDPI)
RenderType getOpenGL() const
virtual void popClipArea()
virtual void drawRescaledPattern(const Image *const image, const int x, const int y, const int w, const int h, const int scaledWidth, const int scaledHeight)=0
virtual void drawTileCollection(const ImageCollection *const vertCol)=0
void setSync(const bool sync)
virtual void restoreContext()
const Color & getColor() const
virtual bool resizeScreen(const int width, const int height)
virtual bool setVideoMode(const int w, const int h, const int scale, const int bpp, const bool fs, const bool hwaccel, const bool resize, const bool noFrame, const bool allowHighDPI)=0
virtual void createGLContext(const bool custom)
virtual void fillRectangle(const Rect &rectangle)=0
virtual void screenResized()
void setSecure(const bool n)
virtual void calcTileCollection(ImageCollection *const vertCol, const Image *const image, int x, int y)=0
virtual void calcPattern(ImageCollection *const vert, const Image *const image, const int x, const int y, const int w, const int h) const =0
virtual void drawImageCached(const Image *const image, int srcX, int srcY)=0
virtual void calcPattern(ImageVertexes *const vert, const Image *const image, const int x, const int y, const int w, const int h) const =0
virtual void deleteArrays()
void setNoFrame(const bool n)
virtual void setColor(const Color &color)
void setWindow(SDL_Surface *const window, const int width, const int height)
const std::string & getName() const
virtual void finalize(ImageCollection *const col)
virtual void calcTileSDL(ImageVertexes *const vert, int x, int y) const
virtual void drawRectangle(const Rect &rectangle)=0
MStack< ClipRect > mClipStack
bool setFullscreen(const bool fs)
virtual void calcWindow(ImageCollection *const vertCol, const int x, const int y, const int w, const int h, const ImageRect &imgRect)=0
void setWindowSize(const int width, const int height)
virtual void drawLine(int x1, int y1, int x2, int y2)=0
virtual void calcTileVertexes(ImageVertexes *const vert, const Image *const image, int x, int y) const =0
virtual void drawPattern(const Image *const image, const int x, const int y, const int w, const int h)=0
bool getDoubleBuffer() const
ClipRect & getTopClip() const
virtual void removeArray(const uint32_t sz, uint32_t *const arr)
virtual void initArrays(const int vertCount)
virtual void clearScreen() const
SDL_Surface * getWindow() const
virtual void drawPoint(int x, int y)=0
int getMemoryUsage() const
virtual void drawImageRect(const int x, const int y, const int w, const int h, const ImageRect &imgRect)=0
virtual void copyImage(const Image *const image, int dstX, int dstY)=0
virtual void pushClipArea(const Rect &area)
virtual bool isAllowScale() const
void setRedraw(const bool n)
virtual void drawTileVertexes(const ImageVertexes *const vert)=0
virtual void drawPatternCached(const Image *const image, const int x, const int y, const int w, const int h)=0
virtual void completeCache()=0
int getSoftwareFlags() const
virtual void drawNet(const int x1, const int y1, const int x2, const int y2, const int width, const int height)
bool getFullScreen() const
int getOpenGLFlags() const
virtual void drawRescaledImage(const Image *const image, int dstX, int dstY, const int desiredWidth, const int desiredHeight)=0
#define A_DELETE_COPY(func)
bool info(InputEvent &event)