28#ifndef WINTERMUTE_BASE_SURFACE_H
29#define WINTERMUTE_BASE_SURFACE_H
31#include "engines/wintermute/base/base.h"
32#include "graphics/surface.h"
33#include "graphics/transform_struct.h"
39 virtual bool invalidate();
40 virtual bool prepareToDraw();
55 virtual bool isTransparentAt(
int x,
int y);
56 virtual bool displayTransRotate(
int x,
int y,
float rotate, int32 hotspotX, int32 hotspotY,
Common::Rect32 rect,
float zoomX,
float zoomY, uint32 alpha = 0xFFFFFFFF, Graphics::TSpriteBlendMode blendMode = Graphics::BLEND_NORMAL,
bool mirrorX =
false,
bool mirrorY =
false) = 0;
57 virtual bool displayTransZoom(
int x,
int y,
Common::Rect32 rect,
float zoomX,
float zoomY, uint32 alpha = 0xFFFFFFFF, Graphics::TSpriteBlendMode blendMode = Graphics::BLEND_NORMAL,
bool mirrorX =
false,
bool mirrorY =
false) = 0;
58 virtual bool displayTrans(
int x,
int y,
Common::Rect32 rect, uint32 alpha = 0xFFFFFFFF, Graphics::TSpriteBlendMode blendMode = Graphics::BLEND_NORMAL,
bool mirrorX =
false,
bool mirrorY =
false,
int offsetX = 0,
int offsetY = 0) = 0;
59 virtual bool display(
int x,
int y,
Common::Rect32 rect, Graphics::TSpriteBlendMode blendMode = Graphics::BLEND_NORMAL,
bool mirrorX =
false,
bool mirrorY =
false) = 0;
60 virtual bool displayTiled(
int x,
int y,
Common::Rect32 rect,
int numTimesX,
int numTimesY) = 0;
61 virtual bool restore();
62 virtual bool create(
const char *filename,
bool texture2D,
bool defaultCK,
byte ckRed,
byte ckGreen,
byte ckBlue,
int lifeTime = -1,
bool keepLoaded =
false) = 0;
63 virtual bool create(
int width,
int height);
64 virtual bool setAlphaImage(
const char *filename) {
67 virtual bool putSurface(
const Graphics::Surface &surface,
bool hasAlpha =
false) {
70 virtual bool startPixelOp() = 0;
71 virtual bool endPixelOp() = 0;
72 virtual bool putPixel(
int x,
int y,
byte r,
byte g,
byte b,
byte a) = 0;
73 virtual bool getPixel(
int x,
int y,
byte *r,
byte *g,
byte *b,
byte *a =
nullptr)
const = 0;
74 virtual bool isTransparentAtLite(
int x,
int y)
const = 0;
75 void setFilename(
const char *filename);
76 void setSize(
int width,
int height);
81 virtual int getWidth() {
84 virtual int getHeight() {
Definition: base_game.h:79
Definition: base_surface.h:37