///<summaray> ///Метод ReadDiscreteValue осуществляет чтение данных OPC node ///и преобразования в тип bool ///</summaray> ///<param name="discreteValue">Ссылка на объект DiscreteValue</param> ///<param name="Path">Путь до Node</param> ///<param name="client">OpcClient</param> private static void ReadDiscreteValue(ref DiscreteValue discreteValue, string Path, OpcClient client) { OpcValue var = client.ReadNode(Path); discreteValue.Path = Path; discreteValue.Value = (bool)var.Value; }
public override DiscreteValue CombineDiscreteIntensity(DiscreteValue highLayerValue, DiscreteValue lowLayerValue) { double intensity = lowLayerValue.Intensity * (1 - highLayerValue.Intensity); highLayerValue.Intensity = Math.Max(intensity, highLayerValue.Intensity); return(highLayerValue); }
public static IIntent CreateDiscreteIntent(Color color, double intensity, TimeSpan duration) { DiscreteValue discreteValue = new DiscreteValue(color, intensity); IIntent intent = new DiscreteLightingIntent(discreteValue, discreteValue, duration); return(intent); }
public override void Handle(IIntentState <DiscreteValue> obj) { DiscreteValue discreteValue = obj.GetValue(); double newIntensity = _curve.GetValue(discreteValue.Intensity * 100.0) / 100.0; _intentValue = new StaticIntentState <DiscreteValue>(new DiscreteValue(discreteValue.Color, newIntensity)); }
public override DiscreteValue CombineDiscreteIntensity(DiscreteValue highLayerValue, DiscreteValue lowLayerValue) { if (lowLayerValue.Intensity >= _data.LowerLimit && lowLayerValue.Intensity <= _data.UpperLimit) { return(highLayerValue); } return(lowLayerValue); }
public override DiscreteValue CombineDiscreteIntensity(DiscreteValue highLayerValue, DiscreteValue lowLayerValue) { if (highLayerValue.Intensity > 0) { return(highLayerValue); } return(lowLayerValue); }
public static IIntent CreateDiscreteIntent(Color color, double startIntensity, double endIntensity, TimeSpan duration) { var startingValue = new DiscreteValue(color, startIntensity); var endValue = new DiscreteValue(color, endIntensity); IIntent intent = new DiscreteLightingIntent(startingValue, endValue, duration); return(intent); }
public override DiscreteValue CombineDiscreteIntensity(DiscreteValue highLayerValue, DiscreteValue lowLayerValue) { if (highLayerValue.Intensity > 0 || !_data.ExcludeZeroValues) { return(highLayerValue); } return(lowLayerValue); }
private static DiscreteValue[] InitializeDiscreteValues(Color c, int number) { var discreteValues = new DiscreteValue[number]; for (int i = 0; i < discreteValues.Length; i++) { discreteValues[i] = new DiscreteValue(c, 0); } return(discreteValues); }
public Builder AddPossibleValue( string name, T value, bool isDefault = false) { var newValue = new DiscreteValue(name, value); this.possibleValues_.Add(newValue); if (isDefault) { this.defaultValue_ = newValue; } return(this); }
public override void Handle(IIntentState <DiscreteValue> obj) { DiscreteValue discreteValue = obj.GetValue(); // if we're not mixing colors, we need to compare the input color against the filter color -- but only the // hue and saturation components; ignore the intensity. if (discreteValue.Color.ToArgb() == _breakdownItem.Color.ToArgb()) { _intensityValue = discreteValue.Intensity; } else { _intensityValue = 0; } }
public List <DiscreteValue> GetDiscreteValues() { int iteratorId = 0; List <long> ids = new List <long>(); List <DiscreteValue> discreteValues = new List <DiscreteValue>(); try { int numberOfResources = 500; int resourcesLeft = 0; List <ModelCode> properties = modelResourcesDesc.GetAllPropertyIds(ModelCode.DISCRETEVALUE); iteratorId = GdaQueryProxy.GetExtentValues(ModelCode.DISCRETEVALUE, properties); resourcesLeft = GdaQueryProxy.IteratorResourcesLeft(iteratorId); while (resourcesLeft > 0) { List <ResourceDescription> rds = GdaQueryProxy.IteratorNext(numberOfResources, iteratorId); for (int i = 0; i < rds.Count; i++) { var rg = GdaQueryProxy.GetValues(rds[i].Id, properties); DiscreteValue discreteValue = new DiscreteValue(rds[i].Id); discreteValues.Add(discreteValue.ConvertFromRD(rg)); } resourcesLeft = GdaQueryProxy.IteratorResourcesLeft(iteratorId); } GdaQueryProxy.IteratorClose(iteratorId); CommonTrace.WriteTrace(CommonTrace.TraceError, "Getting extent values method successfully finished."); } catch (Exception e) { string message = string.Format("Getting extent values method failed for {0}.\n\t{1}", ModelCode.DISCRETEVALUE, e.Message); Console.WriteLine(message); CommonTrace.WriteTrace(CommonTrace.TraceError, message); } return(discreteValues); }
/// <summary> /// Creates entity for specified global ID inside the container. /// </summary> /// <param name="globalId">Global ID of the entity for insert</param> /// <returns>Created entity (identified object).</returns> public IdentifiedObject CreateEntity(long globalId) { short type = ModelCodeHelper.ExtractTypeFromGlobalId(globalId); IdentifiedObject io = null; switch ((DMSType)type) { case DMSType.REGION: io = new GeographicalRegion(globalId); break; case DMSType.SUBREGION: io = new SubGeographicalRegion(globalId); break; case DMSType.SUBSTATION: io = new Substation(globalId); break; case DMSType.SYNCMACHINE: io = new SynchronousMachine(globalId); dersCopy.Add(io.GlobalId, io as SynchronousMachine); break; case DMSType.ANALOGVALUE: io = new AnalogValue(globalId); analogPointsCopy.Add(io as AnalogValue); break; case DMSType.DISCRETEVALUE: io = new DiscreteValue(globalId); discretPointsCopy.Add(io as DiscreteValue); break; default: string message = String.Format("Failed to create entity because specified type ({0}) is not supported.", type); CommonTrace.WriteTrace(CommonTrace.TraceError, message); throw new Exception(message); } return(io); }
public override void Handle(IIntentState <DiscreteValue> obj) { DiscreteValue discreteValue = obj.GetValue(); if (discreteValue.Intensity > 0) { double newIntensity = _curve.GetValue(discreteValue.Intensity * 100.0) / 100.0; if (obj is StaticIntentState <DiscreteValue> state) { discreteValue.Intensity = newIntensity; state.SetValue(discreteValue); _intentValue = state; } else { _intentValue = new StaticIntentState <DiscreteValue>(new DiscreteValue(discreteValue.Color, newIntensity)); } } else { _intentValue = null; } }
private OPCObjects() { camPrepare = new CamPrepare(); AnalogValues = new List <AnalogValue>(); DiscreteValues = new List <DiscreteValue>(); ValvesInput = new Dictionary <int, ValveInput>(); ValvesStatus = new Dictionary <int, ValveStatus>(); SFT01_FT = new AnalogValue(); SFT02_FT = new AnalogValue(); SFT03_FT = new AnalogValue(); SFT04_FT = new AnalogValue(); SFT05_FT = new AnalogValue(); SFT06_FT = new AnalogValue(); SFT07_FT = new AnalogValue(); SFT08_FT = new AnalogValue(); SFT09_FT = new AnalogValue(); SFT10_FT = new AnalogValue(); FT_TT_1 = new AnalogValue(); FT_TT_2 = new AnalogValue(); FT_TT_3 = new AnalogValue(); K_RRG1 = new AnalogValue(); K_RRG2 = new AnalogValue(); K_RRG3 = new AnalogValue(); K_RRG4 = new AnalogValue(); PidHeatMode = new AnalogValue(); RRG_Pressure_SP = new AnalogValue(); RRG_9A1_feedback = new AnalogValue(); RRG_9A2_feedback = new AnalogValue(); RRG_9A3_feedback = new AnalogValue(); RRG_9A4_feedback = new AnalogValue(); TE_1 = new AnalogValue(); Pneumatic_Pressure = new AnalogValue(); Crio_Pressure = new AnalogValue(); Camera_Pressure = new AnalogValue(); Main_Pressure = new AnalogValue(); Crio_Temperature = new AnalogValue(); PreHeat_Temp_SP = new AnalogValue(); HeatAssist_Temp_SP = new AnalogValue(); PreHeat_Timer_SP = new AnalogValue(); HeatAssist_Timer_SP = new AnalogValue(); ManualSetTemp = new AnalogValue(); BLM_Speed = new AnalogValue(); BLM_Speed_SP = new AnalogValue(); PreHeat_Done = new DiscreteValue(); HeatAssist_Done = new DiscreteValue(); PreHeat_Start = new DiscreteValue(); HeatAssist_Flag = new DiscreteValue(); Heat_Done = new DiscreteValue(); HeatAssist_TempDone = new DiscreteValue(); Heat_Assit_On = new DiscreteValue(); BLM_Start = new DiscreteValue(); BLM_Stop = new DiscreteValue(); BLM_Remote_Control_Done = new DiscreteValue(); BLM_Run = new DiscreteValue(); Alarm_Open_door = new DiscreteValue(); Alarm_Water_CRIO = new DiscreteValue(); Alarm_Hight_Pne_Press = new DiscreteValue(); Alarm_Low_One_Presse = new DiscreteValue(); Alarm_Crio_power_failure = new DiscreteValue(); Alarm_Qartz_power_failure = new DiscreteValue(); Alarm_ELI_Power_failure = new DiscreteValue(); Alarm_FloatHeater_power_failure = new DiscreteValue(); Alarm_Ion_power_failure = new DiscreteValue(); Alarm_FVP_power_failure = new DiscreteValue(); Alarm_Indexer_power_failure = new DiscreteValue(); Alarm_SSP_power_failure = new DiscreteValue(); Alarm_TV1_power_failure = new DiscreteValue(); Alarm_Water_SECOND = new DiscreteValue(); Alarm_Hight_Crio_Temp = new DiscreteValue(); Crio_start_signal = new DiscreteValue(); Alarm_manual_stop = new DiscreteValue(); StartProcessSignal = new DiscreteValue(); StopProcessSignal = new DiscreteValue(); ELI_complete = new DiscreteValue(); ELI_access = new DiscreteValue(); PreHeat_Stage = new IntValue(); HeatAssist_Stage = new IntValue(); Tech_cam_STAGE = new IntValue(); FullCycleStage = new IntValue(); IntValues = new List <IntValue>(); FVPStatus = new FVPStatus(); IonInputSetPoint = new IonInputSetPoint(); OPCLocker = new object(); SQLLocker = new object(); BAV_3_status = new ValveStatus(); FVV_S_Status = new ValveStatus(); FVV_B_Status = new ValveStatus(); CPV_Status = new ValveStatus(); SHV_Status = new ValveStatus(); BAV_3_input = new ValveInput(); FVV_S_Input = new ValveInput(); FVV_B_Input = new ValveInput(); CPV_Input = new ValveInput(); SHV_Input = new ValveInput(); camPrepare = new CamPrepare(); CrioPumpStart = new CrioPumpStart(); openCam = new OpenCam(); StopCrio = new StopCrio(); StopFVP = new StopFVP(); IonInputCommnd = new IonInputCommand(); IonInputSetPoint = new IonInputSetPoint(); IonOutputFeedBack = new IonOutputFeedBack(); IonStatus = new IonStatus(); FVPStatus = new FVPStatus(); CrioInput = new CrioInput(); CrioStatus = new CrioStatus(); user = new User(); }
public override DiscreteValue CombineDiscreteIntensity(DiscreteValue highLayerValue, DiscreteValue lowLayerValue) { highLayerValue.Intensity = lowLayerValue.Intensity; return(highLayerValue); }
public virtual DiscreteValue CombineDiscreteIntensity(DiscreteValue highLayerValue, DiscreteValue lowLayerValue) { //A default implementation of highest layer wins. return(highLayerValue); }
public override DiscreteValue CombineDiscreteIntensity(DiscreteValue highLayerValue, DiscreteValue lowLayerValue) { //This kind of mixing filter doesn't make sense for Discrete Intents return(lowLayerValue); }
public override void Handle(IIntentState <DiscreteValue> obj) { DiscreteValue lightingValue = obj.GetValue(); EvaluatorValue = new ColorCommand(lightingValue.FullColor); }