view include/core/session.h @ 118:39521c47c7a3

*: another huge megacommit, SORRY The torrents page works a lot better now Added the edit option to the anime list right click menu Vectorized currently playing files Available player and extensions are now loaded at runtime from files in (dotpath)/players.json and (dotpath)/extensions.json These paths are not permanent and will likely be moved to (dotpath)/recognition ... ... ...
author Paper <mrpapersonic@gmail.com>
date Tue, 07 Nov 2023 23:40:54 -0500
parents 2004b41d4a59
children 6fdf0632c003
line wrap: on
line source

#ifndef __core__session_h
#define __core__session_h

#include "core/config.h"
#include "track/types.h"
#include "gui/locale.h"
#include <QElapsedTimer>

struct Session {
	public:
		Session() { timer.start(); }
		/* we literally *cannot* be lying to the user by doing this */
		void IncrementRequests() { requests++; };
		int GetRequests() { return requests; };
		int uptime() { return timer.elapsed(); }

		Config config;

		struct {
			std::vector<Track::Types::MediaPlayer> players;
			std::vector<Track::Types::MediaExtension> extensions;
		} recognition;

	private:
		uint32_t requests = 0;
		QElapsedTimer timer;
};

extern Session session;

#endif // __core__session_h