[發明專利]VxWorks與Qt的事件通信方法和裝置有效
申請號: | 201611193092.5 | 申請日: | 2016-12-21 |
公開(公告)號: | CN108228360B | 公開(公告)日: | 2021-03-16 |
發明(設計)人: | 毛衛龍 | 申請(專利權)人: | 龍芯中科技術股份有限公司 |
主分類號: | G06F9/54 | 分類號: | G06F9/54 |
代理公司: | 北京同立鈞成知識產權代理有限公司 11205 | 代理人: | 楊澤;劉芳 |
地址: | 100095 北京市海淀*** | 國省代碼: | 北京;11 |
權利要求書: | 查看更多 | 說明書: | 查看更多 |
摘要: | |||
搜索關鍵詞: | vxworks qt 事件 通信 方法 裝置 | ||
本發明提供了一種VxWorks與Qt的事件通信方法和裝置,該方法包括:監測VxWorks操作系統的WindML庫中是否存在待處理的事件消息;若VxWorks操作系統的WindML庫中存在待處理的事件消息,則控制所回調函數將待處理的事件消息進行過濾,獲取第一事件消息,第一事件消息為輸入設備的事件消息;將第一事件消息對應的標記消息寫入管道;根據將第一事件消息對應的標記消息寫入管道的操作,調用槽函數,以使槽函數讀取第一事件消息,并將第一事件消息轉換為Qt能夠識別的第二事件消息,并存儲到Qt的消息隊列中,以使Qt對第二事件消息進行處理。實現了VxWorks與Qt的事件通信,能夠使基于Qt的應用程序運行在VxWorks的操作系統上,充分利用VxWorks操作系統良好的可靠性和卓越的實時性的優勢。
技術領域
本發明實施例涉及計算機技術領域,尤其涉及一種VxWorks與Qt的事件通信方法和裝置。
背景技術
VxWorks操作系統是美國windRiver公司于1983年設計開發的一種嵌入式實時操作系統,他以其良好的可靠性和卓越的實時性被廣泛地應用在通信、軍事、航空、航天等高精尖技術和實時性要求極高的領域中。
Qt是一個多平臺的C++圖形用戶界面應用程序框架。它提供給應用程序開發者建立藝術級的圖形用戶界面所需的所用功能。Qt是完全面向對象的編程,所以具有易擴展和組件編程的優勢。由于Qt的優勢,很多應用軟件是基于Qt開發完成的。
目前的Qt均是基于開源版本的Qt,由于開源版本的Qt并沒有編寫運行在VxWorks操作系統的代碼,所以導致開源版本的Qt無法在VxWorks操作系統中運行。因此不能利用VxWorks操作系統良好的可靠性和卓越的實時性的優勢運行基于Qt的應用程序。
發明內容
本發明實施例提供一種VxWorks與Qt的事件通信方法,該方法解決了開源版本的Qt無法在VxWorks操作系統中運行,導致不能利用VxWorks操作系統良好的可靠性和卓越的實時性的優勢運行基于Qt的應用程序的技術問題。
本發明實施例提供一種VxWorks與Qt的事件通信方法,包括:
監測VxWorks操作系統的WindML庫中是否存在待處理的事件消息;
若VxWorks操作系統的WindML庫中存在待處理的事件消息,則控制回調函數將所述待處理的事件消息進行過濾,獲取第一事件消息,所述第一事件消息為輸入設備的事件消息;
將所述第一事件消息對應的標記消息寫入管道;
根據將所述第一事件消息對應的標記消息寫入管道的操作,調用槽函數,以使所述槽函數讀取所述第一事件消息,并將所述第一事件消息轉換為Qt能夠識別的第二事件消息,并存儲到Qt的消息隊列中,以使所述Qt對所述第二事件消息進行處理。
本發明實施例提供一種VxWorks與Qt的事件通信裝置,包括:
事件消息監測模塊,用于監測VxWorks操作系統的WindML庫中是否存在待處理的事件消息;
回調函數控制模塊,用于若VxWorks操作系統的WindML庫中存在待處理的事件消息,則控制回調函數將所述待處理的事件消息進行過濾,獲取第一事件消息,所述第一事件消息為輸入設備的事件消息;
標記消息寫入模塊,用于將所述第一事件消息對應的標記消息寫入管道;
槽函數調用模塊,用于根據將所述第一事件消息對應的標記消息寫入管道的操作,調用槽函數,以使所述槽函數讀取所述第一事件消息,并將所述第一事件消息轉換為Qt能夠識別的第二事件消息,并存儲到Qt的消息隊列中,以使所述Qt對所述第二事件消息進行處理。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于龍芯中科技術股份有限公司,未經龍芯中科技術股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201611193092.5/2.html,轉載請聲明來源鉆瓜專利網。