blender/extern/sdlew/include/SDL2/SDL_render.h

281 lines
11 KiB
C
Raw Normal View History

#ifndef _SDL_render_h
#define _SDL_render_h
#include "SDL_stdinc.h"
#include "SDL_rect.h"
#include "SDL_video.h"
#include "begin_code.h"
#ifdef __cplusplus
extern "C" {
#endif
typedef enum
{
SDL_RENDERER_SOFTWARE = 0x00000001,
SDL_RENDERER_ACCELERATED = 0x00000002,
SDL_RENDERER_PRESENTVSYNC = 0x00000004,
SDL_RENDERER_TARGETTEXTURE = 0x00000008
} SDL_RendererFlags;
typedef struct SDL_RendererInfo
{
const char *name;
Uint32 flags;
Uint32 num_texture_formats;
Uint32 texture_formats[16];
int max_texture_width;
int max_texture_height;
} SDL_RendererInfo;
typedef enum
{
SDL_TEXTUREACCESS_STATIC,
SDL_TEXTUREACCESS_STREAMING,
SDL_TEXTUREACCESS_TARGET
} SDL_TextureAccess;
typedef enum
{
SDL_TEXTUREMODULATE_NONE = 0x00000000,
SDL_TEXTUREMODULATE_COLOR = 0x00000001,
SDL_TEXTUREMODULATE_ALPHA = 0x00000002
} SDL_TextureModulate;
typedef enum
{
SDL_FLIP_NONE = 0x00000000,
SDL_FLIP_HORIZONTAL = 0x00000001,
SDL_FLIP_VERTICAL = 0x00000002
} SDL_RendererFlip;
struct SDL_Renderer;
typedef struct SDL_Renderer SDL_Renderer;
struct SDL_Texture;
typedef struct SDL_Texture SDL_Texture;
typedef int SDLCALL tSDL_GetNumRenderDrivers(void);
typedef int SDLCALL tSDL_GetRenderDriverInfo(int index,
SDL_RendererInfo * info);
typedef int SDLCALL tSDL_CreateWindowAndRenderer(
int width, int height, Uint32 window_flags,
SDL_Window **window, SDL_Renderer **renderer);
typedef SDL_Renderer * SDLCALL tSDL_CreateRenderer(SDL_Window * window,
int index, Uint32 flags);
typedef SDL_Renderer * SDLCALL tSDL_CreateSoftwareRenderer(SDL_Surface * surface);
typedef SDL_Renderer * SDLCALL tSDL_GetRenderer(SDL_Window * window);
typedef int SDLCALL tSDL_GetRendererInfo(SDL_Renderer * renderer,
SDL_RendererInfo * info);
typedef int SDLCALL tSDL_GetRendererOutputSize(SDL_Renderer * renderer,
int *w, int *h);
typedef SDL_Texture * SDLCALL tSDL_CreateTexture(SDL_Renderer * renderer,
Uint32 format,
int access, int w,
int h);
typedef SDL_Texture * SDLCALL tSDL_CreateTextureFromSurface(SDL_Renderer * renderer, SDL_Surface * surface);
typedef int SDLCALL tSDL_QueryTexture(SDL_Texture * texture,
Uint32 * format, int *access,
int *w, int *h);
typedef int SDLCALL tSDL_SetTextureColorMod(SDL_Texture * texture,
Uint8 r, Uint8 g, Uint8 b);
typedef int SDLCALL tSDL_GetTextureColorMod(SDL_Texture * texture,
Uint8 * r, Uint8 * g,
Uint8 * b);
typedef int SDLCALL tSDL_SetTextureAlphaMod(SDL_Texture * texture,
Uint8 alpha);
typedef int SDLCALL tSDL_GetTextureAlphaMod(SDL_Texture * texture,
Uint8 * alpha);
typedef int SDLCALL tSDL_SetTextureBlendMode(SDL_Texture * texture,
SDL_BlendMode blendMode);
typedef int SDLCALL tSDL_GetTextureBlendMode(SDL_Texture * texture,
SDL_BlendMode *blendMode);
typedef int SDLCALL tSDL_UpdateTexture(SDL_Texture * texture,
const SDL_Rect * rect,
const void *pixels, int pitch);
typedef int SDLCALL tSDL_LockTexture(SDL_Texture * texture,
const SDL_Rect * rect,
void **pixels, int *pitch);
typedef void SDLCALL tSDL_UnlockTexture(SDL_Texture * texture);
typedef SDL_bool SDLCALL tSDL_RenderTargetSupported(SDL_Renderer *renderer);
typedef int SDLCALL tSDL_SetRenderTarget(SDL_Renderer *renderer,
SDL_Texture *texture);
typedef SDL_Texture * SDLCALL tSDL_GetRenderTarget(SDL_Renderer *renderer);
typedef int SDLCALL tSDL_RenderSetLogicalSize(SDL_Renderer * renderer, int w, int h);
typedef void SDLCALL tSDL_RenderGetLogicalSize(SDL_Renderer * renderer, int *w, int *h);
typedef int SDLCALL tSDL_RenderSetViewport(SDL_Renderer * renderer,
const SDL_Rect * rect);
typedef void SDLCALL tSDL_RenderGetViewport(SDL_Renderer * renderer,
SDL_Rect * rect);
typedef int SDLCALL tSDL_RenderSetClipRect(SDL_Renderer * renderer,
const SDL_Rect * rect);
typedef void SDLCALL tSDL_RenderGetClipRect(SDL_Renderer * renderer,
SDL_Rect * rect);
typedef int SDLCALL tSDL_RenderSetScale(SDL_Renderer * renderer,
float scaleX, float scaleY);
typedef void SDLCALL tSDL_RenderGetScale(SDL_Renderer * renderer,
float *scaleX, float *scaleY);
extern DECLSPEC int SDL_SetRenderDrawColor(SDL_Renderer * renderer,
Uint8 r, Uint8 g, Uint8 b,
Uint8 a);
extern DECLSPEC int SDL_GetRenderDrawColor(SDL_Renderer * renderer,
Uint8 * r, Uint8 * g, Uint8 * b,
Uint8 * a);
typedef int SDLCALL tSDL_SetRenderDrawBlendMode(SDL_Renderer * renderer,
SDL_BlendMode blendMode);
typedef int SDLCALL tSDL_GetRenderDrawBlendMode(SDL_Renderer * renderer,
SDL_BlendMode *blendMode);
typedef int SDLCALL tSDL_RenderClear(SDL_Renderer * renderer);
typedef int SDLCALL tSDL_RenderDrawPoint(SDL_Renderer * renderer,
int x, int y);
typedef int SDLCALL tSDL_RenderDrawPoints(SDL_Renderer * renderer,
const SDL_Point * points,
int count);
typedef int SDLCALL tSDL_RenderDrawLine(SDL_Renderer * renderer,
int x1, int y1, int x2, int y2);
typedef int SDLCALL tSDL_RenderDrawLines(SDL_Renderer * renderer,
const SDL_Point * points,
int count);
typedef int SDLCALL tSDL_RenderDrawRect(SDL_Renderer * renderer,
const SDL_Rect * rect);
typedef int SDLCALL tSDL_RenderDrawRects(SDL_Renderer * renderer,
const SDL_Rect * rects,
int count);
typedef int SDLCALL tSDL_RenderFillRect(SDL_Renderer * renderer,
const SDL_Rect * rect);
typedef int SDLCALL tSDL_RenderFillRects(SDL_Renderer * renderer,
const SDL_Rect * rects,
int count);
typedef int SDLCALL tSDL_RenderCopy(SDL_Renderer * renderer,
SDL_Texture * texture,
const SDL_Rect * srcrect,
const SDL_Rect * dstrect);
typedef int SDLCALL tSDL_RenderCopyEx(SDL_Renderer * renderer,
SDL_Texture * texture,
const SDL_Rect * srcrect,
const SDL_Rect * dstrect,
const double angle,
const SDL_Point *center,
const SDL_RendererFlip flip);
typedef int SDLCALL tSDL_RenderReadPixels(SDL_Renderer * renderer,
const SDL_Rect * rect,
Uint32 format,
void *pixels, int pitch);
typedef void SDLCALL tSDL_RenderPresent(SDL_Renderer * renderer);
typedef void SDLCALL tSDL_DestroyTexture(SDL_Texture * texture);
typedef void SDLCALL tSDL_DestroyRenderer(SDL_Renderer * renderer);
typedef int SDLCALL tSDL_GL_BindTexture(SDL_Texture *texture, float *texw, float *texh);
typedef int SDLCALL tSDL_GL_UnbindTexture(SDL_Texture *texture);
extern tSDL_GetNumRenderDrivers *SDL_GetNumRenderDrivers;
extern tSDL_GetRenderDriverInfo *SDL_GetRenderDriverInfo;
extern tSDL_CreateWindowAndRenderer *SDL_CreateWindowAndRenderer;
extern tSDL_CreateRenderer *SDL_CreateRenderer;
extern tSDL_CreateSoftwareRenderer *SDL_CreateSoftwareRenderer;
extern tSDL_GetRenderer *SDL_GetRenderer;
extern tSDL_GetRendererInfo *SDL_GetRendererInfo;
extern tSDL_GetRendererOutputSize *SDL_GetRendererOutputSize;
extern tSDL_CreateTexture *SDL_CreateTexture;
extern tSDL_CreateTextureFromSurface *SDL_CreateTextureFromSurface;
extern tSDL_QueryTexture *SDL_QueryTexture;
extern tSDL_SetTextureColorMod *SDL_SetTextureColorMod;
extern tSDL_GetTextureColorMod *SDL_GetTextureColorMod;
extern tSDL_SetTextureAlphaMod *SDL_SetTextureAlphaMod;
extern tSDL_GetTextureAlphaMod *SDL_GetTextureAlphaMod;
extern tSDL_SetTextureBlendMode *SDL_SetTextureBlendMode;
extern tSDL_GetTextureBlendMode *SDL_GetTextureBlendMode;
extern tSDL_UpdateTexture *SDL_UpdateTexture;
extern tSDL_LockTexture *SDL_LockTexture;
extern tSDL_UnlockTexture *SDL_UnlockTexture;
extern tSDL_RenderTargetSupported *SDL_RenderTargetSupported;
extern tSDL_SetRenderTarget *SDL_SetRenderTarget;
extern tSDL_GetRenderTarget *SDL_GetRenderTarget;
extern tSDL_RenderSetLogicalSize *SDL_RenderSetLogicalSize;
extern tSDL_RenderGetLogicalSize *SDL_RenderGetLogicalSize;
extern tSDL_RenderSetViewport *SDL_RenderSetViewport;
extern tSDL_RenderGetViewport *SDL_RenderGetViewport;
extern tSDL_RenderSetClipRect *SDL_RenderSetClipRect;
extern tSDL_RenderGetClipRect *SDL_RenderGetClipRect;
extern tSDL_RenderSetScale *SDL_RenderSetScale;
extern tSDL_RenderGetScale *SDL_RenderGetScale;
extern tSDL_SetRenderDrawBlendMode *SDL_SetRenderDrawBlendMode;
extern tSDL_GetRenderDrawBlendMode *SDL_GetRenderDrawBlendMode;
extern tSDL_RenderClear *SDL_RenderClear;
extern tSDL_RenderDrawPoint *SDL_RenderDrawPoint;
extern tSDL_RenderDrawPoints *SDL_RenderDrawPoints;
extern tSDL_RenderDrawLine *SDL_RenderDrawLine;
extern tSDL_RenderDrawLines *SDL_RenderDrawLines;
extern tSDL_RenderDrawRect *SDL_RenderDrawRect;
extern tSDL_RenderDrawRects *SDL_RenderDrawRects;
extern tSDL_RenderFillRect *SDL_RenderFillRect;
extern tSDL_RenderFillRects *SDL_RenderFillRects;
extern tSDL_RenderCopy *SDL_RenderCopy;
extern tSDL_RenderCopyEx *SDL_RenderCopyEx;
extern tSDL_RenderReadPixels *SDL_RenderReadPixels;
extern tSDL_RenderPresent *SDL_RenderPresent;
extern tSDL_DestroyTexture *SDL_DestroyTexture;
extern tSDL_DestroyRenderer *SDL_DestroyRenderer;
extern tSDL_GL_BindTexture *SDL_GL_BindTexture;
extern tSDL_GL_UnbindTexture *SDL_GL_UnbindTexture;
#ifdef __cplusplus
}
#endif
#include "close_code.h"
#endif