wyq 1 năm trước cách đây
mục cha
commit
43e004b1a4
40 tập tin đã thay đổi với 0 bổ sung1131 xóa
  1. 0 3
      Service/CapMoni/CapMoni.csproj
  2. 0 86
      Service/Leo1SatTaskServer54/AddIns/DDC/DDCHelper.cs
  3. BIN
      Service/Leo1SatTaskServer54/AddIns/DDC/DigitaDownConverter.exe
  4. BIN
      Service/Leo1SatTaskServer54/AddIns/DDC/ippcore-9.0.dll
  5. BIN
      Service/Leo1SatTaskServer54/AddIns/DDC/ipps-9.0.dll
  6. BIN
      Service/Leo1SatTaskServer54/AddIns/DDC/ippsy8-9.0.dll
  7. 0 14
      Service/Leo1SatTaskServer54/AddIns/DDC/readme.txt
  8. BIN
      Service/Leo1SatTaskServer54/AddIns/时隙获取/SlotChecker.dll
  9. 0 26
      Service/Leo1SatTaskServer54/AddIns/时隙获取/SlotChecker.h
  10. 0 115
      Service/Leo1SatTaskServer54/AddIns/时隙获取/SlotHelper.cs
  11. BIN
      Service/Leo1SatTaskServer54/AddIns/误差椭圆/DLL_GDOP_Analysis0415.dll
  12. 0 27
      Service/Leo1SatTaskServer54/AddIns/误差椭圆/DLL_GDOP_Analysis0415.h
  13. 0 72
      Service/Leo1SatTaskServer54/AddIns/误差椭圆/ErrEllipseHepler.cs
  14. 0 36
      Service/Leo1SatTaskServer54/Leo1SatTaskServer54.csproj
  15. 0 86
      Service/Leo2SatTaskServer54/AddIns/DDC/DDCHelper.cs
  16. BIN
      Service/Leo2SatTaskServer54/AddIns/DDC/DigitaDownConverter.exe
  17. BIN
      Service/Leo2SatTaskServer54/AddIns/DDC/ippcore-9.0.dll
  18. BIN
      Service/Leo2SatTaskServer54/AddIns/DDC/ipps-9.0.dll
  19. BIN
      Service/Leo2SatTaskServer54/AddIns/DDC/ippsy8-9.0.dll
  20. 0 14
      Service/Leo2SatTaskServer54/AddIns/DDC/readme.txt
  21. BIN
      Service/Leo2SatTaskServer54/AddIns/时隙获取/SlotChecker.dll
  22. 0 26
      Service/Leo2SatTaskServer54/AddIns/时隙获取/SlotChecker.h
  23. 0 115
      Service/Leo2SatTaskServer54/AddIns/时隙获取/SlotHelper.cs
  24. BIN
      Service/Leo2SatTaskServer54/AddIns/误差椭圆/DLL_GDOP_Analysis0415.dll
  25. 0 27
      Service/Leo2SatTaskServer54/AddIns/误差椭圆/DLL_GDOP_Analysis0415.h
  26. 0 72
      Service/Leo2SatTaskServer54/AddIns/误差椭圆/ErrEllipseHepler.cs
  27. 0 36
      Service/Leo2SatTaskServer54/Leo2SatTaskServer54.csproj
  28. 0 86
      Service/Leo3SatTaskServer54/AddIns/DDC/DDCHelper.cs
  29. BIN
      Service/Leo3SatTaskServer54/AddIns/DDC/DigitaDownConverter.exe
  30. BIN
      Service/Leo3SatTaskServer54/AddIns/DDC/ippcore-9.0.dll
  31. BIN
      Service/Leo3SatTaskServer54/AddIns/DDC/ipps-9.0.dll
  32. BIN
      Service/Leo3SatTaskServer54/AddIns/DDC/ippsy8-9.0.dll
  33. 0 14
      Service/Leo3SatTaskServer54/AddIns/DDC/readme.txt
  34. BIN
      Service/Leo3SatTaskServer54/AddIns/时隙获取/SlotChecker.dll
  35. 0 26
      Service/Leo3SatTaskServer54/AddIns/时隙获取/SlotChecker.h
  36. 0 115
      Service/Leo3SatTaskServer54/AddIns/时隙获取/SlotHelper.cs
  37. BIN
      Service/Leo3SatTaskServer54/AddIns/误差椭圆/DLL_GDOP_Analysis0415.dll
  38. 0 27
      Service/Leo3SatTaskServer54/AddIns/误差椭圆/DLL_GDOP_Analysis0415.h
  39. 0 72
      Service/Leo3SatTaskServer54/AddIns/误差椭圆/ErrEllipseHepler.cs
  40. 0 36
      Service/Leo3SatTaskServer54/Leo3SatTaskServer54.csproj

+ 0 - 3
Service/CapMoni/CapMoni.csproj

@@ -35,9 +35,6 @@
   <ItemGroup>
     <Reference Include="System" />
     <Reference Include="System.Configuration" />
-    <Reference Include="System.Configuration.ConfigurationManager, Version=8.0.0.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
-      <HintPath>..\packages\System.Configuration.ConfigurationManager.8.0.0\lib\net462\System.Configuration.ConfigurationManager.dll</HintPath>
-    </Reference>
     <Reference Include="System.Core" />
     <Reference Include="System.Xml.Linq" />
     <Reference Include="System.Data.DataSetExtensions" />

+ 0 - 86
Service/Leo1SatTaskServer54/AddIns/DDC/DDCHelper.cs

@@ -1,86 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.IO;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Leo1SatTaskServer54
-{
-    static class DDCHelper
-    {
-        private static string exePath = "AddIns\\DDC";
-        private const string exeName = "DigitaDownConverter.exe";
-        /// <summary>
-        /// 设置【DigitaDownConverter.exe】文件所在路径,支持相对路径
-        /// </summary>
-        public static void SetExePath(string path)
-        {
-            if (string.IsNullOrWhiteSpace(path)) return;
-            if (path.StartsWith("\\"))//相对路径要么开头不带\,要么是 .\
-                path = path.Remove(0, 1);
-            exePath = path;
-        }
-        /// <summary>
-        /// 对多个频点信号的AD文件做DDC
-        /// </summary>
-        /// <param name="file">输入文件</param>
-        /// <param name="adTime">采集时刻</param>
-        /// <param name="chNo">通道号0-3</param>
-        /// <param name="fsHz">输入文件采样率Hz</param>
-        /// <param name="freqCenterHz">中心频率Hz</param>
-        /// <param name="outDir">输出目录</param>
-        /// <param name="sigs">DDC信号参数</param>
-        /// <param name="timeoutSeconds">超时时间(秒)</param>
-        /// <returns>成功后返回DDC输出的文件</returns>
-        public static List<string> DDC(string file, DateTime adTime, int chNo, long fsHz, long freqCenterHz,
-            string outDir, IEnumerable<DDCSig> sigs, int timeoutSeconds = 60)
-        {
-            if (string.IsNullOrWhiteSpace(exePath))
-                throw new Exception($"请先调用SetExePath指定{exeName}进程所在路径,支持相对路径");
-            if (!Directory.Exists(exePath))
-                throw new Exception($"路径[{exePath}]不存在");
-            var exeFile = Path.Combine(exePath, exeName);
-            if (!File.Exists(exeFile))
-                throw new Exception($"文件[{exeFile}]不存在");
-            Process p = new Process();
-            p.StartInfo.WorkingDirectory = exePath;
-            p.StartInfo.FileName = exeFile;
-            StringBuilder sb = new StringBuilder();
-            sb.Append($"\"{file}\" \"{outDir}\" {adTime:yyyyMMddHHmmss} {chNo} {fsHz} {freqCenterHz} {sigs.Count()}");
-            List<string> list = new List<string>();
-            foreach (var sig in sigs)
-            {
-                sb.Append(" ").Append(sig.FreqDownHz).Append(" ").Append(sig.Mult);
-                list.Add(Path.Combine(outDir, $"{adTime:yyyyMMddHHmmss}_{sig.FreqDownHz / 1e6:f3}_C{fsHz / sig.Mult}_CH{chNo}.dat"));
-            }
-            p.StartInfo.Arguments = sb.ToString();
-            p.StartInfo.CreateNoWindow = true;
-            p.StartInfo.RedirectStandardError = true;
-            p.StartInfo.RedirectStandardOutput = true;
-            p.StartInfo.UseShellExecute = false;
-            p.Start();
-            var succeed = p.WaitForExit(timeoutSeconds * 1000);
-            if (!succeed)
-            {
-                throw new Exception($"进程[{exeName}]超时未完成!");
-            }
-            return list.Where(x => File.Exists(x)).ToList();
-        }
-    }
-    class DDCSig
-    {
-        /// <summary>
-        /// 信号下行频点Hz
-        /// </summary>
-        public int FreqDownHz { get; set; }
-
-        /// <summary>
-        /// 抽取倍数
-        /// </summary>
-        public int Mult { get; set; }
-
-        public SlotsInfo Slots { get; set; }
-    }
-}

BIN
Service/Leo1SatTaskServer54/AddIns/DDC/DigitaDownConverter.exe


BIN
Service/Leo1SatTaskServer54/AddIns/DDC/ippcore-9.0.dll


BIN
Service/Leo1SatTaskServer54/AddIns/DDC/ipps-9.0.dll


BIN
Service/Leo1SatTaskServer54/AddIns/DDC/ippsy8-9.0.dll


+ 0 - 14
Service/Leo1SatTaskServer54/AddIns/DDC/readme.txt

@@ -1,14 +0,0 @@
-D:\ztming\data\20240409094240_ADC_ch00.dat D:\ztming\data 20240409094240 0 112000000 227000000 1 252050000 1024
-D:\ztming\data\20240409094240_ADC_ch01.dat D:\ztming\data 20240409094240 1 112000000 227000000 1 252050000 1024
-D:\ztming\data\20240409094240_ADC_ch02.dat D:\ztming\data 20240409094240 2 112000000 227000000 1 252050000 1024
-
-
-std::string fileName = std::string(argv[++idx]);//输入文件
-	std::string opa = std::string(argv[++idx]);//输出路径
-	std::string basetime = std::string(argv[++idx]);//输入文件开始时间
-	int flag = atoi(argv[++idx]);//	通道号
-	__int64 samplingRate = atoll(argv[++idx]);//输入文件采样率 Hz
-	__int64 freqencemid = atoll(argv[++idx]);//输入文件中心频率
-	int sigcount = atoi(argv[++idx]);//信号个数
-	int *multis = new int[sigcount];
-	int *ffcs = new int[sigcount];

BIN
Service/Leo1SatTaskServer54/AddIns/时隙获取/SlotChecker.dll


+ 0 - 26
Service/Leo1SatTaskServer54/AddIns/时隙获取/SlotChecker.h

@@ -1,26 +0,0 @@
-#pragma once
-
-#ifdef SLOTCHECKER
-#define SlotExport __declspec(dllexport)
-#else
-#define SlotExport __declspec(dllimport)
-#endif
-
-extern "C"
-{
-	// 释放内存
-	SlotExport void freeslots(float *slotst, float *slotle);
-
-	// 获取时间
-	// ifile 输入文件
-	// fbasetime y M d H m s
-	// frequenceM 文件对应频点
-	// fsampleM 原始文件采样率
-	// multi  抽取倍数
-	// slotscount 突发个数
-	// slotst 开始时间  s
-	// slotle 持续时间  ms
-	SlotExport int getslots(char *ifile, unsigned char fbasetime[6]
-		, float *frequenceM, float *fsampleM, int *multi
-		, int *slotscount, float **slotst, float **slotle);
-};

+ 0 - 115
Service/Leo1SatTaskServer54/AddIns/时隙获取/SlotHelper.cs

@@ -1,115 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Linq;
-using System.Runtime.InteropServices;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Leo1SatTaskServer54
-{
-    static class SlotHelper
-    {
-        #region cpp dll Interop 
-        private const string slotDll = @"AddIns\时隙获取\SlotChecker.dll";
-
-        [DllImport(slotDll, EntryPoint = "getslots", CallingConvention = CallingConvention.Cdecl)]
-        private extern static int GetFileSlots(string file, byte[] fileTime, ref float frequenceM, ref float fsampleM,
-            ref int multi, ref int slotscount, out IntPtr slotst, out IntPtr slotle);
-
-        [DllImport(slotDll, EntryPoint = "freeslots", CallingConvention = CallingConvention.Cdecl)]
-        private extern static void Free(IntPtr slotst, IntPtr slotle);
-        #endregion
-
-        public static SlotsInfo GetFileSlots(string file)
-        {
-            SlotsInfo res = new SlotsInfo();
-            string name = Path.GetFileName(file);
-            res.FreqDownMHz = Convert.ToDouble(name.Split(new string[] { "_", "MHz" }, StringSplitOptions.RemoveEmptyEntries)[1]);
-            byte[] timeData = new byte[6];
-            float frequenceM = 0, fsampleM = 0;
-            int multi = 0, slotscount = 0;
-            IntPtr slotst, slotle;
-            var ret = GetFileSlots(file, timeData, ref frequenceM, ref fsampleM, ref multi, ref slotscount, out slotst, out slotle);
-            if (ret == 0)
-            {
-                res.FrequenceM = (float)((long)((decimal)frequenceM * 1000000) / 1e6);
-                res.FsampleM = fsampleM;
-                res.Multi = multi;
-                res.AdTime = new DateTime(2000 + timeData[0], timeData[1], timeData[2], timeData[3], timeData[4], timeData[5]);
-                float[] startsF = new float[slotscount];
-                float[] lenF = new float[slotscount];
-                Marshal.Copy(slotst, startsF, 0, slotscount);
-                Marshal.Copy(slotle, lenF, 0, slotscount);
-                for (int i = 0; i < slotscount; i++)
-                {
-                    Slot s = new Slot()
-                    {
-                        StartPoint = (int)(fsampleM * 1e6 / multi * startsF[i]),
-                        TimeSeconds = startsF[i],
-                        Len = (int)(fsampleM * 1e6 / multi * lenF[i] * 1e-3)
-                    };
-                    res.Slots.Add(s);
-                }
-            }
-            Free(slotst, slotle);
-            return res;
-        }
-    }
-    /// <summary>
-    /// 突发信息
-    /// </summary>
-    class SlotsInfo
-    {
-        /// <summary>
-        /// 采集时刻
-        /// </summary>
-        public DateTime AdTime { get; set; }
-
-        /// <summary>
-        /// 信号下行频点MHz
-        /// </summary>
-        public double FreqDownMHz { get; set; }
-
-        /// <summary>
-        /// AD采样率
-        /// </summary>
-        public float FsampleM { get; set; }
-
-        /// <summary>
-        /// 信号下行频点
-        /// </summary>
-        public float FrequenceM { get; set; }
-
-        /// <summary>
-        /// 抽取倍数
-        /// </summary>
-        public float Multi { get; set; }
-
-        /// <summary>
-        /// 时隙位置集合
-        /// </summary>
-        public List<Slot> Slots { get; set; } = new List<Slot>();
-    }
-
-    /// <summary>
-    /// 时隙信息
-    /// </summary>
-    class Slot
-    {
-        /// <summary>
-        /// 起始样点
-        /// </summary>
-        public int StartPoint { get; set; }
-
-        /// <summary>
-        /// 结束样点
-        /// </summary>
-        public int Len { get; set; }
-
-        /// <summary>
-        /// 时间的秒数,避免误差
-        /// </summary>
-        public float TimeSeconds { get; set; }
-    }
-}

BIN
Service/Leo1SatTaskServer54/AddIns/误差椭圆/DLL_GDOP_Analysis0415.dll


+ 0 - 27
Service/Leo1SatTaskServer54/AddIns/误差椭圆/DLL_GDOP_Analysis0415.h

@@ -1,27 +0,0 @@
-#ifndef _DLL_LHDWFUNCTION_H
-#define _DLL_LHDWFUNCTION_H
-#include "math.h"
-
-extern "C"  double * GDOP_Matrix_3X_2DTO(double *main_eph,double *neigh_eph1,double *neigh_eph2,double *Ref_Station_LLH,double *Zone,double step_len,
-	double dto_err,double eph_pos_err, int * Matrix_Size);
-
-extern "C"  double * Error_Ellipse_3X_2DTO(double *main_eph,double *neigh_eph1,double *neigh_eph2,double *Ref_Station_LLH,double *Select_Point,
-	double dto_err,double eph_pos_err,double Pe, int *len);
-
-extern "C"  double * GDOP_Matrix_2X1D(double *main_eph,double *neigh_eph, double *CDB_Station_LLH,double *Ref_Station_LLH,double *Zone,double step_len,
-	                               double dto_err,double eph_err, int * Matrix_Size);
-extern "C"  double * Error_Ellipse_2X1D(double *station1,double *station2, double *station3,double *Ref_Station_LLH,double *Select_Point,
-	                                    double dto_err,double eph_err,double Pe, int *len);
-
-extern "C"  double * GDOP_Matrix_DTFO(double *main_eph,double *neigh_eph,double *Ref_Station_LLH,double *Zone,double step_len,double dto_err,double dfo_err,
-	double eph_pos_err,double eph_vel_err,double fu1,double fu2, int * Matrix_Size);
-extern "C"  double * Error_Ellipse_DTFO(double *main_eph,double *neigh_eph,double *Ref_Station_LLH,double *Select_Point,double dto_err,double dfo_err,
-	                   double eph_pos_err,double eph_vel_err,double fu1,double fu2,double Pe, int *len);
-
-extern "C"  double * GDOP_Matrix_2DFO(double *main_eph,double *neigh_eph1,double *neigh_eph2,double *Zone,double step_len, double dfo_err,
-	                     double eph_pos_err,double eph_vel_err,double fu, int * Matrix_Size);
-extern "C"  double * Error_Ellipse_2DFO(double *main_eph,double *neigh_eph1,double *neigh_eph2,double *Select_Point,double dfo_err,double eph_pos_err,double eph_vel_err,double fu,double Pe, int *len);
-
-extern "C" void freeBuff(void *buf);
-
-#endif 

+ 0 - 72
Service/Leo1SatTaskServer54/AddIns/误差椭圆/ErrEllipseHepler.cs

@@ -1,72 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Runtime.InteropServices;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Leo1SatTaskServer54
-{
-    public static class ErrEllipseHepler
-    {
-
-        private const string ErrellipDll = @"AddIns\误差椭圆\DLL_GDOP_Analysis0415";
-
-        /// <summary>
-        /// 两星一地误差椭圆
-        /// </summary>
-        /// <param name="main_eph">主星位置 长度6</param>
-        /// <param name="neigh_eph">邻星位置 长度6</param>
-        /// <param name="cdbAnt">超短波 长度3</param>
-        /// <param name="refStation">参考站 长度3</param>
-        /// <param name="Select_Point">定位点 长度3</param>
-        /// <param name="dto_err">时差误差(s)</param>
-        /// <param name="eph_err"></param>
-        /// <param name="Pe">0.5</param>
-        /// <param name="LOP_Len"></param>
-        /// <returns></returns>
-        [DllImport(ErrellipDll, EntryPoint = "Error_Ellipse_2X1D", CallingConvention = CallingConvention.Cdecl)]
-        public extern static IntPtr Error_Ellipse_2X1D(double[] main_eph, double[] neigh_eph, double[] cdbAnt, double[] refStation, double[] Select_Point, double dto_err,
-        double eph_err, double Pe, ref int LOP_Len);
-
-        /// <summary>
-        /// 获取误差椭圆的长轴(m)、短轴(m)、倾角(°)
-        /// </summary>
-        /// <param name="posLon"></param>
-        /// <param name="posLat"></param>
-        /// <param name="mainEph"></param>
-        /// <param name="adajEph"></param>
-        /// <param name="cdbPos"></param>
-        /// <param name="RefGeod"></param>
-        /// <param name="DtoErrus"></param>
-        /// <param name="EphErrm"></param>
-        /// <returns></returns>
-        public static double[] ErrorEllipse2X1D(double posLon, double posLat, double[] mainEph, double[] adajEph, double[] cdbPos, double[] RefGeod, double DtoErrus, double EphErrm)
-        {
-            IEnumerable<double> res = new List<double>();
-            int LOP_Len = 0;
-            /// <summary>
-            /// 概率 默认0.5
-            /// </summary>
-            double Pe = 0.5;
-            IntPtr LOP_ValuePtr =Error_Ellipse_2X1D(
-                   mainEph,
-                   adajEph,
-                   cdbPos,
-                   RefGeod,
-                    new double[3] { posLon, posLat, 0 },
-                    DtoErrus * 1e-6,
-                    EphErrm,//单位m
-                    Pe, ref LOP_Len);
-            double[] LOP_Value = new double[LOP_Len];
-            if (LOP_Len > 0)
-            {
-                Marshal.Copy(LOP_ValuePtr, LOP_Value, 0, LOP_Value.Length);
-
-                int lastcount = LOP_Len - 3;
-                res = LOP_Value.Skip(lastcount).Take(3);
-            }
-            return res.ToArray();
-        }
-    }
-}

+ 0 - 36
Service/Leo1SatTaskServer54/Leo1SatTaskServer54.csproj

@@ -118,8 +118,6 @@
     <Compile Include="..\..\XdCxRhDW.App\Localizer\ChsLocalizer.cs">
       <Link>DxHelper\ChsLocalizer.cs</Link>
     </Compile>
-    <Compile Include="AddIns\DDC\DDCHelper.cs" />
-    <Compile Include="AddIns\误差椭圆\ErrEllipseHepler.cs" />
     <Compile Include="Controllers\LeoSatTaskProcessingController.cs" />
     <Compile Include="HistoryFile.cs" />
     <Compile Include="LogHelper.cs" />
@@ -133,7 +131,6 @@
       <DependentUpon>MainForm.cs</DependentUpon>
     </Compile>
     <Compile Include="Service\TaskService.cs" />
-    <Compile Include="AddIns\时隙获取\SlotHelper.cs" />
     <None Include="packages.config" />
     <EmbeddedResource Include="Properties\Resources.resx">
       <Generator>ResXFileCodeGenerator</Generator>
@@ -175,39 +172,6 @@
       <Name>05.XdCxRhDW.WebApi</Name>
     </ProjectReference>
   </ItemGroup>
-  <ItemGroup>
-    <None Include="AddIns\时隙获取\SlotChecker.dll">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="AddIns\时隙获取\SlotChecker.h">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="AddIns\DDC\DigitaDownConverter.exe">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="AddIns\DDC\ippcore-9.0.dll">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="AddIns\DDC\ipps-9.0.dll">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="AddIns\DDC\ippsy8-9.0.dll">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="AddIns\DDC\readme.txt">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-  </ItemGroup>
-  <ItemGroup>
-    <Content Include="AddIns\误差椭圆\DLL_GDOP_Analysis0415.dll">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </Content>
-    <Content Include="AddIns\误差椭圆\DLL_GDOP_Analysis0415.h">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </Content>
-  </ItemGroup>
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
   <PropertyGroup>
     <PostBuildEvent>del DevExpress*.xml,EntityFramework*.xml,Serilog*.xml,Newtonsoft*.xml

+ 0 - 86
Service/Leo2SatTaskServer54/AddIns/DDC/DDCHelper.cs

@@ -1,86 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.IO;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Leo2SatTaskServer54
-{
-    static class DDCHelper
-    {
-        private static string exePath = "AddIns\\DDC";
-        private const string exeName = "DigitaDownConverter.exe";
-        /// <summary>
-        /// 设置【DigitaDownConverter.exe】文件所在路径,支持相对路径
-        /// </summary>
-        public static void SetExePath(string path)
-        {
-            if (string.IsNullOrWhiteSpace(path)) return;
-            if (path.StartsWith("\\"))//相对路径要么开头不带\,要么是 .\
-                path = path.Remove(0, 1);
-            exePath = path;
-        }
-        /// <summary>
-        /// 对多个频点信号的AD文件做DDC
-        /// </summary>
-        /// <param name="file">输入文件</param>
-        /// <param name="adTime">采集时刻</param>
-        /// <param name="chNo">通道号0-3</param>
-        /// <param name="fsHz">输入文件采样率Hz</param>
-        /// <param name="freqCenterHz">中心频率Hz</param>
-        /// <param name="outDir">输出目录</param>
-        /// <param name="sigs">DDC信号参数</param>
-        /// <param name="timeoutSeconds">超时时间(秒)</param>
-        /// <returns>成功后返回DDC输出的文件</returns>
-        public static List<string> DDC(string file, DateTime adTime, int chNo, long fsHz, long freqCenterHz,
-            string outDir, IEnumerable<DDCSig> sigs, int timeoutSeconds = 60)
-        {
-            if (string.IsNullOrWhiteSpace(exePath))
-                throw new Exception($"请先调用SetExePath指定{exeName}进程所在路径,支持相对路径");
-            if (!Directory.Exists(exePath))
-                throw new Exception($"路径[{exePath}]不存在");
-            var exeFile = Path.Combine(exePath, exeName);
-            if (!File.Exists(exeFile))
-                throw new Exception($"文件[{exeFile}]不存在");
-            Process p = new Process();
-            p.StartInfo.WorkingDirectory = exePath;
-            p.StartInfo.FileName = exeFile;
-            StringBuilder sb = new StringBuilder();
-            sb.Append($"\"{file}\" \"{outDir}\" {adTime:yyyyMMddHHmmss} {chNo} {fsHz} {freqCenterHz} {sigs.Count()}");
-            List<string> list = new List<string>();
-            foreach (var sig in sigs)
-            {
-                sb.Append(" ").Append(sig.FreqDownHz).Append(" ").Append(sig.Mult);
-                list.Add(Path.Combine(outDir, $"{adTime:yyyyMMddHHmmss}_{sig.FreqDownHz / 1e6:f3}_C{fsHz / sig.Mult}_CH{chNo}.dat"));
-            }
-            p.StartInfo.Arguments = sb.ToString();
-            p.StartInfo.CreateNoWindow = true;
-            p.StartInfo.RedirectStandardError = true;
-            p.StartInfo.RedirectStandardOutput = true;
-            p.StartInfo.UseShellExecute = false;
-            p.Start();
-            var succeed = p.WaitForExit(timeoutSeconds * 1000);
-            if (!succeed)
-            {
-                throw new Exception($"进程[{exeName}]超时未完成!");
-            }
-            return list.Where(x => File.Exists(x)).ToList();
-        }
-    }
-    class DDCSig
-    {
-        /// <summary>
-        /// 信号下行频点Hz
-        /// </summary>
-        public int FreqDownHz { get; set; }
-
-        /// <summary>
-        /// 抽取倍数
-        /// </summary>
-        public int Mult { get; set; }
-
-        public SlotsInfo Slots { get; set; }
-    }
-}

BIN
Service/Leo2SatTaskServer54/AddIns/DDC/DigitaDownConverter.exe


BIN
Service/Leo2SatTaskServer54/AddIns/DDC/ippcore-9.0.dll


BIN
Service/Leo2SatTaskServer54/AddIns/DDC/ipps-9.0.dll


BIN
Service/Leo2SatTaskServer54/AddIns/DDC/ippsy8-9.0.dll


+ 0 - 14
Service/Leo2SatTaskServer54/AddIns/DDC/readme.txt

@@ -1,14 +0,0 @@
-D:\ztming\data\20240409094240_ADC_ch00.dat D:\ztming\data 20240409094240 0 112000000 227000000 1 252050000 1024
-D:\ztming\data\20240409094240_ADC_ch01.dat D:\ztming\data 20240409094240 1 112000000 227000000 1 252050000 1024
-D:\ztming\data\20240409094240_ADC_ch02.dat D:\ztming\data 20240409094240 2 112000000 227000000 1 252050000 1024
-
-
-std::string fileName = std::string(argv[++idx]);//输入文件
-	std::string opa = std::string(argv[++idx]);//输出路径
-	std::string basetime = std::string(argv[++idx]);//输入文件开始时间
-	int flag = atoi(argv[++idx]);//	通道号
-	__int64 samplingRate = atoll(argv[++idx]);//输入文件采样率 Hz
-	__int64 freqencemid = atoll(argv[++idx]);//输入文件中心频率
-	int sigcount = atoi(argv[++idx]);//信号个数
-	int *multis = new int[sigcount];
-	int *ffcs = new int[sigcount];

BIN
Service/Leo2SatTaskServer54/AddIns/时隙获取/SlotChecker.dll


+ 0 - 26
Service/Leo2SatTaskServer54/AddIns/时隙获取/SlotChecker.h

@@ -1,26 +0,0 @@
-#pragma once
-
-#ifdef SLOTCHECKER
-#define SlotExport __declspec(dllexport)
-#else
-#define SlotExport __declspec(dllimport)
-#endif
-
-extern "C"
-{
-	// 释放内存
-	SlotExport void freeslots(float *slotst, float *slotle);
-
-	// 获取时间
-	// ifile 输入文件
-	// fbasetime y M d H m s
-	// frequenceM 文件对应频点
-	// fsampleM 原始文件采样率
-	// multi  抽取倍数
-	// slotscount 突发个数
-	// slotst 开始时间  s
-	// slotle 持续时间  ms
-	SlotExport int getslots(char *ifile, unsigned char fbasetime[6]
-		, float *frequenceM, float *fsampleM, int *multi
-		, int *slotscount, float **slotst, float **slotle);
-};

+ 0 - 115
Service/Leo2SatTaskServer54/AddIns/时隙获取/SlotHelper.cs

@@ -1,115 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Linq;
-using System.Runtime.InteropServices;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Leo2SatTaskServer54
-{
-    static class SlotHelper
-    {
-        #region cpp dll Interop 
-        private const string slotDll = @"AddIns\时隙获取\SlotChecker.dll";
-
-        [DllImport(slotDll, EntryPoint = "getslots", CallingConvention = CallingConvention.Cdecl)]
-        private extern static int GetFileSlots(string file, byte[] fileTime, ref float frequenceM, ref float fsampleM,
-            ref int multi, ref int slotscount, out IntPtr slotst, out IntPtr slotle);
-
-        [DllImport(slotDll, EntryPoint = "freeslots", CallingConvention = CallingConvention.Cdecl)]
-        private extern static void Free(IntPtr slotst, IntPtr slotle);
-        #endregion
-
-        public static SlotsInfo GetFileSlots(string file)
-        {
-            SlotsInfo res = new SlotsInfo();
-            string name = Path.GetFileName(file);
-            res.FreqDownMHz = Convert.ToDouble(name.Split(new string[] { "_", "MHz" }, StringSplitOptions.RemoveEmptyEntries)[1]);
-            byte[] timeData = new byte[6];
-            float frequenceM = 0, fsampleM = 0;
-            int multi = 0, slotscount = 0;
-            IntPtr slotst, slotle;
-            var ret = GetFileSlots(file, timeData, ref frequenceM, ref fsampleM, ref multi, ref slotscount, out slotst, out slotle);
-            if (ret == 0)
-            {
-                res.FrequenceM = (float)((long)((decimal)frequenceM * 1000000) / 1e6);
-                res.FsampleM = fsampleM;
-                res.Multi = multi;
-                res.AdTime = new DateTime(2000 + timeData[0], timeData[1], timeData[2], timeData[3], timeData[4], timeData[5]);
-                float[] startsF = new float[slotscount];
-                float[] lenF = new float[slotscount];
-                Marshal.Copy(slotst, startsF, 0, slotscount);
-                Marshal.Copy(slotle, lenF, 0, slotscount);
-                for (int i = 0; i < slotscount; i++)
-                {
-                    Slot s = new Slot()
-                    {
-                        StartPoint = (int)(fsampleM * 1e6 / multi * startsF[i]),
-                        TimeSeconds = startsF[i],
-                        Len = (int)(fsampleM * 1e6 / multi * lenF[i] * 1e-3)
-                    };
-                    res.Slots.Add(s);
-                }
-            }
-            Free(slotst, slotle);
-            return res;
-        }
-    }
-    /// <summary>
-    /// 突发信息
-    /// </summary>
-    class SlotsInfo
-    {
-        /// <summary>
-        /// 采集时刻
-        /// </summary>
-        public DateTime AdTime { get; set; }
-
-        /// <summary>
-        /// 信号下行频点MHz
-        /// </summary>
-        public double FreqDownMHz { get; set; }
-
-        /// <summary>
-        /// AD采样率
-        /// </summary>
-        public float FsampleM { get; set; }
-
-        /// <summary>
-        /// 信号下行频点
-        /// </summary>
-        public float FrequenceM { get; set; }
-
-        /// <summary>
-        /// 抽取倍数
-        /// </summary>
-        public float Multi { get; set; }
-
-        /// <summary>
-        /// 时隙位置集合
-        /// </summary>
-        public List<Slot> Slots { get; set; } = new List<Slot>();
-    }
-
-    /// <summary>
-    /// 时隙信息
-    /// </summary>
-    class Slot
-    {
-        /// <summary>
-        /// 起始样点
-        /// </summary>
-        public int StartPoint { get; set; }
-
-        /// <summary>
-        /// 结束样点
-        /// </summary>
-        public int Len { get; set; }
-
-        /// <summary>
-        /// 时间的秒数,避免误差
-        /// </summary>
-        public float TimeSeconds { get; set; }
-    }
-}

BIN
Service/Leo2SatTaskServer54/AddIns/误差椭圆/DLL_GDOP_Analysis0415.dll


+ 0 - 27
Service/Leo2SatTaskServer54/AddIns/误差椭圆/DLL_GDOP_Analysis0415.h

@@ -1,27 +0,0 @@
-#ifndef _DLL_LHDWFUNCTION_H
-#define _DLL_LHDWFUNCTION_H
-#include "math.h"
-
-extern "C"  double * GDOP_Matrix_3X_2DTO(double *main_eph,double *neigh_eph1,double *neigh_eph2,double *Ref_Station_LLH,double *Zone,double step_len,
-	double dto_err,double eph_pos_err, int * Matrix_Size);
-
-extern "C"  double * Error_Ellipse_3X_2DTO(double *main_eph,double *neigh_eph1,double *neigh_eph2,double *Ref_Station_LLH,double *Select_Point,
-	double dto_err,double eph_pos_err,double Pe, int *len);
-
-extern "C"  double * GDOP_Matrix_2X1D(double *main_eph,double *neigh_eph, double *CDB_Station_LLH,double *Ref_Station_LLH,double *Zone,double step_len,
-	                               double dto_err,double eph_err, int * Matrix_Size);
-extern "C"  double * Error_Ellipse_2X1D(double *station1,double *station2, double *station3,double *Ref_Station_LLH,double *Select_Point,
-	                                    double dto_err,double eph_err,double Pe, int *len);
-
-extern "C"  double * GDOP_Matrix_DTFO(double *main_eph,double *neigh_eph,double *Ref_Station_LLH,double *Zone,double step_len,double dto_err,double dfo_err,
-	double eph_pos_err,double eph_vel_err,double fu1,double fu2, int * Matrix_Size);
-extern "C"  double * Error_Ellipse_DTFO(double *main_eph,double *neigh_eph,double *Ref_Station_LLH,double *Select_Point,double dto_err,double dfo_err,
-	                   double eph_pos_err,double eph_vel_err,double fu1,double fu2,double Pe, int *len);
-
-extern "C"  double * GDOP_Matrix_2DFO(double *main_eph,double *neigh_eph1,double *neigh_eph2,double *Zone,double step_len, double dfo_err,
-	                     double eph_pos_err,double eph_vel_err,double fu, int * Matrix_Size);
-extern "C"  double * Error_Ellipse_2DFO(double *main_eph,double *neigh_eph1,double *neigh_eph2,double *Select_Point,double dfo_err,double eph_pos_err,double eph_vel_err,double fu,double Pe, int *len);
-
-extern "C" void freeBuff(void *buf);
-
-#endif 

+ 0 - 72
Service/Leo2SatTaskServer54/AddIns/误差椭圆/ErrEllipseHepler.cs

@@ -1,72 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Runtime.InteropServices;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Leo2SatTaskServer54
-{
-    public static class ErrEllipseHepler
-    {
-
-        private const string ErrellipDll = @"AddIns\误差椭圆\DLL_GDOP_Analysis0415";
-
-        /// <summary>
-        /// 两星一地误差椭圆
-        /// </summary>
-        /// <param name="main_eph">主星位置 长度6</param>
-        /// <param name="neigh_eph">邻星位置 长度6</param>
-        /// <param name="cdbAnt">超短波 长度3</param>
-        /// <param name="refStation">参考站 长度3</param>
-        /// <param name="Select_Point">定位点 长度3</param>
-        /// <param name="dto_err">时差误差(s)</param>
-        /// <param name="eph_err"></param>
-        /// <param name="Pe">0.5</param>
-        /// <param name="LOP_Len"></param>
-        /// <returns></returns>
-        [DllImport(ErrellipDll, EntryPoint = "Error_Ellipse_2X1D", CallingConvention = CallingConvention.Cdecl)]
-        public extern static IntPtr Error_Ellipse_2X1D(double[] main_eph, double[] neigh_eph, double[] cdbAnt, double[] refStation, double[] Select_Point, double dto_err,
-        double eph_err, double Pe, ref int LOP_Len);
-
-        /// <summary>
-        /// 获取误差椭圆的长轴(m)、短轴(m)、倾角(°)
-        /// </summary>
-        /// <param name="posLon"></param>
-        /// <param name="posLat"></param>
-        /// <param name="mainEph"></param>
-        /// <param name="adajEph"></param>
-        /// <param name="cdbPos"></param>
-        /// <param name="RefGeod"></param>
-        /// <param name="DtoErrus"></param>
-        /// <param name="EphErrm"></param>
-        /// <returns></returns>
-        public static double[] ErrorEllipse2X1D(double posLon, double posLat, double[] mainEph, double[] adajEph, double[] cdbPos, double[] RefGeod, double DtoErrus, double EphErrm)
-        {
-            IEnumerable<double> res = new List<double>();
-            int LOP_Len = 0;
-            /// <summary>
-            /// 概率 默认0.5
-            /// </summary>
-            double Pe = 0.5;
-            IntPtr LOP_ValuePtr =Error_Ellipse_2X1D(
-                   mainEph,
-                   adajEph,
-                   cdbPos,
-                   RefGeod,
-                    new double[3] { posLon, posLat, 0 },
-                    DtoErrus * 1e-6,
-                    EphErrm,//单位m
-                    Pe, ref LOP_Len);
-            double[] LOP_Value = new double[LOP_Len];
-            if (LOP_Len > 0)
-            {
-                Marshal.Copy(LOP_ValuePtr, LOP_Value, 0, LOP_Value.Length);
-
-                int lastcount = LOP_Len - 3;
-                res = LOP_Value.Skip(lastcount).Take(3);
-            }
-            return res.ToArray();
-        }
-    }
-}

+ 0 - 36
Service/Leo2SatTaskServer54/Leo2SatTaskServer54.csproj

@@ -118,8 +118,6 @@
     <Compile Include="..\..\XdCxRhDW.App\Localizer\ChsLocalizer.cs">
       <Link>DxHelper\ChsLocalizer.cs</Link>
     </Compile>
-    <Compile Include="AddIns\DDC\DDCHelper.cs" />
-    <Compile Include="AddIns\误差椭圆\ErrEllipseHepler.cs" />
     <Compile Include="Controllers\LeoSatTaskProcessingController.cs" />
     <Compile Include="HistoryFile.cs" />
     <Compile Include="LogHelper.cs" />
@@ -133,7 +131,6 @@
       <DependentUpon>MainForm.cs</DependentUpon>
     </Compile>
     <Compile Include="Service\TaskService.cs" />
-    <Compile Include="AddIns\时隙获取\SlotHelper.cs" />
     <None Include="packages.config" />
     <EmbeddedResource Include="Properties\Resources.resx">
       <Generator>ResXFileCodeGenerator</Generator>
@@ -175,39 +172,6 @@
       <Name>05.XdCxRhDW.WebApi</Name>
     </ProjectReference>
   </ItemGroup>
-  <ItemGroup>
-    <None Include="AddIns\时隙获取\SlotChecker.dll">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="AddIns\时隙获取\SlotChecker.h">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="AddIns\DDC\DigitaDownConverter.exe">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="AddIns\DDC\ippcore-9.0.dll">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="AddIns\DDC\ipps-9.0.dll">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="AddIns\DDC\ippsy8-9.0.dll">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="AddIns\DDC\readme.txt">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-  </ItemGroup>
-  <ItemGroup>
-    <Content Include="AddIns\误差椭圆\DLL_GDOP_Analysis0415.dll">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </Content>
-    <Content Include="AddIns\误差椭圆\DLL_GDOP_Analysis0415.h">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </Content>
-  </ItemGroup>
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
   <PropertyGroup>
     <PostBuildEvent>del DevExpress*.xml,EntityFramework*.xml,Serilog*.xml,Newtonsoft*.xml

+ 0 - 86
Service/Leo3SatTaskServer54/AddIns/DDC/DDCHelper.cs

@@ -1,86 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.IO;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Leo1SatTaskServer54
-{
-    static class DDCHelper
-    {
-        private static string exePath = "AddIns\\DDC";
-        private const string exeName = "DigitaDownConverter.exe";
-        /// <summary>
-        /// 设置【DigitaDownConverter.exe】文件所在路径,支持相对路径
-        /// </summary>
-        public static void SetExePath(string path)
-        {
-            if (string.IsNullOrWhiteSpace(path)) return;
-            if (path.StartsWith("\\"))//相对路径要么开头不带\,要么是 .\
-                path = path.Remove(0, 1);
-            exePath = path;
-        }
-        /// <summary>
-        /// 对多个频点信号的AD文件做DDC
-        /// </summary>
-        /// <param name="file">输入文件</param>
-        /// <param name="adTime">采集时刻</param>
-        /// <param name="chNo">通道号0-3</param>
-        /// <param name="fsHz">输入文件采样率Hz</param>
-        /// <param name="freqCenterHz">中心频率Hz</param>
-        /// <param name="outDir">输出目录</param>
-        /// <param name="sigs">DDC信号参数</param>
-        /// <param name="timeoutSeconds">超时时间(秒)</param>
-        /// <returns>成功后返回DDC输出的文件</returns>
-        public static List<string> DDC(string file, DateTime adTime, int chNo, long fsHz, long freqCenterHz,
-            string outDir, IEnumerable<DDCSig> sigs, int timeoutSeconds = 60)
-        {
-            if (string.IsNullOrWhiteSpace(exePath))
-                throw new Exception($"请先调用SetExePath指定{exeName}进程所在路径,支持相对路径");
-            if (!Directory.Exists(exePath))
-                throw new Exception($"路径[{exePath}]不存在");
-            var exeFile = Path.Combine(exePath, exeName);
-            if (!File.Exists(exeFile))
-                throw new Exception($"文件[{exeFile}]不存在");
-            Process p = new Process();
-            p.StartInfo.WorkingDirectory = exePath;
-            p.StartInfo.FileName = exeFile;
-            StringBuilder sb = new StringBuilder();
-            sb.Append($"\"{file}\" \"{outDir}\" {adTime:yyyyMMddHHmmss} {chNo} {fsHz} {freqCenterHz} {sigs.Count()}");
-            List<string> list = new List<string>();
-            foreach (var sig in sigs)
-            {
-                sb.Append(" ").Append(sig.FreqDownHz).Append(" ").Append(sig.Mult);
-                list.Add(Path.Combine(outDir, $"{adTime:yyyyMMddHHmmss}_{sig.FreqDownHz / 1e6:f3}_C{fsHz / sig.Mult}_CH{chNo}.dat"));
-            }
-            p.StartInfo.Arguments = sb.ToString();
-            p.StartInfo.CreateNoWindow = true;
-            p.StartInfo.RedirectStandardError = true;
-            p.StartInfo.RedirectStandardOutput = true;
-            p.StartInfo.UseShellExecute = false;
-            p.Start();
-            var succeed = p.WaitForExit(timeoutSeconds * 1000);
-            if (!succeed)
-            {
-                throw new Exception($"进程[{exeName}]超时未完成!");
-            }
-            return list.Where(x => File.Exists(x)).ToList();
-        }
-    }
-    class DDCSig
-    {
-        /// <summary>
-        /// 信号下行频点Hz
-        /// </summary>
-        public int FreqDownHz { get; set; }
-
-        /// <summary>
-        /// 抽取倍数
-        /// </summary>
-        public int Mult { get; set; }
-
-        public SlotsInfo Slots { get; set; }
-    }
-}

BIN
Service/Leo3SatTaskServer54/AddIns/DDC/DigitaDownConverter.exe


BIN
Service/Leo3SatTaskServer54/AddIns/DDC/ippcore-9.0.dll


BIN
Service/Leo3SatTaskServer54/AddIns/DDC/ipps-9.0.dll


BIN
Service/Leo3SatTaskServer54/AddIns/DDC/ippsy8-9.0.dll


+ 0 - 14
Service/Leo3SatTaskServer54/AddIns/DDC/readme.txt

@@ -1,14 +0,0 @@
-D:\ztming\data\20240409094240_ADC_ch00.dat D:\ztming\data 20240409094240 0 112000000 227000000 1 252050000 1024
-D:\ztming\data\20240409094240_ADC_ch01.dat D:\ztming\data 20240409094240 1 112000000 227000000 1 252050000 1024
-D:\ztming\data\20240409094240_ADC_ch02.dat D:\ztming\data 20240409094240 2 112000000 227000000 1 252050000 1024
-
-
-std::string fileName = std::string(argv[++idx]);//输入文件
-	std::string opa = std::string(argv[++idx]);//输出路径
-	std::string basetime = std::string(argv[++idx]);//输入文件开始时间
-	int flag = atoi(argv[++idx]);//	通道号
-	__int64 samplingRate = atoll(argv[++idx]);//输入文件采样率 Hz
-	__int64 freqencemid = atoll(argv[++idx]);//输入文件中心频率
-	int sigcount = atoi(argv[++idx]);//信号个数
-	int *multis = new int[sigcount];
-	int *ffcs = new int[sigcount];

BIN
Service/Leo3SatTaskServer54/AddIns/时隙获取/SlotChecker.dll


+ 0 - 26
Service/Leo3SatTaskServer54/AddIns/时隙获取/SlotChecker.h

@@ -1,26 +0,0 @@
-#pragma once
-
-#ifdef SLOTCHECKER
-#define SlotExport __declspec(dllexport)
-#else
-#define SlotExport __declspec(dllimport)
-#endif
-
-extern "C"
-{
-	// 释放内存
-	SlotExport void freeslots(float *slotst, float *slotle);
-
-	// 获取时间
-	// ifile 输入文件
-	// fbasetime y M d H m s
-	// frequenceM 文件对应频点
-	// fsampleM 原始文件采样率
-	// multi  抽取倍数
-	// slotscount 突发个数
-	// slotst 开始时间  s
-	// slotle 持续时间  ms
-	SlotExport int getslots(char *ifile, unsigned char fbasetime[6]
-		, float *frequenceM, float *fsampleM, int *multi
-		, int *slotscount, float **slotst, float **slotle);
-};

+ 0 - 115
Service/Leo3SatTaskServer54/AddIns/时隙获取/SlotHelper.cs

@@ -1,115 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Linq;
-using System.Runtime.InteropServices;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Leo1SatTaskServer54
-{
-    static class SlotHelper
-    {
-        #region cpp dll Interop 
-        private const string slotDll = @"AddIns\时隙获取\SlotChecker.dll";
-
-        [DllImport(slotDll, EntryPoint = "getslots", CallingConvention = CallingConvention.Cdecl)]
-        private extern static int GetFileSlots(string file, byte[] fileTime, ref float frequenceM, ref float fsampleM,
-            ref int multi, ref int slotscount, out IntPtr slotst, out IntPtr slotle);
-
-        [DllImport(slotDll, EntryPoint = "freeslots", CallingConvention = CallingConvention.Cdecl)]
-        private extern static void Free(IntPtr slotst, IntPtr slotle);
-        #endregion
-
-        public static SlotsInfo GetFileSlots(string file)
-        {
-            SlotsInfo res = new SlotsInfo();
-            string name = Path.GetFileName(file);
-            res.FreqDownMHz = Convert.ToDouble(name.Split(new string[] { "_", "MHz" }, StringSplitOptions.RemoveEmptyEntries)[1]);
-            byte[] timeData = new byte[6];
-            float frequenceM = 0, fsampleM = 0;
-            int multi = 0, slotscount = 0;
-            IntPtr slotst, slotle;
-            var ret = GetFileSlots(file, timeData, ref frequenceM, ref fsampleM, ref multi, ref slotscount, out slotst, out slotle);
-            if (ret == 0)
-            {
-                res.FrequenceM = (float)((long)((decimal)frequenceM * 1000000) / 1e6);
-                res.FsampleM = fsampleM;
-                res.Multi = multi;
-                res.AdTime = new DateTime(2000 + timeData[0], timeData[1], timeData[2], timeData[3], timeData[4], timeData[5]);
-                float[] startsF = new float[slotscount];
-                float[] lenF = new float[slotscount];
-                Marshal.Copy(slotst, startsF, 0, slotscount);
-                Marshal.Copy(slotle, lenF, 0, slotscount);
-                for (int i = 0; i < slotscount; i++)
-                {
-                    Slot s = new Slot()
-                    {
-                        StartPoint = (int)(fsampleM * 1e6 / multi * startsF[i]),
-                        TimeSeconds = startsF[i],
-                        Len = (int)(fsampleM * 1e6 / multi * lenF[i] * 1e-3)
-                    };
-                    res.Slots.Add(s);
-                }
-            }
-            Free(slotst, slotle);
-            return res;
-        }
-    }
-    /// <summary>
-    /// 突发信息
-    /// </summary>
-    class SlotsInfo
-    {
-        /// <summary>
-        /// 采集时刻
-        /// </summary>
-        public DateTime AdTime { get; set; }
-
-        /// <summary>
-        /// 信号下行频点MHz
-        /// </summary>
-        public double FreqDownMHz { get; set; }
-
-        /// <summary>
-        /// AD采样率
-        /// </summary>
-        public float FsampleM { get; set; }
-
-        /// <summary>
-        /// 信号下行频点
-        /// </summary>
-        public float FrequenceM { get; set; }
-
-        /// <summary>
-        /// 抽取倍数
-        /// </summary>
-        public float Multi { get; set; }
-
-        /// <summary>
-        /// 时隙位置集合
-        /// </summary>
-        public List<Slot> Slots { get; set; } = new List<Slot>();
-    }
-
-    /// <summary>
-    /// 时隙信息
-    /// </summary>
-    class Slot
-    {
-        /// <summary>
-        /// 起始样点
-        /// </summary>
-        public int StartPoint { get; set; }
-
-        /// <summary>
-        /// 结束样点
-        /// </summary>
-        public int Len { get; set; }
-
-        /// <summary>
-        /// 时间的秒数,避免误差
-        /// </summary>
-        public float TimeSeconds { get; set; }
-    }
-}

BIN
Service/Leo3SatTaskServer54/AddIns/误差椭圆/DLL_GDOP_Analysis0415.dll


+ 0 - 27
Service/Leo3SatTaskServer54/AddIns/误差椭圆/DLL_GDOP_Analysis0415.h

@@ -1,27 +0,0 @@
-#ifndef _DLL_LHDWFUNCTION_H
-#define _DLL_LHDWFUNCTION_H
-#include "math.h"
-
-extern "C"  double * GDOP_Matrix_3X_2DTO(double *main_eph,double *neigh_eph1,double *neigh_eph2,double *Ref_Station_LLH,double *Zone,double step_len,
-	double dto_err,double eph_pos_err, int * Matrix_Size);
-
-extern "C"  double * Error_Ellipse_3X_2DTO(double *main_eph,double *neigh_eph1,double *neigh_eph2,double *Ref_Station_LLH,double *Select_Point,
-	double dto_err,double eph_pos_err,double Pe, int *len);
-
-extern "C"  double * GDOP_Matrix_2X1D(double *main_eph,double *neigh_eph, double *CDB_Station_LLH,double *Ref_Station_LLH,double *Zone,double step_len,
-	                               double dto_err,double eph_err, int * Matrix_Size);
-extern "C"  double * Error_Ellipse_2X1D(double *station1,double *station2, double *station3,double *Ref_Station_LLH,double *Select_Point,
-	                                    double dto_err,double eph_err,double Pe, int *len);
-
-extern "C"  double * GDOP_Matrix_DTFO(double *main_eph,double *neigh_eph,double *Ref_Station_LLH,double *Zone,double step_len,double dto_err,double dfo_err,
-	double eph_pos_err,double eph_vel_err,double fu1,double fu2, int * Matrix_Size);
-extern "C"  double * Error_Ellipse_DTFO(double *main_eph,double *neigh_eph,double *Ref_Station_LLH,double *Select_Point,double dto_err,double dfo_err,
-	                   double eph_pos_err,double eph_vel_err,double fu1,double fu2,double Pe, int *len);
-
-extern "C"  double * GDOP_Matrix_2DFO(double *main_eph,double *neigh_eph1,double *neigh_eph2,double *Zone,double step_len, double dfo_err,
-	                     double eph_pos_err,double eph_vel_err,double fu, int * Matrix_Size);
-extern "C"  double * Error_Ellipse_2DFO(double *main_eph,double *neigh_eph1,double *neigh_eph2,double *Select_Point,double dfo_err,double eph_pos_err,double eph_vel_err,double fu,double Pe, int *len);
-
-extern "C" void freeBuff(void *buf);
-
-#endif 

+ 0 - 72
Service/Leo3SatTaskServer54/AddIns/误差椭圆/ErrEllipseHepler.cs

@@ -1,72 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Runtime.InteropServices;
-using System.Text;
-using System.Threading.Tasks;
-
-namespace Leo1SatTaskServer54
-{
-    public static class ErrEllipseHepler
-    {
-
-        private const string ErrellipDll = @"AddIns\误差椭圆\DLL_GDOP_Analysis0415";
-
-        /// <summary>
-        /// 两星一地误差椭圆
-        /// </summary>
-        /// <param name="main_eph">主星位置 长度6</param>
-        /// <param name="neigh_eph">邻星位置 长度6</param>
-        /// <param name="cdbAnt">超短波 长度3</param>
-        /// <param name="refStation">参考站 长度3</param>
-        /// <param name="Select_Point">定位点 长度3</param>
-        /// <param name="dto_err">时差误差(s)</param>
-        /// <param name="eph_err"></param>
-        /// <param name="Pe">0.5</param>
-        /// <param name="LOP_Len"></param>
-        /// <returns></returns>
-        [DllImport(ErrellipDll, EntryPoint = "Error_Ellipse_2X1D", CallingConvention = CallingConvention.Cdecl)]
-        public extern static IntPtr Error_Ellipse_2X1D(double[] main_eph, double[] neigh_eph, double[] cdbAnt, double[] refStation, double[] Select_Point, double dto_err,
-        double eph_err, double Pe, ref int LOP_Len);
-
-        /// <summary>
-        /// 获取误差椭圆的长轴(m)、短轴(m)、倾角(°)
-        /// </summary>
-        /// <param name="posLon"></param>
-        /// <param name="posLat"></param>
-        /// <param name="mainEph"></param>
-        /// <param name="adajEph"></param>
-        /// <param name="cdbPos"></param>
-        /// <param name="RefGeod"></param>
-        /// <param name="DtoErrus"></param>
-        /// <param name="EphErrm"></param>
-        /// <returns></returns>
-        public static double[] ErrorEllipse2X1D(double posLon, double posLat, double[] mainEph, double[] adajEph, double[] cdbPos, double[] RefGeod, double DtoErrus, double EphErrm)
-        {
-            IEnumerable<double> res = new List<double>();
-            int LOP_Len = 0;
-            /// <summary>
-            /// 概率 默认0.5
-            /// </summary>
-            double Pe = 0.5;
-            IntPtr LOP_ValuePtr =Error_Ellipse_2X1D(
-                   mainEph,
-                   adajEph,
-                   cdbPos,
-                   RefGeod,
-                    new double[3] { posLon, posLat, 0 },
-                    DtoErrus * 1e-6,
-                    EphErrm,//单位m
-                    Pe, ref LOP_Len);
-            double[] LOP_Value = new double[LOP_Len];
-            if (LOP_Len > 0)
-            {
-                Marshal.Copy(LOP_ValuePtr, LOP_Value, 0, LOP_Value.Length);
-
-                int lastcount = LOP_Len - 3;
-                res = LOP_Value.Skip(lastcount).Take(3);
-            }
-            return res.ToArray();
-        }
-    }
-}

+ 0 - 36
Service/Leo3SatTaskServer54/Leo3SatTaskServer54.csproj

@@ -118,8 +118,6 @@
     <Compile Include="..\..\XdCxRhDW.App\Localizer\ChsLocalizer.cs">
       <Link>DxHelper\ChsLocalizer.cs</Link>
     </Compile>
-    <Compile Include="AddIns\DDC\DDCHelper.cs" />
-    <Compile Include="AddIns\误差椭圆\ErrEllipseHepler.cs" />
     <Compile Include="Controllers\LeoSatTaskProcessingController.cs" />
     <Compile Include="HistoryFile.cs" />
     <Compile Include="LogHelper.cs" />
@@ -133,7 +131,6 @@
       <DependentUpon>MainForm.cs</DependentUpon>
     </Compile>
     <Compile Include="Service\TaskService.cs" />
-    <Compile Include="AddIns\时隙获取\SlotHelper.cs" />
     <None Include="packages.config" />
     <EmbeddedResource Include="Properties\Resources.resx">
       <Generator>ResXFileCodeGenerator</Generator>
@@ -175,39 +172,6 @@
       <Name>05.XdCxRhDW.WebApi</Name>
     </ProjectReference>
   </ItemGroup>
-  <ItemGroup>
-    <None Include="AddIns\时隙获取\SlotChecker.dll">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="AddIns\时隙获取\SlotChecker.h">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="AddIns\DDC\DigitaDownConverter.exe">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="AddIns\DDC\ippcore-9.0.dll">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="AddIns\DDC\ipps-9.0.dll">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="AddIns\DDC\ippsy8-9.0.dll">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="AddIns\DDC\readme.txt">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-  </ItemGroup>
-  <ItemGroup>
-    <Content Include="AddIns\误差椭圆\DLL_GDOP_Analysis0415.dll">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </Content>
-    <Content Include="AddIns\误差椭圆\DLL_GDOP_Analysis0415.h">
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </Content>
-  </ItemGroup>
   <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
   <PropertyGroup>
     <PostBuildEvent>del DevExpress*.xml,EntityFramework*.xml,Serilog*.xml,Newtonsoft*.xml