namespace NcProgramManager.Cnc.Fanuc
{
    public sealed class FanucCapabilities
    {
        public string CncType { get; set; }
        public char ModelLetter { get; set; }
        public bool IsISeries { get; set; }
        public string Series { get; set; }
        public string Version { get; set; }
        public string MtType { get; set; }
        public int MaxAxis { get; set; }

        public FanucDialect Dialect { get; set; }

        public bool SupportsPathBasedPrograms { get; set; }
        public bool SupportsPdfProgramApi { get; set; }
        public bool SupportsAlmMsg2 { get; set; }
        public bool SupportsUpDownload4 { get; set; }

        public override string ToString()
        {
            return "Fanuc " + (CncType ?? "?").Trim() + "i-" + ModelLetter +
                   " (" + Dialect + ", " + (MtType ?? "?").Trim() + ", " + MaxAxis + " axes)";
        }
    }
}
