PSignalCheck.h 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. #pragma once
  2. #ifdef _WIN32
  3. # if defined(PSignalCheck_LIB)
  4. # define PSignalCheck_EXPORT __declspec(dllexport)
  5. # else
  6. # define PSignalCheck_EXPORT __declspec(dllimport)
  7. # endif
  8. #else
  9. # define PSignalCheck_EXPORT
  10. #endif
  11. #define BPSK 1
  12. #define QPSK 2
  13. #define bp96_ccow 0
  14. #define bp96_01 1
  15. #define bp96_02 2
  16. #define bp96_03 3
  17. #define bp96_04 4
  18. #define bp192_01 5
  19. #define bp192_02 6
  20. #define bp192_03 7
  21. #define qp16_01 8
  22. #define qp16_02 9
  23. #define qp16_03 10
  24. #define qp16_04 11
  25. #define qp16_05 12
  26. #define qp16_06 13
  27. #define qp16_07 14
  28. #define qp16_08 15
  29. #define qp16_09 16
  30. struct slot
  31. {
  32. slot() {}
  33. slot(int s, int l, double p, int m, int sm)
  34. {
  35. start = s;
  36. len = l;
  37. ps = p;
  38. mode = m;
  39. sigflag = sm;
  40. }
  41. int sigflag;
  42. int start;
  43. int len;
  44. int mode;
  45. double ps;
  46. bool operator < (const slot& item1) const
  47. {
  48. return start < item1.start;
  49. }
  50. };
  51. extern "C"
  52. {
  53. ///
  54. /// 初始化
  55. ///
  56. PSignalCheck_EXPORT void PSignalInit();
  57. ///
  58. /// fileName : 输入文件
  59. /// fsample : 采样率
  60. /// snr : 门限
  61. /// signalslots : 输出
  62. /// return -1:数据读取失败
  63. /// 其他 返回个数
  64. ///
  65. PSignalCheck_EXPORT int PSignalCheck(const char *fileName, __int64 fsample, double snr, slot **signalslots);
  66. ///
  67. /// 清空开辟的空间
  68. ///
  69. PSignalCheck_EXPORT void pSignalFree(slot *signalslots);
  70. };