Halcon抛出异常日志

Halcon 抛出异常日志

// 捕获Halcon异常并生成格式化的错误日志信息
// 参数说明:
// - HDevExpDefaultException:Halcon异常对象引用,包含具体的异常信息
// - functName:发生异常的函数名称,用于日志定位
// - htMessage:输出参数,用于存储格式化后的完整错误信息
void CatchHexceptLog(const HalconCpp::HException& HDevExpDefaultException, std::string functName, std::string& htMessage)
{// 定义变量,用于存储异常发生的行号和操作符字符串std::string strLine, strOperator;// 定义Halcon数据结构HTuple,用于存储异常相关信息// htException:存储转换后的异常数据// hv_ErrorLine:存储异常发生的程序行号// hv_Operator:存储发生异常的Halcon操作符// hv_OperatorMsg:存储操作符相关的错误消息HTuple  htException, hv_ErrorLine, hv_Operator, hv_OperatorMsg;// 将HException异常对象转换为HTuple类型,便于后续提取异常详情HDevExpDefaultException.ToHTuple(&htException);// 从异常数据中提取"program_line"(程序行号)信息,存储到hv_ErrorLineHException::GetExceptionData(htException, "program_line", &hv_ErrorLine);// 从异常数据中提取"operator"(操作符)信息,存储到hv_OperatorHException::GetExceptionData(htException, "operator", &hv_Operator);// 从异常数据中提取"error_message"(错误消息)信息,存储到hv_OperatorMsgHException::GetExceptionData(htException, "error_message", &hv_OperatorMsg);// 将行号从HTuple类型转换为std::string类型,便于字符串拼接strLine = hv_ErrorLine.ToString().Text();// 将操作符从HTuple类型转换为std::string类型strOperator = hv_Operator.ToString().Text();// 构建基础错误信息,包含行号、操作符和消息前缀std::string Message = "Line:" + strLine + ", Op:" + strOperator + ", Msg:";// 获取异常的错误消息字符串(HException自带的错误描述)std::string msgError = HDevExpDefaultException.ErrorMessage();// 组合所有信息:函数名 + 基础错误信息 + 详细错误描述,存入输出参数htMessage = functName + "-->" + Message + msgError;
}

使用方式

try{
// ...省略
}
catch (HException& excp)
{std::string errMess;CatchHexceptLog(excp, __FUNCTION__, errMess);qDebug() << str2QStr(errMess);return false;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/910430.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机网站建设论文.阿里云个人备案可以做企业网站吗

在Mac电脑上使用VS Code进行PHP开发并关联操作MySQL数据库&#xff0c;然后将数据库部署到ECS。 1.安装PHP和MySQL 确保你的Mac上已经安装了PHP和MySQL。你可以使用Homebrew来安装它们&#xff1a; $ brew install php $ brew install mysql 安装mysql完成后记住这一句: …

免费开源网站系统有哪些网站解析加速

在vue项目中&#xff0c;使用elementui 框架&#xff0c;做一个后台管理系统 在写左边菜单&#xff0c;菜用了&#xff0c;elementui 提供的组件 &#xff0c; el-menu 组件。但是组件没有链接&#xff0c;而我们知道添加链接使用router-link标签代码如下&#xff1a; <el-…

大数据对网站建设教育的影响网站建设公司高端

信息打点-CDN绕过 文章目录 信息打点-CDN绕过本节思维导图相关链接&工具站&项目工具前置知识&#xff1a;CDN配置&#xff1a;配置1&#xff1a;加速域名-需要启用加速的域名配置2&#xff1a;加速区域-需要启用加速的地区配置3&#xff1a;加速类型-需要启用加速的资源…

设计一个公司网站多少钱wordpress回复微信查看

Django REST Framework (DRF) 提供了丰富的视图类&#xff0c;用于构建 API 视图。这些视图类可以分为以下几类&#xff1a; 1. 基础视图类 这些是 DRF 中最基础的视图类&#xff0c;通常用于实现自定义逻辑。 常用类 APIView&#xff1a; 最基本的视图类&#xff0c;所有其…

做亚马逊需要的图片外链网站wordpress 是否添加封面

一、文章摘要 在安卓应用开发中&#xff0c;数据存储管理是关键环节之一&#xff0c;涉及到用户数据的持久化、应用程序状态的保存以及离线内容的缓存等场景。本文将探讨安卓数据存储管理的使用场景、应用前景&#xff0c;以及各种技术的优劣分析&#xff0c;同时附上相关代码示…

海口自助建站系统平湖做网站

北理工通信课题组辛喆同学在本科毕业设计《基于嵌入式系统的步态识别的研究》中&#xff0c;成功将深度步态识别算法GaitSet移植到全志V853开发板上。本研究在CASIA-B数据集上进行测试&#xff0c;正常行走状态下该系统的步态识别准确率达到了94.9%&#xff0c;背包行走和穿外套…

开发软件网站商城系统小说

国际贸易理论模拟题 一单选题 1.《中华人民共和国保障措施条例》最后一次修订是在(). A.2001年11月 B.2002年1月 C.2003年11月 D.2004年3月 2.保障措施与反倾销性质上的差异表现为(). A.实施保障措施所必须满足的前提条件要比实施反倾销的前提条件更为严格 B.保障措施的实施期…

衡水网站建设一多软件高端集团网站建设公司

二维数组 在C语言中&#xff0c;定义二维数组时需要指定行和列的大小。在引用中&#xff0c;int a[][3]{1,2,3,4,5,6,7,8}定义了一个二维数组a&#xff0c;其中有两行三列&#xff0c;即a[0]1, a2, a3, a4, a5, a6。而int a[]则是错误的定义方式&#xff0c;因为在定义时必须指…

企业网站的维护万网主机 网站访问

题目要求 思路 1.先将开始时间和结束时间拆分放到两个数组中进行排序 2.如果开始的时间小于结束时间&#xff0c;说明目前没有空闲的人&#xff0c;需要增加人&#xff0c;如果大于等于&#xff0c;说明有人刚结束了主持&#xff0c;可以进行新的主持了&#xff0c;变更到下一…

[PaperReading] Mind Search: Mimicking Human Minds Elicits Deep AI Searcher

目录MindSearch: Mimicking Human Minds Elicits Deep AI SearcherTL;DRMethodOverall FrameworkWebPlannerWebSearcher关键步骤Experiment总结与思考相关链接 MindSearch: Mimicking Human Minds Elicits Deep AI Sea…

Automatically Naming the Screenshots to Steam

Automatically Naming the Screenshots to Steam The Problem I want to upload my own screenshot to steam, but I found that the methods I found are a bit tedious. Steam expects screenshots to follow a spec…

穷举法(c语言版)

我们的日常生活中,经常会遇到一些需要解决的小问题,这些问题可能并不需要复杂的算法,但是如果我们能够运用穷举算法的思想,就能够轻松地找到问题的答案。本文将介绍穷举算法的基本思想,并通过程序示例来深入了解它…

ZYNQ PS 端 UART 接收数据素材帧(初学者友好版)嵌入式编程 C语言 c++ 软件开发

ZYNQ PS 端 UART 接收数据素材帧(初学者友好版)嵌入式编程 C语言 c++ 软件开发pre { white-space: pre !important; word-wrap: normal !important; overflow-x: auto !important; display: block !important; font-…

01 Tasking IDE软件安装及新建工程

01 Tasking IDE软件安装及新建工程1.Tasking简介 Tasking IDE是由Altium公司开发的一款专注于嵌入式系统开发的集成开发环境(IDE),特别适合于英飞凌(Infineon)微控制器的开发作。官方网址:https://www.tasking.c…

义乌网站推广学院网站建设目的与意义

1、你的真心很珍贵&#xff0c;别再不值得的人身上卑微 &#xff0c;爱应该是让你笑的开怀&#xff0c;而不是哭的崩溃。爱必须是温情的依赖&#xff0c;而不是冷漠的伤害。想要找你的人走遍了全世界也能找到你&#xff0c;等到了年华老去也会等着你。 2、大冬天的时候给你送吃…

寻找网站建设员广州网站建设专注乐云seo

基于WIN10的64位系统演示 一、写在前面 本期开始&#xff0c;我们继续学习深度学习图像目标检测系列&#xff0c;SSD&#xff08;Single Shot MultiBox Detector&#xff09;模型。 二、SSD简介 SSD&#xff08;Single Shot MultiBox Detector&#xff09;是一种流行的目标检…

做花茶网站解说大庆市住房和城乡建设局网站

该知识领域涉及如下考点&#xff0c;具体内容分布于如下各个子章节&#xff1a; 理解安全并将其融入软件开发生命周期 (SDLC) 中在软件开发环境中识别和应用安全控制评估软件安全的有效性评估获得软件对安全的影响定义并应用安全编码准则和标准 6.1. 系统开发控制 6.1.1. 软…

网站支付链接怎么做张家港网页设计培训

同时在线访问量继续增大 对于1G内存的服务器明显感觉到吃力严重时甚至每天都会死机 或者时不时的服务器卡一下 这个问题曾经困扰了我半个多月MySQL使用是很具伸缩性的算法&#xff0c;因此你通常能用很少的内存运行或给MySQL更多的被存以得到更好的性能。 安装好mysql后&#x…

河北邢台解封了吗seo网络优化师招聘

1、说说 Redis 都有哪些应用场景&#xff1f;缓存&#xff1a;这应该是 Redis 最主要的功能了&#xff0c;也是大型网站必备机制&#xff0c;合理地使用缓存不仅可以加 快数据的访问速度&#xff0c;而且能够有效地降低后端数据源的压力。共享Session&#xff1a;对于一些依赖 …

百度site app网站添加到网站首页源文件中的代码是哪些?网站新类型

人脸对比 人脸对比&#xff0c;顾名思义&#xff0c;就是对比两个人脸的相似度。本文将用Paddle实现这一功能。 PS&#xff1a;作者肝了整整3天才稍微搞明白实现方法 数据集准备 这里使用百度AI Studio的开源数据集&#xff1a; 人脸数据_数据集-飞桨AI Studio星河社区 (b…