/********* ** Public methods *********/ /// <summary>Construct an instance.</summary> /// <param name="monitor">Encapsulates monitoring and logging.</param> /// <param name="machineGroupFactory">Constructs machine groups.</param> /// <param name="activeMachineGroups">The active machine groups recognised by Automate.</param> /// <param name="disabledMachineGroups">The disabled machine groups recognised by Automate (e.g. machines not connected to a chest).</param> internal AutomateAPI(IMonitor monitor, MachineGroupFactory machineGroupFactory, IDictionary <GameLocation, MachineGroup[]> activeMachineGroups, IDictionary <GameLocation, MachineGroup[]> disabledMachineGroups) { this.Monitor = monitor; this.MachineGroupFactory = machineGroupFactory; this.ActiveMachineGroups = activeMachineGroups; this.DisabledMachineGroups = disabledMachineGroups; }
/********* ** Public methods *********/ /// <summary>Construct an instance.</summary> /// <param name="monitor">Writes messages to the console.</param> /// <param name="config">The mod configuration.</param> /// <param name="factory">Constructs machine groups.</param> /// <param name="activeMachineGroups">The machines to process.</param> public CommandHandler(IMonitor monitor, ModConfig config, MachineGroupFactory factory, IDictionary <GameLocation, MachineGroup[]> activeMachineGroups) { this.Monitor = monitor; this.Config = config; this.Factory = factory; this.ActiveMachineGroups = activeMachineGroups; }