System info & network

This commit is contained in:
2023-09-26 19:40:16 +02:00
commit 504ba77654
89 changed files with 39577 additions and 0 deletions

47
code/audio.h Normal file
View File

@@ -0,0 +1,47 @@
#ifndef _PIUMA_AUDIO_H_
#define _PIUMA_AUDIO_H_
#include "lib/types.h"
#include "platform.h"
typedef u64 track_id;
struct audio_track
{
track_id id;
p_audio_buffer data;
u64 progress;
bool playing;
bool loop;
bool free_on_finish;
f32 volume;
};
struct audio_player
{
audio_track *tracks;
u32 track_count;
u32 track_capacity;
track_id next_id;
u32 sample_rate;
};
enum audio_flags
{
AUDIO_NONE = 0,
AUDIO_LOOP = 1,
AUDIO_PAUSED = 2,
AUDIO_FREE_ON_FINISH = 4
};
void audio_init();
track_id audio_add_track(p_audio_buffer *data, u32 flags);
void audio_remove_track(track_id id);
void audio_pause_track(track_id id);
void audio_play_track(track_id id);
void audio_change_track_volume(track_id id, f32 volume);
audio_track *audio_track_from_id(track_id id);
#endif