DfoCalcAPI.cs 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. using System;
  2. using System.Collections.Generic;
  3. using System.Linq;
  4. using System.Runtime.InteropServices;
  5. using System.Text;
  6. using System.Threading.Tasks;
  7. using XdCxRhDW.Entity;
  8. namespace XdCxRhDW.Api.AddIns
  9. {
  10. /// <summary>
  11. /// 频差值推算接口
  12. /// </summary>
  13. public static class DfoCalcAPI
  14. {
  15. //频差推算算法(用于频差预测调用)
  16. private const string dfoDll = @"AddIns\频差推算\DLL_DTF.dll";
  17. /// <summary>
  18. /// 频差预测
  19. /// </summary>
  20. /// <param name="target_llh">目标位置(3)</param>
  21. /// <param name="main_sat">星历位置(6)</param>
  22. /// <param name="fu">上行频点(Hz)</param>
  23. /// <returns></returns>
  24. [DllImport(dfoDll, EntryPoint = "CFO_Comput", CallingConvention = CallingConvention.Cdecl)]//频差预测
  25. private extern static double CFO_Comput(double[] target_llh, double[] main_sat, double fu);
  26. /// <summary>
  27. /// 频差预测
  28. /// </summary>
  29. /// <param name="targetPos"></param>
  30. /// <param name="satEph"></param>
  31. /// <param name="fuHz"></param>
  32. /// <returns></returns>
  33. public static double DfoCalc(double[] targetPos, double[] satEph, double fuHz)
  34. {
  35. return CFO_Comput(targetPos, satEph, fuHz);
  36. }
  37. }
  38. }