public void AddInput(InputList pluginToAdd)
        {
            var plugin = CoreSolids.InputPlugins.First(t => t.Id == pluginToAdd.Id);

            Debug.WriteLine(plugin);
            ICoalesceInputPlugin newInstance = (ICoalesceInputPlugin)Activator.CreateInstance(plugin.Type);

            newInstance.Initialise();
            InputList newItem = new InputList
            {
                Id         = pluginToAdd.Id,
                Name       = pluginToAdd.Name,
                InstanceId = Guid.NewGuid(),
                Plugin     = newInstance
            };

            AddedInputPlugins.Add(newItem);
        }
        public void BindPosition()
        {
            if (!Assignments.ContainsKey(selectedJoint))
            {
                Assignments.Add(selectedJoint, new Assignment());
            }

            Assignment ass = Assignments[selectedJoint];
            //ass.Plugin = SelectedSensor;

            ICoalesceInputPlugin plugin = AddedInputPlugins.First(x => x.InstanceId == SelectedSensor.Parent).Plugin;

            ass.PluginDetails  = plugin.GetDetails();
            ass.PluginName     = plugin.GetDetails().ShortName;
            ass.SensorName     = SelectedSensor.SensorName;
            ass.SensorKey      = SelectedSensor.Parent + "-" + SelectedSensor.Id;
            ass.SensorId       = SelectedSensor.Id;
            ass.PluginId       = ass.PluginDetails.Id;
            ass.PluginInstance = SelectedSensor.Parent;


            CurrentSelectedJointPlugin = ass.PluginName;
            CurrentSelectedJointSensor = ass.SensorName;
        }