pluginbridge / Source /Helper /HelperIPC.h
RAM2118's picture
Out-of-process rebuild: Add Helper/HelperIPC.h/.cpp — Unix socket IPC listener
68398ab verified
Raw History Blame
624 Bytes
#pragma once
#include <juce_core/juce_core.h>
#include <thread>
#include <atomic>
#include <functional>
class HelperPluginHost;
class HelperIPC
{
public:
HelperIPC(int parentPid, HelperPluginHost& host);
~HelperIPC();
bool connect();
void disconnect();
void sendReady();
void sendParamChanged(int index, float value);
private:
void listenLoop();
void handleMessage(const juce::String& message);
void sendMessage(const juce::String& json);
int parentPid;
HelperPluginHost& host;
int socketFd = -1;
std::thread listenThread;
std::atomic<bool> running{false};
};