I think i get the MEF model. But I'm having a hard time seeing if it fit's with what I'm trying to do.
I have an app which will call out to third party plugins to do some video processing. The plugin can be FFMPEG.exe or x264.exe, doesn't matter. The process of calling the plugins is via the ProcessStartInfo (basically through the command line) and passing a bunch of parameters. e.g
ffmpeg.exe -in "c:\vid.avi" -out "c:\vid.avi" -Xheight 100 -Xwidth 100
or
x264.exe -in "c:\vid.avi" -out "c:\vid.avi" -Yheight 100 -Ywidth 100
Its a given that each plugin will have their own parameter sets so is it appropriate to use MEF so the interface will be the same no matter which plugin is used (alebit via a public contract)? If so, must I write a wrapper class for each plugin implementing the contract?
Is this the correct way to use MEF? On one hand I'm trying to make my app extensible by allowing customers to choose their plugins. But really I'm not sure if the MEF is overkill and simply using config files to store the command is a better approach?