mirror of
https://github.com/libretro/RetroArch
synced 2024-12-29 12:31:05 +00:00
52 lines
1.4 KiB
C
52 lines
1.4 KiB
C
#ifndef VIDEO_LAYOUT_VIEW_H
|
|
#define VIDEO_LAYOUT_VIEW_H
|
|
|
|
#include "internal.h"
|
|
#include "element.h"
|
|
|
|
typedef struct layer
|
|
{
|
|
char *name;
|
|
video_layout_blend_t blend;
|
|
|
|
element_t *elements;
|
|
int elements_count;
|
|
} layer_t;
|
|
|
|
typedef struct view
|
|
{
|
|
char *name;
|
|
video_layout_bounds_t bounds;
|
|
video_layout_bounds_t render_bounds;
|
|
|
|
layer_t *layers;
|
|
int layers_count;
|
|
|
|
video_layout_bounds_t *screens;
|
|
int screens_count;
|
|
} view_t;
|
|
|
|
typedef struct view_array
|
|
{
|
|
view_t *views;
|
|
int views_count;
|
|
} view_array_t;
|
|
|
|
void layer_init (layer_t *layer, const char *name);
|
|
void layer_deinit (layer_t *layer);
|
|
element_t *layer_add_element (layer_t *layer);
|
|
|
|
void view_init (view_t *view, const char *name);
|
|
void view_deinit (view_t *view);
|
|
layer_t *view_find_layer (view_t *view, const char *name);
|
|
layer_t *view_emplace_layer (view_t *view, const char *name);
|
|
void view_sort_layers (view_t *view);
|
|
void view_normalize (view_t *view);
|
|
void view_count_screens (view_t *view);
|
|
|
|
void view_array_init (view_array_t *view_array, int views_count);
|
|
void view_array_deinit (view_array_t *view_array);
|
|
view_t *view_array_find (view_array_t *view_array, const char *name);
|
|
|
|
#endif
|