Why modules interface?
I want to add some features (changeing the gamma of the display ...) to
filmgimp.
There already is a module called "cdisplay-gamma" which can do this. You
don't need to write any code, just use this pre-existing module.
However, I'll still answer the rest of your questions:
I liked to implement this as removeable plug-ins but they are
(as far as I expect) not selfcalling. The application I'm planning needs
to start instandly with filmgimp.
By "selfcalling", I assume you mean that it starts automatically.
1. Is the modules interface the best way for this?
Yes, because changing the gamma of the display requires tight integration
with the display code.
2. What are all the differences between plug-ins and modules?
Plugins run in their own process, so if there is a bug in a plugin, it
should not crash the gimp. Modules run in the same process as the main
gimp, so a bug in the module can crash the entire thing.
The only reason you should use a module is if your code needs to be called
so frequently that the overhead of being in a separate process is too much.
Or, if you need to share state with the main gimp application (eg because
you are extending the main UI directly, like the colour selectors do).
Hope this helps,
Austin