#ifndef LIBSARIA_LIBRARY_H
#define LIBSARIA_LIBRARY_H

#include <libsaria/track.h>
#include <libsaria/model.h>

#include <list>
#include <string>
using namespace std;

namespace libsaria
{
	namespace library
	{
		struct PathInfo {
			string path;
			unsigned int size;
		};

		void load();
		void save();
		void update();
		void update_path(string);
		void refresh();

		void add_path(string);
		void remove_path(string);
		void play_id(ino_t &);
		bool get_info(ino_t &, void(*)(Track &));
		void for_each(SourceModel *);
		void for_each_path(void (*)(struct PathInfo &));

		unsigned int size();
	}
}

#endif /* LIBSARIA_LIBRARY_H */
