i should sleep
This commit is contained in:
parent
791e237470
commit
b366a7ee63
10 changed files with 341 additions and 109 deletions
|
@ -7,7 +7,7 @@
|
|||
|
||||
using std::string;
|
||||
|
||||
uint64_t parse_line_as_number(const string& input) {
|
||||
uint64_t ParseLineAsNumber(const string& input) {
|
||||
// Find the first number
|
||||
string::size_type start = 0;
|
||||
|
||||
|
@ -26,62 +26,62 @@ uint64_t parse_line_as_number(const string& input) {
|
|||
return std::stoul(input.substr(start, end - start));
|
||||
}
|
||||
|
||||
uint64_t meminfo_parse(std::ifstream is) {
|
||||
uint64_t MeminfoParse(std::ifstream input) {
|
||||
string line;
|
||||
|
||||
// Skip every line before the one that starts with "MemTotal"
|
||||
while (std::getline(is, line) && !line.starts_with("MemTotal"))
|
||||
while (std::getline(input, line) && !line.starts_with("MemTotal"))
|
||||
;
|
||||
|
||||
// Parse the number from the line
|
||||
const uint64_t num = parse_line_as_number(line);
|
||||
const uint64_t num = ParseLineAsNumber(line);
|
||||
|
||||
return num;
|
||||
}
|
||||
|
||||
uint64_t get_meminfo() {
|
||||
return meminfo_parse(std::ifstream("/proc/meminfo")) * 1024;
|
||||
uint64_t GetMemInfo() {
|
||||
return MeminfoParse(std::ifstream("/proc/meminfo")) * 1024;
|
||||
}
|
||||
|
||||
PlayerctlPlayer* init_playerctl() {
|
||||
PlayerctlPlayer* InitPlayerctl() {
|
||||
// Create a player manager
|
||||
PlayerctlPlayerManager* const player_manager =
|
||||
playerctl_player_manager_new(nullptr);
|
||||
PlayerctlPlayerManager* playerManager = playerctl_player_manager_new(nullptr);
|
||||
|
||||
// Create an empty player list
|
||||
GList* available_players = nullptr;
|
||||
GList* availablePlayers = nullptr;
|
||||
|
||||
// Get the list of available players and put it in the player list
|
||||
g_object_get(player_manager, "player-names", &available_players, nullptr);
|
||||
g_object_get(playerManager, "player-names", &availablePlayers, nullptr);
|
||||
|
||||
// If no players are available, return nullptr
|
||||
if (!available_players)
|
||||
if (!availablePlayers)
|
||||
return nullptr;
|
||||
|
||||
// Get the first player
|
||||
PlayerctlPlayerName* player_name =
|
||||
static_cast<PlayerctlPlayerName*>(available_players->data);
|
||||
PlayerctlPlayerName* playerName =
|
||||
static_cast<PlayerctlPlayerName*>(availablePlayers->data);
|
||||
|
||||
// Create the player
|
||||
PlayerctlPlayer* const current_player =
|
||||
playerctl_player_new_from_name(player_name, nullptr);
|
||||
PlayerctlPlayer* const currentPlayer =
|
||||
playerctl_player_new_from_name(playerName, nullptr);
|
||||
|
||||
// If no player is available, return nullptr
|
||||
if (!current_player)
|
||||
if (!currentPlayer)
|
||||
return nullptr;
|
||||
|
||||
// Manage the player
|
||||
playerctl_player_manager_manage_player(player_manager, current_player);
|
||||
playerctl_player_manager_manage_player(playerManager, currentPlayer);
|
||||
|
||||
// Unref the player
|
||||
g_object_unref(current_player);
|
||||
g_object_unref(currentPlayer);
|
||||
|
||||
return current_player;
|
||||
return currentPlayer;
|
||||
}
|
||||
|
||||
string get_nowplaying() {
|
||||
if (PlayerctlPlayer* current_player = init_playerctl())
|
||||
return playerctl_player_get_title(current_player, nullptr);
|
||||
string GetNowPlaying() {
|
||||
if (PlayerctlPlayer* currentPlayer = InitPlayerctl())
|
||||
return playerctl_player_get_title(currentPlayer, nullptr);
|
||||
|
||||
return "Could not get now playing info";
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue