view dep/animia/src/main.cpp @ 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 582b2fca1561
children
line wrap: on
line source

#include "bsd.h"
#include "os.h"
#include "linux.h"
#include "win32.h"
#include "animia.h"
#include <string>
#include <unordered_map>
#include <vector>

namespace Animia {

std::vector<int> get_all_pids() {
#ifdef ON_UNIX
	return Unix::get_all_pids();
#elif defined(ON_LINUX)
	return Linux::get_all_pids();
#elif defined(ON_WINDOWS)
	return Windows::get_all_pids();
#else
	return {};
#endif
}

std::string get_process_name(int pid) {
#ifdef ON_UNIX
	return Unix::get_process_name(pid);
#elif defined(ON_LINUX)
	return Linux::get_process_name(pid);
#elif defined(ON_WINDOWS)
	return Windows::get_process_name(pid);
#else
	return "";
#endif
}

std::vector<std::string> get_open_files(int pid) {
#ifdef ON_UNIX
	return Unix::get_open_files(pid);
#elif defined(ON_LINUX)
	return Linux::get_open_files(pid);
#elif defined(ON_WINDOWS)
	return Windows::get_open_files(pid);
#else
	return {};
#endif
}

std::vector<std::string> filter_system_files(const std::vector<std::string>& source) {
#ifdef ON_WINDOWS
	return Windows::filter_system_files(source);
#elif defined(ON_OSX)
	return Unix::filter_system_files(source);
#else
	return source;
#endif
}

std::unordered_map<int, std::vector<std::string>> get_all_open_files() {
#ifdef ON_UNIX
	return Unix::get_all_open_files();
#elif defined(ON_LINUX)
	return Linux::get_all_open_files();
#elif defined(ON_WINDOWS)
	return Windows::get_all_open_files();
#else
	return {};
#endif
}

} // namespace Animia