aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.UsersAndRoles/Providers/Place.cs
blob: a2ac2a9b70540f08c45b3096ca79373de8988403 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
using Newtonsoft.Json;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Xml.Serialization;

namespace Tango.MachineStudio.UsersAndRoles.Providers
{
    public class Place
    {
        [XmlElement("address")]
        [JsonProperty("address")]
        public PlaceAddress Address { get; set; }

        [XmlAttribute("display_name")]
        [JsonProperty("display_name")]
        public String DisplayName { get; set; }

        public Place()
        {
            Address = new PlaceAddress();
        }

        public override string ToString()
        {
            return DisplayName;
        }
    }
}
IMachineProvider _machineProvider; private bool _disable; /// <summary> /// Disables the frame delivery from the current connected machine and enables the manual push frame method. /// </summary> public bool Disable { get { return _disable; } set { _disable = value; } } /// <summary> /// Occurs when a new data frame is available. /// </summary> public event EventHandler<StartDiagnosticsResponse> FrameReceived; /// <summary> /// Initializes a new instance of the <see cref="DefaultDiagnosticsFrameProvider"/> class. /// </summary> /// <param name="machineProvider">The application manager.</param> public DefaultDiagnosticsFrameProvider(IMachineProvider machineProvider) { _machineProvider = machineProvider; machineProvider.MachineOperator.DiagnosticsDataAvailable += MachineOperator_DiagnosticsDataAvailable; } /// <summary> /// Handles the Machine Operator Diagnostics Data Available event. /// </summary> /// <param name="sender">The source of the event.</param> /// <param name="frame">The event arguments.</param> private void MachineOperator_DiagnosticsDataAvailable(object sender, StartDiagnosticsResponse frame) { if (!Disable) { OnFrameReceived(frame); } } /// <summary> /// Push frames manual. (Only when Disable = true) /// </summary> /// <param name="frame">The frame.</param> public void PushFrame(StartDiagnosticsResponse frame) { if (Disable) { OnFrameReceived(frame); } } /// <summary> /// Raises the <see cref="FrameReceived"/> event. /// </summary> /// <param name="frame">The frame.</param> protected virtual void OnFrameReceived(StartDiagnosticsResponse frame) { FrameReceived?.Invoke(this, frame); } } }