using Ninject;
using System.ComponentModel;
using System.Reflection;
using Inspectron.Settings;
using VisionBuilder.UI.Common;
using VisionBuilder.UI.Common.Plugins;

namespace B24SiemensPlugin
{
    public class Plugin:IPlugin
    {
        public void RegisterGlobalModules(IKernel kernel)
        {
            TypeConverterRegistry.Register<List<SiemensRecipeMapping>>(new ListRecipeMappingConverter());
        }

        public void RegisterCameraModules(IKernel kernel, string cameraName)
        {
            kernel.RegisterModule<SiemensCameraModule>();
            // Register settings
            kernel.Bind<B24SiemensSettings, ISettings>().ToConstant(new B24SiemensSettings(cameraName));
        }
    }
}
