ObjectivelyMVC 0.1.0
Object oriented MVC framework for OpenGL, SDL2 and GNU C
|
The Renderer is responsible for rasterizing the View hierarchy of a WindowController. More...
#include <Renderer.h>
Public Member Functions | |
Class * | _Renderer (void) |
The Renderer archetype. More... | |
void | beginFrame (Renderer *self) |
Sets up OpenGL state. More... | |
GLuint | createTexture (const Renderer *self, const SDL_Surface *surface) |
Generates and binds to an OpenGL texture object, uploading the given surface. More... | |
void | drawLine (const Renderer *self, const SDL_Point *points) |
Draws a line segment between two points using GL_LINE_STRIP . More... | |
void | drawLines (const Renderer *self, const SDL_Point *points, size_t count) |
Draws line segments between adjacent points using GL_LINE_STRIP . More... | |
void | drawRect (const Renderer *self, const SDL_Rect *rect) |
Draws a rectangle using GL_LINE_LOOP . More... | |
void | drawRectFilled (const Renderer *self, const SDL_Rect *rect) |
Fills a rectangle using glRecti . More... | |
void | drawTexture (const Renderer *self, GLuint texture, const SDL_Rect *dest) |
Draws a textured GL_QUAD in the given rectangle. More... | |
void | drawView (Renderer *self, View *view) |
Draws the given View, setting the clipping frame and invoking View::render. More... | |
void | endFrame (const Renderer *self) |
Resets OpenGL state. Does not swap buffers. More... | |
void | endFrame (Renderer *self) |
Renderer * | init (Renderer *self) |
Initializes this Renderer. More... | |
void | renderDeviceDidReset (Renderer *self) |
This method is invoked when the render device has reset. More... | |
void | renderDeviceWillReset (Renderer *self) |
This method is invoked when the render device will become reset. More... | |
void | setClippingFrame (Renderer *self, const SDL_Rect *clippingFrame) |
Sets the clipping frame for draw operations. More... | |
void | setDrawColor (Renderer *self, const SDL_Color *color) |
Sets the primary color for drawing operations. More... | |
Data Fields | |
Object | object |
The superclass. More... | |
Protected Attributes | |
RendererInterface * | interface |
The interface. More... | |
The Renderer is responsible for rasterizing the View hierarchy of a WindowController.
This class provides an OpenGL 1.x implementation of the RendererInterface. Applications may extend this class and provide an implementation that meets their own OpenGL version requirements.
Definition at line 50 of file Renderer.h.
Class * _Renderer | ( | void | ) |
The Renderer archetype.
Definition at line 312 of file Renderer.c.
void beginFrame | ( | Renderer * | self | ) |
Sets up OpenGL state.
self | The Renderer. |
Definition at line 39 of file Renderer.c.
GLuint createTexture | ( | const Renderer * | self, |
const SDL_Surface * | surface | ||
) |
Generates and binds to an OpenGL texture object, uploading the given surface.
self | The Renderer. |
surface | The surface. |
0
on error. Definition at line 56 of file Renderer.c.
void drawLine | ( | const Renderer * | self, |
const SDL_Point * | points | ||
) |
Draws a line segment between two points using GL_LINE_STRIP
.
self | The Renderer. |
points | The points. |
Definition at line 94 of file Renderer.c.
void drawLines | ( | const Renderer * | self, |
const SDL_Point * | points, | ||
size_t | count | ||
) |
Draws line segments between adjacent points using GL_LINE_STRIP
.
self | The Renderer. |
points | The points. |
count | The length of points. |
Definition at line 105 of file Renderer.c.
void drawRect | ( | const Renderer * | self, |
const SDL_Rect * | rect | ||
) |
Draws a rectangle using GL_LINE_LOOP
.
self | The Renderer. |
rect | The rectangle. |
Definition at line 118 of file Renderer.c.
void drawRectFilled | ( | const Renderer * | self, |
const SDL_Rect * | rect | ||
) |
Fills a rectangle using glRecti
.
self | The Renderer. |
rect | The rectangle. |
Definition at line 144 of file Renderer.c.
void drawTexture | ( | const Renderer * | self, |
GLuint | texture, | ||
const SDL_Rect * | dest | ||
) |
Draws a textured GL_QUAD
in the given rectangle.
self | The Renderer. |
texture | The texture. |
dest | The destination in screen coordinates. |
Definition at line 155 of file Renderer.c.
Draws the given View, setting the clipping frame and invoking View::render.
Definition at line 195 of file Renderer.c.
void endFrame | ( | const Renderer * | self | ) |
Resets OpenGL state. Does not swap buffers.
self | The Renderer. |
void endFrame | ( | Renderer * | self | ) |
Definition at line 212 of file Renderer.c.
Initializes this Renderer.
self | The Renderer. |
NULL
on error. Definition at line 236 of file Renderer.c.
void renderDeviceDidReset | ( | Renderer * | self | ) |
This method is invoked when the render device has reset.
self | The Renderer. |
Definition at line 244 of file Renderer.c.
void renderDeviceWillReset | ( | Renderer * | self | ) |
This method is invoked when the render device will become reset.
self | The Renderer. |
Definition at line 252 of file Renderer.c.
void setClippingFrame | ( | Renderer * | self, |
const SDL_Rect * | clippingFrame | ||
) |
Sets the clipping frame for draw operations.
Primitives which fall outside of the clipping frame will not be visible.
self | The Renderer. |
clippingFrame | The clipping frame, or NULL to disable clipping. |
Definition at line 260 of file Renderer.c.
void setDrawColor | ( | Renderer * | self, |
const SDL_Color * | color | ||
) |
Sets the primary color for drawing operations.
self | The Renderer. |
color | The color. |
Definition at line 281 of file Renderer.c.
|
protected |
The interface.
Definition at line 61 of file Renderer.h.
Object Renderer::object |
The superclass.
Definition at line 55 of file Renderer.h.