curs_trace 3x

curs_trace(3x)                                           curs_trace(3x)




名前

       _tracef, _tracedump, _traceattr, _traceattr2,
       _nc_tracebits, _tracecchar_t, _tracecchar_t2, _tracechar,
       _tracechtype, _tracechtype2, _tracemouse, trace - curses
       debugging routines
       - curses デバッグ用ルーチン


書式

       #include <curses.h>

       void _tracef(const char *format, ...);
       void _tracedump(const char *label, WINDOW *win);
       char *_traceattr(attr_t attr);
       char *_traceattr2(int buffer, chtype ch);
       char *_nc_tracebits(void);
       char * _tracecchar_t(const cchar_t *string);
       char * _tracecchar_t2(int buffer, const cchar_t *string);
       char *_tracechar(int ch);
       char *_tracechtype(chtype ch);
       char *_tracechtype2(int buffer, chtype ch);
       char *_tracemouse(const MEVENT *event);
       void trace(const unsigned int param);


説明

        trace ルーチン群は ncurses ライブラリを使うアプリケーションと
       同様に、ncurses ライブラリ (自体) のデバッグにも使われます。
        通常これらの機能は、デバッグ用ライブラリ、
       例えば libncurses_g.a が伴うときのみ有効ですが、
       識別子 TRACE を定義することにより、これらをどのモデル (共有、
       静的、プロファイル) にもコンパイルすることができます。
        加えて、ライブラリがワイド文字用に構成されているときのみ
       有効な機能がいくつかあります。

        以下がこのインターフェイスの主な部分です。

       o   trace。種々のトレース (実行経過の追跡) 機能を選択的に
           有効化します

       o   _traceftrace ファイルに整形したデータを書き込みます

        trace をゼロでない引数とともに呼び出すと、出力用として
       カレントディレクトリにファイル trace をオープンします。
        引数は <curses.h> に定義されている TRACE_xxx のリストから
       値を論理和して作成します。
        これには以下の値が含まれます。

       TRACE_DISABLE
            トレースを止めます。

       TRACE_TIMES
            ユーザとシステムの更新時間をトレースします。

       TRACE_TPUTS
            tputs 呼び出しをトレースします。

       TRACE_UPDATE
            新旧画面の更新動作をトレースします。

       TRACE_MOVE
            カーソル移動とスクロールをトレースします。

       TRACE_CHARPUT
            文字の出力すべてをトレースします。

       TRACE_ORDINARY
            すべての更新動作 (update) をトレースします。
            更新 (refresh) するごとに新旧の画面内容を 
            trace ファイルへ書き出します。

       TRACE_CALLS
            すべての curses 呼び出しをトレースします。
            各呼び出しの引数が、戻り値と同じようにトレースされます。

       TRACE_VIRTPUT
            仮想的な文字出力、つまり addch 呼び出しをトレースします。

       TRACE_IEVENT
            低レベルの入力処理をトレースします。
            タイムアウトを含みます。

       TRACE_BITS
            TTY 制御ビットの状態をトレースします。

       TRACE_ICALLS
            内部/入れ子(ネスト) の呼び出しをトレースします。

       TRACE_CCALLS
            文字ごとの呼び出しをトレースします。

       TRACE_DATABASE
            terminfo/termcap データの読み書きをトレースします。

       TRACE_ATTRS
            表示属性と色の変更をトレースします。

       TRACE_MAXIMUM
            最大のトレースレベル。個別のトレース機能をすべて
            有効にします。

        いくつかのトレース機能は trace の引数がゼロでなければ
       つねに有効です。
        いくつかの機能は重複しています。
        ガイドラインとして特定の名前が使われています。

        その他の関数は (該当する関数が確保した) 文字列領域への
       ポインタを返すか、(TRACE_UPDATE 用の画面ダンプを実装している 
       _tracedump のように) 値を返さないかのどちらかです。
        確保された文字列領域は後続の呼び出しによって再使用されるので、
       呼び出し側で開放してはいけません。
        関数には 1 つの文字列領域しかないという問題を回避するため、
       いくつかの関数は、ライブラリに追加の文字列領域を確保するように
       指示するバッファ数引数を使います。

        次の関数は環境変数 NCURSES_TRACE を調べ、trace が
       呼び出されたかのようにトレース機能を設定します。

              filter, initscr, new_prescr, newterm, nofilter,
              restartterm, ripoffline, setupterm, slk_init, 
              tgetent, use_env, use_extended_names, use_tioctl


戻り値

        値を返すルーチンは、_tracef ルーチンの引数として
       使われるように設計されています。


移植性

        これらの関数は XSI インターフェイスの一部ではありません。
        curses の他のいくつかの実装は、明文化されていない同様な
       機能を持つことが知られていますが、ncurses と互換性は
       ありません。


関連項目

       curses(3x).



                                                         curs_trace(3x)