blob: a0bba9120c931b16104c6a1464809ad65a3d6c4c [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