summaryrefslogtreecommitdiffstats
path: root/upstream/opensuse-leap-15-6/man3/trace.3ncurses
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--upstream/opensuse-leap-15-6/man3/trace.3ncurses230
1 files changed, 230 insertions, 0 deletions
diff --git a/upstream/opensuse-leap-15-6/man3/trace.3ncurses b/upstream/opensuse-leap-15-6/man3/trace.3ncurses
new file mode 100644
index 00000000..ae8cf59f
--- /dev/null
+++ b/upstream/opensuse-leap-15-6/man3/trace.3ncurses
@@ -0,0 +1,230 @@
+.\"***************************************************************************
+.\" Copyright (c) 2000-2016,2017 Free Software Foundation, Inc. *
+.\" *
+.\" Permission is hereby granted, free of charge, to any person obtaining a *
+.\" copy of this software and associated documentation files (the *
+.\" "Software"), to deal in the Software without restriction, including *
+.\" without limitation the rights to use, copy, modify, merge, publish, *
+.\" distribute, distribute with modifications, sublicense, and/or sell *
+.\" copies of the Software, and to permit persons to whom the Software is *
+.\" furnished to do so, subject to the following conditions: *
+.\" *
+.\" The above copyright notice and this permission notice shall be included *
+.\" in all copies or substantial portions of the Software. *
+.\" *
+.\" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS *
+.\" OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF *
+.\" MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. *
+.\" IN NO EVENT SHALL THE ABOVE COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, *
+.\" DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR *
+.\" OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR *
+.\" THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
+.\" *
+.\" Except as contained in this notice, the name(s) of the above copyright *
+.\" holders shall not be used in advertising or otherwise to promote the *
+.\" sale, use or other dealings in this Software without prior written *
+.\" authorization. *
+.\"***************************************************************************
+.\"
+.\" $Id: curs_trace.3x,v 1.19 2017/11/18 23:47:37 tom Exp $
+.de bP
+.ie n .IP \(bu 4
+.el .IP \(bu 2
+..
+.TH trace 3NCURSES ""
+.na
+.hy 0
+.SH NAME
+\fBtrace\fR,
+\fB_tracef\fR,
+\fB_traceattr\fR,
+\fB_traceattr2\fR,
+\fB_tracecchar_t\fR,
+\fB_tracecchar_t2\fR,
+\fB_tracechar\fR,
+\fB_tracechtype\fR,
+\fB_tracechtype2\fR,
+\fB_nc_tracebits\fR,
+\fB_tracedump\fR,
+\fB_tracemouse\fR \- \fBcurses\fR debugging routines
+.ad
+.hy
+.SH SYNOPSIS
+\fB#include <ncursesw/curses.h>\fR
+.sp
+\fBvoid trace(const unsigned int \fP\fIparam\fP\fB);\fR
+.sp
+\fBvoid _tracef(const char *\fP\fIformat\fP\fB, ...);\fR
+.sp
+\fBchar *_traceattr(attr_t \fP\fIattr\fP\fB);\fR
+.br
+\fBchar *_traceattr2(int \fP\fIbuffer\fP\fB, chtype \fP\fIch\fP\fB);\fR
+.br
+\fBchar *_tracecchar_t(const cchar_t *\fP\fIstring\fP\fB);\fR
+.br
+\fBchar *_tracecchar_t2(int \fP\fIbuffer\fP\fB, const cchar_t *\fP\fIstring\fP\fB);\fR
+.br
+\fBchar *_tracechar(int \fP\fIch\fP\fB);\fR
+.br
+\fBchar *_tracechtype(chtype \fP\fIch\fP\fB);\fR
+.br
+\fBchar *_tracechtype2(int \fP\fIbuffer\fP\fB, chtype \fP\fIch\fP\fB);\fR
+.sp
+\fBvoid _tracedump(const char *\fP\fIlabel\fP\fB, WINDOW *\fP\fIwin\fP\fB);\fR
+.br
+\fBchar *_nc_tracebits(void);\fR
+.br
+\fBchar *_tracemouse(const MEVENT *\fP\fIevent\fP\fB);\fR
+.SH DESCRIPTION
+The \fBtrace\fR routines are used for debugging the ncurses libraries,
+as well as applications which use the ncurses libraries.
+These functions are normally available only with the debugging library
+e.g., \fIlibncurses_g.a\fR, but may be compiled into any model (shared, static,
+profile) by defining the symbol \fBTRACE\fR.
+Additionally, some functions are only available with the wide-character
+configuration of the libraries.
+.SS Functions
+The principal parts of this interface are
+.bP
+\fBtrace\fR, which selectively enables different tracing features, and
+.bP
+\fB_tracef\fR, which writes formatted data to the \fItrace\fR file.
+.PP
+Calling \fBtrace\fR with a nonzero parameter creates the file \fBtrace\fR
+in the current directory for output.
+If the file already exists, no tracing is done.
+.PP
+The other functions either return a pointer to a string-area
+(allocated by the corresponding function),
+or return no value (such as \fB_tracedump\fP, which implements the
+screen dump for \fBTRACE_UPDATE\fP).
+The caller should not free these
+strings, since the allocation is reused on successive calls.
+To work around the problem of a single string-area per function,
+some use a buffer-number parameter, telling the library to allocate
+additional string-areas.
+.SS Trace Parameter
+The trace parameter is formed by OR'ing
+values from the list of \fBTRACE_\fP\fIxxx\fR definitions in \fB<curses.h>\fR.
+These include:
+.TP 5
+.B TRACE_DISABLE
+turn off tracing by passing a zero parameter.
+.IP
+The library flushes the output file,
+but retains an open file-descriptor to the trace file
+so that it can resume tracing later if a nonzero parameter is passed
+to the \fBtrace\fP function.
+.TP 5
+.B TRACE_TIMES
+trace user and system times of updates.
+.TP 5
+.B TRACE_TPUTS
+trace \fBtputs\fP(3X) calls.
+.TP 5
+.B TRACE_UPDATE
+trace update actions, old & new screens.
+.TP 5
+.B TRACE_MOVE
+trace cursor movement and scrolling.
+.TP 5
+.B TRACE_CHARPUT
+trace all character outputs.
+.TP 5
+.B TRACE_ORDINARY
+trace all update actions.
+The old and new screen contents are written to the trace file
+for each refresh.
+.TP 5
+.B TRACE_CALLS
+trace all curses calls.
+The parameters for each call are traced, as well as return values.
+.TP 5
+.B TRACE_VIRTPUT
+trace virtual character puts, i.e., calls to \fBaddch\fR.
+.TP 5
+.B TRACE_IEVENT
+trace low-level input processing, including timeouts.
+.TP 5
+.B TRACE_BITS
+trace state of TTY control bits.
+.TP 5
+.B TRACE_ICALLS
+trace internal/nested calls.
+.TP 5
+.B TRACE_CCALLS
+trace per-character calls.
+.TP 5
+.B TRACE_DATABASE
+trace read/write of terminfo/termcap data.
+.TP 5
+.B TRACE_ATTRS
+trace changes to video attributes and colors.
+.TP 5
+.B TRACE_MAXIMUM
+maximum trace level, enables all of the separate trace features.
+.PP
+Some tracing features are enabled whenever the \fBtrace\fR parameter
+is nonzero.
+Some features overlap.
+The specific names are used as a guideline.
+.SS Initialization
+These functions check the \fBNCURSES_TRACE\fP environment variable,
+to set the tracing feature as if \fBtrace\fP was called:
+.RS 4
+.PP
+.na
+.hy 0
+filter,
+initscr,
+new_prescr,
+newterm,
+nofilter,
+restartterm,
+ripoffline,
+setupterm,
+slk_init,
+tgetent,
+use_env,
+use_extended_names,
+use_tioctl
+.hy
+.ad
+.RE
+.SS Command-line Utilities
+.PP
+The command-line utilities such as \fBtic\fP(1) provide a verbose option
+which extends the set of messages written using the \fBtrace\fP function.
+Both of these (\fB\-v\fP and \fBtrace\fP)
+use the same variable (\fB_nc_tracing\fP),
+which determines the messages which are written.
+.PP
+Because the command-line utilities may call initialization functions
+such as \fBsetupterm\fP, \fBtgetent\fP or \fBuse_extended_names\fP,
+some of their debugging output may be directed to the \fItrace\fP file
+if the \fBNCURSES_TRACE\fP environment variable is set:
+.bP
+messages produced in the utility are written to the standard error.
+.bP
+messages produced by the underlying library are written to \fItrace\fP.
+.PP
+If ncurses is built without tracing, none of the latter are produced,
+and fewer diagnostics are provided by the command-line utilities.
+.SH RETURN VALUE
+Routines which return a value are designed to be used as parameters
+to the \fB_tracef\fR routine.
+.SH PORTABILITY
+These functions are not part of the XSI interface.
+Some other curses implementations are known to
+have similar, undocumented features,
+but they are not compatible with ncurses.
+.PP
+A few functions are not provided when symbol versioning is used:
+.RS 4
+.PP
+_nc_tracebits,
+_tracedump,
+_tracemouse
+.RE
+.SH SEE ALSO
+\fBncurses\fR(3NCURSES).