Actually scrape LogonResponseDescriptor, LowerLayerServiceDescriptor and HigherLayersInitializeDescriptor.
Some checks failed
🚀 Pack skyscraper8 / make-zip (push) Failing after 1m9s
Some checks failed
🚀 Pack skyscraper8 / make-zip (push) Failing after 1m9s
This commit is contained in:
parent
8e3311bcce
commit
af8edceca2
@ -1017,6 +1017,46 @@ namespace skyscraper5.Data.PostgreSql
|
|||||||
throw new NotImplementedException();
|
throw new NotImplementedException();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public bool TestForLowerLayerService(PhysicalAddress macAddress)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void InsertTimLowerLayerService(PhysicalAddress macAddress, _0xbb_LowerLayerServiceDescriptor descriptor)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool TestForHigherLayerServiceInitalization(PhysicalAddress macAddress, _0xc4_HigherLayersInitializeDescriptor.Layer2Interface layer2Interface)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void InsertHigherLayerServiceInitalization(PhysicalAddress macAddress, _0xc4_HigherLayersInitializeDescriptor.Layer2Interface layer2Interface)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool TestForTimLogonResponse(PhysicalAddress macAddress)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void InsertTimLogonResponse(PhysicalAddress macAddress, _0xb9_LogonResponseDescriptor descriptor)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool TestForTimForwardInteractionPath(PhysicalAddress macAddress, _0xad_ForwardInteractionPathDescriptor.ForwardInteractionPath forwardInteractionPath)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void InsertTimForwardInteractionPath(PhysicalAddress macAddress, _0xad_ForwardInteractionPathDescriptor.ForwardInteractionPath forwardInteractionPath)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
private bool AreArraysEqual(byte[] l, byte[] r)
|
private bool AreArraysEqual(byte[] l, byte[] r)
|
||||||
{
|
{
|
||||||
if (l.Length != r.Length)
|
if (l.Length != r.Length)
|
||||||
|
|||||||
@ -43,5 +43,9 @@ namespace skyscraper5.src.InteractionChannel
|
|||||||
void OnCorrectionMessageExtension(PhysicalAddress macAddress, _0xb1_CorrectionMessageExtensionDescriptor descriptor);
|
void OnCorrectionMessageExtension(PhysicalAddress macAddress, _0xb1_CorrectionMessageExtensionDescriptor descriptor);
|
||||||
void OnControlAssignment(PhysicalAddress macAddress, _0xa4_SyncAssignDescriptor descriptor);
|
void OnControlAssignment(PhysicalAddress macAddress, _0xa4_SyncAssignDescriptor descriptor);
|
||||||
void OnSatelliteReturnLink(PhysicalAddress macAddress, _0xa9_SatelliteReturnLinkDescriptor descriptor);
|
void OnSatelliteReturnLink(PhysicalAddress macAddress, _0xa9_SatelliteReturnLinkDescriptor descriptor);
|
||||||
|
void OnLowerLayerService(PhysicalAddress macAddress, _0xbb_LowerLayerServiceDescriptor descriptor);
|
||||||
|
void OnHigherLayerInitalization(PhysicalAddress macAddress, _0xc4_HigherLayersInitializeDescriptor descriptor);
|
||||||
|
void LogonResponseDescriptor(PhysicalAddress macAddress, _0xb9_LogonResponseDescriptor descriptor);
|
||||||
|
void OnForwardInteractionPath(PhysicalAddress macAddress, _0xad_ForwardInteractionPathDescriptor descriptor);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,7 +12,7 @@ namespace skyscraper5.src.InteractionChannel.Model.Descriptors
|
|||||||
{
|
{
|
||||||
[SkyscraperPlugin]
|
[SkyscraperPlugin]
|
||||||
[TsDescriptor(0xad,"TIM")]
|
[TsDescriptor(0xad,"TIM")]
|
||||||
internal class _0xad_ForwardInteractionPathDescriptor : TsDescriptor
|
public class _0xad_ForwardInteractionPathDescriptor : TsDescriptor
|
||||||
{
|
{
|
||||||
public _0xad_ForwardInteractionPathDescriptor(byte[] buffer)
|
public _0xad_ForwardInteractionPathDescriptor(byte[] buffer)
|
||||||
{
|
{
|
||||||
@ -48,6 +48,59 @@ namespace skyscraper5.src.InteractionChannel.Model.Descriptors
|
|||||||
public ushort OriginalNetworkId { get; internal set; }
|
public ushort OriginalNetworkId { get; internal set; }
|
||||||
public ushort TransportStreamId { get; internal set; }
|
public ushort TransportStreamId { get; internal set; }
|
||||||
public ushort[] Pids { get; internal set; }
|
public ushort[] Pids { get; internal set; }
|
||||||
|
|
||||||
|
public string PidsAsString
|
||||||
|
{
|
||||||
|
get
|
||||||
|
{
|
||||||
|
StringBuilder sb = new StringBuilder();
|
||||||
|
foreach (var p in Pids)
|
||||||
|
{
|
||||||
|
sb.Append(p);
|
||||||
|
sb.Append(";");
|
||||||
|
}
|
||||||
|
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
protected bool Equals(ForwardInteractionPath other)
|
||||||
|
{
|
||||||
|
return PidsAsString.Equals(other.PidsAsString) && OriginalNetworkId == other.OriginalNetworkId && TransportStreamId == other.TransportStreamId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override bool Equals(object? obj)
|
||||||
|
{
|
||||||
|
if (ReferenceEquals(null, obj)) return false;
|
||||||
|
if (ReferenceEquals(this, obj)) return true;
|
||||||
|
if (obj.GetType() != this.GetType()) return false;
|
||||||
|
return Equals((ForwardInteractionPath)obj);
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int GetHashCode()
|
||||||
|
{
|
||||||
|
return HashCode.Combine(OriginalNetworkId, TransportStreamId);
|
||||||
|
}
|
||||||
|
|
||||||
|
public override string ToString()
|
||||||
|
{
|
||||||
|
bool suspect = false;
|
||||||
|
StringBuilder sb = new StringBuilder();
|
||||||
|
sb.AppendFormat("ONID: {0}, TSID: {1}, PIDs: ", OriginalNetworkId, TransportStreamId);
|
||||||
|
foreach (var p in Pids)
|
||||||
|
{
|
||||||
|
sb.Append(p);
|
||||||
|
sb.Append(";");
|
||||||
|
if (p > 8192)
|
||||||
|
suspect = true;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (suspect)
|
||||||
|
{
|
||||||
|
sb.AppendFormat(" (suspected GS)");
|
||||||
|
}
|
||||||
|
return sb.ToString();
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<ForwardInteractionPath> Paths { get; }
|
public List<ForwardInteractionPath> Paths { get; }
|
||||||
|
|||||||
@ -316,6 +316,9 @@ namespace skyscraper5.src.InteractionChannel.Model
|
|||||||
case 0xac:
|
case 0xac:
|
||||||
handler.OnCorrectionControl(macAddress, (_0xac_CorrectionControlDescriptor)descriptor);
|
handler.OnCorrectionControl(macAddress, (_0xac_CorrectionControlDescriptor)descriptor);
|
||||||
break;
|
break;
|
||||||
|
case 0xad:
|
||||||
|
handler.OnForwardInteractionPath(macAddress, (_0xad_ForwardInteractionPathDescriptor)descriptor);
|
||||||
|
break;
|
||||||
case 0xaf:
|
case 0xaf:
|
||||||
handler.OnConnectionControl(macAddress, (_0xaf_ConnectionControlDescriptor)descriptor);
|
handler.OnConnectionControl(macAddress, (_0xaf_ConnectionControlDescriptor)descriptor);
|
||||||
break;
|
break;
|
||||||
@ -328,6 +331,15 @@ namespace skyscraper5.src.InteractionChannel.Model
|
|||||||
case 0xb7:
|
case 0xb7:
|
||||||
handler.OnFramePayloadFormatAnnouncement(networkId.Value, (_0xb7_FramePayloadFormatDescriptor)descriptor);
|
handler.OnFramePayloadFormatAnnouncement(networkId.Value, (_0xb7_FramePayloadFormatDescriptor)descriptor);
|
||||||
break;
|
break;
|
||||||
|
case 0xb9:
|
||||||
|
handler.LogonResponseDescriptor(macAddress, (_0xb9_LogonResponseDescriptor)descriptor);
|
||||||
|
break;
|
||||||
|
case 0xbb:
|
||||||
|
handler.OnLowerLayerService(macAddress, (_0xbb_LowerLayerServiceDescriptor)descriptor);
|
||||||
|
break;
|
||||||
|
case 0xc4:
|
||||||
|
handler.OnHigherLayerInitalization(macAddress, (_0xc4_HigherLayersInitializeDescriptor)descriptor);
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
if (id >= 0xe0 && id <= 0xfe)
|
if (id >= 0xe0 && id <= 0xfe)
|
||||||
break;
|
break;
|
||||||
|
|||||||
@ -11,7 +11,7 @@ namespace skyscraper8.InteractionChannel.Model2.Descriptors
|
|||||||
{
|
{
|
||||||
[SkyscraperPlugin]
|
[SkyscraperPlugin]
|
||||||
[TsDescriptor(0xb9,"TIM")]
|
[TsDescriptor(0xb9,"TIM")]
|
||||||
internal class _0xb9_LogonResponseDescriptor : TsDescriptor
|
public class _0xb9_LogonResponseDescriptor : TsDescriptor
|
||||||
{
|
{
|
||||||
public _0xb9_LogonResponseDescriptor(byte[] buffer)
|
public _0xb9_LogonResponseDescriptor(byte[] buffer)
|
||||||
{
|
{
|
||||||
@ -76,5 +76,10 @@ namespace skyscraper8.InteractionChannel.Model2.Descriptors
|
|||||||
AutonomousEirp = 1,
|
AutonomousEirp = 1,
|
||||||
ConstantPowerSpectrum = 2,
|
ConstantPowerSpectrum = 2,
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public override string ToString()
|
||||||
|
{
|
||||||
|
return $"{nameof(GroupId)}: {GroupId}, {nameof(LogonId)}: {LogonId}";
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -12,7 +12,7 @@ namespace skyscraper8.InteractionChannel.Model2.Descriptors
|
|||||||
{
|
{
|
||||||
[SkyscraperPlugin]
|
[SkyscraperPlugin]
|
||||||
[TsDescriptor(0xbb,"TIM")]
|
[TsDescriptor(0xbb,"TIM")]
|
||||||
internal class _0xbb_LowerLayerServiceDescriptor : TsDescriptor
|
public class _0xbb_LowerLayerServiceDescriptor : TsDescriptor
|
||||||
{
|
{
|
||||||
public _0xbb_LowerLayerServiceDescriptor(byte[] buffer)
|
public _0xbb_LowerLayerServiceDescriptor(byte[] buffer)
|
||||||
{
|
{
|
||||||
|
|||||||
@ -13,7 +13,7 @@ namespace skyscraper8.InteractionChannel.Model2.Descriptors
|
|||||||
{
|
{
|
||||||
[SkyscraperPlugin]
|
[SkyscraperPlugin]
|
||||||
[TsDescriptor(0xc4,"TIM")]
|
[TsDescriptor(0xc4,"TIM")]
|
||||||
internal class _0xc4_HigherLayersInitializeDescriptor : TsDescriptor
|
public class _0xc4_HigherLayersInitializeDescriptor : TsDescriptor
|
||||||
{
|
{
|
||||||
public _0xc4_HigherLayersInitializeDescriptor(byte[] buffer)
|
public _0xc4_HigherLayersInitializeDescriptor(byte[] buffer)
|
||||||
{
|
{
|
||||||
@ -43,6 +43,26 @@ namespace skyscraper8.InteractionChannel.Model2.Descriptors
|
|||||||
public IPAddress OfferStreamIpv4Adress { get; set; }
|
public IPAddress OfferStreamIpv4Adress { get; set; }
|
||||||
public ushort OfferStreamPort { get; set; }
|
public ushort OfferStreamPort { get; set; }
|
||||||
public bool HigherLayerPepSwitchOff { get; set; }
|
public bool HigherLayerPepSwitchOff { get; set; }
|
||||||
|
|
||||||
|
public string Mac24AsString => BitConverter.ToString(Mac24);
|
||||||
|
|
||||||
|
protected bool Equals(Layer2Interface other)
|
||||||
|
{
|
||||||
|
return Mac24AsString.Equals(other.Mac24AsString) && Ipv4McAddress.Equals(other.Ipv4McAddress) && OfferStreamIpv4Adress.Equals(other.OfferStreamIpv4Adress) && OfferStreamPort == other.OfferStreamPort && HigherLayerPepSwitchOff == other.HigherLayerPepSwitchOff;
|
||||||
|
}
|
||||||
|
|
||||||
|
public override bool Equals(object? obj)
|
||||||
|
{
|
||||||
|
if (ReferenceEquals(null, obj)) return false;
|
||||||
|
if (ReferenceEquals(this, obj)) return true;
|
||||||
|
if (obj.GetType() != this.GetType()) return false;
|
||||||
|
return Equals((Layer2Interface)obj);
|
||||||
|
}
|
||||||
|
|
||||||
|
public override int GetHashCode()
|
||||||
|
{
|
||||||
|
return HashCode.Combine(Mac24AsString, Ipv4McAddress, OfferStreamIpv4Adress, OfferStreamPort, HigherLayerPepSwitchOff);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -74,6 +74,26 @@ namespace skyscraper5.src.InteractionChannel
|
|||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void OnLowerLayerService(PhysicalAddress macAddress, _0xbb_LowerLayerServiceDescriptor descriptor)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OnHigherLayerInitalization(PhysicalAddress macAddress, _0xc4_HigherLayersInitializeDescriptor descriptor)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void LogonResponseDescriptor(PhysicalAddress macAddress, _0xb9_LogonResponseDescriptor descriptor)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OnForwardInteractionPath(PhysicalAddress macAddress, _0xad_ForwardInteractionPathDescriptor descriptor)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
public void OnFrameComposition2(ushort? networkId, Fct2 fct2)
|
public void OnFrameComposition2(ushort? networkId, Fct2 fct2)
|
||||||
{
|
{
|
||||||
|
|
||||||
|
|||||||
@ -2562,6 +2562,48 @@ namespace skyscraper5.Skyscraper.Scraper
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void OnLowerLayerService(PhysicalAddress macAddress, _0xbb_LowerLayerServiceDescriptor descriptor)
|
||||||
|
{
|
||||||
|
if (!DataStorage.TestForLowerLayerService(macAddress))
|
||||||
|
{
|
||||||
|
LogEvent(SkyscraperContextEvent.TimLowerLayerService, String.Format("For participant {0}", macAddress));
|
||||||
|
DataStorage.InsertTimLowerLayerService(macAddress, descriptor);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OnHigherLayerInitalization(PhysicalAddress macAddress, _0xc4_HigherLayersInitializeDescriptor descriptor)
|
||||||
|
{
|
||||||
|
foreach (_0xc4_HigherLayersInitializeDescriptor.Layer2Interface layer2Interface in descriptor.Layer2Interfaces)
|
||||||
|
{
|
||||||
|
if (!DataStorage.TestForHigherLayerServiceInitalization(macAddress, layer2Interface))
|
||||||
|
{
|
||||||
|
LogEvent(SkyscraperContextEvent.TimHigherLayerInitalization, String.Format("For participant {0} -> {1}", macAddress, layer2Interface.Ipv4McAddress));
|
||||||
|
DataStorage.InsertHigherLayerServiceInitalization(macAddress, layer2Interface);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void LogonResponseDescriptor(PhysicalAddress macAddress, _0xb9_LogonResponseDescriptor descriptor)
|
||||||
|
{
|
||||||
|
if (!DataStorage.TestForTimLogonResponse(macAddress))
|
||||||
|
{
|
||||||
|
LogEvent(SkyscraperContextEvent.TimLogonResponse, String.Format("For participant {0}: {1}", macAddress, descriptor.ToString()));
|
||||||
|
DataStorage.InsertTimLogonResponse(macAddress, descriptor);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OnForwardInteractionPath(PhysicalAddress macAddress, _0xad_ForwardInteractionPathDescriptor descriptor)
|
||||||
|
{
|
||||||
|
foreach (_0xad_ForwardInteractionPathDescriptor.ForwardInteractionPath forwardInteractionPath in descriptor.Paths)
|
||||||
|
{
|
||||||
|
if (!DataStorage.TestForTimForwardInteractionPath(macAddress, forwardInteractionPath))
|
||||||
|
{
|
||||||
|
LogEvent(SkyscraperContextEvent.TimForwardInteractionPath, String.Format("For participant {0}: {1}", macAddress, forwardInteractionPath.ToString()));
|
||||||
|
DataStorage.InsertTimForwardInteractionPath(macAddress, forwardInteractionPath);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void OnCorrectionMessage(PhysicalAddress mac, _0xa1_CorrectionMessageDescriptor cmd)
|
public void OnCorrectionMessage(PhysicalAddress mac, _0xa1_CorrectionMessageDescriptor cmd)
|
||||||
{
|
{
|
||||||
if (!DataStorage.TestForTim(mac))
|
if (!DataStorage.TestForTim(mac))
|
||||||
|
|||||||
@ -96,6 +96,10 @@
|
|||||||
TimFramePayloadFormat,
|
TimFramePayloadFormat,
|
||||||
TimCorrectionExtension,
|
TimCorrectionExtension,
|
||||||
TimControlAssignment,
|
TimControlAssignment,
|
||||||
TimSatelliteReturnLink
|
TimSatelliteReturnLink,
|
||||||
|
TimLowerLayerService,
|
||||||
|
TimHigherLayerInitalization,
|
||||||
|
TimLogonResponse,
|
||||||
|
TimForwardInteractionPath
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -216,5 +216,13 @@ namespace skyscraper8.Skyscraper.Scraper.Storage
|
|||||||
void InsertTimControlAssignment(PhysicalAddress macAddress, _0xa4_SyncAssignDescriptor descriptor);
|
void InsertTimControlAssignment(PhysicalAddress macAddress, _0xa4_SyncAssignDescriptor descriptor);
|
||||||
bool TestForTimSatelliteReturnLink(PhysicalAddress macAddress);
|
bool TestForTimSatelliteReturnLink(PhysicalAddress macAddress);
|
||||||
void InsertTimSatelliteReturnLink(PhysicalAddress macAddress, _0xa9_SatelliteReturnLinkDescriptor descriptor);
|
void InsertTimSatelliteReturnLink(PhysicalAddress macAddress, _0xa9_SatelliteReturnLinkDescriptor descriptor);
|
||||||
|
bool TestForLowerLayerService(PhysicalAddress macAddress);
|
||||||
|
void InsertTimLowerLayerService(PhysicalAddress macAddress, _0xbb_LowerLayerServiceDescriptor descriptor);
|
||||||
|
bool TestForHigherLayerServiceInitalization(PhysicalAddress macAddress, _0xc4_HigherLayersInitializeDescriptor.Layer2Interface layer2Interface);
|
||||||
|
void InsertHigherLayerServiceInitalization(PhysicalAddress macAddress, _0xc4_HigherLayersInitializeDescriptor.Layer2Interface layer2Interface);
|
||||||
|
bool TestForTimLogonResponse(PhysicalAddress macAddress);
|
||||||
|
void InsertTimLogonResponse(PhysicalAddress macAddress, _0xb9_LogonResponseDescriptor descriptor);
|
||||||
|
bool TestForTimForwardInteractionPath(PhysicalAddress macAddress, _0xad_ForwardInteractionPathDescriptor.ForwardInteractionPath forwardInteractionPath);
|
||||||
|
void InsertTimForwardInteractionPath(PhysicalAddress macAddress, _0xad_ForwardInteractionPathDescriptor.ForwardInteractionPath forwardInteractionPath);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1255,6 +1255,46 @@ namespace skyscraper5.Skyscraper.Scraper.Storage.Filesystem
|
|||||||
throw new NotImplementedException();
|
throw new NotImplementedException();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public bool TestForLowerLayerService(PhysicalAddress macAddress)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void InsertTimLowerLayerService(PhysicalAddress macAddress, _0xbb_LowerLayerServiceDescriptor descriptor)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool TestForHigherLayerServiceInitalization(PhysicalAddress macAddress, _0xc4_HigherLayersInitializeDescriptor.Layer2Interface layer2Interface)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void InsertHigherLayerServiceInitalization(PhysicalAddress macAddress, _0xc4_HigherLayersInitializeDescriptor.Layer2Interface layer2Interface)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool TestForTimLogonResponse(PhysicalAddress macAddress)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void InsertTimLogonResponse(PhysicalAddress macAddress, _0xb9_LogonResponseDescriptor descriptor)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public bool TestForTimForwardInteractionPath(PhysicalAddress macAddress, _0xad_ForwardInteractionPathDescriptor.ForwardInteractionPath forwardInteractionPath)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
|
public void InsertTimForwardInteractionPath(PhysicalAddress macAddress, _0xad_ForwardInteractionPathDescriptor.ForwardInteractionPath forwardInteractionPath)
|
||||||
|
{
|
||||||
|
throw new NotImplementedException();
|
||||||
|
}
|
||||||
|
|
||||||
public IEnumerable<Tuple<int, int, ProgramMapping>> SelectAllPmt()
|
public IEnumerable<Tuple<int, int, ProgramMapping>> SelectAllPmt()
|
||||||
{
|
{
|
||||||
throw new NotImplementedException();
|
throw new NotImplementedException();
|
||||||
|
|||||||
@ -1149,6 +1149,71 @@ namespace skyscraper5.Skyscraper.Scraper.Storage.InMemory
|
|||||||
_timSatelliteReturnLinks.Add(macAddress, descriptor);
|
_timSatelliteReturnLinks.Add(macAddress, descriptor);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private Dictionary<PhysicalAddress, _0xbb_LowerLayerServiceDescriptor> _timLowerLayerServiceDescriptors;
|
||||||
|
public bool TestForLowerLayerService(PhysicalAddress macAddress)
|
||||||
|
{
|
||||||
|
if (_timLowerLayerServiceDescriptors == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
return _timLowerLayerServiceDescriptors.ContainsKey(macAddress);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void InsertTimLowerLayerService(PhysicalAddress macAddress, _0xbb_LowerLayerServiceDescriptor descriptor)
|
||||||
|
{
|
||||||
|
if (_timLowerLayerServiceDescriptors == null)
|
||||||
|
_timLowerLayerServiceDescriptors = new Dictionary<PhysicalAddress, _0xbb_LowerLayerServiceDescriptor>();
|
||||||
|
|
||||||
|
_timLowerLayerServiceDescriptors.Add(macAddress, descriptor);
|
||||||
|
}
|
||||||
|
|
||||||
|
private HashSet<Tuple<PhysicalAddress, _0xc4_HigherLayersInitializeDescriptor.Layer2Interface>> layer2interfaces;
|
||||||
|
public bool TestForHigherLayerServiceInitalization(PhysicalAddress macAddress, _0xc4_HigherLayersInitializeDescriptor.Layer2Interface layer2Interface)
|
||||||
|
{
|
||||||
|
if (layer2interfaces == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
return layer2interfaces.Contains(new Tuple<PhysicalAddress, _0xc4_HigherLayersInitializeDescriptor.Layer2Interface>(macAddress, layer2Interface));
|
||||||
|
}
|
||||||
|
|
||||||
|
public void InsertHigherLayerServiceInitalization(PhysicalAddress macAddress, _0xc4_HigherLayersInitializeDescriptor.Layer2Interface layer2Interface)
|
||||||
|
{
|
||||||
|
layer2interfaces.Add(new Tuple<PhysicalAddress, _0xc4_HigherLayersInitializeDescriptor.Layer2Interface>(macAddress, layer2Interface));
|
||||||
|
}
|
||||||
|
|
||||||
|
private Dictionary<PhysicalAddress, _0xb9_LogonResponseDescriptor> _logonResponseDescriptors;
|
||||||
|
public bool TestForTimLogonResponse(PhysicalAddress macAddress)
|
||||||
|
{
|
||||||
|
if (_logonResponseDescriptors == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
return _logonResponseDescriptors.ContainsKey(macAddress);
|
||||||
|
}
|
||||||
|
|
||||||
|
public void InsertTimLogonResponse(PhysicalAddress macAddress, _0xb9_LogonResponseDescriptor descriptor)
|
||||||
|
{
|
||||||
|
if (_logonResponseDescriptors == null)
|
||||||
|
_logonResponseDescriptors = new Dictionary<PhysicalAddress, _0xb9_LogonResponseDescriptor>();
|
||||||
|
|
||||||
|
_logonResponseDescriptors.Add(macAddress, descriptor);
|
||||||
|
}
|
||||||
|
|
||||||
|
private HashSet<Tuple<PhysicalAddress, _0xad_ForwardInteractionPathDescriptor.ForwardInteractionPath>> _forwardInteractionPaths;
|
||||||
|
public bool TestForTimForwardInteractionPath(PhysicalAddress macAddress, _0xad_ForwardInteractionPathDescriptor.ForwardInteractionPath forwardInteractionPath)
|
||||||
|
{
|
||||||
|
if (_forwardInteractionPaths == null)
|
||||||
|
return false;
|
||||||
|
|
||||||
|
return _forwardInteractionPaths.Contains(new Tuple<PhysicalAddress, _0xad_ForwardInteractionPathDescriptor.ForwardInteractionPath>(macAddress, forwardInteractionPath));
|
||||||
|
}
|
||||||
|
|
||||||
|
public void InsertTimForwardInteractionPath(PhysicalAddress macAddress, _0xad_ForwardInteractionPathDescriptor.ForwardInteractionPath forwardInteractionPath)
|
||||||
|
{
|
||||||
|
if (_forwardInteractionPaths == null)
|
||||||
|
_forwardInteractionPaths = new HashSet<Tuple<PhysicalAddress, _0xad_ForwardInteractionPathDescriptor.ForwardInteractionPath>>();
|
||||||
|
|
||||||
|
_forwardInteractionPaths.Add(new Tuple<PhysicalAddress, _0xad_ForwardInteractionPathDescriptor.ForwardInteractionPath>(macAddress, forwardInteractionPath));
|
||||||
|
}
|
||||||
|
|
||||||
public IEnumerable<Tuple<int, int, ProgramMapping>> SelectAllPmt()
|
public IEnumerable<Tuple<int, int, ProgramMapping>> SelectAllPmt()
|
||||||
{
|
{
|
||||||
for (int x = 0; x < pmtEntries.Length; x++)
|
for (int x = 0; x < pmtEntries.Length; x++)
|
||||||
|
|||||||
@ -251,6 +251,35 @@ namespace skyscraper5.src.Skyscraper.Scraper.StreamAutodetection.Contestants
|
|||||||
//TODO: put some sensible validation logic in here
|
//TODO: put some sensible validation logic in here
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void OnLowerLayerService(PhysicalAddress macAddress, _0xbb_LowerLayerServiceDescriptor descriptor)
|
||||||
|
{
|
||||||
|
if (descriptor.LowerLayerServices.Length > 0)
|
||||||
|
{
|
||||||
|
Score++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OnHigherLayerInitalization(PhysicalAddress macAddress, _0xc4_HigherLayersInitializeDescriptor descriptor)
|
||||||
|
{
|
||||||
|
if (descriptor.Layer2Interfaces.Length > 0)
|
||||||
|
{
|
||||||
|
Score++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public void LogonResponseDescriptor(PhysicalAddress macAddress, _0xb9_LogonResponseDescriptor descriptor)
|
||||||
|
{
|
||||||
|
//TODO: put some sensible validation logic in here.
|
||||||
|
}
|
||||||
|
|
||||||
|
public void OnForwardInteractionPath(PhysicalAddress macAddress, _0xad_ForwardInteractionPathDescriptor descriptor)
|
||||||
|
{
|
||||||
|
if (descriptor.Paths.Count > 0)
|
||||||
|
{
|
||||||
|
Score++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public void OnFrameComposition2(ushort? networkId, Fct2 fct2)
|
public void OnFrameComposition2(ushort? networkId, Fct2 fct2)
|
||||||
{
|
{
|
||||||
if (fct2.FrameTypes.Length > 0)
|
if (fct2.FrameTypes.Length > 0)
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user