Mercurial > sdl-ios-xcode
annotate include/SDL_render.h @ 5268:e1122f31fec5
Fixed SSE4 detection, and split it into SSE 4.1 and 4.2
author | Sam Lantinga <slouken@libsdl.org> |
---|---|
date | Fri, 11 Feb 2011 23:02:35 -0800 |
parents | b530ef003506 |
children |
rev | line source |
---|---|
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
1 /* |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
2 SDL - Simple DirectMedia Layer |
5267 | 3 Copyright (C) 1997-2011 Sam Lantinga |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
4 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
5 This library is free software; you can redistribute it and/or |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
6 modify it under the terms of the GNU Lesser General Public |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
7 License as published by the Free Software Foundation; either |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
8 version 2.1 of the License, or (at your option) any later version. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
9 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
10 This library is distributed in the hope that it will be useful, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
11 but WITHOUT ANY WARRANTY; without even the implied warranty of |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
13 Lesser General Public License for more details. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
14 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
15 You should have received a copy of the GNU Lesser General Public |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
16 License along with this library; if not, write to the Free Software |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
17 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
18 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
19 Sam Lantinga |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
20 slouken@libsdl.org |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
21 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
22 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
23 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
24 * \file SDL_render.h |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
25 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
26 * Header file for SDL 2D rendering functions. |
5167
97423d858a1a
Added an intro to the features and goals of the 2D rendering API.
Sam Lantinga <slouken@libsdl.org>
parents:
5161
diff
changeset
|
27 * |
97423d858a1a
Added an intro to the features and goals of the 2D rendering API.
Sam Lantinga <slouken@libsdl.org>
parents:
5161
diff
changeset
|
28 * This API supports the following features: |
97423d858a1a
Added an intro to the features and goals of the 2D rendering API.
Sam Lantinga <slouken@libsdl.org>
parents:
5161
diff
changeset
|
29 * * single pixel points |
97423d858a1a
Added an intro to the features and goals of the 2D rendering API.
Sam Lantinga <slouken@libsdl.org>
parents:
5161
diff
changeset
|
30 * * single pixel lines |
97423d858a1a
Added an intro to the features and goals of the 2D rendering API.
Sam Lantinga <slouken@libsdl.org>
parents:
5161
diff
changeset
|
31 * * filled rectangles |
97423d858a1a
Added an intro to the features and goals of the 2D rendering API.
Sam Lantinga <slouken@libsdl.org>
parents:
5161
diff
changeset
|
32 * * texture images |
97423d858a1a
Added an intro to the features and goals of the 2D rendering API.
Sam Lantinga <slouken@libsdl.org>
parents:
5161
diff
changeset
|
33 * |
97423d858a1a
Added an intro to the features and goals of the 2D rendering API.
Sam Lantinga <slouken@libsdl.org>
parents:
5161
diff
changeset
|
34 * The primitives may be drawn in opaque, blended, or additive modes. |
97423d858a1a
Added an intro to the features and goals of the 2D rendering API.
Sam Lantinga <slouken@libsdl.org>
parents:
5161
diff
changeset
|
35 * |
97423d858a1a
Added an intro to the features and goals of the 2D rendering API.
Sam Lantinga <slouken@libsdl.org>
parents:
5161
diff
changeset
|
36 * The texture images may be drawn in opaque, blended, or additive modes. |
97423d858a1a
Added an intro to the features and goals of the 2D rendering API.
Sam Lantinga <slouken@libsdl.org>
parents:
5161
diff
changeset
|
37 * They can have an additional color tint or alpha modulation applied to |
97423d858a1a
Added an intro to the features and goals of the 2D rendering API.
Sam Lantinga <slouken@libsdl.org>
parents:
5161
diff
changeset
|
38 * them, and may also be stretched with linear interpolation. |
97423d858a1a
Added an intro to the features and goals of the 2D rendering API.
Sam Lantinga <slouken@libsdl.org>
parents:
5161
diff
changeset
|
39 * |
97423d858a1a
Added an intro to the features and goals of the 2D rendering API.
Sam Lantinga <slouken@libsdl.org>
parents:
5161
diff
changeset
|
40 * This API is designed to accelerate simple 2D operations. You may |
97423d858a1a
Added an intro to the features and goals of the 2D rendering API.
Sam Lantinga <slouken@libsdl.org>
parents:
5161
diff
changeset
|
41 * want more functionality such as rotation and particle effects and |
97423d858a1a
Added an intro to the features and goals of the 2D rendering API.
Sam Lantinga <slouken@libsdl.org>
parents:
5161
diff
changeset
|
42 * in that case you should use SDL's OpenGL/Direct3D support or one |
97423d858a1a
Added an intro to the features and goals of the 2D rendering API.
Sam Lantinga <slouken@libsdl.org>
parents:
5161
diff
changeset
|
43 * of the many good 3D engines. |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
44 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
45 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
46 #ifndef _SDL_render_h |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
47 #define _SDL_render_h |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
48 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
49 #include "SDL_stdinc.h" |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
50 #include "SDL_rect.h" |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
51 #include "SDL_video.h" |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
52 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
53 #include "begin_code.h" |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
54 /* Set up for C function definitions, even when using C++ */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
55 #ifdef __cplusplus |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
56 /* *INDENT-OFF* */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
57 extern "C" { |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
58 /* *INDENT-ON* */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
59 #endif |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
60 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
61 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
62 * \brief Flags used when creating a rendering context |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
63 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
64 typedef enum |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
65 { |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
66 SDL_RENDERER_ACCELERATED = 0x00000001, /**< The renderer uses hardware |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
67 acceleration */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
68 SDL_RENDERER_PRESENTVSYNC = 0x00000002 /**< Present is synchronized |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
69 with the refresh rate */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
70 } SDL_RendererFlags; |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
71 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
72 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
73 * \brief Information on the capabilities of a render driver or context. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
74 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
75 typedef struct SDL_RendererInfo |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
76 { |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
77 const char *name; /**< The name of the renderer */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
78 Uint32 flags; /**< Supported ::SDL_RendererFlags */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
79 Uint32 num_texture_formats; /**< The number of available texture formats */ |
5159
307ccc9c135e
Made it possible to create a texture of any format, even if not supported by the renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
5152
diff
changeset
|
80 Uint32 texture_formats[16]; /**< The available texture formats */ |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
81 int max_texture_width; /**< The maximimum texture width */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
82 int max_texture_height; /**< The maximimum texture height */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
83 } SDL_RendererInfo; |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
84 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
85 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
86 * \brief The access pattern allowed for a texture. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
87 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
88 typedef enum |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
89 { |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
90 SDL_TEXTUREACCESS_STATIC, /**< Changes rarely, not lockable */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
91 SDL_TEXTUREACCESS_STREAMING /**< Changes frequently, lockable */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
92 } SDL_TextureAccess; |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
93 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
94 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
95 * \brief The texture channel modulation used in SDL_RenderCopy(). |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
96 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
97 typedef enum |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
98 { |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
99 SDL_TEXTUREMODULATE_NONE = 0x00000000, /**< No modulation */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
100 SDL_TEXTUREMODULATE_COLOR = 0x00000001, /**< srcC = srcC * color */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
101 SDL_TEXTUREMODULATE_ALPHA = 0x00000002 /**< srcA = srcA * alpha */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
102 } SDL_TextureModulate; |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
103 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
104 /** |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
105 * \brief A structure representing rendering state |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
106 */ |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
107 struct SDL_Renderer; |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
108 typedef struct SDL_Renderer SDL_Renderer; |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
109 |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
110 /** |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
111 * \brief An efficient driver-specific representation of pixel data |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
112 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
113 struct SDL_Texture; |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
114 typedef struct SDL_Texture SDL_Texture; |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
115 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
116 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
117 /* Function prototypes */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
118 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
119 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
120 * \brief Get the number of 2D rendering drivers available for the current |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
121 * display. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
122 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
123 * A render driver is a set of code that handles rendering and texture |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
124 * management on a particular display. Normally there is only one, but |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
125 * some drivers may have several available with different capabilities. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
126 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
127 * \sa SDL_GetRenderDriverInfo() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
128 * \sa SDL_CreateRenderer() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
129 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
130 extern DECLSPEC int SDLCALL SDL_GetNumRenderDrivers(void); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
131 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
132 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
133 * \brief Get information about a specific 2D rendering driver for the current |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
134 * display. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
135 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
136 * \param index The index of the driver to query information about. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
137 * \param info A pointer to an SDL_RendererInfo struct to be filled with |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
138 * information on the rendering driver. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
139 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
140 * \return 0 on success, -1 if the index was out of range. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
141 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
142 * \sa SDL_CreateRenderer() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
143 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
144 extern DECLSPEC int SDLCALL SDL_GetRenderDriverInfo(int index, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
145 SDL_RendererInfo * info); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
146 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
147 /** |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
148 * \brief Create a 2D rendering context for a window. |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
149 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
150 * \param window The window where rendering is displayed. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
151 * \param index The index of the rendering driver to initialize, or -1 to |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
152 * initialize the first one supporting the requested flags. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
153 * \param flags ::SDL_RendererFlags. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
154 * |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
155 * \return A valid rendering context or NULL if there was an error. |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
156 * |
5169
4d39eeaad00b
Added a way to get a framebuffer interface for a window, and also a way to create a software renderer for an arbitrary surface.
Sam Lantinga <slouken@libsdl.org>
parents:
5167
diff
changeset
|
157 * \sa SDL_CreateSoftwareRenderer() |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
158 * \sa SDL_GetRendererInfo() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
159 * \sa SDL_DestroyRenderer() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
160 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
161 extern DECLSPEC SDL_Renderer * SDLCALL SDL_CreateRenderer(SDL_Window * window, |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
162 int index, Uint32 flags); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
163 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
164 /** |
5169
4d39eeaad00b
Added a way to get a framebuffer interface for a window, and also a way to create a software renderer for an arbitrary surface.
Sam Lantinga <slouken@libsdl.org>
parents:
5167
diff
changeset
|
165 * \brief Create a 2D software rendering context for a surface. |
4d39eeaad00b
Added a way to get a framebuffer interface for a window, and also a way to create a software renderer for an arbitrary surface.
Sam Lantinga <slouken@libsdl.org>
parents:
5167
diff
changeset
|
166 * |
4d39eeaad00b
Added a way to get a framebuffer interface for a window, and also a way to create a software renderer for an arbitrary surface.
Sam Lantinga <slouken@libsdl.org>
parents:
5167
diff
changeset
|
167 * \param surface The surface where rendering is done. |
4d39eeaad00b
Added a way to get a framebuffer interface for a window, and also a way to create a software renderer for an arbitrary surface.
Sam Lantinga <slouken@libsdl.org>
parents:
5167
diff
changeset
|
168 * |
4d39eeaad00b
Added a way to get a framebuffer interface for a window, and also a way to create a software renderer for an arbitrary surface.
Sam Lantinga <slouken@libsdl.org>
parents:
5167
diff
changeset
|
169 * \return A valid rendering context or NULL if there was an error. |
4d39eeaad00b
Added a way to get a framebuffer interface for a window, and also a way to create a software renderer for an arbitrary surface.
Sam Lantinga <slouken@libsdl.org>
parents:
5167
diff
changeset
|
170 * |
4d39eeaad00b
Added a way to get a framebuffer interface for a window, and also a way to create a software renderer for an arbitrary surface.
Sam Lantinga <slouken@libsdl.org>
parents:
5167
diff
changeset
|
171 * \sa SDL_CreateRenderer() |
4d39eeaad00b
Added a way to get a framebuffer interface for a window, and also a way to create a software renderer for an arbitrary surface.
Sam Lantinga <slouken@libsdl.org>
parents:
5167
diff
changeset
|
172 * \sa SDL_DestroyRenderer() |
4d39eeaad00b
Added a way to get a framebuffer interface for a window, and also a way to create a software renderer for an arbitrary surface.
Sam Lantinga <slouken@libsdl.org>
parents:
5167
diff
changeset
|
173 */ |
4d39eeaad00b
Added a way to get a framebuffer interface for a window, and also a way to create a software renderer for an arbitrary surface.
Sam Lantinga <slouken@libsdl.org>
parents:
5167
diff
changeset
|
174 extern DECLSPEC SDL_Renderer * SDLCALL SDL_CreateSoftwareRenderer(SDL_Surface * surface); |
4d39eeaad00b
Added a way to get a framebuffer interface for a window, and also a way to create a software renderer for an arbitrary surface.
Sam Lantinga <slouken@libsdl.org>
parents:
5167
diff
changeset
|
175 |
4d39eeaad00b
Added a way to get a framebuffer interface for a window, and also a way to create a software renderer for an arbitrary surface.
Sam Lantinga <slouken@libsdl.org>
parents:
5167
diff
changeset
|
176 /** |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
177 * \brief Get information about a rendering context. |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
178 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
179 extern DECLSPEC int SDLCALL SDL_GetRendererInfo(SDL_Renderer * renderer, |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
180 SDL_RendererInfo * info); |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
181 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
182 /** |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
183 * \brief Create a texture for a rendering context. |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
184 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
185 * \param format The format of the texture. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
186 * \param access One of the enumerated values in ::SDL_TextureAccess. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
187 * \param w The width of the texture in pixels. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
188 * \param h The height of the texture in pixels. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
189 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
190 * \return The created texture is returned, or 0 if no rendering context was |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
191 * active, the format was unsupported, or the width or height were out |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
192 * of range. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
193 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
194 * \sa SDL_QueryTexture() |
5221
16d5e8e90e01
Updated testoverlay2 to use the SDL 2D rendering API
Sam Lantinga <slouken@libsdl.org>
parents:
5169
diff
changeset
|
195 * \sa SDL_UpdateTexture() |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
196 * \sa SDL_DestroyTexture() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
197 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
198 extern DECLSPEC SDL_Texture * SDLCALL SDL_CreateTexture(SDL_Renderer * renderer, Uint32 format, |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
199 int access, int w, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
200 int h); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
201 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
202 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
203 * \brief Create a texture from an existing surface. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
204 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
205 * \param surface The surface containing pixel data used to fill the texture. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
206 * |
5161
b3ccd1947786
Simplified and improved the process of creating a texture from a surface.
Sam Lantinga <slouken@libsdl.org>
parents:
5160
diff
changeset
|
207 * \return The created texture is returned, or 0 on error. |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
208 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
209 * \note The surface is not modified or freed by this function. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
210 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
211 * \sa SDL_QueryTexture() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
212 * \sa SDL_DestroyTexture() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
213 */ |
5161
b3ccd1947786
Simplified and improved the process of creating a texture from a surface.
Sam Lantinga <slouken@libsdl.org>
parents:
5160
diff
changeset
|
214 extern DECLSPEC SDL_Texture * SDLCALL SDL_CreateTextureFromSurface(SDL_Renderer * renderer, SDL_Surface * surface); |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
215 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
216 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
217 * \brief Query the attributes of a texture |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
218 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
219 * \param texture A texture to be queried. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
220 * \param format A pointer filled in with the raw format of the texture. The |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
221 * actual format may differ, but pixel transfers will use this |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
222 * format. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
223 * \param access A pointer filled in with the actual access to the texture. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
224 * \param w A pointer filled in with the width of the texture in pixels. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
225 * \param h A pointer filled in with the height of the texture in pixels. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
226 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
227 * \return 0 on success, or -1 if the texture is not valid. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
228 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
229 extern DECLSPEC int SDLCALL SDL_QueryTexture(SDL_Texture * texture, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
230 Uint32 * format, int *access, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
231 int *w, int *h); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
232 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
233 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
234 * \brief Set an additional color value used in render copy operations. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
235 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
236 * \param texture The texture to update. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
237 * \param r The red color value multiplied into copy operations. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
238 * \param g The green color value multiplied into copy operations. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
239 * \param b The blue color value multiplied into copy operations. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
240 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
241 * \return 0 on success, or -1 if the texture is not valid or color modulation |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
242 * is not supported. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
243 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
244 * \sa SDL_GetTextureColorMod() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
245 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
246 extern DECLSPEC int SDLCALL SDL_SetTextureColorMod(SDL_Texture * texture, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
247 Uint8 r, Uint8 g, Uint8 b); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
248 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
249 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
250 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
251 * \brief Get the additional color value used in render copy operations. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
252 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
253 * \param texture The texture to query. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
254 * \param r A pointer filled in with the current red color value. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
255 * \param g A pointer filled in with the current green color value. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
256 * \param b A pointer filled in with the current blue color value. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
257 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
258 * \return 0 on success, or -1 if the texture is not valid. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
259 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
260 * \sa SDL_SetTextureColorMod() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
261 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
262 extern DECLSPEC int SDLCALL SDL_GetTextureColorMod(SDL_Texture * texture, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
263 Uint8 * r, Uint8 * g, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
264 Uint8 * b); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
265 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
266 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
267 * \brief Set an additional alpha value used in render copy operations. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
268 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
269 * \param texture The texture to update. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
270 * \param alpha The alpha value multiplied into copy operations. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
271 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
272 * \return 0 on success, or -1 if the texture is not valid or alpha modulation |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
273 * is not supported. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
274 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
275 * \sa SDL_GetTextureAlphaMod() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
276 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
277 extern DECLSPEC int SDLCALL SDL_SetTextureAlphaMod(SDL_Texture * texture, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
278 Uint8 alpha); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
279 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
280 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
281 * \brief Get the additional alpha value used in render copy operations. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
282 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
283 * \param texture The texture to query. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
284 * \param alpha A pointer filled in with the current alpha value. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
285 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
286 * \return 0 on success, or -1 if the texture is not valid. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
287 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
288 * \sa SDL_SetTextureAlphaMod() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
289 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
290 extern DECLSPEC int SDLCALL SDL_GetTextureAlphaMod(SDL_Texture * texture, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
291 Uint8 * alpha); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
292 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
293 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
294 * \brief Set the blend mode used for texture copy operations. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
295 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
296 * \param texture The texture to update. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
297 * \param blendMode ::SDL_BlendMode to use for texture blending. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
298 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
299 * \return 0 on success, or -1 if the texture is not valid or the blend mode is |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
300 * not supported. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
301 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
302 * \note If the blend mode is not supported, the closest supported mode is |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
303 * chosen. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
304 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
305 * \sa SDL_GetTextureBlendMode() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
306 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
307 extern DECLSPEC int SDLCALL SDL_SetTextureBlendMode(SDL_Texture * texture, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
308 SDL_BlendMode blendMode); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
309 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
310 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
311 * \brief Get the blend mode used for texture copy operations. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
312 * |
5159
307ccc9c135e
Made it possible to create a texture of any format, even if not supported by the renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
5152
diff
changeset
|
313 * \param texture The texture to query. |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
314 * \param blendMode A pointer filled in with the current blend mode. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
315 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
316 * \return 0 on success, or -1 if the texture is not valid. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
317 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
318 * \sa SDL_SetTextureBlendMode() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
319 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
320 extern DECLSPEC int SDLCALL SDL_GetTextureBlendMode(SDL_Texture * texture, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
321 SDL_BlendMode *blendMode); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
322 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
323 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
324 * \brief Update the given texture rectangle with new pixel data. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
325 * |
5159
307ccc9c135e
Made it possible to create a texture of any format, even if not supported by the renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
5152
diff
changeset
|
326 * \param texture The texture to update |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
327 * \param rect A pointer to the rectangle of pixels to update, or NULL to |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
328 * update the entire texture. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
329 * \param pixels The raw pixel data. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
330 * \param pitch The number of bytes between rows of pixel data. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
331 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
332 * \return 0 on success, or -1 if the texture is not valid. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
333 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
334 * \note This is a fairly slow function. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
335 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
336 extern DECLSPEC int SDLCALL SDL_UpdateTexture(SDL_Texture * texture, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
337 const SDL_Rect * rect, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
338 const void *pixels, int pitch); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
339 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
340 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
341 * \brief Lock a portion of the texture for pixel access. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
342 * |
5159
307ccc9c135e
Made it possible to create a texture of any format, even if not supported by the renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
5152
diff
changeset
|
343 * \param texture The texture to lock for access, which was created with |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
344 * ::SDL_TEXTUREACCESS_STREAMING. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
345 * \param rect A pointer to the rectangle to lock for access. If the rect |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
346 * is NULL, the entire texture will be locked. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
347 * \param pixels This is filled in with a pointer to the locked pixels, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
348 * appropriately offset by the locked area. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
349 * \param pitch This is filled in with the pitch of the locked pixels. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
350 * |
5159
307ccc9c135e
Made it possible to create a texture of any format, even if not supported by the renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
5152
diff
changeset
|
351 * \return 0 on success, or -1 if the texture is not valid or was not created with ::SDL_TEXTUREACCESS_STREAMING. |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
352 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
353 * \sa SDL_UnlockTexture() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
354 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
355 extern DECLSPEC int SDLCALL SDL_LockTexture(SDL_Texture * texture, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
356 const SDL_Rect * rect, |
5159
307ccc9c135e
Made it possible to create a texture of any format, even if not supported by the renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
5152
diff
changeset
|
357 void **pixels, int *pitch); |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
358 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
359 /** |
5159
307ccc9c135e
Made it possible to create a texture of any format, even if not supported by the renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
5152
diff
changeset
|
360 * \brief Unlock a texture, uploading the changes to video memory, if needed. |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
361 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
362 * \sa SDL_LockTexture() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
363 */ |
5159
307ccc9c135e
Made it possible to create a texture of any format, even if not supported by the renderer.
Sam Lantinga <slouken@libsdl.org>
parents:
5152
diff
changeset
|
364 extern DECLSPEC void SDLCALL SDL_UnlockTexture(SDL_Texture * texture); |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
365 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
366 /** |
5229
2178ffe17222
Added function SDL_RenderSetClipRect()
Sam Lantinga <slouken@libsdl.org>
parents:
5221
diff
changeset
|
367 * \brief Set the clipping rectangle for rendering on the current target |
2178ffe17222
Added function SDL_RenderSetClipRect()
Sam Lantinga <slouken@libsdl.org>
parents:
5221
diff
changeset
|
368 * |
2178ffe17222
Added function SDL_RenderSetClipRect()
Sam Lantinga <slouken@libsdl.org>
parents:
5221
diff
changeset
|
369 * \param rect The rectangle to clip rendering to, or NULL to disable clipping. |
2178ffe17222
Added function SDL_RenderSetClipRect()
Sam Lantinga <slouken@libsdl.org>
parents:
5221
diff
changeset
|
370 * |
2178ffe17222
Added function SDL_RenderSetClipRect()
Sam Lantinga <slouken@libsdl.org>
parents:
5221
diff
changeset
|
371 * The contents of the window are not defined after calling |
2178ffe17222
Added function SDL_RenderSetClipRect()
Sam Lantinga <slouken@libsdl.org>
parents:
5221
diff
changeset
|
372 * SDL_RenderPresent(), so you should clear the clip rectangle and draw |
2178ffe17222
Added function SDL_RenderSetClipRect()
Sam Lantinga <slouken@libsdl.org>
parents:
5221
diff
changeset
|
373 * over the entire window each frame. |
2178ffe17222
Added function SDL_RenderSetClipRect()
Sam Lantinga <slouken@libsdl.org>
parents:
5221
diff
changeset
|
374 */ |
2178ffe17222
Added function SDL_RenderSetClipRect()
Sam Lantinga <slouken@libsdl.org>
parents:
5221
diff
changeset
|
375 extern DECLSPEC void SDLCALL SDL_RenderSetClipRect(SDL_Renderer * renderer, |
2178ffe17222
Added function SDL_RenderSetClipRect()
Sam Lantinga <slouken@libsdl.org>
parents:
5221
diff
changeset
|
376 const SDL_Rect * rect); |
2178ffe17222
Added function SDL_RenderSetClipRect()
Sam Lantinga <slouken@libsdl.org>
parents:
5221
diff
changeset
|
377 |
2178ffe17222
Added function SDL_RenderSetClipRect()
Sam Lantinga <slouken@libsdl.org>
parents:
5221
diff
changeset
|
378 /** |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
379 * \brief Set the color used for drawing operations (Fill and Line). |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
380 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
381 * \param r The red value used to draw on the rendering target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
382 * \param g The green value used to draw on the rendering target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
383 * \param b The blue value used to draw on the rendering target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
384 * \param a The alpha value used to draw on the rendering target, usually |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
385 * ::SDL_ALPHA_OPAQUE (255). |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
386 * |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
387 * \return 0 on success, or -1 on error |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
388 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
389 extern DECLSPEC int SDL_SetRenderDrawColor(SDL_Renderer * renderer, |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
390 Uint8 r, Uint8 g, Uint8 b, |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
391 Uint8 a); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
392 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
393 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
394 * \brief Get the color used for drawing operations (Fill and Line). |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
395 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
396 * \param r A pointer to the red value used to draw on the rendering target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
397 * \param g A pointer to the green value used to draw on the rendering target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
398 * \param b A pointer to the blue value used to draw on the rendering target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
399 * \param a A pointer to the alpha value used to draw on the rendering target, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
400 * usually ::SDL_ALPHA_OPAQUE (255). |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
401 * |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
402 * \return 0 on success, or -1 on error |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
403 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
404 extern DECLSPEC int SDL_GetRenderDrawColor(SDL_Renderer * renderer, |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
405 Uint8 * r, Uint8 * g, Uint8 * b, |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
406 Uint8 * a); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
407 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
408 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
409 * \brief Set the blend mode used for drawing operations (Fill and Line). |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
410 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
411 * \param blendMode ::SDL_BlendMode to use for blending. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
412 * |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
413 * \return 0 on success, or -1 on error |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
414 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
415 * \note If the blend mode is not supported, the closest supported mode is |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
416 * chosen. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
417 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
418 * \sa SDL_GetRenderDrawBlendMode() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
419 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
420 extern DECLSPEC int SDLCALL SDL_SetRenderDrawBlendMode(SDL_Renderer * renderer, |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
421 SDL_BlendMode blendMode); |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
422 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
423 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
424 * \brief Get the blend mode used for drawing operations. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
425 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
426 * \param blendMode A pointer filled in with the current blend mode. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
427 * |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
428 * \return 0 on success, or -1 on error |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
429 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
430 * \sa SDL_SetRenderDrawBlendMode() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
431 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
432 extern DECLSPEC int SDLCALL SDL_GetRenderDrawBlendMode(SDL_Renderer * renderer, |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
433 SDL_BlendMode *blendMode); |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
434 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
435 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
436 * \brief Clear the current rendering target with the drawing color |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
437 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
438 extern DECLSPEC int SDLCALL SDL_RenderClear(SDL_Renderer * renderer); |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
439 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
440 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
441 * \brief Draw a point on the current rendering target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
442 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
443 * \param x The x coordinate of the point. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
444 * \param y The y coordinate of the point. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
445 * |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
446 * \return 0 on success, or -1 on error |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
447 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
448 extern DECLSPEC int SDLCALL SDL_RenderDrawPoint(SDL_Renderer * renderer, |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
449 int x, int y); |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
450 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
451 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
452 * \brief Draw multiple points on the current rendering target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
453 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
454 * \param points The points to draw |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
455 * \param count The number of points to draw |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
456 * |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
457 * \return 0 on success, or -1 on error |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
458 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
459 extern DECLSPEC int SDLCALL SDL_RenderDrawPoints(SDL_Renderer * renderer, |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
460 const SDL_Point * points, |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
461 int count); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
462 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
463 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
464 * \brief Draw a line on the current rendering target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
465 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
466 * \param x1 The x coordinate of the start point. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
467 * \param y1 The y coordinate of the start point. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
468 * \param x2 The x coordinate of the end point. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
469 * \param y2 The y coordinate of the end point. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
470 * |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
471 * \return 0 on success, or -1 on error |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
472 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
473 extern DECLSPEC int SDLCALL SDL_RenderDrawLine(SDL_Renderer * renderer, |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
474 int x1, int y1, int x2, int y2); |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
475 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
476 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
477 * \brief Draw a series of connected lines on the current rendering target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
478 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
479 * \param points The points along the lines |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
480 * \param count The number of points, drawing count-1 lines |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
481 * |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
482 * \return 0 on success, or -1 on error |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
483 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
484 extern DECLSPEC int SDLCALL SDL_RenderDrawLines(SDL_Renderer * renderer, |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
485 const SDL_Point * points, |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
486 int count); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
487 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
488 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
489 * \brief Draw a rectangle on the current rendering target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
490 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
491 * \param rect A pointer to the destination rectangle, or NULL to outline the entire rendering target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
492 * |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
493 * \return 0 on success, or -1 on error |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
494 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
495 extern DECLSPEC int SDLCALL SDL_RenderDrawRect(SDL_Renderer * renderer, |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
496 const SDL_Rect * rect); |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
497 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
498 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
499 * \brief Draw some number of rectangles on the current rendering target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
500 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
501 * \param rects A pointer to an array of destination rectangles. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
502 * \param count The number of rectangles. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
503 * |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
504 * \return 0 on success, or -1 on error |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
505 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
506 extern DECLSPEC int SDLCALL SDL_RenderDrawRects(SDL_Renderer * renderer, |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
507 const SDL_Rect ** rects, |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
508 int count); |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
509 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
510 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
511 * \brief Fill a rectangle on the current rendering target with the drawing color. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
512 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
513 * \param rect A pointer to the destination rectangle, or NULL for the entire |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
514 * rendering target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
515 * |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
516 * \return 0 on success, or -1 on error |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
517 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
518 extern DECLSPEC int SDLCALL SDL_RenderFillRect(SDL_Renderer * renderer, |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
519 const SDL_Rect * rect); |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
520 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
521 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
522 * \brief Fill some number of rectangles on the current rendering target with the drawing color. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
523 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
524 * \param rects A pointer to an array of destination rectangles. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
525 * \param count The number of rectangles. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
526 * |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
527 * \return 0 on success, or -1 on error |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
528 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
529 extern DECLSPEC int SDLCALL SDL_RenderFillRects(SDL_Renderer * renderer, |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
530 const SDL_Rect ** rect, |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
531 int count); |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
532 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
533 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
534 * \brief Copy a portion of the texture to the current rendering target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
535 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
536 * \param texture The source texture. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
537 * \param srcrect A pointer to the source rectangle, or NULL for the entire |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
538 * texture. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
539 * \param dstrect A pointer to the destination rectangle, or NULL for the |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
540 * entire rendering target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
541 * |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
542 * \return 0 on success, or -1 on error |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
543 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
544 extern DECLSPEC int SDLCALL SDL_RenderCopy(SDL_Renderer * renderer, |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
545 SDL_Texture * texture, |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
546 const SDL_Rect * srcrect, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
547 const SDL_Rect * dstrect); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
548 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
549 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
550 * \brief Read pixels from the current rendering target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
551 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
552 * \param rect A pointer to the rectangle to read, or NULL for the entire |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
553 * render target. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
554 * \param format The desired format of the pixel data, or 0 to use the format |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
555 * of the rendering target |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
556 * \param pixels A pointer to be filled in with the pixel data |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
557 * \param pitch The pitch of the pixels parameter. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
558 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
559 * \return 0 on success, or -1 if pixel reading is not supported. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
560 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
561 * \warning This is a very slow operation, and should not be used frequently. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
562 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
563 extern DECLSPEC int SDLCALL SDL_RenderReadPixels(SDL_Renderer * renderer, |
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
564 const SDL_Rect * rect, |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
565 Uint32 format, |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
566 void *pixels, int pitch); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
567 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
568 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
569 * \brief Update the screen with rendering performed. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
570 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
571 extern DECLSPEC void SDLCALL SDL_RenderPresent(SDL_Renderer * renderer); |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
572 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
573 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
574 * \brief Destroy the specified texture. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
575 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
576 * \sa SDL_CreateTexture() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
577 * \sa SDL_CreateTextureFromSurface() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
578 */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
579 extern DECLSPEC void SDLCALL SDL_DestroyTexture(SDL_Texture * texture); |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
580 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
581 /** |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
582 * \brief Destroy the rendering context for a window and free associated |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
583 * textures. |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
584 * |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
585 * \sa SDL_CreateRenderer() |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
586 */ |
5150
ad50b3db78bd
The rendering functions take a context so it's clear what window they're drawing to. This also potentially opens to the door to multi-threaded rendering in the future.
Sam Lantinga <slouken@libsdl.org>
parents:
5148
diff
changeset
|
587 extern DECLSPEC void SDLCALL SDL_DestroyRenderer(SDL_Renderer * renderer); |
5148
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
588 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
589 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
590 /* Ends C function definitions when using C++ */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
591 #ifdef __cplusplus |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
592 /* *INDENT-OFF* */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
593 } |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
594 /* *INDENT-ON* */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
595 #endif |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
596 #include "close_code.h" |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
597 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
598 #endif /* _SDL_render_h */ |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
599 |
2f44e6969a59
Split the rendering API out into a separate header file.
Sam Lantinga <slouken@libsdl.org>
parents:
diff
changeset
|
600 /* vi: set ts=4 sw=4 expandtab: */ |