X-Git-Url: https://git.sesse.net/?p=movit;a=blobdiff_plain;f=effect_chain.h;h=0b07b85419e2040c0c68d1cac9ec34faedb33b7e;hp=91b8e29f2c5fe12b5405e9778a3a3c948fab1d01;hb=0dc1dfe6444a700ebd2c9f006cba000b90c3a7b0;hpb=5aae6761385e1d64cb21b8c902f6b47b4f22690a diff --git a/effect_chain.h b/effect_chain.h index 91b8e29..0b07b85 100644 --- a/effect_chain.h +++ b/effect_chain.h @@ -5,7 +5,6 @@ #include #include "effect.h" -#include "effect_id.h" #include "image_format.h" #include "input.h" @@ -16,24 +15,27 @@ public: // User API: // input, effects, output, finalize need to come in that specific order. - Input *add_input(const ImageFormat &format); + // EffectChain takes ownership of the given input. + // input is returned back for convenience. + Input *add_input(Input *input); - // The returned pointer is owned by EffectChain. - Effect *add_effect(EffectId effect) { + // EffectChain takes ownership of the given effect. + // effect is returned back for convenience. + Effect *add_effect(Effect *effect) { return add_effect(effect, last_added_effect()); } - Effect *add_effect(EffectId effect, Effect *input) { + Effect *add_effect(Effect *effect, Effect *input) { std::vector inputs; inputs.push_back(input); return add_effect(effect, inputs); } - Effect *add_effect(EffectId effect, Effect *input1, Effect *input2) { + Effect *add_effect(Effect *effect, Effect *input1, Effect *input2) { std::vector inputs; inputs.push_back(input1); inputs.push_back(input2); return add_effect(effect, inputs); } - Effect *add_effect(EffectId effect, const std::vector &inputs); + Effect *add_effect(Effect *effect, const std::vector &inputs); // Similar to add_effect, but: //