使用OpenDDS建立簡單的訂閱系統 一

2021-08-08 06:38:22 字數 1403 閱讀 1665

在剛剛使用opendds時會出現很多奇奇怪怪的問題,所以筆者盡量把可能會出現的問題一一列出來,並提供詳實的解決方案,真正實現手把手教學。

假設現在我們的opendds已經編譯成功,並且成功執行了opendds帶的examples,tests等例子。

接下來我們就使用opendds寫乙個簡單的訂閱發布系統應用程式。

前面我們已經說了,opendds要求資料型別必須是乙個結構體,並且是以#pragma的方式進行傳輸的,以idl檔案形式存在的目的:可以使非c++語言也可以使用我們定義的介面。

1、先自己定義乙個idl檔案和mpc檔案

分別新建messenger.mpc和messenger.idl檔案,內容如下:

messenger.idl

module messenger ;

};

messenger.mpc

project(*idl): dcps  

custom_only = 1

}

2、idl編譯

把messenger.idl檔案分別拖到%ace_root%/bin和%dds_root%/bin目錄中,分別使用如下命令:

在%ace_root%/bin中:

tao_idl messenger.idl

然後會多出來這些檔案

messengers/c.cpp(.h)

在%dds_root%/bin中:

opendds_idl messenger.idl

然後會多出這些檔案

messengertypesupportimpl.cpp(.h)

messengertypesupport.idl

3、最後使用mpc工具生成我們需要的檔案

在%ace_root%/mpc中新建乙個messenger的資料夾,把我們所有生成的檔案和原本

messenger.idl和messenger.mpc都放到資料夾中,然後使用如下命令列:

perl mwc.pl -type vc14

執行完之後就可以生成對應的vs2015工程檔案,包括vcproj和sln等,使用vs2015開啟sln直接編譯,就可以生成messengerc.cpp和messengersupport.idl等檔案了。

使用AndroidStudio建立簡單的單元測試

找到測試類的存放路徑 檢視使用android檢視,下方括號內標記了androidtest的包即為存放測試的路徑 新建測試類並繼承父類android.test.androidtestcase 可以在新建的時填寫父類,也可以建立好了在 中新增 這裡我新增的時候出現了劃掉的情況,我也不太清楚原因,但事實證...

Git建立與簡單使用

一 伺服器端 建立空的倉庫 以專案tm201為例 1.git賬戶登入 2.新建倉庫目錄 mkdir tm101.git cd tm201.git 3.git初始化新的空的倉庫 git bare init 二 客戶端 客戶端從伺服器把clone空的倉庫到本地 1.clone空的倉庫 git clone...

使用API建立dialog的簡單示例

首先填充dlgtemplate結構體 dlgtemplate createdlgdata 然後申明dialog視窗過程 int ptr callback dialogproc hwnd hwnddlg,uint umsg,wparam wparam,lparam lparam break 呼叫預設視...