(#226) introduce debug_tree entity
parent
b6e2ce0f76
commit
dcd2c7c1d0
|
@ -20,6 +20,7 @@ set(SOURCE_FILES
|
|||
src/color.c
|
||||
src/game.c
|
||||
src/game/camera.c
|
||||
src/game/debug_tree.c
|
||||
src/game/level.c
|
||||
src/game/level/background.c
|
||||
src/game/level/boxes.c
|
||||
|
@ -52,6 +53,7 @@ set(HEADER_FILES
|
|||
src/color.h
|
||||
src/game.h
|
||||
src/game/camera.h
|
||||
src/game/debug_tree.h
|
||||
src/game/level.h
|
||||
src/game/level/background.h
|
||||
src/game/level/boxes.h
|
||||
|
|
|
@ -0,0 +1,35 @@
|
|||
#include <assert.h>
|
||||
#include <stdlib.h>
|
||||
|
||||
#include "debug_tree.h"
|
||||
#include "system/error.h"
|
||||
#include "system/lt.h"
|
||||
|
||||
struct debug_tree_t
|
||||
{
|
||||
lt_t *lt;
|
||||
};
|
||||
|
||||
debug_tree_t * create_debug_tree()
|
||||
{
|
||||
lt_t * const lt = create_lt();
|
||||
|
||||
if (lt == NULL) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
debug_tree_t * const debug_tree = PUSH_LT(lt, malloc(sizeof(debug_tree_t)), free);
|
||||
if (debug_tree == NULL) {
|
||||
throw_error(ERROR_TYPE_LIBC);
|
||||
RETURN_LT(lt, NULL);
|
||||
}
|
||||
debug_tree->lt = lt;
|
||||
|
||||
return debug_tree;
|
||||
}
|
||||
|
||||
void destroy_debug_tree(debug_tree_t *debug_tree)
|
||||
{
|
||||
assert(debug_tree);
|
||||
RETURN_LT0(debug_tree->lt);
|
||||
}
|
|
@ -0,0 +1,9 @@
|
|||
#ifndef DEBUG_TREE_H_
|
||||
#define DEBUG_TREE_H_
|
||||
|
||||
typedef struct debug_tree_t debug_tree_t;
|
||||
|
||||
debug_tree_t *create_debug_tree(void);
|
||||
void destroy_debug_tree(debug_tree_t *debug_tree);
|
||||
|
||||
#endif // DEBUG_TREE_H_
|
Loading…
Reference in New Issue