77 lines
1.8 KiB
C
77 lines
1.8 KiB
C
/*
|
|
* File: media.h
|
|
* Author: Alexander Zhirov
|
|
* Connection with me (telegram messenger): @alexanderzhirov
|
|
*
|
|
* Created on 2020.06.02
|
|
*/
|
|
|
|
#ifndef client_media
|
|
#define client_media
|
|
|
|
#include <allegro5/allegro.h>
|
|
#include <allegro5/allegro_font.h>
|
|
#include <allegro5/allegro_audio.h>
|
|
|
|
typedef struct cl_bitmap
|
|
{
|
|
ALLEGRO_BITMAP* al_bitmap;
|
|
int width;
|
|
int height;
|
|
} CLIENT_BITMAP;
|
|
|
|
typedef struct cl_font
|
|
{
|
|
ALLEGRO_FONT* al_font;
|
|
int size;
|
|
} CLIENT_FONT;
|
|
|
|
typedef struct cl_sample
|
|
{
|
|
ALLEGRO_SAMPLE* al_sapmle;
|
|
} CLIENT_SAMPLE;
|
|
|
|
typedef struct cl_media
|
|
{
|
|
CLIENT_BITMAP** bitmaps;
|
|
CLIENT_FONT** fonts;
|
|
CLIENT_SAMPLE** samples;
|
|
int size_bitmaps;
|
|
int size_fonts;
|
|
int size_samples;
|
|
} CLIENT_MEDIA;
|
|
|
|
CLIENT_MEDIA* cl_create_media(CLIENT_MEDIA* media, int size_bitmaps, int size_fonts, int size_samples);
|
|
void cl_free_media(CLIENT_MEDIA* media);
|
|
void cl_destroy_media(CLIENT_MEDIA* media);
|
|
|
|
/*
|
|
* Создание коллекции изображений
|
|
*/
|
|
static CLIENT_BITMAP** cl_create_bitmaps(int size);
|
|
/*
|
|
* Создание коллекции шрифтов
|
|
*/
|
|
static CLIENT_FONT** cl_create_fonts(int size);
|
|
/*
|
|
* Создание коллекции аудио
|
|
*/
|
|
static CLIENT_SAMPLE** cl_create_samples(int size);
|
|
/*
|
|
* Загрузка bitmap в коллекцию
|
|
* keyBitmap - the name of the item enumeration in the array
|
|
*/
|
|
void cl_load_bitmap(CLIENT_MEDIA* media, int key_bitmap, const char* path);
|
|
/*
|
|
* Загрузка font в коллекцию
|
|
* keyFont - the name of the item enumeration in the array
|
|
*/
|
|
void cl_load_font(CLIENT_MEDIA* media, int key_font, const char* path, int size_font);
|
|
/*
|
|
* Загрузка sample в коллекцию
|
|
* keySample - the name of the item enumeration in the array
|
|
*/
|
|
void cl_load_sample(CLIENT_MEDIA* media, int key_sample, const char* path);
|
|
|
|
#endif
|