diff --git a/skyscraper8/Skyscraper/FrequencyListGenerator/CoopBlindscanStreamReaderProxy.cs b/skyscraper8/Skyscraper/FrequencyListGenerator/CoopBlindscanStreamReaderProxy.cs index e6b1aa2..394d2b0 100644 --- a/skyscraper8/Skyscraper/FrequencyListGenerator/CoopBlindscanStreamReaderProxy.cs +++ b/skyscraper8/Skyscraper/FrequencyListGenerator/CoopBlindscanStreamReaderProxy.cs @@ -418,5 +418,10 @@ namespace skyscraper8.Skyscraper.FrequencyListGenerator { throw new NotImplementedException(); } + + public bool FFTTerm() + { + throw new NotImplementedException(); + } } } diff --git a/skyscraper8/Skyscraper/FrequencyListGenerator/SatIpWithStreamReaderProxy.cs b/skyscraper8/Skyscraper/FrequencyListGenerator/SatIpWithStreamReaderProxy.cs index a8a563f..f0b167c 100644 --- a/skyscraper8/Skyscraper/FrequencyListGenerator/SatIpWithStreamReaderProxy.cs +++ b/skyscraper8/Skyscraper/FrequencyListGenerator/SatIpWithStreamReaderProxy.cs @@ -504,12 +504,17 @@ namespace skyscraper8.Skyscraper.FrequencyListGenerator public Version GetEngineVersion() { - throw new NotImplementedException(); + return ProxiedStreamReader.GetEngineVersion(); } public string GetEngineName() { - throw new NotImplementedException(); + return ProxiedStreamReader.GetEngineName(); + } + + public bool FFTTerm() + { + return ProxiedStreamReader.FFTTerm(); } } } diff --git a/skyscraper8/Skyscraper/IO/CrazycatStreamReader/Enums.cs b/skyscraper8/Skyscraper/IO/CrazycatStreamReader/Enums.cs index dc85cdd..0e7591a 100644 --- a/skyscraper8/Skyscraper/IO/CrazycatStreamReader/Enums.cs +++ b/skyscraper8/Skyscraper/IO/CrazycatStreamReader/Enums.cs @@ -496,7 +496,8 @@ namespace skyscraper5.Skyscraper.IO.CrazycatStreamReader SR_AIRSCAN = 0x800000, SR_CIRSCAN = 0x1000000, SR_FFTSCAN = 0x2000000, - SR_CARESNO = 0x4000000 - } + SR_CARESNO = 0x4000000, + SR_SETPOL = 0x8000000 + } } diff --git a/skyscraper8/Skyscraper/IO/IStreamReader.cs b/skyscraper8/Skyscraper/IO/IStreamReader.cs index 73f7643..f7e6fe9 100644 --- a/skyscraper8/Skyscraper/IO/IStreamReader.cs +++ b/skyscraper8/Skyscraper/IO/IStreamReader.cs @@ -433,5 +433,6 @@ namespace skyscraper5.Skyscraper.IO /// /// For example: "StreamReaderEx for BDA Tuners string GetEngineName(); - } + bool FFTTerm(); + } } diff --git a/skyscraper8/Skyscraper/IO/RemoteStreamReader/RemoteStreamReaderClient.cs b/skyscraper8/Skyscraper/IO/RemoteStreamReader/RemoteStreamReaderClient.cs index 95e227f..c234777 100644 --- a/skyscraper8/Skyscraper/IO/RemoteStreamReader/RemoteStreamReaderClient.cs +++ b/skyscraper8/Skyscraper/IO/RemoteStreamReader/RemoteStreamReaderClient.cs @@ -928,5 +928,22 @@ namespace skyscraper5.Skyscraper.IO.RemoteStreamReader throw new NotImplementedException(result.ToString()); } } + + public bool FFTTerm() + { + TcpStream.WriteUInt32BE((uint)RemoteStreamReaderConstants.REQUEST_FFT_TERM); + TcpStream.Flush(); + + RemoteStreamReaderConstants result = (RemoteStreamReaderConstants)TcpStream.ReadUInt32BE(); + switch (result) + { + case RemoteStreamReaderConstants.COMMAND_SUCCESSFUL: + return true; + case RemoteStreamReaderConstants.COMMAND_FAILED: + return false; + default: + throw new NotImplementedException(result.ToString()); + } + } } } diff --git a/skyscraper8/Skyscraper/IO/RemoteStreamReader/RemoteStreamReaderConstants.cs b/skyscraper8/Skyscraper/IO/RemoteStreamReader/RemoteStreamReaderConstants.cs index 6e6c6b3..73f52a6 100644 --- a/skyscraper8/Skyscraper/IO/RemoteStreamReader/RemoteStreamReaderConstants.cs +++ b/skyscraper8/Skyscraper/IO/RemoteStreamReader/RemoteStreamReaderConstants.cs @@ -41,6 +41,7 @@ REQUEST_GET_SIGNAL_EX_EX, REQUEST_SKYSCRAPER_ENGINE_NAME, REQUEST_SKYSCRAPER_ENGINE_VERSION, - REQUEST_RF_SCAN_2 - } + REQUEST_RF_SCAN_2, + REQUEST_FFT_TERM + } } diff --git a/skyscraper8/Skyscraper/IO/TunerInterface/NullTunerFactory.cs b/skyscraper8/Skyscraper/IO/TunerInterface/NullTunerFactory.cs index 1be5db5..c244cc4 100644 --- a/skyscraper8/Skyscraper/IO/TunerInterface/NullTunerFactory.cs +++ b/skyscraper8/Skyscraper/IO/TunerInterface/NullTunerFactory.cs @@ -303,5 +303,10 @@ namespace skyscraper5.Skyscraper.IO.TunerInterface { return this.GetType().Name; } + + public bool FFTTerm() + { + return false; + } } }