sdl initializing and deinitializing with temp code

This commit is contained in:
herbglitch 2022-10-29 16:08:41 -06:00
parent df8c7f7ff1
commit c0780b7188
9 changed files with 102 additions and 41 deletions

View file

@ -1,20 +1,21 @@
#ifdef ARC_SDL
#include "arc/graphics/renderer.h"
#include "arc/graphics/sdl/renderer.h"
#include <SDL.h>
#include <stdlib.h>
#include "arc/graphics/window.h"
#include "arc/std/errno.h"
typedef SDL_Renderer ARC_Renderer;
ARC_Renderer_Create(ARC_Renderer **renderer, void *data){
if(!data){
void ARC_Renderer_Create(ARC_Renderer **renderer, ARC_RenderInfo *info){
if(!info){
arc_errno = ARC_ERRNO_NULL;
ARC_DEBUG_ERR(arc_errno, "ARC_Renderer_Create(**renderer, NULL)");
ARC_DEBUG_ERR("ARC_Renderer_Create(**renderer, NULL)");
return;
}
ARC_RenderInfo *info = (ARC_RenderInfo *)data;
*renderer = SDL_CreateRenderer(info->window, info->index, info->flags);
*renderer = (ARC_Renderer *)malloc(sizeof(ARC_Renderer));
(*renderer)->renderer = SDL_CreateRenderer((SDL_Window *)info->window, info->index, info->flags);
if(!renderer){
arc_errno = ARC_ERRNO_NULL;
@ -23,7 +24,8 @@ ARC_Renderer_Create(ARC_Renderer **renderer, void *data){
}
void ARC_Renderer_Destroy(ARC_Renderer *renderer){
SDL_DestroyRenderer((SDL_Renderer *) renderer);
SDL_DestroyRenderer((SDL_Renderer *) renderer->renderer);
free(renderer);
}
#endif //ARC_SDL