//------------------------------------------------------------------------------ // // 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("SEGMENTS")] public abstract class SegmentBase : ObservableEntity { public event EventHandler NameChanged; public event EventHandler LengthChanged; public event EventHandler SegmentIndexChanged; public event EventHandler> BrushStopsChanged; public event EventHandler JobChanged; public event EventHandler SegmentsGroupChanged; protected String _name; /// /// Gets or sets the segmentbase name. /// [Column("NAME")] public String Name { get { return _name; } set { if (_name != value) { _name = value; OnNameChanged(value); } } } protected String _jobguid; /// /// Gets or sets the segmentbase job guid. /// [Column("JOB_GUID")] [ForeignKey("Job")] public String JobGuid { get { return _jobguid; } set { if (_jobguid != value) { _jobguid = value; } } } protected Double _length; /// /// Gets or sets the segmentbase length. /// [Column("LENGTH")] public Double Length { get { return _length; } set { if (_length != value) { _length = value; OnLengthChanged(value); } } } protected Int32 _segmentindex; /// /// Gets or sets the segmentbase segment index. /// [Column("SEGMENT_INDEX")] public Int32 SegmentIndex { get { return _segmentindex; } set { if (_segmentindex != value) { _segmentindex = value; OnSegmentIndexChanged(value); } } } protected String _segmentsgroupguid; /// /// Gets or sets the segmentbase segments group guid. /// [Column("SEGMENTS_GROUP_GUID")] [ForeignKey("SegmentsGroup")] public String SegmentsGroupGuid { get { return _segmentsgroupguid; } set { if (_segmentsgroupguid != value) { _segmentsgroupguid = value; } } } protected SynchronizedObservableCollection _brushstops; /// /// Gets or sets the segmentbase brush stops. /// public virtual SynchronizedObservableCollection BrushStops { get { return _brushstops; } set { if (_brushstops != value) { _brushstops = value; OnBrushStopsChanged(value); } } } protected Job _job; /// /// Gets or sets the segmentbase job. /// [XmlIgnore] [JsonIgnore] public virtual Job Job { get { return _job; } set { if (_job != value) { _job = value; if (Job != null) { JobGuid = Job.Guid; } OnJobChanged(value); } } } protected SegmentsGroup _segmentsgroup; /// /// Gets or sets the segmentbase segments groups. /// [XmlIgnore] [JsonIgnore] public virtual SegmentsGroup SegmentsGroup { get { return _segmentsgroup; } set { if (_segmentsgroup != value) { _segmentsgroup = value; if (SegmentsGroup != null) { SegmentsGroupGuid = SegmentsGroup.Guid; } OnSegmentsGroupChanged(value); } } } /// /// Called when the Name has changed. /// protected virtual void OnNameChanged(String name) { NameChanged?.Invoke(this, name); RaisePropertyChanged(nameof(Name)); } /// /// Called when the Length has changed. /// protected virtual void OnLengthChanged(Double length) { LengthChanged?.Invoke(this, length); RaisePropertyChanged(nameof(Length)); } /// /// Called when the SegmentIndex has changed. /// protected virtual void OnSegmentIndexChanged(Int32 segmentindex) { SegmentIndexChanged?.Invoke(this, segmentindex); RaisePropertyChanged(nameof(SegmentIndex)); } /// /// Called when the BrushStops has changed. /// protected virtual void OnBrushStopsChanged(SynchronizedObservableCollection brushstops) { BrushStopsChanged?.Invoke(this, brushstops); RaisePropertyChanged(nameof(BrushStops)); } /// /// Called when the Job has changed. /// protected virtual void OnJobChanged(Job job) { JobChanged?.Invoke(this, job); RaisePropertyChanged(nameof(Job)); } /// /// Called when the SegmentsGroup has changed. /// protected virtual void OnSegmentsGroupChanged(SegmentsGroup segmentsgroup) { SegmentsGroupChanged?.Invoke(this, segmentsgroup); RaisePropertyChanged(nameof(SegmentsGroup)); } /// /// Initializes a new instance of the class. /// public SegmentBase() : base() { BrushStops = new SynchronizedObservableCollection(); } } }