//------------------------------------------------------------------------------
//
// This code was generated by a tool.
// Tango Observables Generator
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated. Do not modify!
//
//------------------------------------------------------------------------------
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Xml.Serialization;
using Newtonsoft.Json;
using System.Linq;
using Tango.DAL.Remote.DB;
using Tango.Core;
using System.ComponentModel;
using Tango.Core.CustomAttributes;
namespace Tango.BL.Entities
{
[Table("HARDWARE_PID_CONTROLS")]
public abstract class HardwarePidControlBase : ObservableEntity
{
public event EventHandler OutputProportionalPowerLimitChanged;
public event EventHandler OutputProportionalBandChanged;
public event EventHandler IntegralTimeChanged;
public event EventHandler DerivativeTimeChanged;
public event EventHandler SensorCorrectionAdjustmentChanged;
public event EventHandler SensorMinValueChanged;
public event EventHandler SensorMaxValueChanged;
public event EventHandler SetPointRampRateorSoftStartRampChanged;
public event EventHandler SetPointControlOutputRateChanged;
public event EventHandler ControlOutputTypeChanged;
public event EventHandler SsrControlOutputTypeChanged;
public event EventHandler OutputOnOffHysteresisValueChanged;
public event EventHandler ProcessVariableSamplingRateChanged;
public event EventHandler PvInputFilterFactorModeChanged;
public event EventHandler OutputProportionalCycleTimeChanged;
public event EventHandler AcHeatersHalfCycleTimeChanged;
public event EventHandler ProportionalGainChanged;
public event EventHandler PidActiveChanged;
public event EventHandler EpsilonChanged;
public event EventHandler ActiveChanged;
public event EventHandler HardwarePidControlTypeChanged;
public event EventHandler HardwareVersionChanged;
protected String _hardwarepidcontroltypeguid;
///
/// Gets or sets the hardwarepidcontrolbase hardware pid control type guid.
///
[Column("HARDWARE_PID_CONTROL_TYPE_GUID")]
[ForeignKey("HardwarePidControlType")]
public String HardwarePidControlTypeGuid
{
get
{
return _hardwarepidcontroltypeguid;
}
set
{
if (_hardwarepidcontroltypeguid != value)
{
_hardwarepidcontroltypeguid = value;
}
}
}
protected String _hardwareversionguid;
///
/// Gets or sets the hardwarepidcontrolbase hardware version guid.
///
[Column("HARDWARE_VERSION_GUID")]
[ForeignKey("HardwareVersion")]
public String HardwareVersionGuid
{
get
{
return _hardwareversionguid;
}
set
{
if (_hardwareversionguid != value)
{
_hardwareversionguid = value;
}
}
}
protected Double _outputproportionalpowerlimit;
///
/// Gets or sets the hardwarepidcontrolbase output proportional power limit.
///
[Column("OUTPUT_PROPORTIONAL_POWER_LIMIT")]
public Double OutputProportionalPowerLimit
{
get
{
return _outputproportionalpowerlimit;
}
set
{
if (_outputproportionalpowerlimit != value)
{
_outputproportionalpowerlimit = value;
OnOutputProportionalPowerLimitChanged(value);
}
}
}
protected Double _outputproportionalband;
///
/// Gets or sets the hardwarepidcontrolbase output proportional band.
///
[Column("OUTPUT_PROPORTIONAL_BAND")]
public Double OutputProportionalBand
{
get
{
return _outputproportionalband;
}
set
{
if (_outputproportionalband != value)
{
_outputproportionalband = value;
OnOutputProportionalBandChanged(value);
}
}
}
protected Double _integraltime;
///
/// Gets or sets the hardwarepidcontrolbase integral time.
///
[Column("INTEGRAL_TIME")]
public Double IntegralTime
{
get
{
return _integraltime;
}
set
{
if (_integraltime != value)
{
_integraltime = value;
OnIntegralTimeChanged(value);
}
}
}
protected Double _derivativetime;
///
/// Gets or sets the hardwarepidcontrolbase derivative time.
///
[Column("DERIVATIVE_TIME")]
public Double DerivativeTime
{
get
{
return _derivativetime;
}
set
{
if (_derivativetime != value)
{
_derivativetime = value;
OnDerivativeTimeChanged(value);
}
}
}
protected Double _sensorcorrectionadjustment;
///
/// Gets or sets the hardwarepidcontrolbase sensor correction adjustment.
///
[Column("SENSOR_CORRECTION_ADJUSTMENT")]
public Double SensorCorrectionAdjustment
{
get
{
return _sensorcorrectionadjustment;
}
set
{
if (_sensorcorrectionadjustment != value)
{
_sensorcorrectionadjustment = value;
OnSensorCorrectionAdjustmentChanged(value);
}
}
}
protected Double _sensorminvalue;
///
/// Gets or sets the hardwarepidcontrolbase sensor min value.
///
[Column("SENSOR_MIN_VALUE")]
public Double SensorMinValue
{
get
{
return _sensorminvalue;
}
set
{
if (_sensorminvalue != value)
{
_sensorminvalue = value;
OnSensorMinValueChanged(value);
}
}
}
protected Double _sensormaxvalue;
///
/// Gets or sets the hardwarepidcontrolbase sensor max value.
///
[Column("SENSOR_MAX_VALUE")]
public Double SensorMaxValue
{
get
{
return _sensormaxvalue;
}
set
{
if (_sensormaxvalue != value)
{
_sensormaxvalue = value;
OnSensorMaxValueChanged(value);
}
}
}
protected Double _setpointramprateorsoftstartramp;
///
/// Gets or sets the hardwarepidcontrolbase set point ramp rateor soft start ramp.
///
[Column("SET_POINT_RAMP_RATEOR_SOFT_START_RAMP")]
public Double SetPointRampRateorSoftStartRamp
{
get
{
return _setpointramprateorsoftstartramp;
}
set
{
if (_setpointramprateorsoftstartramp != value)
{
_setpointramprateorsoftstartramp = value;
OnSetPointRampRateorSoftStartRampChanged(value);
}
}
}
protected Double _setpointcontroloutputrate;
///
/// Gets or sets the hardwarepidcontrolbase set point control output rate.
///
[Column("SET_POINT_CONTROL_OUTPUT_RATE")]
public Double SetPointControlOutputRate
{
get
{
return _setpointcontroloutputrate;
}
set
{
if (_setpointcontroloutputrate != value)
{
_setpointcontroloutputrate = value;
OnSetPointControlOutputRateChanged(value);
}
}
}
protected Double _controloutputtype;
///
/// Gets or sets the hardwarepidcontrolbase control output type.
///
[Column("CONTROL_OUTPUT_TYPE")]
public Double ControlOutputType
{
get
{
return _controloutputtype;
}
set
{
if (_controloutputtype != value)
{
_controloutputtype = value;
OnControlOutputTypeChanged(value);
}
}
}
protected Double _ssrcontroloutputtype;
///
/// Gets or sets the hardwarepidcontrolbase ssr control output type.
///
[Column("SSR_CONTROL_OUTPUT_TYPE")]
public Double SsrControlOutputType
{
get
{
return _ssrcontroloutputtype;
}
set
{
if (_ssrcontroloutputtype != value)
{
_ssrcontroloutputtype = value;
OnSsrControlOutputTypeChanged(value);
}
}
}
protected Double _outputonoffhysteresisvalue;
///
/// Gets or sets the hardwarepidcontrolbase output on off hysteresis value.
///
[Column("OUTPUT_ON_OFF_HYSTERESIS_VALUE")]
public Double OutputOnOffHysteresisValue
{
get
{
return _outputonoffhysteresisvalue;
}
set
{
if (_outputonoffhysteresisvalue != value)
{
_outputonoffhysteresisvalue = value;
OnOutputOnOffHysteresisValueChanged(value);
}
}
}
protected Double _processvariablesamplingrate;
///
/// Gets or sets the hardwarepidcontrolbase process variable sampling rate.
///
[Column("PROCESS_VARIABLE_SAMPLING_RATE")]
public Double ProcessVariableSamplingRate
{
get
{
return _processvariablesamplingrate;
}
set
{
if (_processvariablesamplingrate != value)
{
_processvariablesamplingrate = value;
OnProcessVariableSamplingRateChanged(value);
}
}
}
protected Double _pvinputfilterfactormode;
///
/// Gets or sets the hardwarepidcontrolbase pv input filter factor mode.
///
[Column("PV_INPUT_FILTER_FACTOR_MODE")]
public Double PvInputFilterFactorMode
{
get
{
return _pvinputfilterfactormode;
}
set
{
if (_pvinputfilterfactormode != value)
{
_pvinputfilterfactormode = value;
OnPvInputFilterFactorModeChanged(value);
}
}
}
protected Int32 _outputproportionalcycletime;
///
/// Gets or sets the hardwarepidcontrolbase output proportional cycle time.
///
[Column("OUTPUT_PROPORTIONAL_CYCLE_TIME")]
public Int32 OutputProportionalCycleTime
{
get
{
return _outputproportionalcycletime;
}
set
{
if (_outputproportionalcycletime != value)
{
_outputproportionalcycletime = value;
OnOutputProportionalCycleTimeChanged(value);
}
}
}
protected Int32 _acheatershalfcycletime;
///
/// Gets or sets the hardwarepidcontrolbase ac heaters half cycle time.
///
[Column("AC_HEATERS__HALF_CYCLE_TIME")]
public Int32 AcHeatersHalfCycleTime
{
get
{
return _acheatershalfcycletime;
}
set
{
if (_acheatershalfcycletime != value)
{
_acheatershalfcycletime = value;
OnAcHeatersHalfCycleTimeChanged(value);
}
}
}
protected Double _proportionalgain;
///
/// Gets or sets the hardwarepidcontrolbase proportional gain.
///
[Column("PROPORTIONAL_GAIN")]
public Double ProportionalGain
{
get
{
return _proportionalgain;
}
set
{
if (_proportionalgain != value)
{
_proportionalgain = value;
OnProportionalGainChanged(value);
}
}
}
protected Boolean _pidactive;
///
/// Gets or sets the hardwarepidcontrolbase pid active.
///
[Column("PID_ACTIVE")]
public Boolean PidActive
{
get
{
return _pidactive;
}
set
{
if (_pidactive != value)
{
_pidactive = value;
OnPidActiveChanged(value);
}
}
}
protected Double _epsilon;
///
/// Gets or sets the hardwarepidcontrolbase epsilon.
///
[Column("EPSILON")]
public Double Epsilon
{
get
{
return _epsilon;
}
set
{
if (_epsilon != value)
{
_epsilon = value;
OnEpsilonChanged(value);
}
}
}
protected Boolean _active;
///
/// Gets or sets the hardwarepidcontrolbase active.
///
[Column("ACTIVE")]
public Boolean Active
{
get
{
return _active;
}
set
{
if (_active != value)
{
_active = value;
OnActiveChanged(value);
}
}
}
protected HardwarePidControlType _hardwarepidcontroltype;
///
/// Gets or sets the hardwarepidcontrolbase hardware pid control types.
///
[XmlIgnore]
[JsonIgnore]
public virtual HardwarePidControlType HardwarePidControlType
{
get
{
return _hardwarepidcontroltype;
}
set
{
if (_hardwarepidcontroltype != value)
{
_hardwarepidcontroltype = value;
if (HardwarePidControlType != null)
{
HardwarePidControlTypeGuid = HardwarePidControlType.Guid;
}
OnHardwarePidControlTypeChanged(value);
}
}
}
protected HardwareVersion _hardwareversion;
///
/// Gets or sets the hardwarepidcontrolbase hardware versions.
///
[XmlIgnore]
[JsonIgnore]
public virtual HardwareVersion HardwareVersion
{
get
{
return _hardwareversion;
}
set
{
if (_hardwareversion != value)
{
_hardwareversion = value;
if (HardwareVersion != null)
{
HardwareVersionGuid = HardwareVersion.Guid;
}
OnHardwareVersionChanged(value);
}
}
}
///
/// Called when the OutputProportionalPowerLimit has changed.
///
protected virtual void OnOutputProportionalPowerLimitChanged(Double outputproportionalpowerlimit)
{
OutputProportionalPowerLimitChanged?.Invoke(this, outputproportionalpowerlimit);
RaisePropertyChanged(nameof(OutputProportionalPowerLimit));
}
///
/// Called when the OutputProportionalBand has changed.
///
protected virtual void OnOutputProportionalBandChanged(Double outputproportionalband)
{
OutputProportionalBandChanged?.Invoke(this, outputproportionalband);
RaisePropertyChanged(nameof(OutputProportionalBand));
}
///
/// Called when the IntegralTime has changed.
///
protected virtual void OnIntegralTimeChanged(Double integraltime)
{
IntegralTimeChanged?.Invoke(this, integraltime);
RaisePropertyChanged(nameof(IntegralTime));
}
///
/// Called when the DerivativeTime has changed.
///
protected virtual void OnDerivativeTimeChanged(Double derivativetime)
{
DerivativeTimeChanged?.Invoke(this, derivativetime);
RaisePropertyChanged(nameof(DerivativeTime));
}
///
/// Called when the SensorCorrectionAdjustment has changed.
///
protected virtual void OnSensorCorrectionAdjustmentChanged(Double sensorcorrectionadjustment)
{
SensorCorrectionAdjustmentChanged?.Invoke(this, sensorcorrectionadjustment);
RaisePropertyChanged(nameof(SensorCorrectionAdjustment));
}
///
/// Called when the SensorMinValue has changed.
///
protected virtual void OnSensorMinValueChanged(Double sensorminvalue)
{
SensorMinValueChanged?.Invoke(this, sensorminvalue);
RaisePropertyChanged(nameof(SensorMinValue));
}
///
/// Called when the SensorMaxValue has changed.
///
protected virtual void OnSensorMaxValueChanged(Double sensormaxvalue)
{
SensorMaxValueChanged?.Invoke(this, sensormaxvalue);
RaisePropertyChanged(nameof(SensorMaxValue));
}
///
/// Called when the SetPointRampRateorSoftStartRamp has changed.
///
protected virtual void OnSetPointRampRateorSoftStartRampChanged(Double setpointramprateorsoftstartramp)
{
SetPointRampRateorSoftStartRampChanged?.Invoke(this, setpointramprateorsoftstartramp);
RaisePropertyChanged(nameof(SetPointRampRateorSoftStartRamp));
}
///
/// Called when the SetPointControlOutputRate has changed.
///
protected virtual void OnSetPointControlOutputRateChanged(Double setpointcontroloutputrate)
{
SetPointControlOutputRateChanged?.Invoke(this, setpointcontroloutputrate);
RaisePropertyChanged(nameof(SetPointControlOutputRate));
}
///
/// Called when the ControlOutputType has changed.
///
protected virtual void OnControlOutputTypeChanged(Double controloutputtype)
{
ControlOutputTypeChanged?.Invoke(this, controloutputtype);
RaisePropertyChanged(nameof(ControlOutputType));
}
///
/// Called when the SsrControlOutputType has changed.
///
protected virtual void OnSsrControlOutputTypeChanged(Double ssrcontroloutputtype)
{
SsrControlOutputTypeChanged?.Invoke(this, ssrcontroloutputtype);
RaisePropertyChanged(nameof(SsrControlOutputType));
}
///
/// Called when the OutputOnOffHysteresisValue has changed.
///
protected virtual void OnOutputOnOffHysteresisValueChanged(Double outputonoffhysteresisvalue)
{
OutputOnOffHysteresisValueChanged?.Invoke(this, outputonoffhysteresisvalue);
RaisePropertyChanged(nameof(OutputOnOffHysteresisValue));
}
///
/// Called when the ProcessVariableSamplingRate has changed.
///
protected virtual void OnProcessVariableSamplingRateChanged(Double processvariablesamplingrate)
{
ProcessVariableSamplingRateChanged?.Invoke(this, processvariablesamplingrate);
RaisePropertyChanged(nameof(ProcessVariableSamplingRate));
}
///
/// Called when the PvInputFilterFactorMode has changed.
///
protected virtual void OnPvInputFilterFactorModeChanged(Double pvinputfilterfactormode)
{
PvInputFilterFactorModeChanged?.Invoke(this, pvinputfilterfactormode);
RaisePropertyChanged(nameof(PvInputFilterFactorMode));
}
///
/// Called when the OutputProportionalCycleTime has changed.
///
protected virtual void OnOutputProportionalCycleTimeChanged(Int32 outputproportionalcycletime)
{
OutputProportionalCycleTimeChanged?.Invoke(this, outputproportionalcycletime);
RaisePropertyChanged(nameof(OutputProportionalCycleTime));
}
///
/// Called when the AcHeatersHalfCycleTime has changed.
///
protected virtual void OnAcHeatersHalfCycleTimeChanged(Int32 acheatershalfcycletime)
{
AcHeatersHalfCycleTimeChanged?.Invoke(this, acheatershalfcycletime);
RaisePropertyChanged(nameof(AcHeatersHalfCycleTime));
}
///
/// Called when the ProportionalGain has changed.
///
protected virtual void OnProportionalGainChanged(Double proportionalgain)
{
ProportionalGainChanged?.Invoke(this, proportionalgain);
RaisePropertyChanged(nameof(ProportionalGain));
}
///
/// Called when the PidActive has changed.
///
protected virtual void OnPidActiveChanged(Boolean pidactive)
{
PidActiveChanged?.Invoke(this, pidactive);
RaisePropertyChanged(nameof(PidActive));
}
///
/// Called when the Epsilon has changed.
///
protected virtual void OnEpsilonChanged(Double epsilon)
{
EpsilonChanged?.Invoke(this, epsilon);
RaisePropertyChanged(nameof(Epsilon));
}
///
/// Called when the Active has changed.
///
protected virtual void OnActiveChanged(Boolean active)
{
ActiveChanged?.Invoke(this, active);
RaisePropertyChanged(nameof(Active));
}
///
/// Called when the HardwarePidControlType has changed.
///
protected virtual void OnHardwarePidControlTypeChanged(HardwarePidControlType hardwarepidcontroltype)
{
HardwarePidControlTypeChanged?.Invoke(this, hardwarepidcontroltype);
RaisePropertyChanged(nameof(HardwarePidControlType));
}
///
/// Called when the HardwareVersion has changed.
///
protected virtual void OnHardwareVersionChanged(HardwareVersion hardwareversion)
{
HardwareVersionChanged?.Invoke(this, hardwareversion);
RaisePropertyChanged(nameof(HardwareVersion));
}
///
/// Initializes a new instance of the class.
///
public HardwarePidControlBase() : base()
{
}
}
}