sway-wallpaper/src/SwaybgProcess.h

34 lines
509 B
C
Raw Normal View History

2024-06-02 20:03:02 +02:00
#pragma once
#include <iostream>
#include <sched.h>
#include <string>
#include <unistd.h>
#include <sys/wait.h>
#define SWAYBGPROCESS_BUFFER_SIZE 4094
class SwaybgProcess {
public:
SwaybgProcess(const std::string& wallpaperPath, const std::string& output);
~SwaybgProcess();
void exec();
void kill();
private:
std::string wallpaperPath;
std::string output;
pid_t pid;
bool killed = true;
int fds[2]; // file descriptors for pipe
char buf[SWAYBGPROCESS_BUFFER_SIZE];
ssize_t nbytes;
};