using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using SDL2Demo;
using SDL2Demo.Jobs;
using skyscraper8.Skyscraper.FrequencyListGenerator;

namespace skyscraper8.UI.SDL2.Jobs
{
	internal class InheritedBlindscanJob : IJob
	{
		private readonly BlindscanJobConfiguration _jobConfiguration;

		public InheritedBlindscanJob(BlindscanJobConfiguration jobConfiguration)
		{
			_jobConfiguration = jobConfiguration;
		}

		private BaseBlindscanJob baseBlindscanJob;
		public void Run()
		{
			if (JobContext == null)
			{
				throw new NullReferenceException(nameof(JobContext));
			}

			InheritedBlindscanUiJunction inherited = (InheritedBlindscanUiJunction)_jobConfiguration.Ui;
			inherited.jobContext = JobContext;

			baseBlindscanJob = new BaseBlindscanJob(_jobConfiguration);
			baseBlindscanJob.Run();
		}

		public void Cancel()
		{
			throw new NotImplementedException();
		}

		public JobContext JobContext { get; set; }
	}
}
