Bonjour à tous !

J'utilise le DP Command pour éxécuter des actions à appliquer à une image. Par exemple CommandRotate, CommandTranslate, etc...
En stockant une MacroCommand (à base de std::list<Command*> par exemple ), j'obtiens donc une liste d'instructions à appliquer à mon image.

Problème : lorsqu'on utilise le pattern Command, on lie une commande à un objet par référence. Je voudrais pouvoir changer cette référence, notamment pour l'utilisation d'un film, et non plus d'une seule image.

Changer l'interface Commande serait-il une bonne solution ? :koin
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
struct Command {
virtual void Execute() = 0;
virtual void Cancel() {}
virtual void Update(vigra::UInt16Image &) {}
};
Qu'en pensez vous ? Choquant pour une interface Command ?