blob: 5d37bae26d8da4d3f7f6f07661661dd0d09bac5a [file] [log] [blame]
#ifndef PRESET_MERGE_HPP
#define PRESET_MERGE_HPP
#include "Preset.hpp"
#include "Pipeline.hpp"
#include "RenderItemMatcher.hpp"
#include "RenderItemMergeFunction.hpp"
class PipelineMerger
{
template <class T> inline static T lerp(T a, T b, float ratio)
{
return a * ratio + b * (1 - ratio);
}
public:
static void mergePipelines(const Pipeline &a, const Pipeline &b, Pipeline &out,
RenderItemMatcher::MatchResults & matching,
RenderItemMergeFunction & merger, float ratio);
private:
static const double s;
static const double e;
};
#endif /* PRESET_MERGE_HPP */