128 lines
3.1 KiB
C++
128 lines
3.1 KiB
C++
#include "OpenGLComposite.h"
|
|
|
|
std::string OpenGLComposite::GetRuntimeStateJson() const
|
|
{
|
|
return mRuntimeHost ? mRuntimeHost->BuildStateJson() : "{}";
|
|
}
|
|
|
|
bool OpenGLComposite::AddLayer(const std::string& shaderId, std::string& error)
|
|
{
|
|
if (!mRuntimeHost->AddLayer(shaderId, error))
|
|
return false;
|
|
|
|
ReloadShader();
|
|
resetTemporalHistoryState();
|
|
broadcastRuntimeState();
|
|
return true;
|
|
}
|
|
|
|
bool OpenGLComposite::RemoveLayer(const std::string& layerId, std::string& error)
|
|
{
|
|
if (!mRuntimeHost->RemoveLayer(layerId, error))
|
|
return false;
|
|
|
|
ReloadShader();
|
|
resetTemporalHistoryState();
|
|
broadcastRuntimeState();
|
|
return true;
|
|
}
|
|
|
|
bool OpenGLComposite::MoveLayer(const std::string& layerId, int direction, std::string& error)
|
|
{
|
|
if (!mRuntimeHost->MoveLayer(layerId, direction, error))
|
|
return false;
|
|
|
|
ReloadShader();
|
|
resetTemporalHistoryState();
|
|
broadcastRuntimeState();
|
|
return true;
|
|
}
|
|
|
|
bool OpenGLComposite::MoveLayerToIndex(const std::string& layerId, std::size_t targetIndex, std::string& error)
|
|
{
|
|
if (!mRuntimeHost->MoveLayerToIndex(layerId, targetIndex, error))
|
|
return false;
|
|
|
|
ReloadShader();
|
|
resetTemporalHistoryState();
|
|
broadcastRuntimeState();
|
|
return true;
|
|
}
|
|
|
|
bool OpenGLComposite::SetLayerBypass(const std::string& layerId, bool bypassed, std::string& error)
|
|
{
|
|
if (!mRuntimeHost->SetLayerBypass(layerId, bypassed, error))
|
|
return false;
|
|
|
|
ReloadShader();
|
|
resetTemporalHistoryState();
|
|
broadcastRuntimeState();
|
|
return true;
|
|
}
|
|
|
|
bool OpenGLComposite::SetLayerShader(const std::string& layerId, const std::string& shaderId, std::string& error)
|
|
{
|
|
if (!mRuntimeHost->SetLayerShader(layerId, shaderId, error))
|
|
return false;
|
|
|
|
ReloadShader();
|
|
resetTemporalHistoryState();
|
|
broadcastRuntimeState();
|
|
return true;
|
|
}
|
|
|
|
bool OpenGLComposite::UpdateLayerParameterJson(const std::string& layerId, const std::string& parameterId, const std::string& valueJson, std::string& error)
|
|
{
|
|
JsonValue parsedValue;
|
|
if (!ParseJson(valueJson, parsedValue, error))
|
|
return false;
|
|
|
|
if (!mRuntimeHost->UpdateLayerParameter(layerId, parameterId, parsedValue, error))
|
|
return false;
|
|
|
|
broadcastRuntimeState();
|
|
return true;
|
|
}
|
|
|
|
bool OpenGLComposite::UpdateLayerParameterByControlKeyJson(const std::string& layerKey, const std::string& parameterKey, const std::string& valueJson, std::string& error)
|
|
{
|
|
JsonValue parsedValue;
|
|
if (!ParseJson(valueJson, parsedValue, error))
|
|
return false;
|
|
|
|
if (!mRuntimeHost->UpdateLayerParameterByControlKey(layerKey, parameterKey, parsedValue, error))
|
|
return false;
|
|
|
|
broadcastRuntimeState();
|
|
return true;
|
|
}
|
|
|
|
bool OpenGLComposite::ResetLayerParameters(const std::string& layerId, std::string& error)
|
|
{
|
|
if (!mRuntimeHost->ResetLayerParameters(layerId, error))
|
|
return false;
|
|
|
|
broadcastRuntimeState();
|
|
return true;
|
|
}
|
|
|
|
bool OpenGLComposite::SaveStackPreset(const std::string& presetName, std::string& error)
|
|
{
|
|
if (!mRuntimeHost->SaveStackPreset(presetName, error))
|
|
return false;
|
|
|
|
broadcastRuntimeState();
|
|
return true;
|
|
}
|
|
|
|
bool OpenGLComposite::LoadStackPreset(const std::string& presetName, std::string& error)
|
|
{
|
|
if (!mRuntimeHost->LoadStackPreset(presetName, error))
|
|
return false;
|
|
|
|
ReloadShader();
|
|
resetTemporalHistoryState();
|
|
broadcastRuntimeState();
|
|
return true;
|
|
}
|