using System; using System.Collections.Generic; using System.Text; using Wayne.FDCPOSLibrary; namespace Edge.Core.IndustryStandardInterface.ATG { public enum AtgState { Idle, Offline, /// /// The ATG is in inoperative state. /// Inoperative_MissingConfig, /// /// The ATG is in operative state and Tanks info just reloaded and refreshed. /// Received this State indicates the caller side need re-read the tanks info. /// NOTE, this state is a intermediate state and will fastly switched to Idle. /// TanksReloaded, } public enum TankState { Unknown, Idle, Delivering, } public class AtgStateChangeEventArg : EventArgs { public AtgStateChangeEventArg(AtgState state, string description) { this.State = state; this.Description = description; } public AtgStateChangeEventArg(Tank targetTank, AtgState state, string description) { this.TargetTank = targetTank; this.State = state; this.Description = description; } public AtgState State { get; } public Tank? TargetTank { get; } public string Description { get; } } }