RTKLIB 中的 rtknavi 中的选项的传递过程

最近看了一下RTKLIB的源码,追了一下其中的 rtknavi 中的选项是如何传递进去生效的。过程如下,以处理过程选项(PrcOpt:Process Options)为例。

  1. 点击打开Options窗口时调用 TMainForm::BtnOptClick,从 TMainForm 的成员 PrcOpt 和 SolOpt 中 读取选项值到 TOptDialog 的成员 PrcOpt 和 SolOpt 中:
  OptDialog->PrcOpt     =PrcOpt;OptDialog->SolOpt     =SolOpt;

然后显示 Options 对话框。

if (OptDialog->ShowModal()!=mrOk) return;
  1. Options窗口中设置选项点击确认后调用 TOptDialog::BtnOkClick,TOptDialog::BtnOkClick 调用 TOptDialog::SetOpt,TOptDialog::SetOpt 会把选项存到 TOptDialog 的成员 PrcOpt 和 SolOpt 中。

  2. Options窗口返回 TMainForm::BtnOptClick 后,若是确认返回的执行

  PrcOpt     =OptDialog->PrcOpt;SolOpt     =OptDialog->SolOpt;

把选项值存回到 TMainForm 的成员 PrcOpt 和 SolOpt 中。若是取消返回的则不执行此动作,直接返回。

  1. TMainForm::SvrStart 调用 rtksvrstart 时把 PrcOpt 传进去:
// start rtk server
if (!rtksvrstart(&rtksvr,SvrCycle,SvrBuffSize,strs,paths,Format,NavSelect,cmds,rcvopts,NmeaCycle,NmeaReq,nmeapos,&PrcOpt,solopt,&monistr)) {traceclose();return;
}
  1. rtksvrstart 调用 rtkinit(&svr->rtk,prcopt) 时把 prcopt 存到 svr->rtk->opt 中:
rtkinit(&svr->rtk,prcopt);
  1. rtksvrstart 调用 pthread_create 创建线程时把 svr 作为参数传进去:
if (pthread_create(&svr->thread,NULL,rtksvrthread,svr))
  1. rtksvrthread 调用 rtkpos 把 svr->rtk 传进去:
rtkpos(&svr->rtk,obs.data,obs.n,&svr->nav)
  1. rtkpos 得到了 rtk,其中有 rtk->opt,即为处理过程选项。rtkpos 可以根据选项的要求进行定位解算。

RTKLIB 中的 rtknavi 中的选项的传递过程相关推荐

  1. python怎么设置字段_Django Model中字段(field)的各种选项说明

    字段与选项 CharField() 字符字段 max_length = xxx or None # 必选项 blank = True 和 default = '' # 如果不是必填项,可以设置 uni ...

  2. java如何读取下拉列表的值_java - 如何在Selenium 2中选择/获取下拉选项

    java - 如何在Selenium 2中选择/获取下拉选项 我正在将我的selenium 1代码转换为selenium 2,并且无法找到在下拉菜单中选择标签的任何简单方法或获取下拉列表的选定值. 你 ...

  3. vue中rules校验是验证首字符_小白也能秒懂Vue源码中那些精细设计(选项处理)...

    我"崩"不住了,在彭凡同志锲而不舍的催促下这篇文章终于"蛋"生了. 说正经的这篇文章不好写,不好写的原因是我不太擅长写这些类比文,但它还是写出来了. 相信大部分 ...

  4. 很抱歉 此功能看似已中断 并需要修复。请使用Windows控制面板中的“程序与功能”选项修复

    Word2016出现此功能看似已中断,并需要修复怎么办?有些win10用户在装上office2016后,每次打开word文档都会出现很抱歉,此功能看似已中断,并需要修复.请使用Windows控制面板中 ...

  5. ssrs 生成pdf_在SSRS报告中生成热图的可用选项

    ssrs 生成pdf As developers of business intelligence solutions, we tend to service different types of b ...

  6. ssms .net3.5_SSMS 18.4中SQL Server查询存储选项

    ssms .net3.5 In this article, we will run through the new options added in the Query Store with SSMS ...

  7. linux eclipse 菜单,Ubuntu 16.04中的Eclipse Mars菜单栏选项失效

    Ubuntu 16.04 中的 Eclipse Mars 菜单栏选项失效的解决办法: 在 eclipse.ini 配置文件中加入以下这行: --launcher.GTK_version 2 示例: - ...

  8. 计算机无法搜索文件夹内容,系统我的电脑中文件夹和搜索选项无法使用的解决方法...

    文件夹和搜索选项是灰色的无法使用怎么办?电脑文件夹和搜索选项不见了如何解决?下面就给大家介绍我的电脑中文件夹和搜索选项无法正常使用的解决方法. 解决方法一: 1.通过资源管理---工具菜单找不到文件夹 ...

  9. 2021-01-09:Microsoft Word2019 提示:很抱歉此功能看似已中断,并需要修复。请使用Windows控制面板中的“程序和功能”选项修复Microsoft Office

    Microsoft Word2019 打开后总是出现这个问题,弹出这个提示窗口: 很抱歉此功能看似已中断,并需要修复.请使用Windows控制面板中的"程序和功能"选项修复Micr ...

最新文章

  1. Html中元素的分类
  2. 64 大小_32位和64位Windows系统差别在哪里
  3. bp神经网络隐含层神经元个数_CNN,残差网络,BP网络
  4. [翻译] 使用 Visual Studio 2019 来提高每个开发人员的工作效率
  5. 教你精确计算 I2C 上拉电阻阻值
  6. maven项目打包时生成dependency-reduced-pom.xml
  7. import time python_Python的import导入与时间
  8. python 自动下载文件_【Py大法系列--03】Python如何自动下载文件
  9. 怎么在html中加入相对链接,html直接跳转超链接 html中怎么实现同一页面超级链接...
  10. 有哪些神预言的科幻电影
  11. shared_ptr四宗罪
  12. 07.用户控件弹窗提示后页面显示不正常;
  13. 数学建模四大模型、历年国赛题目以及优秀论文(备战2021年数模国赛)
  14. json对象转换为字符串数组 java_Json对象与Json字符串的转化、JSON字符串与Java对象的转换...
  15. 【编程语言】PHP完全自学手册
  16. 计算机端口连接失败,电脑telnet端口(23端口)提示连接失败怎么办?
  17. PAT Basic 1068 万绿丛中一点红
  18. 演讲稿:遇见下班加油站,开启改变之路(不喜者勿入)
  19. 如何用3天在成都逛吃玩过瘾?
  20. SAP系统Sizing的原理

热门文章

  1. antd tree 动态添加_推荐三款动态壁纸软件,足够让你的桌面惊艳!
  2. Fusker - A NodeJS Security Framework
  3. Docker官方镜像加速
  4. 三星显示android.怎么消除,如何永久删除三星手机数据?
  5. 房地产需求和应用的思索
  6. SSM+jsp实现仓库管理系统,界面那叫一个优雅
  7. 【XLL API 函数】 xlDefineBinaryName
  8. 系统负载和CPU数量
  9. 2016.3.15__H5页面实战__第七天
  10. python代码封装供第三方使用_python发博客