2017-09-07 14 views
0

Doxygenを使用して連携するクラスのグループを文書化していて、複数のソースファイルに分散されたサンプルを作成しました(すべてEXAMPLE_PATH参照)。より正確には、私は次のように書いた:Doxygenの複数のソースファイルの例

/*************************************//** 
* Some context... 
* @example Source1.cpp 
* 
* More context... 
* @example Source2.cpp 
****************************************/ 

問題は、出力はDoxygenの(ソース1用のページ、ソース2のための別)によって生成された例のページで半分に広がっているということです。これを実現する方法はあり

Some context... 
|----------------------------------------------| 
| int main()         | 
| {           | 
| //...          | 
| }           | 
|----------------------------------------------| 

More context... 
|----------------------------------------------| 
| bool fct()         | 
| {           | 
| //...          | 
| }           | 
|----------------------------------------------| 

:私は1つのチュートリアルとして一緒にコンテキストと例のコードで、それは同じHTMLページ上のすべてになりたいですか?私はDoxygen 1.8.11を使用しています。

よろしく

+0

少し詳しい情報を与えることができます。例えば小さなSource1.cppとSource2.cpp(ファイルの1〜2行で十分です)、現在の出力と出力したいのですか?どのバージョンのdoxygenを使用していますか? – albert

+0

@albertが更新されました。これは役に立ちますか? – BobMorane

+1

私は今それを得ました(私は思う)、例は別々のページに示されています。あなたは\ verbincludeと\ includeを見ましたか?\ snippetはいくつかの可能性を与えてくれますか? – albert

答えて

0

私は半合法的な解決策を見つけた:あなたは、最初に@exampleタグを追加し、その後@include Sを使用している場合、それは動作します:

/*************************************//** 
* @example "My tutorial" 
* 
* Some context... 
* @include Source1.cpp 
* 
* More context... 
* @include Source2.cpp 
****************************************/ 

をしかし、からのエラー出力を見てDoxygen私は次のメッセージを受け取ります:warning: included file My is not found. Check your EXAMPLE_PATH

解決策は清潔ではありませんが、当面使用可能です。より良い提案(警告の削除)があれば、それを共有してください。私はそれを受け入れます。

+0

ファイル名を省略して警告を出力しない場合は、ドキュメントとは異なります。実際に要求されるのは、この "ヘッダー"の例のようなものです。 – albert

+0

@albertこれを試しましたが、ファイル名を省略すると、Doxygenはファイル名が現在のファイル名(上記のコードがある場所)であるとみなしているようです。そのファイルに関連していないコードが含まれている場合は、そのファイルがインクルードされます。 – BobMorane