public static IEnumIn CreateEnumInput(this IPluginHost host, InputAttribute attribute, Type type) { //this creates and sets the default for a .NET enum if (!typeof(EnumEntry).IsAssignableFrom(type)) { var entries = Enum.GetNames(type); host.UpdateEnum(type.FullName, entries[0], entries); } IEnumIn result = null; host.CreateEnumInput(attribute.Name, (TSliceMode)attribute.SliceMode, (TPinVisibility)attribute.Visibility, out result); if (!string.IsNullOrWhiteSpace(attribute.DefaultEnumEntry)) { result.SetDefaultEntry(attribute.DefaultEnumEntry); } if (!typeof(EnumEntry).IsAssignableFrom(type)) { result.SetSubType(type.FullName); } else { result.SetSubType(attribute.EnumName); } SetInputProperties(result, attribute); return(result); }
public void Configurate(IPluginConfig Input) { if (Input == this.FPinInManualTiming) { try { double dblmanual; this.FPinInManualTiming.GetValue(0, out dblmanual); if (dblmanual < 0.5) { if (this.FPinInTime != null) { this.FHost.DeletePin(this.FPinInTime); this.FPinInTime = null; } this.FHost.CreateEnumInput("Clock", TSliceMode.Single, TPinVisibility.True, out this.FPinInDevice); this.FPinInDevice.SetSubType("Clock Input Devices"); } else { if (this.FPinInDevice != null) { this.FHost.DeletePin(this.FPinInDevice); this.FPinInDevice = null; } this.FHost.CreateValueInput("Time", 1, null, TSliceMode.Single, TPinVisibility.True, out this.FPinInTime); this.FPinInTime.SetSubType(0, double.MaxValue, 0.01, 0, false, false, false); } } catch (Exception ex) { this.FHost.Log(TLogType.Error, ex.Message); } } }
public static IEnumIn CreateEnumInput(this IPluginHost host, InputAttribute attribute, Type type) { if (!typeof(EnumEntry).IsAssignableFrom(type)) { var entries = Enum.GetNames(type); var defEntry = !string.IsNullOrEmpty(attribute.DefaultEnumEntry) ? attribute.DefaultEnumEntry : entries[0]; host.UpdateEnum(type.FullName, defEntry, entries); } IEnumIn result = null; host.CreateEnumInput(attribute.Name, (TSliceMode)attribute.SliceMode, (TPinVisibility)attribute.Visibility, out result); if (!typeof(EnumEntry).IsAssignableFrom(type)) { result.SetSubType(type.FullName); } else { result.SetSubType(attribute.EnumName); } SetInputProperties(result, attribute); return(result); }
public DynamicEnumInStream(IEnumIn enumIn, string enumName) : base(enumIn) { FEnumName = enumName; }
public EnumInStream(IEnumIn enumIn) { FEnumIn = enumIn; FAutoValidate = enumIn.AutoValidate; }
public DynamicEnumInStream(IEnumIn enumIn, string enumName) : base(enumIn) { FEnumName = enumName; enumIn.SetEnumChangedListener(this); }
public void CreateEnumInput(string Name, TSliceMode SliceMode, TPinVisibility Visibility, out IEnumIn Pin) { Pin = new TEnumPin(this, Name, TPinDirection.Input, null, SliceMode, Visibility); AddPin(Pin as TBasePin); }