ocarina/libsaria/libsaria.cpp
Bryan Schumaker 463cef95dd libsaria: Create an initdata struct for initializing
Passing individual variables through works for a small number of
variables, but passing a struct makes it easier to add new arguments.

Signed-off-by: Bryan Schumaker <bjschuma@gmail.com>
2012-05-15 11:06:43 -04:00

58 lines
1.0 KiB
C++

// Copyright (c) 2011 Bryan Schumaker.
#include <libsaria/libsaria.h>
#include <libsaria/library.h>
#include <libsaria/format.h>
#include <libsaria/prefs.h>
#include <libsaria/print.h>
#include <libsaria/audio.h>
#include <libsaria/index.h>
#include <libsaria/track.h>
#include <libsaria/deck.h>
#include <libsaria/idle.h>
#include <libsaria/fs.h>
static libsaria::Track outside_track;
namespace libsaria
{
void init(struct initdata *init)
{
srand( time(NULL) );
println("Initializing libsaria");
app::init(init->name);
prefs::init();
if (init->enable_idle)
idle::enable();
audio::init(init->argc, init->argv);
libsaria::deck::init();
libsaria::library::init();
libsaria::deck::load_all();
}
void quit()
{
println("Quitting libsaria");
audio::quit();
print_format_stats();
Index::print_stats();
/*close_pipes();*/
}
void play_outside_song(string &filepath)
{
try {
outside_track = Track(filepath);
} catch (string message) {
println(message);
return;
}
outside_track.load(true);
}
};