using skyscraper5.Mpeg2;
using skyscraper5.src.InteractionChannel.Model;
using skyscraper5.src.InteractionChannel.Model.Descriptors;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net.NetworkInformation;
using System.Text;
using System.Threading.Tasks;

namespace skyscraper5.src.InteractionChannel
{
	internal class NullInteractionChannelHandler : InteractionChannelHandler
	{
		public int GetRmtTransmissionStandard(ushort networkId)
		{
			return 0;
		}

        public void OnConnectionControl(PhysicalAddress macAddress, _0xaf_ConnectionControlDescriptor descriptor)
        {
        }

        public void OnContentionControl(PhysicalAddress macAddress, _0xab_ContentionControlDescriptor ccd)
		{
		}

		public void OnCorrectionControl(PhysicalAddress macAddress, _0xac_CorrectionControlDescriptor descriptor)
		{
		}

		public void OnCorrectionMessage(ushort interactiveNetworkId, Cmt cmt)
		{
		}

		public void OnCorrectionMessage(PhysicalAddress mac, _0xa1_CorrectionMessageDescriptor cmd)
		{
		}

		public void OnFrameComposition(ushort interactiveNetworkId, Fct fct)
		{
		}

		public void OnInteractionChannelError(InteractionChannelErrorState unexpectedTable)
		{
		}

		public void OnNetworkLayerInfo(PhysicalAddress macAddress, TsDescriptor descriptor)
		{
		}

		public void OnNetworkLayerInfo(PhysicalAddress macAddress, _0xa0_NetworkLayerInfoDescriptor descriptor)
		{
			throw new NotImplementedException();
		}

		public void OnRcsMap(Rmt rmt)
		{
		}

        public void OnReturnTransmissionMOdes(PhysicalAddress macAddress, _0xb2_ReturnTransmissionModesDescriptor descriptor)
        {
        }

        public void OnSatellitePosition(ushort interactiveNetworkId, Spt spt)
		{
		}

		public void OnSuperframeComposition(ushort interactiveNetworkId, Sct sct)
		{
		}

		public void OnTerminalBurstTimePlan(ushort interactiveNetworkId, Tbtp tbtp)
		{
		}

		public void OnTerminalInformation(PhysicalAddress macAddress, Tim tim)
		{
		}

		public void OnTimeslotComposition(ushort interactiveNetworkId, Tct tct)
		{	
		}

		public void OnTransmissionModeSupport(ushort interactiveNetworkId, Tmst tmst)
		{
		}
	}
}
