HamBook – Rev 50

Subversion Repositories:
Rev:
using System;
using System.Collections.Generic;
using System.IO.Ports;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using RJCP.IO.Ports;

namespace HamBook.Radios.Generic.CAT
{
    public abstract class AI : Cat
    {
        public AI(SerialPortStream serialPort) : base(serialPort)
        {
        }

        public override string Name => "AI";

        public override string Definition => "AUTO INFORMATION";

        public abstract void Write(InformationState state);

        public abstract Task WriteAsync(InformationState state, CancellationToken cancellationToken);

        public abstract bool Set(InformationState state);

        public abstract Task<bool> SetAsync(InformationState state, CancellationToken cancellationToken);

        public abstract InformationState Read();

        public abstract Task<InformationState> ReadAsync(CancellationToken cancellationToken);

        public abstract Information Parse(string input);
    }
}