看完of的幫助文件,會非常懷念fluent的幫助文件或是matlab的幫助文件
比如我要解決一個matlab問題,基本上看幫助文件一分鐘就知道我要如何取用我想要的東西,of幫助文件不光做不到,還給你炫技
真的,這東西誰看誰不懵啊
這些框圖怎麼來的呢,是doxygen自動生成的,
那doxygen是怎樣生成的呢?
以下面作為例子說下怎樣生成的這個框圖呢
點選檢視程式碼
/*! Invisible class because of truncation */
class Invisible { };
/*! Truncated class, inheritance relation is hidden */
class Truncated : public Invisible { };
/* Class not documented with doxygen comments */
class Undocumented { };
/*! Class that is inherited using public inheritance */
class PublicBase : public Truncated { };
/*! A template class */
template<class T> class Templ { };
/*! Class that is inherited using protected inheritance */
class ProtectedBase { };
/*! Class that is inherited using private inheritance */
class PrivateBase { };
/*! Class that is used by the Inherited class */
class Used { };
/*! Super class that inherits a number of other classes */
class Inherited : public PublicBase,
protected ProtectedBase,
private PrivateBase,
public Undocumented,
public Templ<int>
{
private:
Used *m_usedClass;
};
根據關鍵字識別生成的框圖如下所示:
其中灰色底的方框是inherited,是派生類
其中黑邊方框是有文字備案的結構體或者類
其中灰色邊框是沒有文字備案的結構體或類(很少的)
紅色邊框的是因頁面大小未能完全展示的結構體或類
深藍色箭頭為public繼承
深綠色箭頭為protected繼承
紅色箭頭為private繼承
紫色虛線箭頭意思是這個類在其他地方也有被利用
黃色虛線箭頭意思是模板類之間有關係
好,自此已經非常明確了,磨刀過程完成,那麼接下來就是事半功倍
這時of扔給我們一張圖,就可以一眼看穿出其中的邏輯關係
我們們以fvMesh為例,
全是深藍色箭頭哈,那非常明確,全是公有制繼承
其中灰色框是fvMesh,那他就是派生類的主體
當然也有其他類是他的公有派生類,右側七個類不一一贅述
我們也能看到fvMesh繼承的類中polyMesh是紅色,為什麼不是黑色呢,
很簡單,有關他的類繼承關係太複雜寫不下了,乾脆截斷不寫了
我們再回到最開始的框圖,fvMesh內有關查詢網格中心位置的函式C()
其實這個框圖並沒有說什麼,主要說的是哪些函式或類用到這個中心位置查詢函式了,具體還是要看原始碼
那咋整,能不能用
能用
告訴你去那些用的地方看看怎麼用
,去抄一下,
但就是不直接了當告訴你怎麼實現,
,,,
確實不討好任何人
把案例寫在原始檔裡是openfoam唯一的溫柔
以上如有問題,請聯絡我進行更正,謝謝
後續還會繼續更新