![]() |
latest release v1.8.3.1 - last update Sat Aug 24 2013 | ![]() |
![]() |
目次
特殊コマンドはじめにドキュメント内のすべてのコマンドは、バックスラッシュ (\)、またはアットマーク (@) で始まります。 お望みであれば、以下のバックスラッシュで始まるすべてのコマンドを、それに対応したアットマークで始まるものに置き換えることができます。 いくつかのコマンドは、1つまたはそれ以上の引数を取ります。 各引数には、ある決まった範囲があります:
上記の識別子のほかに [角] 括弧が使われている場合、引数は省略可能です。 以下は、全コマンドをアルファベット順に整列したリストです (説明への参照付き)。
以下のサブセクションでは、doxygen が認識する全コマンドのリストを説明します。 コマンドとして認識しないものは、通常のテキストとして扱います。 --- 構造指示子 (Structural indicators) ---\addtogroup <名前> [(タイトル)]\defgroup と同様グループを定義しますが、それとは対照的に、 同じ <名前> を2回以上使用しても警告は発せられず、 マージされたドキュメントと、コマンドの引数として最初に見つかったタイトルを持つ 1つのグループが作成されます。 タイトルはオプションです。そこで、このコマンドを使うと、 以下のように @{ と @} を用いて、 既存のグループにいくつかの要素を追加することもできます。 /*! \addtogroup mygrp * グループ `mygrp' に追加するドキュメント * @{ */ /*! * 関数 */ void func1() { } /*! 他の関数 */ void func2() { } /*! @} */ 参照: ページ グループ化、セクション \defgroup、 \ingroup および \weakgroup \callgraph このコマンドが関数またはメソッドのコメント・ブロックに指定され、 HAVE_DOT が
参照: セクション \callergraph \callergraph このコマンドが関数またはメソッドのコメント・ブロックに指定され、 HAVE_DOT が
参照: セクション \callgraph \category <名前> [<ヘッダーファイル>] [<ヘッダー名>]Objective-C 専用: コメント・ブロックが名前 <名前>という クラスカテゴリーに対するドキュメントを保持していることを示します。 引数は \class コマンドと同じです。 参照: セクション \class \class <名前> [<ヘッダーファイル>] [<ヘッダー名>]<名前> というクラスのドキュメントがコメントブロックに含まれることを指示します。 オプション引数として、ヘッダーファイルとヘッダー名を指定することができます。 ヘッダーファイルが指定されると、その字句通りのコピーへのリンクが HTML ドキュメントに埋め込まれます。 <ヘッダー名> 引数を使用すれば、クラスのドキュメントで用いられているリンクの名前を、<ヘッダーファイル> 以外のもので上書きすることができます。 これは、インクルード名が、デフォルトのインクルードパス(<X11/X.h> など) 上にないような場合に役立ちます。 <ヘッダー名> 引数を使って、インクルード文の見え方を指定することもできます。 それには、名前の囲りに引用符か山括弧を付加します。名前だけの場合は山括弧を使います。後の2つの引数は、\headerfile コマンドでも指定できます。
\def <名前> コメント・ブロックが、
\defgroup <名前> (グループタイトル)コメント・ブロックが、クラス、ファイル、または名前空間の グループ に対するドキュメントを保持していることを指示します。 これを使うと、クラス、ファイル、または名前空間をいくつかのカテゴリに分類した上で、それらのカテゴリにドキュメント付けをすることができます。 また、グループは、他のグループのメンバーとしても使うことができるので、 グループの階層を構築することができます。 <名前> 引数は、単一語の識別子でなければなりません。 参照: ページ グループ化、セクション \ingroup、 \addtogroup、\weakgroup \dir [<パス>]ディレクトリについての記述がコメントブロック内にあることを示します。 引数"パス"には、ディレクトリ名と、プロジェクトで他のディレクトリと 区別のつくユニークなパスを指定してください。 STRIP_FROM_PATH は、フルパスのうち省略する部分を決定します。 \enum <名前><名前> という列挙型データに対するドキュメントがコメントブロックに含まれることを示します。 列挙型データがクラスのメンバーなのに、そのドキュメントブロックはクラス定義の外側にあるような場合は、クラスのスコープも指定する必要があります。 コメント・ブロックが列挙型データ宣言の直前にある場合は、\enum コメントを省略できます。
\example <ファイル名>ソースコード例に対するドキュメントが、コメントブロックに含まれることを示します。 ソースファイルの名前は <ファイル名> です。 ファイルのテキストは、コメントブロックに含まれるドキュメントの直後に取り込まれます。 例のすべてがリスト化されます。 ソースコードから、解説つきのメンバーやクラスを見つけます。見つかればその名前はドキュメントでクロスリファレンスされます。 doxygen の設定ファイルの EXAMPLE_PATH タグを用いると、ソースファイルまたはディレクトリを指定することができます。 EXAMPLE_PATH タグによって指定された例ファイルの集合に対して、<ファイル名> だけでは一意にファイルを決定できない場合、それを解消するために、絶対パスの一部を含めることができます。 例として、2つ以上のソースファイルが必要な場合は、\include コマンドを使用することができます。
参照: セクション \include \endinternal このコマンドは、\internal コマンドで始まるドキュメント断片の終わりを示します。 \extends [<名前>]cmdextendsは、もともと継承関係の概念をサポートしないプログラミング言語(Cなど)の場合に使えます。 exampleディレクトリの 参照: セクション \implements とセクション \memberof \file [<名前>]<名前> というソースファイルまたはヘッダーファイルの解説がコメントブロックに 含まれることを示します。 ファイル名だけでは一意にならない場合、パス (の一部) を含んでも構いません。 ファイル名が省略された場合 (つまり、\file 以降行が空白の場合) は、 \file コマンドを含むドキュメントブロックは、その記述場所に属します。
\fn (関数宣言)関数(グローバルまたはクラスのメンバー)の解説がコメントブロックに含まれることを示します。 このコマンドは、コメントブロックが関数宣言・定義の前後に置かれていない場合のみ必要となります。 コメントブロックが関数宣言・定義の前に置かれているのであれば、 このコマンドは省略できます (冗長性を避けるためにもそうすべきです)。 \fn コマンドの後には、引数を含む完全な関数宣言を、1行で指定する必要があり、 (コマンドの) 引数は行末で終わります。 このコマンドは、\var, \typedef, \propertyと同等です。
参照: セクション \var、\property、\typedef \headerfile <ヘッダファイル> [<ヘッダ名>]このコマンドは、クラス、構造体、共用体のドキュメントが定義の前にある場合に使います。 このコマンドの引数は、\cmdclass の第2引数、第3引数と 同じです。 <ヘッダファイル>名は、アプリケーションがインクルードするファイルを指し、 クラス、構造体、共用体の定義を含むファイルです。 <ヘッダ名>引数は、クラスドキュメントで使っているリンクの名前を <ヘッダファイル>とは別の名前で上書きしたいときに使います。 デフォルトのインクルードパス(<X11/X.h>など)にインクルード名がない場合に 有効です。 また、<ヘッダ名>でインクルード文の見え方を指定することもできます。 これには、引用符や山括弧で名前を囲みます。 デフォルトで、名前だけしかない場合は山括弧を使います。 <ヘッダファイル>や<ヘッダ名>に二重引用符が使われると、現在のファイル(コマンドが見つかったところ)が使われます。test.hというファイル内部で \headerfile コマンドでコメントブロックを作る場合、次の三つのコマンドは同等です。 \headerfile test.h "test.h" \headerfile test.h "" \headerfile "" 山括弧を得るには何も指定しなくていいのですが、明示するには以下のどれでも使えます。 \headerfile test.h <test.h> \headerfile test.h <> \headerfile <> デフォルトのインクルード表記をローカルに逆転にするには、FORCE_LOCAL_INCLUDES を \hideinitializerデフォルトでは、define の値および変数の初期化子は、30行を超えないかぎり、表示されます。 define または変数のコメントブロックの中でこのコマンドを使うと、 初期化子は常に非表示になります。初期化子の最大行数は、MAX_INITIALIZER_LINES によって変えることができます。デフォルトは30です。 参照: セクション \showinitializer \implements <名前>cmdimplementsは、もともと継承関係の概念をサポートしないプログラミング言語(Cなど)の場合にマニュアルで指定します。 exampleディレクトリの 参照: セクション \implements,\memberof \ingroup (<グループ名> [<グループ名> <グループ名>])\ingroup コマンドが、 クラス、ファイル、名前空間のコメントブロック内で使われている場合、 <グループ名> で識別されるグループ (または複数グループ) に追加されます。 参照: ページ グループ化、\defgroup、\addtogroup、\weakgroup \interface <名前> [<ヘッダーファイル>] [<ヘッダー名>]<名前> という名のインタフェースの解説が、コメントブロックに含まれることを示します。 引数は、\class コマンドのものと同じです。 参照: セクション \class \internalこのコマンドは、内部専用のドキュメント断片の始まりを示します。断片は、コメントブロックの終わりで自然に終わります。内部セクションは、コマンド \endinternal によって先に終わらせることができます。 \internal コマンドをセクション内部に指定する ( \section の例参照) と、コマンドの後ろのすべてのサブセクションも同様に内部とみなします。同レベルの新しいセクションだけが、内部とみなされる断片を終わらせます。 内部記述を出すか隠すかは、設定ファイルの INTERNAL_DOCS を使ってください。 参照:セクション \endinternal \mainpage [(タイトル)]\mainpage コマンドをコメントブロック内に指定すると、 インデックスページ (HTML) または、最初の章 ( タイトル引数が指定されると、doxygen が生成するデフォルトのタイトルを置換します。 タイトルが不要なら、\mainpage の引数に 以下に例を挙げます: /*! \mainpage 私の個人的なインデックスページ * * \section intro_sec 導入 * * これは導入です * * \section install_sec インストール * * \subsection step1 ステップ1: ボックスを開く * * etc... */ \ref index によってメインページを参照することができます。 参照: セクション \section、\subsection、\page \memberof <名前>このコマンドは、ある関数をクラスメンバーとして指示できます。\relates と似ていますが、関数をクラスの実メンバーとして表示するのは、このコマンドだけです。 メンバー関数の概念をもともとサポートしていないプログラミング言語(Cなど)で有用です。 \public, \protected, \private と一緒に使うこともできます。 exampleディレクトリの 参照: セクション \extends、\implements、\public、 \protected、 \private \name [(ヘッダー)]このコマンドは、コメントブロックを、メンバーグループのヘッダー定義に変えます。 コメントブロックの後には、グループのメンバーを含む、 例については、セクション メンバーグループ を参照。 \namespace <名前><名前> という名の名前空間の解説がコメントブロックに記述されていることを示します。 \nosubgroupingこのコマンドは、クラスの解説内に指定できます。 メンバーグルーピングとの組み合わせで使用でき、doxygenが、メンバーグループを、Public/Protected/Private/... セクションのサブグループとして配置するのを避けることができます。 参照: セクション \publicsection、 \protectedsection、 \privatesection \overload [(関数宣言)]このコマンドを使うと、オーバーロードされたメンバー関数に対して、 以下のような標準的なテキストが生成されます:
オーバーロードされたメンバー関数に対する解説が、関数宣言・定義の前にない場合は、オプションの引数で、正しく関数指定をする必要があります。 ドキュメントブロック内部にある他のすべてのドキュメントは、 生成されるメッセージの後に追加されます。
\package <名前><名前> という Java パッケージの解説がコメントブロックに記述されていることを 示します。 \page <名前> (タイトル) 特定のクラスやファイル、メンバーに直接には関連付けられていない解説の一部が コメントブロックに含まれることを示します。 HTML ジェネレータは、その解説を含むページを作成します。
参照: セクション \section、\subsection、\ref \privateこのコマンドは、コメントブロックでドキュメント付けされたメンバーがprivateであることを示します。同じクラス内のメンバーからしかアクセスできないメンバーのことです。 Doxygenは、オブジェクト指向の言語では、メンバーの保護レベルを自動認識します。 このコマンドは、保護レベルの概念をもともとサポートしていない言語(C,PHP 4など)で使うことが目的です。 privateメンバーのセクションの始まりを、C++での"private:"クラスマーカー同様に示すには、\privatesectionを使います。 参照: セクション \memberof、 \public、 \protected、\privatesection \privatesectionC++のクラス識別子"private:"と同様、privateメンバーのセクションの始まりを示します。 コメントブロック内でドキュメント付けされたメンバーがprivateであること、つまり同じクラスのメンバーからしかアクセスできないことを示します。 参照:セクション \memberof、 \public、 \protected 、\private \property (qualified property name)プロパティ(グローバルか、クラスメンバーとして)についての記述が コメントブロックに含まれることを示します。 このコマンドは、\var、\typedef、\fn と同義です。 \protectedこのコマンドは、コメントブロックでドキュメント付けされたメンバーがprotectedであることを示します。同じクラスまたは派生クラスのメンバーからしかアクセスできないメンバーのことです。 Doxygenは、オブジェクト指向の言語では、メンバーの保護レベルを自動認識します。 このコマンドは、保護レベルの概念をもともとサポートしていない言語(C,PHP 4など)で使うことが目的です。 protectedメンバーセクションの始まりを、C++での"protected:"クラスマーカー同様に示すには、\protectedsectionを使います。 参照: セクション \memberof、\public、 \private、\protectedsection \protectedsectionC++の"protected:"クラス指定子と同様、protected メンバーの始まりを示します。 コメントブロック内でドキュメント付けされたメンバーが、protectedであること、つまり同じクラスか派生クラスのメンバーからしかアクセスできないことを示します。 参照:セクション \memberof、\public、 \private、 \protected \protocol <名前> [<ヘッダーファイル>] [<ヘッダー名>]名前 <name> という名の Objective-C でのプロトコルについての記述がコメント ブロックに含まれることを示します。引数は、\class コマンドと同じです。 参照: セクション \class \publicこのコマンドは、コメントブロックでドキュメント付けされたメンバーがpublicであることを示します。どのクラスや関数からもアクセスできるメンバーのことです。 Doxygenは、オブジェクト指向の言語では、メンバーの保護レベルを自動認識します。 このコマンドは、保護レベルの概念をもともとサポートしていない言語(C,PHP 4など)で使うことが目的です。 publicメンバーセクションの始まりを、C++での"public:"クラスマーカー同様に示すには、\publicsectionを使います。 参照: セクション \memberof、\protected、\private、\publicsection \publicsectionC++の"public:"クラス指定子同様、publicメンバーセクションの始まりを示します。 コメントブロック内でドキュメント付けされたメンバーは、public、つまり、他のクラスや関数からアクセス可能であることを示します。 参照:セクション \memberof、\protected、 \private 、\public \relates <名前>このコマンドは、<名前> という非メンバー関数の解説で使います。 クラスドキュメントの「関連する関数」というセクションに関数を出力します。 フレンドでないにもかかわらず、特定のクラスに強く結び付いている関数に ドキュメントを付けるのに有用です。 これによりファイルにドキュメント付けをする必要性がなくなりますが、 関数にしか機能しません。
\related <名前>\relates と同等です。 \relatesalso <名前>このコマンドは、非メンバー関数 <name> の記述で使えます。これによって、 クラスドキュメントの「関連関数」セクションの中にも、普通のファイルドキュメント にも指定関数を出力します。フレンドでないにもかかわらずあるクラスとのつながりが強い 関数をドキュメント付けするのに有効です。関数にしか機能しません。 \relatedalso <名前>\relatesalso と同等です。 \showinitializerデフォルトでは、define の値および変数の初期化子は、 30行未満の場合しか表示されません。 define または変数のコメントブロックの中でこのコマンドを使うと、 初期化子は無条件に表示されるようになります。 初期化子の最大行数の変更は、MAX_INITIALIZER_LINES で行います。デフォルトは30です。 参照: セクション \hideinitializer \struct <名前> [<ヘッダーファイル>] [<ヘッダー名>]<名前> という構造体の解説がコメントブロックに含まれることを示します。 引数は、\class コマンドのものと同じです。 参照: セクション \class \typedef (typedef 宣言)typedef(グローバルまたはクラスメンバー)の解説がコメントブロックに含まれることを示します。 このコマンドは、\var、\propery、\fn と等価です。 \union <名前> [<ヘッダーファイル>] [<ヘッダー名>]<名前> という共用体の解説がコメントブロックに含まれることを示します。 引数は、\class コマンドのものと同じです。 参照: セクション \class \var (変数宣言)変数やenum 値(グローバルまたはクラスメンバー)の解説がコメントブロックに含まれることを示します。 このコマンドは、\typedef、\propery、\fn と等価です。 参照: セクション \fn、\property、\typedef \vhdlflow [(フローチャートのタイトル)]これは、VHDL 専用のコマンドで、プロセス内のロジックを示すフローチャートを、プロセスのドキュメントに置くことができます。オプションで、フローチャートのタイトルを指定できます。
\weakgroup <名前> [(タイトル)]\addtogroup と全く同様に使用することができますが、 グループ化定義での衝突を解消するという用には優先度が低くなります。 参照: ページ グループ化 および セクション \addtogroup --- セクション指示子 (Section indicators) ---\attention { 注意すべきテキスト }注意が必要なメッセージを入力するパラグラフを開始します。 パラグラフはインデントされます。 パラグラフのテキストには、特別な内部構造はありません。 すべての視覚的強調コマンドが、パラグラフ内で使用可能です。 複数並んだ \attention コマンドは1つのパラグラフに結合されます。 \attention コマンドは、空行か他のセクション導入コマンドのところで終わりです。 \author { 作者のリスト }ひとつ以上の作者名を入力するパラグラフを開始します。 パラグラフはインデントされます。 パラグラフのテキストには、特別な内部構造はありません。 すべての視覚的強調コマンドが、パラグラフ内で使用可能です。 複数並んだ \author コマンドは、1つのパラグラフに結合されます。 このコマンドは行を作ります。 1つの \author コマンドで複数の作者名を挙げることもできます。 \author コマンドは、空行か他のセクション導入コマンドのところで終わりです。
\authors { 作者のリスト }\author と同等です。 \brief {要約説明}要約説明の役割をするパラグラフを開始します。 クラスとファイルでは、リストや、ドキュメントページの最初の部分で使われます。 クラスやファイルのメンバーでは、メンバーの宣言箇所に配置されたり、 詳細説明の前に付加されたりします。 要約説明は、複数行にできます(それでも簡潔なほうがよい)。 要約説明は、空行または他のセクション導入コマンドで終わります。 複数の \brief コマンドは結合されます。 例については、\author を参照してください。 同義語: \short \bug { バグ記述 }ひとつ以上のバグをリポートするパラグラフを開始します。 パラグラフはインデントされます。 パラグラフのテキストには、特別な内部構造はありません。 すべての視覚的強調コマンドが、パラグラフ内で使用可能です。 複数の \bug コマンドが並ぶと、1つのパラグラフに結合されます。 各々のバグ記述は新しい行で始まります。 別のやり方として、1つの \bug コマンドで複数のバグを挙げることもできます。 \bug コマンドは、空行または他のセクション導入コマンドで終了します。 例については、\author を参照してください。 \cond [<セクションラベル>]条件付セクションの始まりを示し、\endcond コマンド(別のコメントブロックに指定します)で終了します。こういった コマンドの組を使う主な目的は、ファイルの一部を処理から(条件付で)除外することです。 (以前のDoxygenでは、これはCプロセッサコマンドでしかできませんでした) \cond コマンドと \endcond コマンドの間のセクションは、 設定オプションのENABLED_SECTIONS にセクションラベルを 追加することで含めることができます。セクションラベルを省略すると、セクションは 無条件に処理から除外されます。セクションラベルとなりうるのは、セクションラベル、丸括弧、&&(AND), ||(OR), !(NOT)の論理式ビルドです。 式を使う場合は、 コメントブロック内の条件付セクションの場合は、 \if ... \endif ブロックを使ってください。 条件付セクションはネストできます。この場合ネストしたセクションを出力するには それを内包するセクションとともに含めなければなりません。 コマンド使用例を示します。 /** インターフェース */ class Intf { public: /** メソッド */ virtual void func() = 0; /// @cond TEST /** テストに使うメソッド */ virtual void test() = 0; /// @endcond }; /// @cond DEV /* * インターフェースの実装 */ class Implementation : public Intf { public: void func(); /// @cond TEST void test(); /// @endcond /// @cond /** このメソッドは使わなくなった。 * ドキュメントに出ない。 */ void obsolete(); /// @endcond }; /// @endcond 出力結果は、 参照:セクション \endcond \copyright { 著作権の記述 }エンティティの著作権を記述する段落の始まりを示します。 段落はインデントされます。 段落のテキストには、特別な内部構造がありません。 セクション \author にサンプルがあります。 \date { 日時記述 }ひとつ以上の日時を記入するパラグラフを開始します。 パラグラフはインデントされます。 パラグラフのテキストには、特別な内部構造はありません。 すべての視覚的強調コマンドが、パラグラフ内で使用可能です。 複数の \date コマンドが並ぶと、1つのパラグラフに結合されます。 各々の日時記述は、新しい行から始まります。 1つの \date コマンドで複数の日時を記述することもできます。 \date コマンドは、空行または他のセクション導入コマンドで終了します。 例については、\author を参照してください。 \deprecated { 記述 }ドキュメントブロックが非推奨要素に属することを示すパラグラフの始まりです。 代替や予想有効期間などを記述します。 \details {詳細説明}\brief は要約説明の始まりを, \detailsは詳細説明の始まりを示します。空行でパラグラフをはじめれば、\detailsは要りません。 \else 前の条件付きセクションが有効でなかった場合に 条件付きセクションを開始します。 前のセクションは、 参照: \if、 \ifnot、 \elseif、 \endif \elseif (セクションラベル)前の条件付きセクションが有効でなかった場合に条件付きドキュメント・セクションを開始します。 デフォルトで、条件付きセクションは無効になっています。 有効にするには、設定ファイルの中で ENABLED_SECTIONS タグの後にセクションラベルを置かなければなりません。セクションラベルになりうるのは、セクション名、丸括弧、&& (AND), || (OR) , ! (NOT) などの論理式ビルドです。 条件付きブロックはネストすることができます。 ネストされたセクションは、その外側のセクションもすべて有効になっている場合に限り、有効になります。 参照: セクション \endif、\ifnot、 \else、\elseif \endcond\cond で始まる条件付セクションの終了を示します。 参照: \cond \endif \exception <例外オブジェクト> { 例外記述 }<例外オブジェクト> という名の例外オブジェクトの例外記述を開始します。 後には、例外についての記述が続きます。 例外オブジェクトが存在するかどうかについては、チェックされません。 パラグラフのテキストには、特別な内部構造はありません。 すべての視覚的強調コマンドが、パラグラフ内で使用可能です。 複数の \exception コマンドが並ぶと、1つのパラグラフに結合されます。 各々の例外記述は、新しい行で始まります。 \exception コマンドは、空行または他のセクション導入コマンドで終了します。 例については、\fn を参照してください。 \if <セクションラベル> 条件付きドキュメント・セクションを開始します。 セクションは、対応する セクションラベルになりうるのは、セクション名、丸括弧、&& (AND), || (OR) , ! (NOT) などの論理式ビルドです。式を使うには、
条件付きコマンドをエイリアス内部で使うこともできます。 2つの言語でクラスにドキュメントを付けるには、たとえば、以下のように使います。
そして、 参照: セクション \endif、\ifnot、 \else、and \elseif \ifnot (セクションラベル) 条件付きドキュメント・セクションを開始します。 セクションは、対応する 参照: セクション \endif、\if、 \else、および \elseif \invariant { 不変条件記述 }実体についての不変条件を記述することのできるパラグラフを開始します。 パラグラフはインデントされます。 パラグラフのテキストには、特別な内部構造はありません。 すべての視覚的強調コマンドが、パラグラフ内で使用可能です。 複数の \invariant コマンドが並ぶと、1つのパラグラフに結合されます。 各々の不変条件は、新しい行で始まります。 1つの \invariant コマンドで複数の不変条件を記述することもできます。 \invariant コマンドは、空行または他のセクション導入コマンドで終了します。 \note { テキスト }メモを記述するパラグラフを開始します。 パラグラフはインデントされます。 パラグラフのテキストには、特別な内部構造はありません。 すべての視覚的強調コマンドが、パラグラフ内で使用可能です。 複数の \note コマンドが並ぶと、1つのパラグラフに結合されます。 各々のメモは、新しい行で始まります。 1つの \note コマンドで複数のメモを記述することもできます。 \note コマンドは、空行または他のセクション導入コマンドで終了します。 例については、\par を参照してください。 \par [(パラグラフタイトル)] { パラグラフ }パラグラフタイトルを指定すると、ユーザ定義の見出しを持つパラグラフを開始します。 見出しの範囲は、行の終わりまでです。 このコマンドに後続するパラグラフはインデントされます。 パラグラフタイトルがない場合、新しいパラグラフを開始します。 これは、他のパラグラフコマンド (\param や \warningなど) の内部でも機能します。その際、そのコマンドを終了させることはありません。 パラグラフのテキストには、特別な内部構造はありません。 すべての視覚的強調コマンドが、パラグラフ内で使用可能です。 \par コマンドは、空行または他のセクション導入コマンドで終了します。
\param [(dir)] <引数名> { 引数説明 }このコマンドは、<引数名> という名前の関数引数の説明の始まりを示し、続いて引数の説明を記述します。 Doxygenは引数の存在をチェックします。引数の説明がなかったり関数の宣言・定義に 見つからない場合、警告を出します。 \param コマンドには、オプションの属性として、(dir)、方向属性があります。 指定できる値は、"[in]"、"[in,out]"、"[out]" です。[]括弧に気をつけてください。input,output両方の場合、[in,out]を属性に使います。 以下は関数 memcpy の例です。 /*!
バイトを元のメモリ領域から先のメモリ領域へコピーする。
ただし、領域は重ならないものとする。
@param[out] dest コピー先のメモリ領域
@param[in] src コピー元のメモリ領域
@param[in] n コピーするバイト数
*/
void memcpy(void *dest, const void *src, size_t n);
パラメータの説明は特殊な内部構造のない段落です。 視覚効果を高めるすべてのコマンドは段落の中で使うことができます。 複数の \param コマンドが並ぶと、1つの段落に結合されます。 各々の引数記述は、新しい行で始まります。 \param 記述は、空行や他のセクション導入コマンドで終了します。 例については、\fn を参照してください。 コンマで区切ったリストを使えば、一つの \param コマンドだけで、複数の引数をドキュメントにすることができます。例: /** 位置をセットする
@param 3次元空間内のx,y,z 座標
*/
void setPosition(double x,double y,double z,double t)
{
}
PHPでは、タイプ(パイプ記号で区別すれば複数のタイプ)を指定できます。タイプは引数のために(これは定義をするものではないので)許されます。 指定は、phpDocumentorと同様、次のようにします。 @param datatype1|datatype2 $引数名 説明 \tparam <テンプレート引数名> { 説明 }このコマンドは、クラスまたは関数の、<テンプレート引数名>という名のテンプレート引数の始まりを示し、引数の説明を後述します。 \cmdparam に少し似ています。 \post { 事後条件記述 }実体についての事後条件を記述することのできるパラグラフを開始します。 パラグラフはインデントされます。 パラグラフのテキストには、特別な内部構造はありません。 すべての視覚的強調コマンドが、パラグラフ内で使用可能です。 複数の \post コマンドが並ぶと、1つのパラグラフに結合されます。 各々の事後条件は、新しい行で始まります。 1つの \post コマンドで複数の事後条件を記述することもできます。 \post コマンドは、空行または他のセクション導入コマンドで終了します。 \pre { 事前条件記述 }実体についての事前条件を記述することのできるパラグラフを開始します。 パラグラフはインデントされます。 パラグラフのテキストには、特別な内部構造はありません。 すべての視覚的強調コマンドが、パラグラフ内で使用可能です。 複数の \pre コマンドが並ぶと、1つのパラグラフに結合されます。 各々の事前条件は、新しい行で始まります。 1つの \pre コマンドで複数の事前条件を記述することもできます。 \pre コマンドは、空行または他のセクション導入コマンドで終了します。 \remark { 注釈のテキスト }1つ以上の注釈を記述するパラグラフを開始します。 パラグラフはインデントされます。 パラグラフのテキストには、特別な内部構造はありません。 すべての視覚的強調コマンドが、パラグラフ内で使用可能です。 複数の \remark コマンドが並ぶと、1つのパラグラフに結合されます。 各々の注釈は、新しい行で始まります。 1つの \remark コマンドで複数の注釈を記述することもできます。 \remark コマンドは、空行または他のセクション導入コマンドで終了します。 \remarks { 注釈のテキスト }\remark と同等です。 \result { 結果値の記述 }\return と同等です。 \return { 戻り値の記述 }関数の戻り値についての記述を開始します。 パラグラフのテキストには、特別な内部構造はありません。 すべての視覚的強調コマンドが、パラグラフ内で使用可能です。 複数の \return コマンドが並ぶと、1つのパラグラフに結合されます。 \returnコマンドは、空行または他のセクション導入コマンドで終了します。 例については、\fn を参照してください。 \returns { 戻り値の記述 }\return と同等です。 \retval <戻り値> { 記述 }<戻り値> という名の関数戻り値についての記述を開始します。 後には、戻り値についての記述が続きます。 記述を構成するパラグラフのテキストには、特別な内部構造はありません。 すべての視覚的強調コマンドが、パラグラフ内で使用可能です。 複数の \retval コマンドが並ぶと、1つのパラグラフに結合されます。 各々の戻り値の記述は、新しい行で始まります。 \retval コマンドは、空行または他のセクション導入コマンドで終了します。 \sa { 参照先 } クラス、関数、メソッド、変数、ファイルまたは URL へのクロスリファレンスを 指定するパラグラフを開始します。 2つの名前が 同義語: \see 参照: オブジェクトへのリンクをどのように生成するかということについては、 セクション autolink を参照 \see { 参照先 }\sa と同じ。JavaDoc との互換性のために用意しています。 \short { 要約説明 }\brief と同等です。 \since { テキスト }このタグは、実体が利用可能になった時期 (バージョンや日時) を指定するのに使われます。 \since に続くパラグラフには、特別な内部構造はありません。 すべての視覚的強調コマンドが、パラグラフ内で使用可能です。 \since コマンドは、空行または他のセクション導入コマンドで終了します。 \test { テストケースを記述するパラグラフ }テストケースを記述できるパラグラフを開始します。 この記述により、テストケースは別のテストリストにも追加されます。 記述の2つのインスタンスは、クロスリファレンスされます。 テストリスト内の各テストケースには、そのテストケースの出自を示すヘッダーが付加されます。 \throw <例外オブジェクト> { 例外記述 }同義語: \exception (セクション \exception を参照)
参照:セクション \exception \throws <例外オブジェクト> { 例外記述 }\throw と同等です。 \todo { TODO を記述するパラグラフ }TODO 項目を記述するパラグラフを開始します。 この記述により、別の TODO リストにも項目が追加されます。 記述の2つの例は、クロスリファレンスされます。 TODO リスト内の各項目には、その項目の出自を示すヘッダーが付加されます。 \version { バージョン番号 }1つ以上のバージョン文字列を記述することのできるパラグラフを開始します。 パラグラフはインデントされます。 パラグラフのテキストには、特別な内部構造はありません。 すべての視覚的強調コマンドが、パラグラフ内で使用可能です。 複数の \version コマンドが並ぶと、1つのパラグラフに結合されます。 各々のバージョン記述は、新しい行で始まります。 1つの \version コマンドで複数のバージョン文字列を記述することもできます。 \version コマンドは、空行または他のセクション導入コマンドで終了します。 例については、\author を参照してください。 \warning { 警告メッセージ }1つ以上の警告メッセージを記述することのできるパラグラフを開始します パラグラフはインデントされます。 パラグラフのテキストには、特別な内部構造はありません。 すべての視覚的強調コマンドが、パラグラフ内で使用可能です。 複数の \warning コマンドが並ぶと、1つのパラグラフに結合されます。 各々の警告記述は、新しい行で始まります。 1つの \warning コマンドで複数の警告を記述することもできます。 \warning コマンドは、空行または他のセクション導入コマンドで終了します。 例については、\author を参照してください。 \xrefitem <key> "(ヘディング)" "(リストタイトル)" {テキスト}このコマンドは、\todo、\bug などのコマンドの 汎化です。 このコマンドを使って、発生場所と関連ページの間で自動的に相互参照される、ユーザ定義のテキストを作れます。 関連ページでは、同種のセクションすべてが集められます。 最初の引数 <key> はセクションのタイプをユニークに代表するIDです。 第2引数は、セクションのヘディング(4つ目の引数に与えられるテキスト) を代表する引用文字列です。第3引数(リストタイトル)は、同じキーですべての 要素を内包する関連ページのタイトルとなります。キーには、"todo", "test", "bug", "deprecated"が既に定義されています。 \xrefitem コマンドの使い方と効果を知るには、todoリストについて考えてみてください。 todoリストは、(英語の出力では)次のコマンドのエイリアスとなります。 \xrefitem todo "Todo" "Todo List" 各セクションについてコマンドの3引数を繰り返すと、とても冗長でエラーを 起こしやすくなるので、設定ファイルに ALIASES を指定して それとの組み合わせで使うようにしてください。 たとえば新しいコマンド\reminder を定義するには、設定ファイルに次の行を 追加してください。 ALIASES += "reminder=\xrefitem reminders \"Reminder\" \"Reminders\"" \xrefitem コマンドの第2,3引数にはエスケープ引用符を使います。 --- リンク生成コマンド ---\addindex (テキスト) このコマンドは、 \anchor <単語>このコマンドは、\ref コマンドで参照できるドキュメントに、 不可視な名前付きアンカーを埋め込みます。 参照: セクション \ref \cite <ラベル> テキストと、書誌参照リストに、書誌参照を加えます。<ラベル> には、 CITE_BIB_FILES にリストされている .bib ファイルの一つから取り出した、有効な BibTeX ラベルを指定します。 LaTeX 出力するには、参照のフォーマットは、LATEX_BIB_STYLE スタイルで構成できます。他のフォーマットで出力する場合は、固定の参照となります。このコマンドを使うには、 \endlinkこのコマンドは、\link コマンドによって開始されたリンクを終了させます。 参照: セクション \link \link <リンクオブジェクト>doxygen によって自動的に生成されるリンクは、 それが指示しているオブジェクトの名前を、 リンクテキストとして、常に保持しています。 \link コマンドを使用すると、ユーザが指定したリンクテキストを持った、 (ファイル、クラス、メンバーなどの) オブジェクトへのリンクを生成することができます。 \link コマンドは、\endlink コマンドによって終了します。 \link と \endlink の間にあるすべてのテキストは、 \link の最初の引数で指定された <リンクオブジェクト> へのリンクについてのテキストとして扱われます。 自動的に生成されるリンクおよび妥当なリンクオブジェクトについて、 より詳しくは、セクション autolink を参照。 \ref <名前> ["(テキスト)"] 名前の付いたセクション、サブセクション、ページ、またはアンカーへの 参照を生成します。 HTML ドキュメントでは、参照コマンドはセクションへのリンクを生成します。 セクションやサブセクションに対しては、セクションのタイトルは、 リンクのテキストとして使用されます。 アンカーに対しては、引用符に囲まれたオプションのテキストか、 それが指定されていなければ、<名前> が使用されます。 参照: \ref コマンドの例については、セクション \page を参照 \subpage <名前> ["(テキスト)"]このコマンドを使って、ページの階層を作ることができます。同じ構造が、 \defgroupと\ingroup コマンドを 使って作れますが、ページには\subpage コマンドの方が便利なことが多いです。 メインページ(\mainpage を参照)は階層のルートです。 このコマンドは、\ref に似た振る舞いをします。 <名前>というラベルのページへのリファレンスができ、第2引数を指定すれば リンクテキストが付きます。 これは、ページだけに有効で、ページ間で親子関係を作るというところが \ref コマンドと違います。ここで子のページ(つまりサブページ)には<name> というラベルがつきます。 複数ページを作らずに構造を追加したいときは、 \section コマンドと \subsection コマンドを見てください。
例をあげます。 /*! \mainpage A simple manual 一般情報 このマニュアルは次のセクションに分かれています。 - \subpage intro - \subpage advanced "Advanced usage" */ //----------------------------------------------------------- /*! \page intro 導入 このページは主題への導入です。 次に、\ref advanced "advanced section" へ進んでください。 */ //----------------------------------------------------------- /*! \page advanced Advanced Usage このページは、上級者向けです。 最初に \ref intro "the introduction" を読んでください。 */ \tableofcontentsページの先頭に目次を作ります。すべてのセクションとサブセクションをリストアップします。
\section <セクション名> (セクションタイトル)<セクション名> という名前のセクションを生成します。 \section コマンドの第2引数として、 セクションのタイトルを指定する必要があります。 \subsection <サブセクション名> (サブセクションタイトル)<サブセクション名> という名前のサブセクションを生成します。 \subsection コマンドの第2引数として、 サブセクションのタイトルを指定する必要があります。
参照: \subsection コマンドの例については、 セクション \page を参照 \subsubsection <サブサブセクション名> (サブサブセクションタイトル)<サブサブセクション名> という名前のサブサブセクションを生成します。 \subsection コマンドの第2引数として、 サブサブセクションのタイトルを指定する必要があります。
参照: セクション \pageに、\sectionと\subsection の例があります。 \paragraph <パラグラフ名> (パラグラフタイトル)<パラグラフ名>という名のパラグラフを作ります。パラグラフのタイトルは、 第2引数に指定してください。
--- 実例を表示するためのコマンド ---\dontinclude <ファイル名>このコマンドを使えば、ソースファイルを(\includeコマンドのように)そのままドキュメントに含めなくても、解析できます。 これは、ソースファイルをいくつかの小部分に分割し、 それらの間にドキュメントを追加したいような場合に、役立ちます。 ソースファイルやディレクトリは、doxygen の設定ファイルで、 EXAMPLE_PATH タグを使うことによって指定できます。 コード断片内にあるクラスおよびメンバーの宣言・定義は、 \dontinclude コマンドを含んでいるコメントブロックの解析中に記憶します。 ソースファイルの一行ごとの記述に対しては、 \line、\skip、\skipline および \until コマンドを使うことによって、 実例の1行またはそれ以上の行が表示されます。 これらのコマンドに対しては、内部的なポインタが使用されます。 \dontinclude コマンドは、実例の最初の行にポインタをセットします。
あるいは、\snippet コマンドを使えば、ソースファイルの1断片だけを含めることができます。このコマンドを働かせるには、断片にマークする必要があります。 参照: セクション \line、 \skip、 \skipline、\until、\include \include <ファイル名>このコマンドを使うと、ソースファイルをコードブロックとしてインクルードすることができます。 インクルードファイルの名前を引数にとります。 ソースファイルやディレクトリは、doxygen の設定ファイルで、 EXAMPLE_PATH タグを使うことによって指定できます。 EXAMPLE_PATH タグで指定された実例ファイルの集合に対して、 <ファイル名> だけでは一意にファイルを決定できない場合、 それを解決するために、絶対パスの一部を含めることができます。 \include コマンドを使用することは、ファイルをドキュメントブロックに挿入して、 それを \code と \endcode コマンドで囲むことと等価です。 \include コマンドの主な目的は、 実例ブロックが複数のソースおよびヘッダーファイルから構成されているような場合に、コードの重複を避けることにあります。 ソースファイルの一行ごとの記述に対しては、 \line、\skip、\skipline、 および \until コマンドと共に、\dontinclude コマンドを使用します。 あるいは、\snippet コマンドを使えば、ソースファイルの1断片だけを含めることができます。このコマンドを働かせるには、断片にマークする必要があります。
参照: セクション \example、\dontinclude、\verbatim \includelineno <ファイル名>このコマンドは、\include と同様の働きをしますが、インクルードファイルに 行番号を追加します。 参照: セクション \include \line ( パターン )このコマンドは、\include または \dontinclude によって最後にインクルードされた実例を、 非空白行が見つかるまで、一行ずつ検索していきます。 見つかった行が指定のパターンを含んでいる場合、それは出力に書き出されます。 実例の中の現在行を追跡するのに使われる内部的なポインタは、 見つかった非空白行の次の行の先頭 (あるいは、そのような行が見つからない場合は、 実例の末尾) にセットされます。 例については、セクション \dontinclude を参照してください。 \skip ( パターン )このコマンドは、\include または \dontinclude によって最後にインクルードされた実例を、 指定のパターンを含む行が見つかるまで、一行ずつ検索していきます。 実例の中の現在行を追跡するのに使われる内部的なポインタは、 指定パターンを含む行の先頭 (あるいは、パターンが見つからなかった場合は、 実例の末尾) にセットされます。 例については、セクション \dontinclude を参照してください。 \skipline ( パターン )このコマンドは、\include または \dontinclude によって最後にインクルードされた実例を、 指定のパターンを含む行が見つかるまで、一行ずつ検索していきます。 見つかった行は、出力に書き出されます。 実例の中の現在行を追跡するのに使われる内部的なポインタは、 書き出された行の次の行の先頭 (あるいは、パターンが見つからなかった場合は、 実例の末尾) にセットされます。
例については、セクション \dontinclude を参照してください。 \snippet <file-name> ( block_id )\include コマンドを使えば、ファイル全体をソースコードとして含めることができますが、このコマンドでは、ソースファイルの1断片だけを引用できます。 例えば、次のコマンドをドキュメントにおくと、サブディレクトリに存在する \snippet snippets/example.cpp Adding a resource ファイル名の次のテキストは、断片を特定する名前です。関連する断片ファイル内の引用コードの範囲を区切るために使います。上記の \snippet コマンドに対応する例を示します。 QImage image(64, 64, QImage::Format_RGB32);
image.fill(qRgb(255, 160, 128));
//! [Adding a resource]
document->addResource(QTextDocument::ImageResource,
QUrl("mydata://image.png"), QVariant(image));
//! [Adding a resource]
...
ブロックマーカーを含む行は、含められません。したがって、出力は次のようになります。 document->addResource(QTextDocument::ImageResource,
QUrl("mydata://image.png"), QVariant(image));
[block_id] マーカーは、ソースファイルにちょうど2回必要です。 マーカーが要らないソースファイルの断片をインクルードする方法は、\dontinclude セクションにあります。 \until ( パターン )このコマンドは、指定のパターンを含む行が見つかるまで、 \include または \dontinclude によって最後にインクルードされた実例の 全ての行を出力に書き出します。パターンを含む行も書き出されます。 実例の中の現在行を追跡するのに使われる内部的なポインタは、 最後に書き出された行の次の行の先頭 (あるいは、パターンが見つからなかった場合は、 実例の末尾) にセットされます。 例については、セクション \dontinclude を参照してください。 \verbinclude <ファイル名>このコマンドは、ファイル <ファイル名> の字句通りのコピーを、 ドキュメントに取り込みます。 このコマンドは、ファイルをドキュメントにペーストして、 \verbatim と \endverbatim コマンドで囲むことと等価です。 doxygen が検索の対象とするファイルやディレクトリは、 設定ファイルの EXAMPLE_PATH タグによって指定できます。 \htmlinclude <ファイル名>このコマンドは、HTMLドキュメントの中になるように、 ファイル <ファイル名> を取り込みます。 このコマンドは、ファイルをドキュメントにペーストして、 \htmlonly と \endhtmlonly コマンドで囲むことと等価です。 doxygen が検索の対象とするファイルやディレクトリは、 設定ファイルの EXAMPLE_PATH タグによって指定できます。 --- 視覚的強調のためのコマンド ---\a <単語>イタリックスで、引数 <単語> を表示します。 単語を強調するにはこのコマンドを使用します。 実行中のテキスト内のメンバー引数を参照するには、このコマンドを使用してください。
\e、\em と同じです。 複数の単語を強調するには、<em>複数の単語</em>を使います。 \arg { 項目記述 }このコマンドは、一つの引数を取ります。引数は、空行または別の \arg に 遭遇するまで続きます。 このコマンドを使用すると、単純でネストされない引数リストが生成できます。 各引数は、\arg コマンドで始まる必要があります。
\li に等価。 \b <単語>ボールドフォントを使用して、引数 <語> を表示します。 <b>word</b> に等価。 複数単語をボールドにしたい場合は、<b>複数単語</b> とします。 \c <単語>タイプライタフォントを使用して、引数 <単語> を表示します。 コードとなる語を参照するために使用します。 <tt>単語</tt> に等価。
\p に等価。 複数単語をタイプライタフォントにしたい場合は、<tt>複数単語</tt> とします。 \code
デフォルトで、シンタックスを強調するために推測される言語は、\code ブロックが見つかった場所をベースとします。例えば Python ファイルの部分の場合、シンタックスの強調は Python シンタックスで行われます。 どの言語を意味しているか内容からは不明瞭な場合(例えばコメントが.txt,.markdownファイル内の場合)、言語を明示することができます。それには、ファイル拡張子を波括弧で囲んでコードブロックの後ろに入れます。例: \code{.py} class Python: pass \endcode \code{.cpp} class Cpp {}; \endcode 参照: セクション \endcode、セクション \verbatim \copydoc <link-object><link-object> で指定されたオブジェクトの説明ブロックをコピーして、コマンドの位置に貼り付けます。 ドキュメントブロックを重複して書かないといけない場合にこのコマンドは有用です。、また、継承メンバーの説明を拡張するのにも使えます。 link-objectにはクラスやファイル、グループのメンバー、クラス、名前空間、 グループ、ページ、ファイルが指定でき、この順にチェックされます。 関数、変数、typedefなどのメンバーが指定された場合、それを含むクラス、ファイル、グループにも説明がないと、コピーがうまくいきません。 たとえばクラスメンバーの説明をコピーするとき、次のように説明を入れることができます。 /*! @copydoc MyClass::myfunction() * More documentation. */ メンバーがオーバーロードされていれば、下記のように引数の型も明示的に(空白なし)指定してください。 /*! @copydoc MyClass::myfunction(type1,type2) */ 修飾名が必要かどうかは、説明ブロックが見つかった箇所の内容によります。 \copydocコマンドは再帰的に使用できますが、\copydoc関係で循環が行われるとエラーになります。
\brief \copybrief foo() \details \copydetails foo() コメントブロックの中の要約か詳細か一方だけをコピーするには、\copybrief と \copydetails を見てください。 \copybrief <link-object>このコマンドは、\copydoc に似ていますが、要約説明だけをコピーし、詳細説明はコピーしません。 \copydetails <link-object>このコマンドは、\copydoc に似ていますが、詳細説明だけをコピーし、要約説明はコピーしません。 \dotdot グラフの有効な説明を含むテキスト要素の始まりを示します。 テキスト要素の終わりは、\enddot で示します。 Doxygen は、テキストをdot に渡し、その結果のイメージ (及びイメージマップ) を出力に含めます。 グラフのノードは、URL属性を使えばクリック可にできます。 URL値の中で \ref コマンドを使えば、doxygen内の要素にリンクできます。 例を示します。 /*! class B */
class B {};
/*! class C */
class C {};
/*! \mainpage
インラインのdotグラフを使って表現されたクラス関係
\dot
digraph example {
node [shape=record, fontname=Helvetica, fontsize=10];
b [ label="class B" URL="\ref B"];
c [ label="class C" URL="\ref C"];
b -> c [ arrowhead="open", style="dashed" ];
}
\enddot
上のグラフに表示されているクラスはクリックできる(HTML出力で)
*/
\mscこのコマンドは、メッセージシーケンス図についての有効な説明を含むテキスト要素の始まりを示します。 http://www.mcternan.me.uk/mscgen/ で例を見てください。 テキスト要素の終わりは、\endmscで示します。
\mscコマンドの使用例です。 /** 送信側クラス。サーバーにコマンドを送る。
受信側は、Ack()をコールしてコマンドを承認する。
\msc
Sender,Receiver;
Sender->Receiver [label="Command()", URL="\ref Receiver::Command()"];
Sender<-Receiver [label="Ack()", URL="\ref Ack()", ID="1"];
\endmsc
*/
class Sender
{
public:
/** サーバーからの承認 */
void Ack(bool ok);
};
/** 受信側クラス。コマンドを受信して実行する。
コマンド実行の後、受信側は承認を送信する。
\msc
Receiver,Sender;
Receiver<-Sender [label="Command()", URL="\ref Command()"];
Receiver->Sender [label="Ack()", URL="\ref Sender::Ack()", ID="1"];
\endmsc
*/
class Receiver
{
public:
/** サーバーでコマンドを実行 */
void Command(int commandId);
};
\dotfile <ファイル> ["キャプション"]<ファイル> から dot によって生成された画像を、ドキュメントに挿入します。 最初の引数は画像のファイル名を指定します。 doxygen は、そのファイルを、DOTFILE_DIRS タグで指定されたパス (またはファイル) の中から探します。 dot ファイルが見つかった場合、それは dot ツールへの入力ファイルとして扱われます。 出来上がった画像は適切な出力ディレクトリに出力されます。 dot ファイル名が空白文字を含む場合は、ファイル名を引用符で囲まなければなりません。 2番目の引数はオプションですが、これを使用して画像の下に表示される キャプションを指定することができます。 この引数は、たとえ空白文字を含んでいなくても引用符で囲んで記述する 必要があります。引用符はキャプションが表示されるときに除去されます。 \mscfile <ファイル> ["キャプション"]mscgenによって<ファイル>から生成されるイメージを、ドキュメントに挿入します。 http://www.mcternan.me.uk/mscgen/ に例があります。 最初の引数に、イメージのファイル名を指定します。 Doxygenは、MSCFILE_DIRS で指定されたパスかファイルの中でファイルを探します。mscファイルが見つかったら、mscgenツールの入力ファイルとして使います。生成したイメージは、正しいディレクトリに出力します。mscファイルの名前に空白が含まれる場合は、("...")のように、引用符で囲む必要があります。 2つ目の引数はオプションで、イメージの下に表示するキャプションを指定します。この引数は、空白が含まれなくても、引用符で囲む必要があります。表示の際には、引用符は省かれます。 参照:セクション\msc \e <単語>引数 <単語> をイタリック体で表示します。 このコマンドは、語を強調するために使います。
\a、\em に等価。 複数の単語を強調するには、<em>multiple words</em>のように使ってください。 \em <単語>引数 <単語> をイタリック体で表示します。 このコマンドは、語を強調するために使います。
\a、\em に等価。 複数の単語を強調するには、<em>multiple words</em>のように使ってください。 \endcodeコードブロックを終了します。 参照: セクション \code \enddot\dotで始まったブロックを終了します。 \endmscこのコマンドは、\mscで始まるブロックの終わりを示します。 \endhtmlonly\htmlonly コマンドで始まったテキストブロックを終了します。 参照: セクション \htmlonly \endlatexonly\latexonly コマンドで始まったテキストブロックを終了します。 参照: セクション \latexonly \endmanonly\manonly コマンドで始まったテキストブロックを終了します。 参照: セクション \manonly. \endrtfonly参照: セクション \rtfonly \endverbatim\verbatim コマンドで始まったテキストブロックを終了します。 参照: セクション \verbatim \endxmlonly\xmlonly コマンドで始まったテキストブロックを終了します。 参照: セクション \xmlonly. \f$テキスト内の式の開始と終了をマークします。 参照: 例については、セクション formulas \f[別の行に中央揃えで表示される、長い式の開始をマークします。 参照: セクション \f] および、セクション formulas \f]別の行に中央揃えで表示される、長い式の終了をマークします。 参照: セクション \f[ および、セクション formulas \f{環境}{このコマンドは、特定の環境で使う公式の始まりを示します。
\f}このコマンドは、特定の環境で使う公式の終わりを示します。 \htmlonly生成される HTML ドキュメントにのみ、字句通りにインクルードされるテキストブロックを開始します。 ブロックは、\endhtmlonly コマンドで終了します。 このコマンドは、doxygen にとっては複雑すぎる HTML コード (すなわち、アプレット、Javaスクリプト、属性を必要とする HTML タグ) をインクルードするために使用することができます。 適切な 注: ($(HOME) のような) 環境変数は、HTML-only なブロックの内部で解釈されます。 参照: セクション \manonly、 \latexonly、\rtfonly \image <format> <file> ["キャプション"] [<sizeindication>=<size>]ドキュメントに画像を挿入します。 このコマンドは、フォーマットを認識します。 したがって、一つの画像を複数フォーマットで挿入したい場合は、 フォーマットごとにこのコマンドを繰り返さなければなりません。 最初の引数で、出力フォーマットを指定します。 現在のところ、以下の値がサポートされています。 2番目の引数で、画像のファイル名を指定します。 doxygen は、IMAGE_PATH タグの後に指定したパス (またはファイル) の中から、ファイルを探し出します。 画像が見つかると、それは、現在の出力ディレクトリにコピーされます。 画像名が空白文字を含んでいる場合は、引用符 ("...") で囲む必要があります。 ファイル名のかわりに絶対 URL を指定することもできます。しかし、その場合、 doxygen は、画像のコピーも存在チェックもしません。 3番目の引数はオプションです。これを使うと、 画像の下に表示されるキャプションを指定することができます。 この引数は、1行に記述し、かつ空白文字を全く含まない場合であっても、 引用符で囲まなければなりません。 引用符は、キャプションが表示される前に取り除かれます。 4番目の引数もオプションです。これを使うと、 画像の幅や高さを指定することができます。 これは、 下は、コメント・ブロックの例です: /*! 私の新アプリケーションのスナップショット * \image html application.jpg * \image latex application.eps "私のアプリケーション" width=10cm */ また、下は、設定ファイルの関連部分の例です: IMAGE_PATH = my_image_dir
\latexonly 生成される このコマンドは、doxygen にとっては複雑すぎる 注: ($(HOME) のような) 環境変数は、 参照: セクション \rtfonly、 セクション \xmlonly、 セクション \manonly、 セクション \htmlonly \manonlyテキストブロックの始まりを示し、MAN ドキュメントだけに そのまま出力されます。ブロックは、\endmanonly コマンドで終わります。 このコマンドは、MAN ページに直接 groff コードを含めるのに使えます。 \htmlonly, \latexonly, \endhtmlonly, \endlatexonly を組み合わせれば、 HTML と 参照: セクション \htmlonly、 \xmlonly、 \rtfonly、 \latexonly \li { 項目記述 }このコマンドは、一つの引数を取ります。引数は、空行または別の \li に 遭遇するまで続きます。 このコマンドを使用すると、単純でネストされない引数リストが生成できます。 各引数は、\li コマンドで始まる必要があります。
\arg に等価。 \n強制的に改行します。<br> と等価で、printf関数が引き起こします。 \p <単語>タイプライタフォントを使用して、引数 <語> を表示します。 このコマンドを使用すると、 実行中のテキスト内のメンバー関数の引数を参照することができます。
\c に等価。 複数の単語をタイプライタフォントにするには、<tt>複数の単語</tt>のようにしてください。 \rtfonly生成されるRTFドキュメントにのみ、逐語的に含まれるべきテキストブロックの始まりを指示します。ブロックは、\endrtfonly コマンドで終了します。 このコマンドは、doxygenにとっては複雑すぎるRTFコードを含めるのに使えます。 メモ: $(HOME)のような環境変数は、RTFのみのブロック内部で解決されます。 参照:セクション \manonly、 \xmlonly、 \latexonly、 \htmlonly \verbatimドキュメント内に逐語的に含まれるべきテキストブロックの始まりを示します。 ブロックは、\endverbatim コマンドで終了する必要があります。 verbatim ブロック内では、すべてのコマンドが無効となります。
参照: セクション \code、セクション \verbinclude \xmlonly生成されるXML出力にのみ、逐語的に含まれるべきテキストブロックの始まりを示します。 ブロックは、\endxmlonlyコマンドで終了します。 このコマンドは、カスタムXMLタグを含めるのに使えます。 参照: セクション \manonly、 \rtfonly、 \latexonly、 \htmlonly \\このコマンドは、出力に、バックスラッシュ文字 (\) を書き出します。 doxygen は、バックスラッシュによってコマンドを検出するので、 バックスラッシュをエスケープしなければなりません。 \@このコマンドは、出力に、アットマーク (\@) を書き出します。 doxygen は、アットマークによって JavaDoc コマンドを検出するので、 アットマークをエスケープしなければなりません。 \~[LanguageId]このコマンドは言語特定フィルタの有効無効を指定します。 これを使えば、1コメントブロック中に違う言語での解説を入れて、 特定の言語をOUTPUT_LANGUAGE タグでフィルタリングするのに使えます。 特定の言語の出力だけをさせるには を使います。 例: /*! \~english This is english \~dutch Dit is Nederlands \~german Dieses ist deutsch. \~ output for all languages. */ \&このコマンドは、& 文字を書き出します。 この文字は、HTML において特別な意味を持つのでエスケープする必要があります。 \$このコマンドは、$ 文字を書き出します。 この文字は、環境変数を展開するのに使うので、エスケープの必要な場合があります。 \#このコマンドは、# 文字を書き出します。 この文字は、解説付きの要素を参照するのに使うので、エスケープの必要な場合があります。 \<このコマンドは、< 文字を書き出します。 この文字は、HTML で特別な意味を持つのでエスケープが必要です。 \>このコマンドは、> 文字を書き出します。 この文字は、HTML で特別な意味を持つのでエスケープが必要です。 \%このコマンドは、% 文字を書き出します。 この文字は、解説付きのクラスや構造体でもあるワードへの自動リンクを避けるのに 使うので、エスケープの必要な場合があります。 \"このコマンドは、" 文字を書き出します。 この文字は、書式なしの文字列を示すのにペアで使われることがあるため、 エスケープの必要な場合があります。 \.このコマンドは、ドットを出力に書き込みます。JAVADOC_AUTOBRIEF が有効な場合に要約説明の終わりを避けたり、行の始めの数字の次にドットがあるとき番号付リストが始まるのを避けたりするのに使います。 \::このコマンドは、出力に (::)を書き出します。この文字シーケンスは、ドキュメントつき要素への参照を示すのに使われるので、エスケープが必要な場合があります。 --- Qt との互換性のために存在するコマンド ---以下のコマンドは、 Qt クラスブラウザジェネレータとの互換性を維持するためにサポートされています。 これらのコマンドをユーザ自身のドキュメントでは使わないでください。
次 のセクションに行く / インデックス に戻る |
|
This page was last modified on Sat Aug 24 2013.
© 1997-2014 Dimitri van Heesch, first release 27 oct 1997.
© 2001 OKA Toshiyuki (Japanese translation). © 2006-2014 TSUJI Takahiro (Japanese translation). © 2006-2014 TAKAGI Nobuhisa (Japanese translation). |