using System;
using System.Collections.Generic;

namespace NcProgramManager.Cnc.Models
{
    public sealed class MachineSnapshot
    {
        public string MainProgram { get; set; }
        public string SubProgram { get; set; }
        public string ProgramComment { get; set; }
        public MachineMode Mode { get; set; }
        public RunState Run { get; set; }
        public MotionState Motion { get; set; }
        public bool Emergency { get; set; }
        public bool AlarmActive { get; set; }
        public TimeSpan CycleTime { get; set; }
        public long PieceCount { get; set; }
        public IReadOnlyList<string> Alarms { get; set; }
        public IReadOnlyList<string> OperatorMessages { get; set; }
        public DateTime CapturedAt { get; set; }
    }
}
